Класс StateEdit

Все реализованные интерфейсы:
Serializable, UndoableEdit
public class StateEdit
extends AbstractUndoableEdit

StateEdit — это общее редактирование для объектов, которые изменяют состояние. Редактируемые объекты должны соответствовать интерфейсу StateEditable.

Этот класс редактирования работает, запрашивая у объекта сохранение его состояния в Hashtables до и после редактирования. При отмене или повторном выполнении объект получает указание восстановить свое состояние из этих Hashtables.

Редактирование состояния используется следующим образом:
// Create the edit during the "before" state of the object
      StateEdit newEdit = new StateEdit(myObject);
      // Modify the object
      myObject.someStateModifyingMethod();
      // "end" the edit when you are done modifying the object
      newEdit.end();

Обратите внимание, что по завершении StateEdit из Hashtables удаляются избыточные состояния — хэш-таблица состояния не гарантирует, что она будет содержать все ключи/значения, помещенные в нее при сохранении состояния!

См. также:
StateEditable, Сериализованная форма

Поля

Модификатор и типПолеОписание
protected StateEditableobject

Редактируемый объект

protected Hashtable<Object,​Object>postState

Информация о состоянии после редактирования

protected Hashtable<Object,​Object>preState

Информация о состоянии до редактирования

protected static StringRCSID

Устаревший идентификатор версии RCS.

protected StringundoRedoName

Имя представления отмены/повторного выполнения

Поля, объявленные в классе javax.swing.undo.AbstractUndoableEdit

RedoName, UndoName

Конструкторы

КонструкторОписание
StateEdit​(StateEditable anObject)

Создать и вернуть новый StateEdit.

StateEdit​(StateEditable anObject, String name)

Создать и вернуть новый StateEdit с именем представления.

Методы

Модификатор и типМетодОписание
voidend()

Получает состояние объекта StateEditable после редактирования и завершает редактирование.

StringgetPresentationName()

Получает имя представления для данного редактирования

protected voidinit​(StateEditable anObject, String name)

Инициализировать редактирование состояния.

voidredo()

Уведомляет редактируемый объект о применении состояния после редактирования

protected voidremoveRedundantState()

Удаляет избыточные ключи/значения в хэш-таблицах состояния.

voidundo()

Уведомляет редактируемый объект о применении состояния перед редактированием

Методы, объявленные в классе javax.swing.undo.AbstractUndoableEdit

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

Методы, объявленные в классе java.lang.Object

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

Поля

RCSID

protected static final String RCSID

Устаревший идентификатор версии RCS.

См. также:
Постоянные значения полей

object

protected StateEditable object

Редактируемый объект

preState

protected Hashtable<Object,Object> preState

Информация о состоянии до редактирования

postState

protected Hashtable<Object,Object> postState

Информация о состоянии после редактирования

undoRedoName

protected String undoRedoName

Имя представления отмены/повторного выполнения

Конструкторы

StateEdit

public StateEdit(StateEditable anObject)

Создать и вернуть новый StateEdit.

Параметры:
anObject - Объект, за которым нужно следить для изменения состояния
См. также:
StateEdit

StateEdit

public StateEdit(StateEditable anObject,
                 String name)

Создать и вернуть новый StateEdit с именем представления.

Параметры:
anObject - Объект, за которым нужно следить для изменения состояния
name - Имя представления, которое будет использоваться для этого редактирования
См. также:
StateEdit

Методы

init

protected void init(StateEditable anObject,
                    String name)

Инициализировать редактирование состояния.

Параметры:
anObject - Объект, за которым нужно следить для изменения состояния
name - Имя представления, которое будет использоваться для этого редактирования

end

public void end()

Получает состояние объекта StateEditable после редактирования и завершает редактирование.

undo

public void undo()

Уведомляет редактируемый объект о применении состояния перед редактированием

Определено в:
undo в интерфейсе UndoableEdit
Переопределяет:
undo в классе AbstractUndoableEdit
См. также:
AbstractUndoableEdit.canUndo()

redo

public void redo()

Уведомляет редактируемый объект о применении состояния после редактирования

Определено в:
redo в интерфейсе UndoableEdit
Переопределяет:
redo в классе AbstractUndoableEdit
См. также:
AbstractUndoableEdit.canRedo()

getPresentationName

public String getPresentationName()

Получает имя представления для данного редактирования

Определено в:
getPresentationName в интерфейсе UndoableEdit
Переопределяет:
getPresentationName в классе AbstractUndoableEdit
Возвращает:
пустую строку ""
См. также:
AbstractUndoableEdit.getUndoPresentationName(), AbstractUndoableEdit.getRedoPresentationName()

removeRedundantState

protected void removeRedundantState()

Удаляет избыточные ключи/значения в хэш-таблицах состояния.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/undo/StateEdit.html

Spec-Zone .ru
спецификации, руководства, описания, API