Выполнение отмены и восстановления
Выполнение отмены и восстановления обычно так же просто как отправка undo
и redo
сообщения к NSUndoManager
объект. undo
обменивайтесь сообщениями закрывает последнюю открытую группу отмены и затем применяет все операции отмены в той группе (записывающий любые операции отмены как операции восстановления вместо этого). redo
сообщение аналогично применяет все операции восстановления на главную группу восстановления.
undo
метод предназначается для отмены групп верхнего уровня и не должен использоваться для вложенных групп отмены. Если какие-либо открытые, вложенные группы отмены находятся на штабеле когда undo
вызывается, это повышает исключение. Для отмены вложенных групп необходимо явно закрыть группу с endUndoGrouping
сообщение, затем используйте undoNestedGroup
отменить его. Отметьте также это, если Вы выключаете автоматическую группировку событием с setGroupsByEvent:
, необходимо явно закрыть текущую группу отмены с endUndoGrouping
прежде, чем вызвать любой метод отмены.