# Uses of Package
javax.swing.undo

- Packages that use javax.swing.undo
  Package | Description
  --- | ---
  javax.swing.event | Provides for events fired by Swing components.
  javax.swing.text | Provides classes and interfaces that deal with editable and noneditable text components.
  javax.swing.undo | Allows developers to provide support for undo/redo in applications such as text editors.

- Classes in javax.swing.undo used by javax.swing.event
  Class | Description
  --- | ---
  UndoableEdit | An `UndoableEdit` represents an edit.

- Classes in javax.swing.undo used by javax.swing.text
  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.
  UndoableEdit | An `UndoableEdit` represents an edit.

- Classes in javax.swing.undo used by javax.swing.undo
  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.
  StateEditable | StateEditable defines the interface for objects that can have their state undone/redone by a StateEdit.
  UndoableEdit | An `UndoableEdit` represents an edit.

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, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.