# Package javax.swing.undo

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

See: Description

Interface Summary
Interface | Description
--- | ---
StateEditable | StateEditable defines the interface for objects that can have their state undone/redone by a StateEdit.
UndoableEdit | An `UndoableEdit` represents an edit.

Class Summary
Class | Description
--- | ---
AbstractUndoableEdit | An abstract implementation of `UndoableEdit`, implementing simple responses to all boolean methods in that interface.
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.
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.

Exception Summary
Exception | Description
--- | ---
CannotRedoException | Thrown when an UndoableEdit is told to `redo()` and can't.
CannotUndoException | Thrown when an UndoableEdit is told to `undo()` and can't.

## Package javax.swing.undo Description

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 Threads and 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

Copyright © 1993, 2017, Oracle and/or its affiliates. All rights reserved.