元に戻す/やり直す/繰り返す機能をアプリケーションに追加する任務を負っています。SwingのUndoManagerが使えるか、現在調査中です。
通常の取り消しおよびやり直しボタンとは別に、複数の編集を一度に取り消しまたはやり直し (MS Office のようなドロップダウン UI)、選択した編集を繰り返す機能を提供する必要があります。
複数の取り消しとやり直しに UndoManager を使用できると思います。複数の取り消しとやり直しのメソッドを提供します。UI を構築するために、UndoManager を拡張して保持している編集内容を公開できます。
ただし、選択した操作を繰り返すために UndoManager を使用できるかどうかはわかりません。私が最初に考えたのは、UndoManager を拡張し、repeat(edit) メソッドを追加することでした。このメソッドは、編集を複製またはコピーし、コピーをやり直してから、そのコピーを元に戻すスタックの一番上に配置します。Clonable が実装されている場合にのみ、編集が繰り返し可能になります。
これは合理的に思えますか?より良い解決策はありますか?UndoManager の代わりに自分で作成する必要がありますか? 前もって感謝します。