Расширение Undo
Объект Undo предоставляет ряд методов для управления отменой и повторением изменений. Для подробного объяснения, ознакомьтесь со статьей Функциональность Отмены/Повтора.
Методы
Ниже приведены методы, доступные через объект gantt.ext.undo:
Undo() / Redo()
- undo (): void - отменяет изменения, внесенные в грид диаграммы Ганта.
gantt.ext.undo.undo();
- redo (): void - повторно применяет изменения, которые были отменены.
gantt.ext.undo.redo();
getUndoStack() / getRedoStack()
- getUndoStack (): UndoRedoAction[] - извлекает коллекцию сохраненных действий отмены.
var stack = gantt.ext.undo.getUndoStack();
- getRedoStack (): UndoRedoAction[] - извлекает коллекцию сохраненных действий повтора.
var stack = gantt.ext.undo.getRedoStack();
Возвращаемый стек представляет собой массив пользовательских действий. Каждое действие включает несколько команд, и каждая команда является объектом, содержащим следующие свойства:
- type - (string) определяет тип команды: "add/remove/update".
- entity - (string) указывает тип объекта, который был изменен: "task" или "link".
- value - (object) представляет измененный объект задачи/ссылки.
- oldValue - (object) представляет объект задачи/ссылки до изменения.
setUndoStack() / setRedoStack()
- setUndoStack (stack): void - устанавливает новую коллекцию действий отмены.
- stack - (UndoRedoAction[]) - стек действий отмены.
gantt.ext.undo.setUndoStack(stack);
- setRedoStack (stack): void - устанавливает новую коллекцию действий повтора.
- stack - (UndoRedoAction[]) - стек действий повтора.
gantt.ext.undo.setRedoStack(stack);
clearUndoStack() / clearRedoStack()
- clearUndoStack (): void - удаляет все сохраненные действия отмены.
gantt.ext.undo.clearUndoStack();
- clearRedoStack (): void - удаляет все сохраненные действия повтора.
gantt.ext.undo.clearRedoStack();
saveState()
- saveState (id, entityType): boolean - сохраняет текущее состояние задачи или ссылки перед внесением изменений.
- id - (string | number) - ID задачи или ссылки.
- type - (string) - указывает тип объекта (либо "task", либо "link").
gantt.ext.undo.saveState(1, "task");
gantt.ext.undo.saveState(1, "link");
Более подробную информацию можно найти в статье Undoing/Redoing changes made from code.
К началу