Version 2 (modified by peko, 16 years ago) (diff) |
---|
Analysis
Overview
This task is related to the UndoManager. The change manager is like the undo-manager, but allows skipping, unskipping etc. Currently we have an UndoManger which will later become a change manager with the additional features described bellow.
skip change, unskip change, undo change,
Task requirements
- review code in !UndoManager that represents the current undo manager.
- besides undo change and redo change the ChangeManager should also be capable of doing the following:
- skip a change - the change will be skipped and the next in turn will be available if such exists. Unmanaged changes should all be skipped by default (see PRO_CHANGE_PRIMITIVES_R0). Other changes may be skipped depending on certain situations.
- unskip a change - will provide the opportunity to revert the skipping of a change. This should be possible only if a skip of the change had been done.
- undo/redo - the undo/redo mechanism should behave in a generally accepted manner as in most applications nowadays.
- Important:
- skip/unskip and undo/redo are all going to be defined as changes.
- undo/redo should be possible to be skipped and unskipped.
- skip/unskip should be possible to be undone and redone.
Task result
Implementation idea
Related
PRO_CHANGE_PRIMITIVES_R0
PRO_CHANGE_TRANSACTION_SAFETY_R0
PRO_CHANGE_COMPOSING_R0
PRO_CHANGE_MANAGER_R0