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, toStringprotected StateEditable object
protected String undoRedoName
public StateEdit(StateEditable anObject)
anObject - 状態が変更されるのを監視するオブジェクトStateEditpublic StateEdit(StateEditable anObject, String name)
anObject - 状態が変更されるのを監視するオブジェクトname - この編集に使うプレゼンテーション名StateEditprotected void init(StateEditable anObject, String name)
public void end()
public void undo()
undo、インタフェースUndoableEditundo、クラスAbstractUndoableEditAbstractUndoableEdit.canUndo()public void redo()
redo、インタフェースUndoableEditredo、クラスAbstractUndoableEditAbstractUndoableEdit.canRedo()public String getPresentationName()
getPresentationName、インタフェースUndoableEditgetPresentationName、クラスAbstractUndoableEditAbstractUndoableEdit.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も参照してください。