javax.swing.undo
public class CompoundEdit extends AbstractUndoableEdit
UndoableEdits.
The use of a CompoundEdit is divided in two separate
phases.
CompoundEdit is
initialized. After a new instance of CompoundEdit has
been created, {@link #addEdit(UndoableEdit)} is called for each
element of the compound. To terminate the initialization phase,
call {@link #end()}.CompoundEdit can be
used, typically by invoking {@link #undo()} and
{@link #redo()}.| Field Summary | |
|---|---|
| protected Vector<UndoableEdit> | edits
The UndoableEdits being combined into a compound
editing action. |
| Constructor Summary | |
|---|---|
| CompoundEdit()
Constructs a new CompoundEdit. | |
| Method Summary | |
|---|---|
| boolean | addEdit(UndoableEdit edit)
Incorporates another editing action into this one, thus forming a
combined edit.
|
| boolean | canRedo()
Determines whether it would be possible to redo this editing
action. |
| boolean | canUndo()
Determines whether it would be possible to undo this editing
action. |
| void | die()
Informs this edit action, and all compound edits, that they will
no longer be used. |
| void | end()
Informs this CompoundEdit that its construction
phase has been completed. |
| String | getPresentationName()
Returns a human-readable, localized name that describes this
editing action and can be displayed to the user.
|
| String | getRedoPresentationName()
Calculates a localized message text for presenting the redo
action to the user.
|
| String | getUndoPresentationName()
Calculates a localized message text for presenting the undo
action to the user.
|
| boolean | isInProgress()
Determines whether the initial construction phase of this
CompoundEdit is still in progress. |
| boolean | isSignificant()
Determines whether this editing action is significant enough for
being seperately undoable by the user. |
| protected UndoableEdit | lastEdit()
Returns the the UndoableEdit that was last added to
this compound. |
| void | redo()
Redoes all edits that are part of of this
CompoundEdit. |
| String | toString()
Calculates a string that may be useful for debugging. |
| void | undo()
Undoes all edits that are part of of this
CompoundEdit. |
UndoableEdits being combined into a compound
editing action.If this edit’s {@link #end()} method has been called
before, false is returned immediately. Otherwise,
the {@linkplain #lastEdit() last added edit} is given the
opportunity to {@linkplain UndoableEdit#addEdit(UndoableEdit)
incorporate} edit. If this fails, edit
is given the opportunity to {@linkplain
UndoableEdit#replaceEdit(UndoableEdit) replace} the last added
edit. If this fails as well, edit gets added as a
new compound to {@link #edits}.
Parameters: edit the editing action being added.
Returns: true if edit could somehow be
incorporated; false if edit has not
been incorporated because {@link #end()} was called before.
true if {@link #end()}
has been called on this CompoundEdit, {@link #die()}
has not yet been called, and the edit has not been redone
already.
Returns: true to indicate that this action can be
redone; false otherwise.
true if {@link #end()}
has been called on this CompoundEdit, {@link #die()}
has not yet been called, and the edit has not been undone
already.
Returns: true to indicate that this action can be
undone; false otherwise.
The compound elements will receive the
die message in the reverse order of addition.
CompoundEdit that its construction
phase has been completed. After this method has been called,
{@link #undo()} and {@link #redo()} may be called, {@link
#isInProgress()} will return false, and all attempts
to {@linkplain #addEdit(UndoableEdit) add further edits} will
fail.The implementation delegates the call to the {@linkplain #lastEdit() last added edit action}. If no edit has been added yet, the inherited implementation will be invoked, which always returns an empty string.
The implementation delegates the call to the {@linkplain #lastEdit() last added edit action}. If no edit has been added yet, the {@linkplain AbstractUndoableEdit#getRedoPresentationName() inherited implementation} will be invoked.
The implementation delegates the call to the {@linkplain #lastEdit() last added edit action}. If no edit has been added yet, the {@linkplain AbstractUndoableEdit#getUndoPresentationName() inherited implementation} will be invoked.
CompoundEdit is still in progress. During this
phase, edits {@linkplain #addEdit(UndoableEdit) may be
added}. After initialization has been terminated by calling
{@link #end()}, {@link #undo()} and {@link #redo()} can be used.
Returns: true if the initialization phase is still in
progress; false if {@link #end()} has been called.
See Also: end
A CompoundEdit is significant if any of its
elements are significant.
UndoableEdit that was last added to
this compound.CompoundEdit. The compound elements will receive the
undo message in the same order as they were added.
Throws: CannotRedoException if {@link #canRedo()} returns
false. This can happen if {@link #end()} has not
been called on this CompoundEdit, or if this edit
has already been redone.
CompoundEdit. The compound elements will receive the
undo message in the reverse order of addition.
Throws: CannotUndoException if {@link #canUndo()} returns
false. This can happen if {@link #end()} has not
been called on this CompoundEdit, or if this edit
has already been undone.