無制限のリニア Undo/Redo 機能サポート (CTP)
Undo/Redo Framework は、無制限のリニア Undo/Redo 機能をサポートするインフラストラクチャを実現しています。
主な機能の概要
- Undo/Redo 履歴スタック – UndoManager は Undo/Redo 履歴スタックを自動的に管理します。コレクションは変更通知を発行するため、履歴スタックの項目を表示する UI を提供するソースとして使用できます。
- 組み込み UndoUnits – このフレームワークには、プロパティとコレクションの変更を元に戻す/やり直す多数の組み込み undo 単位が組み込まれています。
- デリゲート UndoUnit – このフレームワークにより、undo/redo 履歴で演算としてメソッド/デリゲートを簡単に追加できます。
- ObservableCollectionWithUndo – このフレームワークには、コレクション変更の元に戻す/やり直しのサポートを簡単に追加できる派生した ObservableCollection が組み込まれています。
- トランザクション – 1 つまたは複数の演算を 1 つの履歴項目にグループ化する機能を提供します。その時点まで保存された演算を行うトランザクションをロールバックすることもできます。
- カスタム UndoUnits – このフレームワークにより、デベロッパーは自分のカスタム UndoUnit を作成し、他の種類の演算を元に戻す/やり直すことができます。
- コマンド – Undo/Redo 演算を UI 内から簡単に起動できるよう、多数の組み込みコマンドが提供されています。