Module java.desktop
Package javax.swing.text

## Class DefaultStyledDocument.AttributeUndoableEdit

- java.lang.Object
- - javax.swing.undo.AbstractUndoableEdit
  - - javax.swing.text.DefaultStyledDocument.AttributeUndoableEdit

- All Implemented Interfaces:
    `Serializable`, `UndoableEdit`
  Enclosing class:
    DefaultStyledDocument

      public static class DefaultStyledDocument.AttributeUndoableEdit
      extends AbstractUndoableEdit

  An UndoableEdit used to remember AttributeSet changes to an Element.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected AttributeSet` | `copy` | Copy of the AttributeSet the Element contained.
    `protected Element` | `element` | Affected Element.
    `protected boolean` | `isReplacing` | true if all the attributes in the element were removed first.
    `protected AttributeSet` | `newAttributes` | AttributeSet containing additional entries, must be non-mutable!

    - ### Fields declared in class javax.swing.undo.AbstractUndoableEdit

      `RedoName, UndoName`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AttributeUndoableEdit​(Element element, AttributeSet newAttributes, boolean isReplacing)` | Constructs an `AttributeUndoableEdit`.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `redo()` | Redoes a change.
    `void` | `undo()` | Undoes a change.

    - ### Methods declared in class javax.swing.undo.AbstractUndoableEdit

      `addEdit, canRedo, canUndo, die, getPresentationName, getRedoPresentationName, getUndoPresentationName, isSignificant, replaceEdit, toString`

    - ### Methods declared in class java.lang.Object

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

- - ### Field Detail

    - #### newAttributes

          protected AttributeSet newAttributes

      AttributeSet containing additional entries, must be non-mutable!

    - #### copy

          protected AttributeSet copy

      Copy of the AttributeSet the Element contained.

    - #### isReplacing

          protected boolean isReplacing

      true if all the attributes in the element were removed first.

    - #### element

          protected Element element

      Affected Element.

  - ### Constructor Detail

    - #### AttributeUndoableEdit

          public AttributeUndoableEdit​(Element element,
                                       AttributeSet newAttributes,
                                       boolean isReplacing)

      Constructs an `AttributeUndoableEdit`.
      Parameters:
        `element` - the element
        `newAttributes` - the new attributes
        `isReplacing` - true if all the attributes in the element were removed first.

  - ### Method Detail

    - #### redo

          public void redo()
                    throws CannotRedoException

      Redoes a change.
      Specified by:
        `redo` in interface `UndoableEdit`
      Overrides:
        `redo` in class `AbstractUndoableEdit`
      Throws:
        `CannotRedoException` - if the change cannot be redone
      See Also:
        `AbstractUndoableEdit.canRedo()`

    - #### undo

          public void undo()
                    throws CannotUndoException

      Undoes a change.
      Specified by:
        `undo` in interface `UndoableEdit`
      Overrides:
        `undo` in class `AbstractUndoableEdit`
      Throws:
        `CannotUndoException` - if the change cannot be undone
      See Also:
        `AbstractUndoableEdit.canUndo()`