NSWindowRestoration
NSWindowRestoration
протокол определяет метод, который классы восстановления должны реализовать для обработки воссоздания окон. Во время запуска объект приложения получает класс восстановления и использует restoreWindowWithIdentifier:state:completionHandler:
метод для получения нового окна, тип которого соответствует тип, сохраненный ранее. Классы, принимающие этот протокол, могут использовать предоставленную информацию, чтобы создать (или получить ссылку на) окно в новом приложении. Как часть создания окна, класс должен также создать любые связанные объекты, такие как контроллеры окна, обычно используемые для управления окном.
Наследование
Не применимый
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.7 и позже.
-
restoreWindowWithIdentifier (_: state:completionHandler:) + restoreWindowWithIdentifier:state:completionHandler:
ТребуемыйПросит класс обеспечивать новое окно для указанного идентификатора. (требуемый)
Объявление
Параметры
identifier
Уникальная интерфейсная строка идентификатора элемента, ранее связанная с окном. Используйте эту строку для определения который окно создать.
state
Объект кодера, содержащий информацию о статусе окна. Этот объект кодера содержит объединенное восстановимое состояние окна, которое может включать состояние окна, его делегата, контроллера окна и объекта документа. Можно использовать это состояние для определения который окно создать.
completionHandler
Блочный объект выполниться с результатами создания окна. Вы должны выполнить этот блок в некоторый момент, но можете сделать так после возвратов метода в случае необходимости. Этот блок берет следующие параметры:
Окно, создававшееся или
nil
если не могло бы быть создано окно.Ошибочный объект, если окно не было распознано или не могло бы быть создано по любой причине; иначе, указать
nil
.
Обсуждение
Во время запуска объект приложения использует этот метод для воссоздания окна, сохраненного во время предыдущего выполнения приложения. Ваша реализация этого метода может использовать
identifier
строка и данные вstate
объект кодера определить тип окна и связанных объектов создать. Только необходимо создать окно. Вы не должны восстанавливать конфигурацию окна с помощью предоставленного состояния. AppKit делает это для Вас при выполнении обработчика завершения с допустимым окном.Для окон, которые распознает Ваш класс восстановления, создайте (или получите), объект окна и выполняет обработчик завершения, передавая окно ему. Если Ваш класс восстановления не распознает окно, или распознает его, но не может воссоздать его по любой причине, передать ошибочный объект обработчику завершения вместо этого.
Если Вы планируете вызвать
completionHandler
после этого метода возвраты необходимо скопировать Блок, возражают себе и выпускают его, когда Вы сделаны с ним. Например, можно скопировать блок и представить его очереди для выполнения, после которого можно выпустить блок.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.