Support Unlimited Linear Undo/Redo Functionality (CTP)
The Undo/Redo Framework provides the infrastructure for supporting unlimited linear Undo/Redo functionality.
Key Features at a Glance
- Undo/Redo History Stacks – The UndoManager automatically manages the Undo/Redo history stacks. The collections raise change notifications and therefore may be used as a source for providing a UI that displays the entries in the history stacks.
- Built-In UndoUnits – The framework includes a number of built in undo units that provide support for undoing/redoing property and collection changes.
- Delegate UndoUnit – The framework makes it easy to add a method/delegate as an operation in the undo/redo history.
- ObservableCollectionWithUndo – The framework includes a derived ObservableCollection that makes it easier to add support for undo/redo of collection changes.
- Transactions – Provides the ability to group one or more operations into a single history entry. One may also rollback a transaction performing the operations that were stored up to that point.
- Custom UndoUnits – The framework allows developers to create their own custom UndoUnit to support undo/redo of other types of operations.
- Commands – A number of built in commands are provided to make it easier to invoke an Undo/Redo operation from within your UI.