Ticket #807 (new task)

Opened 13 months ago

Last modified 12 months ago

There should be a one-off undo

Reported by: sthiel Owned by: dave
Priority: major Milestone: milestone13
Component: Implementation Version:
Keywords: Cc:
Super-ticket: Minutes Worked:

Description

ctrl-z should undo one major change. If a snu is edited and we go back to the main window, ctrl-z (or mac equivalent) should ask the user if they want to undo the change to the snu. If we rename or add something, similarly, it'll be a one-off option to undo it, and we should ask the user. This is a feature from the main window only (for now).

I'd suggest having a spare copy of the xml, and each time it's changed, clone it. If this proves costly, perhaps another approach, but I think it'll be okay.

Change History

Changed 12 months ago by dreisch

  • milestone changed from milestone13 to milestone14

Changed 12 months ago by dreisch

see #870

Changed 12 months ago by dreisch

[952] its setup, but the undo is not that simple...

when restoring the prev dom tree, we were planning to just do so... and then what? how do we appropriately update the UI? you might think you could just cause the entire UI to refresh from scratch but on some projects this process takes 10s of seconds! this is not acceptable for an undo...

it seems like we might have to go the route of Undoable objects which have enough context do handle the action being done/undone.

we might potentially diff the before and after for "added" "removed" and "modified" objects, but with the current system of Application Domain Objects, this is also a slow operation.

TODO: after consolidating the domain objects.

Changed 12 months ago by dreisch

  • milestone changed from milestone14 to milestone13
Note: See TracTickets for help on using tickets.