- java.lang.Object
-
- javax.swing.undo.AbstractUndoableEdit
-
- javax.swing.undo.StateEdit
-
- All Implemented Interfaces:
-
Serializable
,UndoableEdit
public class StateEdit extends AbstractUndoableEdit
StateEdit是更改状态的对象的一般编辑。 被编辑的对象必须符合StateEditable界面。
这个编辑类通过在编辑之前和之后询问对象来存储它在Hashtables中的状态。 撤消或重做时,对象被告知要从这些Hashtables恢复它的状态。
使用状态编辑如下:// 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结束时,它会从Hashtables中删除冗余状态 - 状态Hashtable不保证在存储状态时包含放入其中的所有键/值!
- 另请参见:
-
StateEditable
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field 描述 protected StateEditable
object
正在编辑的对象protected Hashtable<Object,Object>
postState
编辑后的状态信息protected Hashtable<Object,Object>
preState
编辑前的状态信息protected static String
RCSID
过时的RCS版本身份。protected String
undoRedoName
撤消/重做演示文稿名称-
Fields inherited from class javax.swing.undo.AbstractUndoableEdit
RedoName, UndoName
-
-
构造方法摘要
构造方法 Constructor 描述 StateEdit(StateEditable anObject)
创建并返回一个新的StateEdit。StateEdit(StateEditable anObject, String name)
创建并返回一个新的StateEdit与演示名称。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
end()
获取StateEditable对象的后编辑状态,并结束编辑。String
getPresentationName()
获取此编辑的演示文稿名称protected void
init(StateEditable anObject, String name)
初始化状态编辑。void
redo()
告知编辑对象在编辑后应用状态protected void
removeRedundantState()
删除状态哈希表中的冗余密钥/值。void
undo()
告知编辑对象在编辑之前应用状态-
Methods inherited from class javax.swing.undo.AbstractUndoableEdit
addEdit, canRedo, canUndo, die, getRedoPresentationName, getUndoPresentationName, isSignificant, replaceEdit, toString
-
-
-
-
字段详细信息
-
RCSID
protected static final String RCSID
过时的RCS版本身份。- 另请参见:
- Constant Field Values
-
object
protected StateEditable object
正在编辑的对象
-
undoRedoName
protected String undoRedoName
撤消/重做演示文稿名称
-
-
构造方法详细信息
-
StateEdit
public StateEdit(StateEditable anObject)
创建并返回一个新的StateEdit。- 参数
-
anObject
- 要观察状态的对象 - 另请参见:
-
StateEdit
-
StateEdit
public StateEdit(StateEditable anObject, String name)
创建并返回一个新的StateEdit与演示名称。- 参数
-
anObject
- 要观察状态的对象 -
name
- 要用于此编辑的演示文稿名称 - 另请参见:
-
StateEdit
-
-
方法详细信息
-
init
protected void init(StateEditable anObject, String name)
初始化状态编辑。- 参数
-
anObject
- 要观察状态改变的对象 -
name
- 用于此编辑的演示文稿名称
-
end
public void end()
获取StateEditable对象的后编辑状态,并结束编辑。
-
undo
public void undo()
告知编辑对象在编辑之前应用状态- Specified by:
-
undo
在接口UndoableEdit
- 重写:
-
undo
在AbstractUndoableEdit
- 另请参见:
-
AbstractUndoableEdit.canUndo()
-
redo
public void redo()
告知编辑对象在编辑后应用状态- Specified by:
-
redo
在接口UndoableEdit
- 重写:
-
redo
在AbstractUndoableEdit
- 另请参见:
-
AbstractUndoableEdit.canRedo()
-
getPresentationName
public String getPresentationName()
获取此编辑的演示文稿名称- Specified by:
-
getPresentationName
在接口UndoableEdit
- 重写:
-
getPresentationName
在AbstractUndoableEdit
- 结果
- 空字符串“”
- 另请参见:
-
AbstractUndoableEdit.getUndoPresentationName()
,AbstractUndoableEdit.getRedoPresentationName()
-
removeRedundantState
protected void removeRedundantState()
删除状态哈希表中的冗余密钥/值。
-
-