public class StateEdit extends AbstractUndoableEdit
StateEditは、オブジェクト用の一般的な編集であり、状態を変更します。 編集されているオブジェクトは、StateEditableインタフェースに適合している必要があります。
この編集クラスは、編集発生の前後で、オブジェクトにその状態をHashtableに格納するよう要求することによって機能します。 undoまたはredoが実行されるとすぐに、オブジェクトはその状態をHashtableから復元するように指示されます。
状態編集は次のように使用されます。// Create the edit during the "before" state of the object StateEdit newEdit = new StateEdit(myObject); // Modify the object myObject.someStateModifyingMethod(); // "end" the edit when you are done modifying the object newEdit.end();
StateEditが終了すると、余分な状態はHashtableから削除されます。つまり、状態を格納したからといって、状態のHashtableに格納されているキー/値がすべて保持されるとは限りません。
StateEditable
修飾子と型 | フィールド | 説明 |
---|---|---|
protected StateEditable |
object |
編集されているオブジェクトです。
|
protected Hashtable<Object,Object> |
postState |
編集後の状態情報です。
|
protected Hashtable<Object,Object> |
preState |
編集前の状態情報です。
|
protected static String |
RCSID |
|
protected String |
undoRedoName |
元に戻す/再実行する処理のプレゼンテーション名です。
|
RedoName, UndoName
コンストラクタ | 説明 |
---|---|
StateEdit(StateEditable anObject) |
新しいStateEditを作成して返します。
|
StateEdit(StateEditable anObject, String name) |
プレゼンテーション名を持つ新しいStateEditを作成して返します。
|
修飾子と型 | メソッド | 説明 |
---|---|---|
void |
end() |
StateEditableオブジェクトの編集後の状態を取得して、編集を終わらせます。
|
String |
getPresentationName() |
この編集のプレゼンテーション名を取得します。
|
protected void |
init(StateEditable anObject, String name) |
|
void |
redo() |
編集されたオブジェクトに、編集後の状態を適用するように通知します。
|
protected void |
removeRedundantState() |
状態ハッシュ・テーブルの余分なキー/値を削除します。
|
void |
undo() |
編集されたオブジェクトに、編集前の状態を適用するように通知します。
|
addEdit, canRedo, canUndo, die, getRedoPresentationName, getUndoPresentationName, isSignificant, replaceEdit, toString
protected StateEditable object
protected String undoRedoName
public StateEdit(StateEditable anObject)
anObject
- 状態が変更されるのを監視するオブジェクトStateEdit
public StateEdit(StateEditable anObject, String name)
anObject
- 状態が変更されるのを監視するオブジェクトname
- この編集に使うプレゼンテーション名StateEdit
protected void init(StateEditable anObject, String name)
public void end()
public void undo()
undo
、インタフェースUndoableEdit
undo
、クラスAbstractUndoableEdit
AbstractUndoableEdit.canUndo()
public void redo()
redo
、インタフェースUndoableEdit
redo
、クラスAbstractUndoableEdit
AbstractUndoableEdit.canRedo()
public String getPresentationName()
getPresentationName
、インタフェースUndoableEdit
getPresentationName
、クラスAbstractUndoableEdit
AbstractUndoableEdit.getUndoPresentationName()
, AbstractUndoableEdit.getRedoPresentationName()
protected void removeRedundantState()
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。