Re: Undo framework
- From: Rodrigo Moya <rodrigo gnome-db org>
- To: Iain * <iaingnome gmail com>
- Cc: gtk-devel-list gnome org, Sven Neumann <sven gimp org>
- Subject: Re: Undo framework
- Date: Mon, 24 Sep 2007 14:44:14 +0200
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 groups in GIMP.
>
> We allow one level of nesting, I can see your point about allowing
> deeper nesting though and will think about how it could be done. I
> suppose this is as much of the "merging" of actions that should take
> place, I don't see that the UndoManager itself should support
> automatic merging as each application has different requirements for
> when a merge should happen, but if we allow multiple nesting of
> actions then the applications can merge as they see fit.
>
> I can see the reason for the non-UI parts to go in GLib, but is there
> any precedence in having stuff like this in GLib? If it was to go in
> GLib it would be its own seperate library, which for one thing would
> kinda suck?
>
why? we already have gthread, gmodule, glib, gobject, gio....
> As for transactional stuff, I would think that it seems overkill for
> most applications, although it'd be great if we could work out some
> way to allow those that want it to be able to implement it on top of
> the base system. I can't see how you could make it generic enough to
> make everyone happy.
>
this is easy, if the API provides, for instance, a 3-step mechanism:
create_context
add_stuff
close_context
thus, normal apps would just call the related 3 functions. More
complicated apps would manage different contexts, and be able to
associate a context to another one:
set_parent_context
for instance
--
Rodrigo Moya <rodrigo gnome-db org>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]