Класс StateEdit
- java.lang.Object
-
- javax.swing.undo.AbstractUndoableEdit
-
- javax.swing.undo.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 StateEditable | object | Редактируемый объект |
protected Hashtable<Object,Object> | postState | Информация о состоянии после редактирования |
protected Hashtable<Object,Object> | preState | Информация о состоянии до редактирования |
protected static String | RCSID | Устаревший идентификатор версии RCS. |
protected String | undoRedoName | Имя представления отмены/повторного выполнения |
Поля, объявленные в классе javax.swing.undo.AbstractUndoableEdit
RedoName, UndoNameКонструкторы
| Конструктор | Описание |
|---|---|
StateEdit(StateEditable anObject) | Создать и вернуть новый StateEdit. |
StateEdit(StateEditable anObject,
String name) | Создать и вернуть новый StateEdit с именем представления. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | end() | Получает состояние объекта StateEditable после редактирования и завершает редактирование. |
String | getPresentationName() | Получает имя представления для данного редактирования |
protected void | init(StateEditable anObject,
String name) | Инициализировать редактирование состояния. |
void | redo() | Уведомляет редактируемый объект о применении состояния после редактирования |
protected void | removeRedundantState() | Удаляет избыточные ключи/значения в хэш-таблицах состояния. |
void | undo() | Уведомляет редактируемый объект о применении состояния перед редактированием |
Методы, объявленные в классе 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