i had a brief look at the undo/redo framework ... it seems, they provide some kind of macros, that can be used to combine two objects on the undo stack ... that seems to be usable for the problem of object box creation and gui/engine connection ...
cheers, tim On Tue, 2007-10-30 at 19:31 +0100, Jeff Rose wrote: > So I found out that the QUndoStack automatically calls the redo method > on commands when they are pushed onto the stack. This is actually nice > because it saves you from writing a bit of code for every command. > Anyways, that's why there were two objects being created. So now the > command works correctly. It is only for creating a new object and > deleting it on undo though. We need a separate command for editing an > object's text value, which is created in the GobjTextInput.__end_editing > method. That way all editing operations result in an undoable command. > > I pushed the small change to not create two objects. Now I'll go > through and refactor what's already working so that the functionality is > implemented in commands. > > -Jeff > > Tim Blechmann wrote: > > ok ... i had a look at your patch ... it doesn't really work, yet ... > > > > the flow of operations for creating an object is: > > > > 1. create empty object box (PatcherCanvasScene.mouseDoubleClickEvent) > > 2. connect object box to the engine (GobjTextInput.__end_editing) > > 3. notification callback is called after object creation is successful > > (interpreter.new_connection_callback) or failed > > (interpreter.object_creation_failure) > > > > the undo operation if the creation should be > > PatcherGobj.schedule_removal in any case ... > > the redo operation needs to combine the points (1) and (2), though ... > > > > also i found, that after creating objects in your branch, i get two > > object boxes ... one initialized and one uninitialized ... > > > > i know, the whole architecture is not very well documented, yet :) > > > > cheers, tim > > > > -- > > [EMAIL PROTECTED] ICQ: 96771783 > > http://tim.klingt.org > > > > The price an artist pays for doing what he wants is that he has to do > > it. > > William S. Burroughs > > _______________________________________________ > nova-dev mailing list > [email protected] > http://klingt.org/cgi-bin/mailman/listinfo/nova-dev > http://tim.klingt.org/nova -- [EMAIL PROTECTED] ICQ: 96771783 http://tim.klingt.org Happiness is a byproduct of function, purpose, and conflict; those who seek happiness for itself seek victory without war. William S. Burroughs
signature.asc
Description: This is a digitally signed message part
_______________________________________________ nova-dev mailing list [email protected] http://klingt.org/cgi-bin/mailman/listinfo/nova-dev http://tim.klingt.org/nova
