javax.swing.undo
Class CompoundEditjava.lang.Object | +--javax.swing.undo.AbstractUndoableEdit | +--javax.swing.undo.CompoundEdit
- All Implemented Interfaces:
- Serializable, UndoableEdit
- Direct Known Subclasses:
- AbstractDocument.DefaultDocumentEvent, UndoManager
- public class CompoundEdit
- extends AbstractUndoableEdit
A concrete subclass of AbstractUndoableEdit, used to assemble little UndoableEdits into great big ones.
Field Summary
protected Vector edits
The collection of UndoableEdits undone/redone en masse by this CompoundEdit.
Fields inherited from class javax.swing.undo.AbstractUndoableEdit RedoName, UndoName
Constructor Summary
CompoundEdit()
Method Summary
boolean addEdit(UndoableEdit anEdit)
If this edit is inProgress, accepts anEdit and returns true.boolean canRedo()
Returns false if isInProgress or if super returns false.boolean canUndo()
Returns false if isInProgress or if super returns false.void die()
Sends die to each subedit, in the reverse of the order that they were added.void end()
Sets inProgress to false.String getPresentationName()
Returns getPresentationName from the last UndoableEdit added to edits.String getRedoPresentationName()
Returns getRedoPresentationName from the last UndoableEdit added to edits.String getUndoPresentationName()
Returns getUndoPresentationName from the last UndoableEdit added to edits.boolean isInProgress()
Returns true if this edit is in progress--that is, it has not received end.boolean isSignificant()
Returns true if any of the UndoableEdits in edits do.protected UndoableEdit lastEdit()
Returns the last UndoableEdit in edits, or null if edits is empty.void redo()
Sends redo to all contained UndoableEdits in the order in which they were added.String toString()
Returns a string that displays and identifies this object's properties.void undo()
Sends undo to all contained UndoableEdits in the reverse of the order in which they were added.
Methods inherited from class javax.swing.undo.AbstractUndoableEdit replaceEdit
Methods inherited from class java.lang.Object clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Field Detail
edits
protected Vector edits
- The collection of UndoableEdits undone/redone en masse by this CompoundEdit.
Constructor Detail
CompoundEdit
public CompoundEdit()
Method Detail
undo
public void undo() throws CannotUndoException
- Sends undo to all contained UndoableEdits in the reverse of the order in which they were added.
- Specified by:
- undo in interface UndoableEdit
- Overrides:
- undo in class AbstractUndoableEdit
- Throws:
- CannotUndoException - if canUndo returns false
- See Also:
- AbstractUndoableEdit.canUndo()
redo
public void redo() throws CannotRedoException
- Sends redo to all contained UndoableEdits in the order in which they were added.
- Specified by:
- redo in interface UndoableEdit
- Overrides:
- redo in class AbstractUndoableEdit
- Throws:
- CannotRedoException - if canRedo returns false
- See Also:
- AbstractUndoableEdit.canRedo()
lastEdit
protected UndoableEdit lastEdit()
- Returns the last UndoableEdit in edits, or null if edits is empty.
die
public void die()
- Sends die to each subedit, in the reverse of the order that they were added.
- Specified by:
- die in interface UndoableEdit
- Overrides:
- die in class AbstractUndoableEdit
- See Also:
- die()
addEdit
public boolean addEdit(UndoableEdit anEdit)
- If this edit is inProgress, accepts anEdit and returns true.
The last edit added to this CompoundEdit is given a chance to addEdit(anEdit). If it refuses (returns false), anEdit is given a chance to replaceEdit the last edit. If anEdit returns false here, it is added to edits.
- Specified by:
- addEdit in interface UndoableEdit
- Overrides:
- addEdit in class AbstractUndoableEdit
- Parameters:
- anEdit - the edit to be added
- Returns:
- true if the edit is inProgress; otherwise returns false
- See Also:
- UndoableEdit.addEdit(javax.swing.undo.UndoableEdit)
end
public void end()
- Sets inProgress to false.
- See Also:
- canUndo(), canRedo()
canUndo
public boolean canUndo()
- Returns false if isInProgress or if super returns false.
- Specified by:
- canUndo in interface UndoableEdit
- Overrides:
- canUndo in class AbstractUndoableEdit
- Returns:
- true if this edit is alive and hasBeenDone is true
- See Also:
- isInProgress()
canRedo
public boolean canRedo()
- Returns false if isInProgress or if super returns false.
- Specified by:
- canRedo in interface UndoableEdit
- Overrides:
- canRedo in class AbstractUndoableEdit
- Returns:
- true if this edit is alive and hasBeenDone is false
- See Also:
- isInProgress()
isInProgress
public boolean isInProgress()
- Returns true if this edit is in progress--that is, it has not received end. This generally means that edits are still being added to it.
- See Also:
- end()
isSignificant
public boolean isSignificant()
- Returns true if any of the UndoableEdits in edits do. Returns false if they all return false.
- Specified by:
- isSignificant in interface UndoableEdit
- Overrides:
- isSignificant in class AbstractUndoableEdit
- Returns:
- true
- See Also:
- UndoableEdit.isSignificant()
getPresentationName
public String getPresentationName()
- Returns getPresentationName from the last UndoableEdit added to edits. If edits is empty, calls super.
- Specified by:
- getPresentationName in interface UndoableEdit
- Overrides:
- getPresentationName in class AbstractUndoableEdit
- Returns:
- the empty string ""
- See Also:
- AbstractUndoableEdit.getUndoPresentationName(), AbstractUndoableEdit.getRedoPresentationName()
getUndoPresentationName
public String getUndoPresentationName()
- Returns getUndoPresentationName from the last UndoableEdit added to edits. If edits is empty, calls super.
- Specified by:
- getUndoPresentationName in interface UndoableEdit
- Overrides:
- getUndoPresentationName in class AbstractUndoableEdit
- Returns:
- the value from the defaults table with key AbstractUndoableEdit.undoText, followed by a space, followed by getPresentationName unless getPresentationName is "" in which case, the defaults value is returned alone.
- See Also:
- AbstractUndoableEdit.getPresentationName()
getRedoPresentationName
public String getRedoPresentationName()
- Returns getRedoPresentationName from the last UndoableEdit added to edits. If edits is empty, calls super.
- Specified by:
- getRedoPresentationName in interface UndoableEdit
- Overrides:
- getRedoPresentationName in class AbstractUndoableEdit
- Returns:
- the value from the defaults table with key AbstractUndoableEdit.redoText, followed by a space, followed by getPresentationName unless getPresentationName is "" in which case, the defaults value is returned alone.
- See Also:
- AbstractUndoableEdit.getPresentationName()
toString
public String toString()
- Returns a string that displays and identifies this object's properties.
- Overrides:
- toString in class AbstractUndoableEdit
- Returns:
- a String representation of this object