javax.swing.undo (Java SE 25 & JDK 25)
Description: declaration: module: java.desktop, package: javax.swing.undo
Keywords: javax.swing.undo package

# Package javax.swing.undo

package javax.swing.undo
Allows developers to provide support for undo/redo in applications such as text editors.

Note: Most of the Swing API is not thread safe. For details, see Concurrency in Swing, a section in The Java Tutorial.

## Related Documentation

For overviews, tutorials, examples, guides, and tool documentation, please see:

- Implementing Undo and Redo, a section in The Java Tutorial

Since:
  1.2

- Related Packages
  Package
  Description
  javax.swing
  Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
- Class
  Description
  AbstractUndoableEdit
  An abstract implementation of `UndoableEdit`, implementing simple responses to all boolean methods in that interface.
  CannotRedoException
  Thrown when an UndoableEdit is told to `redo()` and can't.
  CannotUndoException
  Thrown when an UndoableEdit is told to `undo()` and can't.
  CompoundEdit
  A concrete subclass of AbstractUndoableEdit, used to assemble little UndoableEdits into great big ones.
  StateEdit
  StateEdit is a general edit for objects that change state.
  StateEditable
  StateEditable defines the interface for objects that can have their state undone/redone by a StateEdit.
  UndoableEdit
  An `UndoableEdit` represents an edit.
  UndoableEditSupport
  A support class used for managing `UndoableEdit` listeners.
  UndoManager
  `UndoManager` manages a list of `UndoableEdits`, providing a way to undo or redo the appropriate edits.