javax.swing.undo

## Class UndoableEditSupport

- java.lang.Object
- - javax.swing.undo.UndoableEditSupport

    public class UndoableEditSupport
    extends Object

A support class used for managing `UndoableEdit` listeners.

### Field Summary

Fields
`protected CompoundEdit` `compoundEdit`
`protected Vector<UndoableEditListener>` `listeners`
`protected Object` `realSource`
`protected int` `updateLevel`

### Constructor Summary

Constructors
Constructor and Description
`UndoableEditSupport()` Constructs an `UndoableEditSupport` object.
`UndoableEditSupport(Object r)` Constructs an `UndoableEditSupport` object.

### Method Summary

Methods
`protected void` `_postEdit(UndoableEdit e)` Called only from `postEdit` and `endUpdate`.
`void` `addUndoableEditListener(UndoableEditListener l)` Registers an `UndoableEditListener`.
`void` `beginUpdate()`
`protected CompoundEdit` `createCompoundEdit()` Called only from `beginUpdate`.
`void` `endUpdate()` DEADLOCK WARNING: Calling this method may call `undoableEditHappened` in all listeners.
`UndoableEditListener[]` `getUndoableEditListeners()` Returns an array of all the `UndoableEditListener`s added to this UndoableEditSupport with addUndoableEditListener().
`int` `getUpdateLevel()` Returns the update level value.
`void` `postEdit(UndoableEdit e)` DEADLOCK WARNING: Calling this method may call `undoableEditHappened` in all listeners.
`void` `removeUndoableEditListener(UndoableEditListener l)` Removes an `UndoableEditListener`.
`String` `toString()` Returns a string that displays and identifies this object's properties.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### updateLevel

    protected int updateLevel

#### compoundEdit

    protected CompoundEdit compoundEdit

#### listeners

    protected Vector<UndoableEditListener> listeners

#### realSource

    protected Object realSource

### Constructor Detail

#### UndoableEditSupport

    public UndoableEditSupport()

Constructs an `UndoableEditSupport` object.

#### UndoableEditSupport

    public UndoableEditSupport(Object r)

Constructs an `UndoableEditSupport` object.

Parameters:
  `r` - an `Object`

### Method Detail

#### addUndoableEditListener

    public void addUndoableEditListener(UndoableEditListener l)

Registers an `UndoableEditListener`. The listener is notified whenever an edit occurs which can be undone.

Parameters:
  `l` - an `UndoableEditListener` object
See Also:
  `removeUndoableEditListener(javax.swing.event.UndoableEditListener)`

#### removeUndoableEditListener

    public void removeUndoableEditListener(UndoableEditListener l)

Removes an `UndoableEditListener`.

Parameters:
  `l` - the `UndoableEditListener` object to be removed
See Also:
  `addUndoableEditListener(javax.swing.event.UndoableEditListener)`

#### getUndoableEditListeners

    public UndoableEditListener[] getUndoableEditListeners()

Returns an array of all the `UndoableEditListener`s added to this UndoableEditSupport with addUndoableEditListener().

Returns:
  all of the `UndoableEditListener`s added or an empty array if no listeners have been added
Since:
  1.4

#### _postEdit

    protected void _postEdit(UndoableEdit e)

Called only from `postEdit` and `endUpdate`. Calls `undoableEditHappened` in all listeners. No synchronization is performed here, since the two calling methods are synchronized.

#### postEdit

    public void postEdit(UndoableEdit e)

DEADLOCK WARNING: Calling this method may call `undoableEditHappened` in all listeners. It is unwise to call this method from one of its listeners.

#### getUpdateLevel

    public int getUpdateLevel()

Returns the update level value.

Returns:
  an integer representing the update level

#### beginUpdate

    public void beginUpdate()

#### createCompoundEdit

    protected CompoundEdit createCompoundEdit()

Called only from `beginUpdate`. Exposed here for subclasses' use.

#### endUpdate

    public void endUpdate()

DEADLOCK WARNING: Calling this method may call `undoableEditHappened` in all listeners. It is unwise to call this method from one of its listeners.

#### toString

    public String toString()

Returns a string that displays and identifies this object's properties.

Overrides:
  `toString` in class `Object`
Returns:
  a `String` representation of this object

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