# 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.