Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing.undo
Interface UndoableEdit

All Known Implementing Classes:
  AbstractUndoableEdit

public interface UndoableEdit

An object representing an edit that has been done, and that can be undone and redone.

Method Summary
`boolean` | `addEdit(UndoableEdit anEdit)` This `UndoableEdit` should absorb `anEdit` if it can.
`boolean` | `canRedo()` True if it is still possible to redo this operation.
`boolean` | `canUndo()` True if it is still possible to undo this operation.
`void` | `die()` May be sent to inform an edit that it should no longer be used.
`String` | `getPresentationName()` Provides a localized, human readable description of this edit suitable for use in, say, a change log.
`String` | `getRedoPresentationName()` Provides a localized, human readable description of the redoable form of this edit, e.g.
`String` | `getUndoPresentationName()` Provides a localized, human readable description of the undoable form of this edit, e.g.
`boolean` | `isSignificant()` Returns false if this edit is insignificant--for example one that maintains the user's selection, but does not change any model state.
`void` | `redo()` Re-apply the edit, assuming that it has been undone.
`boolean` | `replaceEdit(UndoableEdit anEdit)` Returns true if this `UndoableEdit` should replace `anEdit`.
`void` | `undo()` Undo the edit that was made.

Method Detail

### undo

    public void undo()
              throws CannotUndoException

  Undo the edit that was made.

    `CannotUndoException`

### canUndo

    public boolean canUndo()

  True if it is still possible to undo this operation.

### redo

    public void redo()
              throws CannotRedoException

  Re-apply the edit, assuming that it has been undone.

    `CannotRedoException`

### canRedo

    public boolean canRedo()

  True if it is still possible to redo this operation.

### die

    public void die()

  May be sent to inform an edit that it should no longer be used. This is a useful hook for cleaning up state no longer needed once undoing or redoing is impossible--for example, deleting file resources used by objects that can no longer be undeleted. `UndoManager` calls this before it dequeues edits. Note that this is a one-way operation. There is no "un-die" method.

  See Also:
    `CompoundEdit.die()`

### addEdit

    public boolean addEdit(UndoableEdit anEdit)

  This `UndoableEdit` should absorb `anEdit` if it can. Returns true if has been incorporated, false if it has not.

  Typically the receiver is already in the queue of a `UndoManager` (or other `UndoableEditListener`), and is being given a chance to incorporate `anEdit` rather than letting it be added to the queue in turn.

  If true is returned, from now on `anEdit` must return false from `canUndo` and `canRedo`, and must throw the appropriate exception on `undo` or `redo`.

  Parameters:
    `anEdit` - the edit to be added

### replaceEdit

    public boolean replaceEdit(UndoableEdit anEdit)

  Returns true if this `UndoableEdit` should replace `anEdit`. The receiver should incorporate `anEdit`'s state before returning true.

  This message is the opposite of addEdit--anEdit has typically already been queued in a `UndoManager` (or other UndoableEditListener), and the receiver is being given a chance to take its place.

  If true is returned, from now on anEdit must return false from canUndo() and canRedo(), and must throw the appropriate exception on undo() or redo().

### isSignificant

    public boolean isSignificant()

  Returns false if this edit is insignificant--for example one that maintains the user's selection, but does not change any model state. This status can be used by an `UndoableEditListener` (like UndoManager) when deciding which UndoableEdits to present to the user as Undo/Redo options, and which to perform as side effects of undoing or redoing other events.

### getPresentationName

    public String getPresentationName()

  Provides a localized, human readable description of this edit suitable for use in, say, a change log.

### getUndoPresentationName

    public String getUndoPresentationName()

  Provides a localized, human readable description of the undoable form of this edit, e.g. for use as an Undo menu item. Typically derived from `getDescription`.

### getRedoPresentationName

    public String getRedoPresentationName()

  Provides a localized, human readable description of the redoable form of this edit, e.g. for use as a Redo menu item. Typically derived from `getPresentationName`.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.