The undo operations are working fine, but redo is giving me an assertion error.
It isn't clear to me what Position p are supposed to be passed into the undoer beforeXXX and afterXXX methods. Cloning and moving nodes are the only operations I have. For move, I assume I should be passing the position which is/was moved for both before and after. For clone, should I be passing the original before and the clone after?
My next step if I get a chance tomorrow will be to remove all of the operations but one to see if I can get undo/redo to work for a simpler case and then try to build up from there. I'm open to other ideas.
Here is the assertion error I'm getting on redo:
Traceback (most recent call last):
File "/home/btheado/src/leo-editor/leo/core/leoGlobals.py", line 296, in new_cmd_wrapper
func(self, event=event)
File "/home/btheado/src/leo-editor/leo/core/leoUndo.py", line 1176, in redo
u.redoHelper()
File "/home/btheado/src/leo-editor/leo/core/leoUndo.py", line 1284, in redoGroup
z.redoHelper(); count += 1
File "/home/btheado/src/leo-editor/leo/core/leoUndo.py", line 1346, in redoMove
assert u.oldParent_v.children[u.oldN] == v
AssertionError
Brian