patchSkencil - Patches: patch #3558, History panel

 
 

You are not allowed to post comments on this tracker with your current authentication level.

patch #3558: History panel

Submitter:  Valentin Ungureanu <vung>
Submitted:  Tue 07 Dec 2004 03:45:36 PM UTC
   
 
Category:  0.7.x Priority:  3 - Low
Status:  Done Privacy:  Public
Assigned to:  bh Open/Closed:  Closed

Sun 09 Jan 2005 04:40:53 PM UTC, comment #4: 

Better.  I've just applied it. Thanks.

I added some comments about the design improvements to the code.


Bernhard Herzog <bh>
Group administrator
Mon 20 Dec 2004 01:18:59 PM UTC, comment #3: 

Yes, the order was embarrassingly wrong :)
I uploaded a new patch, making some small changes.
Now it uses context.HasEditor() and, as bernhard suggested, adds an entry to the Xtns menu.

The design issue still remains to be addressed but I don't know when... I made this fixes, however, because they were small.

Adding information about some operations is a bit outside the scope of this patch but certainly it would be nice because that info would also be available in the Edit menu.

Valentin Ungureanu <vung>
Sun 19 Dec 2004 11:47:45 PM UTC, comment #2: 

The order of the redo items seems wrong.  For instance,
start by loading an existing document with a few objects and
open the history window.  Now select one object, move it,
rotate it and move it to the bottom of the stacking order.
The history window will now list this:

    Undo Move Objects
    Undo Rotate Objects
    Undo Move To Bottom

Now invoke Undo from the normal menu or C-z once and you
get:

    Undo Move Objects
    Undo Rotate Objects
    Redo Move To Bottom

That still looks good.  Now undo once more and you have:

    Undo Move Objects
    Redo Move To Bottom
    Redo Rotate Objects

Notice how the "Move To Bottom" item has moved one up the
list.  If you now duble click on the "Move To Bottom" item
the rotation step is redone, not the "move to bottom" as the
item's title would suggest.  This is easily fixed by using
self.model.append instead of prepend for Redo in
update_model.

What bothers me from a design point of view is that it
doesn't properly use mode-view-controller.  The dialog
updates the ListStore in row_activated without checking back
with the document.  It makes assumptions about how the undo
and redo lists change when performing an undo or redo.
Instead of maintaining a ListStore in parallel with the
document it would be better to write an adapter class that
turns the document into a model for the history window.

Bernhard Herzog <bh>
Group administrator
Sun 19 Dec 2004 01:48:42 PM UTC, comment #1: 

Hi Valentin,

thanks for the nice patch!
I gave it a short spin and it worked fine.
Thus I vote for inclusion and assign this to Bernhard.

It applied cleanly to CVS of today,
I only noticed that there was one tab remaining
in historypanel.py in _init_.

Especially nice about the plugin is that
you can use the arrow keys to move up and down
and then press enter to browse the various states pretty fast in addition to double clicks.

As always there is room for improvement:
a) I guess the panel should also be reached from the Xtns menu
b) some more information about some operations would be
nice, but i don't know how this can be done. I have moved
a couple of curve points around and only got: Undo.

Bernhard R.

Bernhard Reiter <bernhard>
Group administrator
Tue 07 Dec 2004 03:45:36 PM UTC, original submission:  

A panel that allows to undo or redo several steps at once

Valentin Ungureanu <vung>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #8198:  historypanel2.diff added by vung (8KiB - text/x-diff - some fixes)
file #8144:  historypanel.diff added by vung (7KiB - text/x-diff)

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

 

Follow 8 latest changes.

Date Changed by Updated Field Previous Value => Replaced by
2005-01-09 bh StatusNone Done
    Open/ClosedOpen Closed
2004-12-20 vung Attached File- Added historypanel2.diff, #3965
2004-12-19 bernhard Priority1 - Later 3 - Low
    Assigned toNone bh
    Carbon-Copy- Added bh
    Carbon-Copy- Added bernhard
2004-12-07 vung Attached File- Added historypanel.diff, #3927

Back to the top

Powered by Savane 3.15.
Corresponding source code