Re: Undo framework

2007-09-26 Thread Tristan Van Berkom
On Wed, 2007-09-26 at 13:08 +0200, Rodrigo Moya wrote: [...] > > It seems useful for anything that operates on persistent data, be it > > a document, or control-center settings. > > > I'm thinking, maybe a crazy idea though, but this could also be useful, > once the actions are stored in a file, to

Re: Undo framework

2007-09-26 Thread Rodrigo Moya
On Mon, 2007-09-24 at 09:23 -0400, Jody Goldberg wrote: > On Mon, Sep 24, 2007 at 02:41:19PM +0200, Rodrigo Moya wrote: > > > > On Fri, 2007-09-21 at 16:21 -0300, Johan Dahlin wrote: > > > > > > I'm not sure we should talk about a 'document' there, there are many > > > operations outside of doc

Re: Undo framework

2007-09-25 Thread Sven Neumann
Hi, On Tue, 2007-09-25 at 08:16 -0400, Jody Goldberg wrote: > Undo comes with Redo, which is sufficient information to make a > replay a modification from a known state. Not necessarily. A common approach to Undo/Redo is to store the information before the operation on the undo stack. Then, when

Re: Undo framework

2007-09-25 Thread Jody Goldberg
On Mon, Sep 24, 2007 at 08:32:01PM +0200, Sven Neumann wrote: > Hi, > > On Mon, 2007-09-24 at 09:23 -0400, Jody Goldberg wrote: > > > The 'transaction' refered to a mechanism for persisting the details > > of each operation to a file. > > 1) The options could be re-played in the case of failu

Re: Undo framework

2007-09-24 Thread Morten Welinder
I would find it useful if such an undo system would do away with the stack view of things and use the back-in-time view that Emacs uses. For example, if we have Do A, Do B, Do C, Undo C, Do D then it should be possible to rewind history to the point where C was done. Morten __

Re: Undo framework

2007-09-24 Thread Sven Neumann
Hi, On Mon, 2007-09-24 at 09:23 -0400, Jody Goldberg wrote: > The 'transaction' refered to a mechanism for persisting the details > of each operation to a file. > 1) The options could be re-played in the case of failure. > 2) The data would provide useful hooks for auditing and >v

Re: Undo framework

2007-09-24 Thread Jody Goldberg
On Mon, Sep 24, 2007 at 02:41:19PM +0200, Rodrigo Moya wrote: > > On Fri, 2007-09-21 at 16:21 -0300, Johan Dahlin wrote: > > > > I'm not sure we should talk about a 'document' there, there are many > > operations outside of documents which are undoable. > > > yes, we are not talking only about

Re: Undo framework

2007-09-24 Thread Rodrigo Moya
On Sat, 2007-09-22 at 01:01 +0100, Iain * wrote: > > Do you allow nested undo groups? This is rather important > > if you want to compose actions from smaller actions and still allow > > scripts or other higher levels to combine these into a single undo step. > > We make heavy use of nested undo g

Re: Undo framework

2007-09-24 Thread Rodrigo Moya
On Fri, 2007-09-21 at 16:21 -0300, Johan Dahlin wrote: > > > 3) Gtk seems like the right place for widgets to display the > >undo/redo stack. However, the core of the functionality seems > >non-gui. Something that would belong wherever we chose to put > >GDocument. To date that typ

Re: Undo framework

2007-09-21 Thread Iain *
> Do you allow nested undo groups? This is rather important > if you want to compose actions from smaller actions and still allow > scripts or other higher levels to combine these into a single undo step. > We make heavy use of nested undo groups in GIMP. We allow one level of nesting, I can see y

Re: Undo framework

2007-09-21 Thread Johan Dahlin
Jody Goldberg wrote: > On Fri, Sep 21, 2007 at 05:51:26PM +0100, Iain * wrote: >> Hi, >> >> I've had an undo framework in Marlin for years now, but recently >> people have been using it in other things (notably Ross in Tasks - ok, >> actually, he's the

Re: Undo framework

2007-09-21 Thread Sven Neumann
ll allow scripts or other higher levels to combine these into a single undo step. We make heavy use of nested undo groups in GIMP. I am not trying to argue that the GIMP undo system would be suitable for use anywhere outside GIMP. But we might want to adopt a more general undo framework if it is pro

Re: Undo framework

2007-09-21 Thread Jody Goldberg
On Fri, Sep 21, 2007 at 05:51:26PM +0100, Iain * wrote: > Hi, > > I've had an undo framework in Marlin for years now, but recently > people have been using it in other things (notably Ross in Tasks - ok, > actually, he's the only one) and we discussed suggesting this

Re: Undo framework

2007-09-21 Thread Sven Neumann
Hi, On Fri, 2007-09-21 at 17:51 +0100, Iain * wrote: > I've had an undo framework in Marlin for years now, but recently > people have been using it in other things (notably Ross in Tasks - ok, > actually, he's the only one) and we discussed suggesting this for > inclusion i

Re: Undo framework

2007-09-21 Thread Yevgen Muntyan
David Trowbridge wrote: > You might want to look at the undo implementation in Tomboy. It > implements the "mergeable command" idea fairly nicely. > Or look at GtkSourceView, or look for it in bugzilla, or look at bunch of other implementations (I am sure there are *plenty*, minimum two in eve

Re: Undo framework

2007-09-21 Thread David Trowbridge
something > > will be entered in advance, so simple > > "create context - add stuff - close context" won't do. > > Thats really up to the code using the undo manager to do, to work out > when an appropriate time to "add stuff" is. While it is outside of the

Re: Undo framework

2007-09-21 Thread Iain *
quot;add stuff" is. While it is outside of the scope of the undo framework, it is perfectly within the scope of an undoable entry, but that isn't really what i'm concerned with here (plus, its more ross' domain as he wrote that stuff) iain _

Re: Undo framework

2007-09-21 Thread Iain *
On 9/21/07, Tristan Van Berkom <[EMAIL PROTECTED]> wrote: > Should be noted here that from my particular experience, writing > code that is undoable (i.e. filling in the execute()/undo() routines > for a given undoable command) is far more challenging than writing > a framework that supports it -

Re: Undo framework

2007-09-21 Thread Yevgen Muntyan
can't possibly know if something will be entered in advance, so simple "create context - add stuff - close context" won't do. Yevgen Iain * wrote: > Hi, > > I've had an undo framework in Marlin for years now, but recently > people have been using it in other things (no

Re: Undo framework

2007-09-21 Thread Tristan Van Berkom
On Fri, 2007-09-21 at 17:51 +0100, Iain * wrote: > Hi, > > I've had an undo framework in Marlin for years now, but recently > people have been using it in other things (notably Ross in Tasks - ok, > actually, he's the only one) and we discussed suggesting this for > in

Re: Undo framework

2007-09-21 Thread Ross Burton
On Fri, 2007-09-21 at 17:51 +0100, Iain * wrote: > I've had an undo framework in Marlin for years now, but recently > people have been using it in other things (notably Ross in Tasks - ok, > actually, he's the only one) and we discussed suggesting this for > inclusion in GT

Undo framework

2007-09-21 Thread Iain *
Hi, I've had an undo framework in Marlin for years now, but recently people have been using it in other things (notably Ross in Tasks - ok, actually, he's the only one) and we discussed suggesting this for inclusion in GTK at some point in the future. QT4[1] and Cocoa[2] both have ve