public interface UndoableEdit
UndoableEdit
代表编辑。编辑可能破灭,或者已经撤消编辑可以重做。
UndoableEdit
是设计用来与UndoManager
。作为UndoableEdit
s由UndoableEditListener
通常添加到UndoManager
生成。当一个UndoableEdit
加入以下发生UndoManager
(假设end
没有呼吁UndoManager
):
UndoManager
包含编辑它会调用当前编辑过的新编辑作为论据addEdit
。如果addEdit
返回新的编辑被认为已被纳入当前的编辑和编辑将不会被添加到当前列表编辑。编辑可以使用addEdit
对于较小的编辑被纳入更大的编辑和视为一个单一的编辑方式。addEdit
返回false replaceEdit
是呼吁新的编辑与当前编辑作为参数传入。如果新的编辑从replaceEdit
返回true,这是addEdit
逆,新编辑替换当前编辑。UndoManager
利用
isSignificant
确定多少的修改应撤消或重做。的
UndoManager
将撤消或重做所有微不足道的编辑(
isSignificant
返回false)之间目前的编辑和最后一个或下一个重要的编辑。
addEdit
和
replaceEdit
可用于治疗多种编辑作为一个编辑,返回FALSE
isSignificant
允许治疗可用于有许多小编辑撤消或重做一次。类似的功能还可以使用
addEdit
方法。
Modifier and Type | Method and Description |
---|---|
boolean |
addEdit(UndoableEdit anEdit)
增加了一个
UndoableEdit 这
UndoableEdit 。
|
boolean |
canRedo()
如果这个编辑可能重新返回true。
|
boolean |
canUndo()
如果此编辑可能撤消,则返回真。
|
void |
die()
通知编辑,它不应该再使用。
|
String |
getPresentationName()
返回一个本地化的,人类可读的描述这个编辑,适合在变化日志中使用,例如。
|
String |
getRedoPresentationName()
返回一个局部的,这样的redoable形成人类可读的描述编辑,适合用作重做菜单项,例如。
|
String |
getUndoPresentationName()
返回一个局部的撤消表人类可读的描述编辑,适合用作撤消菜单项,例如。
|
boolean |
isSignificant()
如果此编辑被认为是显着的回报。
|
void |
redo()
重新应用编辑。
|
boolean |
replaceEdit(UndoableEdit anEdit)
如果这
UndoableEdit 应该取代
anEdit 返回true。
|
void |
undo()
撤消编辑。
|
void undo() throws CannotUndoException
CannotUndoException
如果编辑无法复原
boolean canUndo()
void redo() throws CannotRedoException
CannotRedoException
如果编辑不能重来
boolean canRedo()
void die()
UndoableEdit
已标记为死不能撤消或重做。
这是清理国家不再需要一旦撤消或重做是不可能的--比如一个有用的钩子,删除,无法删除对象文件资源。UndoManager
称这才取出编辑。
请注意,这是一个单向操作。没有“联合死亡”的方法。
CompoundEdit.die()
boolean addEdit(UndoableEdit anEdit)
UndoableEdit
这
UndoableEdit
。此方法可用于合并成一个较大的复合小编辑编辑。例如,文本编辑器通常允许撤消操作应用于单词或句子。文本编辑器可以选择生成编辑每个关键事件,但让那些编辑被合并成一个更人性化的装置,如一个词。在这种情况下,该
UndoableEdit
将重写
addEdit
返回true时,编辑可以合并。
一个真正的返回值表示anEdit
纳入这个编辑。一个虚假的返回值指示anEdit
不得纳入本编辑。
通常情况下,接收机已经是一个UndoManager
队列(或其他UndoableEditListener
),并有机会将anEdit
而不是让它被添加到在打开队列。
如果真的是回来了,从现在开始anEdit
必须假从canUndo
和canRedo
回报,必须把undo
或redo
适当的例外。
anEdit
-编辑要添加
anEdit
可以并入本编辑
boolean replaceEdit(UndoableEdit anEdit)
UndoableEdit
应该取代
anEdit
返回true。这种方法是通过
CompoundEdit
和
UndoManager
使用;如果
anEdit
无法添加到当前编辑称为(
addEdit
返回false)。
此方法提供了一种编辑替换现有编辑的方法。
这个消息是addedit相反-- anedit通常已经在UndoManager
排队(或其他undoableeditlistener),和接收器被给予一个机会来代替。
如果真的是回来了,从现在开始anedit必须假从canundo()和canredo()回报,必须把undo()或redo()适当的例外。
anEdit
-编辑替换当前编辑
anEdit
boolean isSignificant()
UndoManager
将撤消或重做,所有微不足道的编辑,到下一个重要的编辑。
String getPresentationName()
String getUndoPresentationName()
getPresentationName
。
String getRedoPresentationName()
getPresentationName
。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.