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

Библиотека разработчика Mac

Разработчик

Ссылка платформы AppKit ссылка класса NSDocument

Опции
Развертывание Target:

На этой странице
Язык:

NSDocument

NSDocument абстрактный класс определяет интерфейс для документов OS X. Документ является объектом, который может внутренне представлять данные, выведенные на экран в окне, и это может считать данные из и записать данные в пакет файла или файл. Документы создают и управляют одним или более контроллерами окна и поочередно управляются контроллером документа. Документы реагируют на сообщения действия первого респондента, чтобы сохранить, вернуться, и распечатать их данные.

Концептуально, документ является контейнером для объема информации, идентифицированного именем, под которым он сохранен в дисковом файле. В этом смысле, однако, документ не является тем же как файлом, но является объектом в памяти, владеющей и управляющей данными документа. В контексте AppKit документ является экземпляром пользовательского NSDocument подкласс, знающий, как представлять внутренне в одном или более форматах, персистентные данные, выведенные на экран в окнах.

Документ может считать те данные из файла и записать его в файл. Это - также цель первого респондента для многих команд меню, связанных с документами, теми, которые Сохраняют, Возвращаются, и Печать. Документ управляет отредактированным состоянием своего окна и устанавливается для выполнения операций восстановления и отмены. Когда окно закрывается, документ просят перед делегатом окна утвердить закрытие.

NSDocument одна из триады классов AppKit, устанавливающих архитектурное основание для основанных на документе приложений (другие быть NSDocumentController и NSWindowController).

Разделение на подклассы NSDocument

NSDocument класс разработан, чтобы быть разделенным на подклассы. Т.е. NSDocument класс абстрактен, и Ваше приложение должно создать по крайней мере один NSDocument разделите на подклассы для использования архитектуры документа. Создать полезное NSDocument подкласс, необходимо переопределить некоторые методы, и можно дополнительно переопределить других.

NSDocument сам класс знает, как обработать данные документа как недифференцируемые глыбы; несмотря на то, что это понимает, что эти глыбы вводятся, это ничего не знает об определенных типах. В их переопределениях основанного на данных чтения и методов записи, подклассы должны добавить знание определенных типов и как данные собственного типа документа структурированы внутренне. Подклассы также ответственны за создание контроллеров окна, управляющих окнами документа и для реализации отмены и восстановления. NSDocument класс заботится о большой части из остальных, включая общее управление состоянием документа.

См. Основанное на документе Руководство по программированию Приложения для Mac для получения дополнительной информации о создании подклассов NSDocument, особенно список примитивных методов, которые подклассы должны переопределить и те, которых можно дополнительно переопределить.

Документ, сохраняющий поведение

NSDocument класс реализует сохранение документа в пути, сохраняющем, если это возможно, различные атрибуты каждого документа, включая:

  • Дата создания

  • Полномочия/полномочия

  • Расположение значка документа в окне Icon View Finder его родительской папки

  • Значение Настройки внутреннего абонента Шоу документа

Заботу также соблюдают для сохранения документов в пути, не повреждающем создаваемых пользователями псевдонимов, которые могут указать на документы. В результате некоторые методы в любом классе NSDocument может быть вызван с параметрами, не имеющими того же значения, как они сделали в ранних выпусках OS X. Это важно это переопределения writeToURL:ofType:error: и writeToURL:ofType:forSaveOperation:originalContentsURL:error: не сделайте предположения о путях к файлам переданными как параметры, включая:

  • Расположение, в которое пишется файл. Это расположение могло бы быть скрытым временным каталогом.

  • Имя записанного файла. Возможно, что этот файл не имеет никакого очевидного отношения к названию документа.

  • Отношение любого передаваемого файла, включая исходный файл, к значению в fileURL.

При обновлении приложения для соединения против OS X v10.5 имейте в виду, что является обычно более надлежащим вызвать в приложении коде одном из NSDocument save... методы, чем один из write... методы. write... методы там прежде всего для Вас для переопределения. saveToURL:ofType:forSaveOperation:error: метод, предназначающийся всегда, чтобы быть вызванным во время сохранения документа, устанавливает fileModificationDate свойство с новой датой модификации файла после того, как это было записано (для NSSaveOperation и NSSaveAsOperation только).

Аналогично, является обычно более надлежащим вызвать в Вашем приложении коде одном из NSDocument revert... методы, чем один из read... методы. read... методы там прежде всего для Вас для переопределения. revertToContentsOfURL:ofType:error: метод, предназначающийся всегда, чтобы быть вызванным во время перечитывания открытого документа, устанавливает fileModificationDate свойство с датой модификации файла после того, как это было считано.

Поддержка iCloud

NSDocument класс реализует поддержку координации файла, требующуюся для поддерживающего iCloud, основанного на документе приложения Mac (см. Как Работы Хранения документов iCloud в Руководстве по проектированию iCloud). Кроме того, методы этого класса для перемещения и переименования документов, новых в OS X v10.8, гарантируют, что эти операции выполняются безопасным способом для поддерживающих iCloud приложений.

Многожильные соображения

В OS X v10.6 и позже, NSDocument поддерживает возможность открыть многократные документы одновременно. Однако эта поддержка требует сотрудничества объекта документа. Если Ваш подкласс документа в состоянии считать определенные типы документов независимо от других аналогичных документов, необходимо переопределить canConcurrentlyReadDocumentsOfType: метод класса и возврат YEStrue для надлежащих типов документов. Если определенные типы документов полагаются на информацию об общем состоянии, однако, необходимо возвратиться NOfalse для тех типов.

Наследование


Оператор импорта


Swift

import AppKit

Objective C

@import AppKit;

Доступность


Доступный в OS X v10.0 и позже.
  • init () - init Определяемый инициализатор

    Инициализирует и возвращает пустое NSDocument объект.

    Объявление

    Swift

    init()

    Objective C

    - (instancetype)init

    Возвращаемое значение

    Инициализированный NSDocument объект.

    Обсуждение

    Этот инициализатор (определяемый инициализатор) вызывается каждым из другого NSDocument методы инициализации.

    Можно переопределить этот метод для выполнения инициализации, которая должна быть сделана и при создании новых пустых документов и при открытии существующих документов. Ваше переопределение должно вызвать super инициализировать частный NSDocument переменные экземпляра. Это никогда не должно возвращаться nil. Если ошибка может произойти во время объектной инициализации, проверьте на ошибку в переопределении initWithType:error:, initWithContentsOfURL:ofType:error:, или initForURL:withContentsOfURL:ofType:error:, потому что могут возвратиться те методы NSError объекты.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Инициализирует документ, расположенный URL указанного типа.

    Объявление

    Swift

    convenience init?(contentsOfURL absoluteURL: NSURL, ofType typeName: String, error outError: NSErrorPointer)

    Objective C

    - (instancetype)initWithContentsOfURL:(NSURL *)absoluteURL ofType:(NSString *)typeName error:(NSError **)outError

    Параметры

    absoluteURL

    URL, из которого получено содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если инициализация неуспешна, указатель на ошибочный объект, инкапсулирующий причину, документ не мог быть создан.

    Возвращаемое значение

    Инициализированный NSDocument объект, или, если документ не мог бы быть создан, nil.

    Обсуждение

    Можно переопределить этот метод для настройки повторного открытия сохраненных автоматически документов.

    Этот метод вызывается NSDocumentController метод makeDocumentWithContentsOfURL:ofType:error:. Реализация по умолчанию этого вызовы метода init и readFromURL:ofType:error: методы и наборы оценивают за fileURL, fileType, и fileModificationDate свойства.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает initWithContentsOfFile:ofType: если это переопределяется, и URL использует file: схема. Это все еще обновляет fileModificationDate свойство в этой ситуации.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Инициализирует документ, расположенный URL указанного типа, но путем чтения содержания для документа от различного URL.

    Объявление

    Swift

    convenience init?(forURL absoluteDocumentURL: NSURL?, withContentsOfURL absoluteDocumentContentsURL: NSURL, ofType typeName: String, error outError: NSErrorPointer)

    Objective C

    - (instancetype)initForURL:(NSURL *)absoluteDocumentURL withContentsOfURL:(NSURL *)absoluteDocumentContentsURL ofType:(NSString *)typeName error:(NSError **)outError

    Параметры

    absoluteDocumentURL

    URL, где расположен документ.

    absoluteDocumentContentsURL

    URL, из которого получено содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если инициализация неуспешна, указатель на ошибочный объект, инкапсулирующий причину, документ не мог быть создан.

    Возвращаемое значение

    Инициализированный NSDocument объект, или, если документ не мог бы быть создан, nil.

    Обсуждение

    absoluteDocumentURL параметр nil когда сохраненный автоматически документ явно никогда не сохранялся, если инициализация является частью повторного открытия сохраненного автоматически документа.

    Во время повторного открытия сохраненных автоматически документов этот метод использует следующий NSDocumentChangeType постоянный, чтобы указать, что вновь открывается сохраненный автоматически документ:

    NSChangeReadOtherContents

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Инициализирует документ указанного типа.

    Объявление

    Swift

    convenience init?(type typeName: String, error outError: NSErrorPointer)

    Objective C

    - (instancetype)initWithType:(NSString *)typeName error:(NSError **)outError

    Параметры

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если инициализация неуспешна, указатель на ошибочный объект, инкапсулирующий причину, документ не мог быть создан.

    Возвращаемое значение

    Инициализированный NSDocument объект, или, если документ не мог бы быть создан, nil.

    Обсуждение

    Реализация по умолчанию этого метода просто вызывает [self init] и [self setFileType:typeName].

    Можно переопределить этот метод для выполнения инициализации, которая должна быть сделана при создании новых документов, но не должна быть сделана при открытии существующих документов. Ваше переопределение должно обычно вызывать super, или по крайней мере это должно вызвать init, NSDocument определяемый инициализатор, для инициализации NSDocument частные переменные экземпляра.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Создает и возвращает объект данных, содержащий содержание документа, отформатированного к указанному типу.

    Объявление

    Swift

    func dataOfType(_ typeName: String, error outError: NSErrorPointer) -> NSData?

    Objective C

    - (NSData *)dataOfType:(NSString *)typeName error:(NSError **)outError

    Параметры

    typeName

    Строка, идентифицирующая тип документа.

    outError

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

    Возвращаемое значение

    Объект данных, содержащий содержание документа, или, если объект данных не мог бы быть создан, nil.

    Обсуждение

    Реализация по умолчанию этого метода выдает исключение потому что по крайней мере один из методов записи (этот метод, writeToURL:ofType:error:, fileWrapperOfType:error:, или writeToURL:ofType:forSaveOperation:originalContentsURL:error:) должен быть переопределен.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает dataRepresentationOfType:typeName на self если dataRepresentationOfType: переопределяется.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Создает и возвращает обертку файла, содержащую содержание документа, отформатированного к указанному типу.

    Объявление

    Swift

    func fileWrapperOfType(_ typeName: String, error outError: NSErrorPointer) -> NSFileWrapper?

    Objective C

    - (NSFileWrapper *)fileWrapperOfType:(NSString *)typeName error:(NSError **)outError

    Параметры

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если обертка файла не могла бы быть создана, указатель на ошибочный объект, инкапсулирующий причину, это не могло быть создано.

    Возвращаемое значение

    Обертка файла, содержащая содержание документа, или, если обертка файла не могла бы быть создана, nil.

    Обсуждение

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, если fileWrapperRepresentationOfType: переопределяется, реализация по умолчанию этого метода вместо этого вызывает [self fileWrapperRepresentationOfType:typeName].

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – dataOfType:error:

  • Устанавливает содержание этого документа путем чтения из данных указанного типа и возвратов YEStrue в случае успеха.

    Объявление

    Swift

    func readFromData(_ data: NSData, ofType typeName: String, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)readFromData:(NSData *)data ofType:(NSString *)typeName error:(NSError **)outError

    Параметры

    data

    Объект данных, из которого читается содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если содержание документа не могло бы быть считано, указатель на ошибочный объект, инкапсулирующий причину, они не могли быть считаны.

    Возвращаемое значение

    YEStrue если могло бы быть считано содержание документа; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода выдает исключение потому что по крайней мере один из трех методов чтения (этот метод, readFromURL:ofType:error:, readFromFileWrapper:ofType:error:), или каждый метод, который может вызвать readFromURL:ofType:error:, должен быть переопределен.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Булево значение, указывающее, загружается ли файл документа полностью в память. (только для чтения)

    Объявление

    Swift

    var entireFileLoaded: Bool { get }

    Objective C

    @property(getter=isEntireFileLoaded, readonly) BOOL entireFileLoaded

    Возвращаемое значение

    YEStrue если весь файл документа загружается в память; иначе NOfalse.

    Обсуждение

    Значение по умолчанию этого свойства YEStrue, который показывает, что весь файл загружается в память. Можно переопределить это свойство для возврата NOfalse если дополнительные данные должны быть считаны из файла. NSDocument может использовать это значение, чтобы сделать, вещам нравится, предотвращают извлечение объема или предупреждают пользователя, когда частично загруженный файл исчезает из файловой системы.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Подклассы могут переопределить этот метод для создания начального контроллера (ов) окна для документа.

    Объявление

    Swift

    func makeWindowControllers()

    Objective C

    - (void)makeWindowControllers

    Обсуждение

    Реализация базового класса создает NSWindowController объект с windowNibName и с документом как владелец файла, если windowNibName возвращает имя. Если Вы переопределяете этот метод для создания собственных контроллеров окна, несомненно, будут использовать addWindowController: добавить их к документу после создания их.

    Этот метод вызывают NSDocumentController open... методы, но Вы могли бы хотеть вызвать его непосредственно при некоторых обстоятельствах.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    windowControllers

  • windowNibName windowNibName Свойство

    Имя единственного файла пера документа. (только для чтения)

    Объявление

    Swift

    var windowNibName: String? { get }

    Objective C

    @property(readonly, copy) NSString *windowNibName

    Обсуждение

    Используя это имя, NSDocument создает и инстанцирует экземпляра по умолчанию NSWindowController управлять окном. Если Ваш документ имеет многократные файлы пера, каждого с его собственным единственным окном, или если значение по умолчанию NSWindowController экземпляр не соответствует в Ваших целях, необходимо переопределить makeWindowControllers.

    Значение по умолчанию этого свойства nil. Подклассы должны переопределить его для указания имени файла пера.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    windowControllers

  • Если получатель является владельцем файла пера, отправленный после того, как указанный контроллер окна загружает файл пера.

    Объявление

    Swift

    func windowControllerDidLoadNib(_ windowController: NSWindowController)

    Objective C

    - (void)windowControllerDidLoadNib:(NSWindowController *)windowController

    Параметры

    windowController

    Контроллер окна, загружающий файл пера.

    Обсуждение

    См. описание класса для NSWindowController для получения дополнительной информации о файлах пера и объекте владельца файла.

    Обычно NSDocument переопределения подкласса windowNibName или makeWindowControllers, но не оба. Если windowNibName переопределяется, реализация по умолчанию makeWindowControllers загрузит именованный файл пера, делая NSDocument возразите владельцу файла пера. В этом случае можно переопределить windowControllerDidLoadNib: и сделайте пользовательскую обработку после того, как будет загружен файл пера.

    Реализация по умолчанию этого метода ничего не делает.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Если получатель является владельцем файла пера, отправленный, прежде чем указанный контроллер окна загружает файл пера.

    Объявление

    Swift

    func windowControllerWillLoadNib(_ windowController: NSWindowController)

    Objective C

    - (void)windowControllerWillLoadNib:(NSWindowController *)windowController

    Параметры

    windowController

    Контроллер окна, загружающий файл пера.

    Обсуждение

    См. описание класса для NSWindowController для получения дополнительной информации о файлах пера и объекте владельца файла.

    Обычно NSDocument переопределения подкласса windowNibName или makeWindowControllers, но не оба. Если windowNibName переопределяется, реализация по умолчанию makeWindowControllers загрузит именованный файл пера, делая NSDocument владельцем файла пера. В этом случае можно переопределить windowControllerWillLoadNib: и сделайте пользовательскую обработку, прежде чем будет загружен файл пера.

    Реализация по умолчанию этого метода ничего не делает.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Текущие контроллеры окна документа. (только для чтения)

    Объявление

    Swift

    var windowControllers: [AnyObject] { get }

    Objective C

    @property(readonly, copy) NSArray *windowControllers

    Обсуждение

    Значение этого свойства является массивом объектов NSWindowController, принадлежащих текущему документу. Если нет никаких контроллеров окна, значение является объектом пустого массива.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Добавляет указанный контроллер окна к списку этого документа присоединенных контроллеров окна и устанавливает документ переданного - в контроллере окна.

    Объявление

    Swift

    func addWindowController(_ aController: NSWindowController)

    Objective C

    - (void)addWindowController:(NSWindowController *)aController

    Параметры

    aController

    Добавляющийся контроллер окна.

    Обсуждение

    NSDocument возразите использует его список контроллеров окна, когда это выводит на экран все окна документа, окно наборов отредактировало состояние на отмену или работу восстановления, и изменяет заголовки окон. Если Вы создаете контроллеры окна путем переопределения windowNibName, этот метод вызывается автоматически. Если Вы создаете контроллеры окна в makeWindowControllers или в любом другом контексте, такой как в приложениях, представляющих многократные окна на документ, необходимо вызвать этот метод для каждого создаваемого контроллера окна.

    Вы не можете присоединить контроллер окна больше чем к одному документу за один раз. Реализация по умолчанию этого метода удаляет переданный - в контроллере окна от документа, до которого это присоединяется, если это уже присоединено один, затем отправляет ему a setDocument: сообщение с self как параметр. Это также игнорирует избыточные вызовы.

    Вы обычно не переопределяли бы этот метод.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    setDocument: (NSWindowController)

  • Удаляет указанный контроллер окна из массива получателя контроллеров окна.

    Объявление

    Swift

    func removeWindowController(_ windowController: NSWindowController)

    Objective C

    - (void)removeWindowController:(NSWindowController *)windowController

    Параметры

    windowController

    Демонтированный контроллер окна.

    Обсуждение

    Документ без контроллеров окна не обязательно закрывается. Однако контроллер окна может быть установлен закрыть свой ассоциированный документ, когда окно закрывается, или контроллер окна освобожден.

    Реализация по умолчанию этого метода отправляет a setDocument: обменивайтесь сообщениями к переданному - в контроллере окна с a nil параметр. Вы обычно не переопределяли бы этот метод.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    shouldCloseDocument (NSWindowController)

  • Вызывает shouldCloseSelector с результатом canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo: . если закрывающийся указанный контроллер окна последним или отмечен как порождение документа завершению, является

    Объявление

    Swift

    func shouldCloseWindowController(_ windowController: NSWindowController, delegate delegate: AnyObject?, shouldCloseSelector shouldCloseSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)shouldCloseWindowController:(NSWindowController *)windowController delegate:(id)delegate shouldCloseSelector:(SEL)shouldCloseSelector contextInfo:(void *)contextInfo

    Параметры

    windowController

    Закрывающийся контроллер окна.

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    shouldCloseSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Иначе это вызывает shouldCloseSelector с YEStrue. Этим методом вызывают автоматически NSWindow для любого окна, имеющего контроллер окна и документ, связанный с ним. NSWindow вызовы этот метод до отправки delegate windowShouldClose: сообщение. Передайте contextInfo объект с обратным вызовом.

    shouldCloseSelector метод обратного вызова должен иметь следующую подпись:

    • - (void)document:(NSDocument *)document shouldClose:(BOOL)shouldClose contextInfo:(void *)contextInfo

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Дисплеи все окна документа, выявляя их и делая их основными или ключевыми по мере необходимости.

    Объявление

    Swift

    func showWindows()

    Objective C

    - (void)showWindows

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Наборы window Соедините интерфейсом с выходом Разработчика этого класса.

    Объявление

    Swift

    func setWindow(_ aWindow: NSWindow?)

    Objective C

    - (void)setWindow:(NSWindow *)aWindow

    Параметры

    aWindow

    Окно то, к который получатель window точки выхода.

    Обсуждение

    Этот метод вызывается автоматически во время загрузки любого пера, для которого этот документ является владельцем файла, если владелец файла window выход соединяется в пере. Вы не должны вызывать этот метод непосредственно, и обычно Вы не переопределили бы его также.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • windowForSheet windowForSheet Свойство

    Самое надлежащее окно (окон связался с документом) использовать в качестве родительского окна модального документом листа. (только для чтения)

    Объявление

    Swift

    var windowForSheet: NSWindow? { get }

    Objective C

    @property(readonly, strong) NSWindow *windowForSheet

    Обсуждение

    Значение этого свойства может быть nil, когда отправитель должен представить модальную приложением панель. NSDocument реализация этого наборы свойств значение к окну первого контроллера окна, или [NSApp mainWindow] если первый контроллер окна не имеет никакого окна, при отсутствии контроллеров окна или.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.3 и позже.

  • displayName displayName Свойство

    Имя документа, как выведено на экран в строках заголовка окон документа и в предупредительных диалоговых окнах имело отношение к документу. (только для чтения)

    Объявление

    Swift

    var displayName: String { get }

    Objective C

    @property(readonly, copy) NSString *displayName

    Обсуждение

    Если документ был сохранен, имя дисплея является последним компонентом расположения каталога сохраненного файла (например, “MyDocument” если путь “/tmp/MyDocument.rtf”). Если документ является новым, NSDocument делает имя дисплея “Неназванный n”, где n является числом в последовательности новых и несохраненных документов. Визуализуемое имя также принимает во внимание, должно ли быть скрыто расширение файла документа. Подклассы NSWindowController может переопределить windowTitleForDocumentDisplayName: изменить имя дисплея, как это появляется в заголовках окон.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Определяет имя этого документа для представления пользователю.

    Объявление

    Swift

    func setDisplayName(_ displayNameOrNil: String?)

    Objective C

    - (void)setDisplayName:(NSString *)displayNameOrNil

    Параметры

    displayNameOrNil

    Имя дисплея документа или nil, когда имя дисплея документа «Не названо».

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвращает черновое имя по умолчанию для подкласса получения NSDocument.

    Объявление

    Swift

    func defaultDraftName() -> String

    Objective C

    - (NSString *)defaultDraftName

    Обсуждение

    Реализация по умолчанию этого метода возвращает «Неназванную» строку, как скорректировано согласно указанной локали пользователя. Ваше приложение должно обычно возвращать имя, описывающее вид документа. Например, приложение электронной таблицы могло возвратить «электронную таблицу». Документ, создаваемый из шаблона, мог возвратить имя шаблона, например, «Резюме».

    Когда документ еще не был присвоен имя и еще не был сохранен автоматически с NSAutosaveAsOperation сохраните тип работы, документ базирует имя по умолчанию на значении в displayName свойство.

    Если бы существует уже другой документ или файл в том же месте и с тем же именем, как был бы возвращен этим методом, NSDocument добавляет число к defaultDraftName строка.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Устанавливает содержание этого документа путем чтения из обертки файла указанного типа.

    Объявление

    Swift

    func readFromFileWrapper(_ fileWrapper: NSFileWrapper, ofType typeName: String, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)readFromFileWrapper:(NSFileWrapper *)fileWrapper ofType:(NSString *)typeName error:(NSError **)outError

    Параметры

    fileWrapper

    Обертка файла, из которой читается содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если содержание документа не могло бы быть считано, указатель на ошибочный объект, инкапсулирующий причину, они не могли быть считаны.

    Возвращаемое значение

    YEStrue если могло бы быть считано содержание документа; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода вызывает [self readFromData:[fileWrapper regularFileContents] ofType:typeName error:outError].

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает [self loadFileWrapperRepresentation:fileWrapper ofType:typeName] если loadFileWrapperRepresentation:ofType: переопределяется.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Последняя известная дата модификации дискового представления документа.

    Объявление

    Swift

    @NSCopying var fileModificationDate: NSDate?

    Objective C

    @property(copy) NSDate *fileModificationDate

    Обсуждение

    NSDocument файл по умолчанию, сохраняющий машинное оборудование, использует эту информацию для предупреждения пользователя, когда дисковое представление открытого документа было изменено чем-то другим, чем текущее приложение.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Если пользователь утверждает панель, представляет модальную панель Save пользователю, затем пытается сохранить документ.

    Объявление

    Swift

    func runModalSavePanelForSaveOperation(_ saveOperation: NSSaveOperationType, delegate delegate: AnyObject?, didSaveSelector didSaveSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)runModalSavePanelForSaveOperation:(NSSaveOperationType)saveOperation delegate:(id)delegate didSaveSelector:(SEL)didSaveSelector contextInfo:(void *)contextInfo

    Параметры

    saveOperation

    Тип работы сохранения.

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didSaveSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    То, когда сохранение завершается, независимо от успешности или неуспешности, или было отменено, отправляет сообщение, выбранное didSaveSelector к delegate, с contextInfo как последний параметр. Метод выбран didSaveSelector должен иметь ту же подпись как:

    • - (void)document:(NSDocument *)doc didSave:(BOOL)didSave contextInfo:(void *)contextInfo

    Вызванный от saveDocumentWithDelegate:didSaveSelector:contextInfo:, и от saveDocumentAs: и saveDocumentTo: методы действия. Реализация по умолчанию этого метода сначала удостоверяется, что любой редактор зарегистрировал использование Привязки Какао NSEditorRegistration неофициальный протокол фиксировал свои изменения, затем создает панель Save, добавляет стандартное представление аксессуара формата файла (если существует больше чем один тип файла для пользователя для выбора из и shouldRunSavePanelWithAccessoryView возвраты YEStrue), устанавливает различные атрибуты панели, вызывает prepareSavePanel: для предоставления возможности для настройки, затем представляет панель. Если пользователь утверждает панель, реализация по умолчанию отправляет сообщение saveToURL:ofType:forSaveOperation:delegate:didSaveSelector:contextInfo:.

    Для обратной совместимости на уровне двоичных кодов с Mac OS v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает осуждаемый saveToFile:saveOperation:delegate:didSaveSelector:contextInfo: даже если пользователь отменяет панель, если это переопределяется.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Булево значение, указывающее, выводит ли панель Save документа на экран список поддерживаемых перезаписываемых типов документов. (только для чтения)

    Объявление

    Swift

    var shouldRunSavePanelWithAccessoryView: Bool { get }

    Objective C

    @property(readonly) BOOL shouldRunSavePanelWithAccessoryView

    Обсуждение

    Когда значение этого свойства YEStrue, документ включает всплывающее меню поддерживаемых перезаписываемых типов документов, когда он выводит на экран панель Save. Значение по умолчанию этого свойства YEStrue. Подклассы могут переопределить это свойство для обеспечения различного значения. Например, Вы могли бы обеспечить следующую реализацию:

    • - (BOOL)shouldRunSavePanelWithAccessoryView {
    • return [self fileURL] == nil;
    • }

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • keepBackupFile keepBackupFile Свойство

    Булево значение, указывающее, сохраняет ли документ файлы резервных копий создаваемыми перед данными документа, записано в файл. (только для чтения)

    Объявление

    Swift

    var keepBackupFile: Bool { get }

    Objective C

    @property(readonly) BOOL keepBackupFile

    Обсуждение

    Значение по умолчанию этого свойства NOfalse, который препятствует тому, чтобы документ сохранил файлы резервных копий. Подклассы могут переопределить это свойство и возврат YEStrue от их реализации для имения документа сохраняют файлы резервных копий.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    – writeToFile:ofType:

  • backupFileURL backupFileURL Свойство

    URL для файла резервного копирования, создававшегося во время работы автосохранения. (только для чтения)

    Объявление

    Swift

    @NSCopying var backupFileURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *backupFileURL

    Обсуждение

    Это свойство указывает расположение файла резервной копии, если таковые имеются. Если файл резервной копии не может быть создан или не необходим, значение этого свойства nil.

    Запускаясь в OS X v10.8, версии документа могут быть сохранены с помощью файла резервной копии, создаваемого во время работы автосохранения, поддерживающей управление версиями документа. Это свойство предоставляет Вам доступ к URL файла резервной копии.

    Используя файл резервной копии автосохранения для сохранения версий эффективно. Это вызвано тем, что NSDocument экземпляр в состоянии использовать NSFileVersionReplacingByMoving опция, когда это вызывает replaceItemAtURL:options:error: метод. Документ получает значение этого свойства дважды во время сохранения:

    1. Прежде, чем вызвать writeSafelyToURL:ofType:forSaveOperation:error: метод: Это должно проверить, возможно ли использование опции замены перемещением и, в противном случае чтобы позволить системе сохранять данные, вместо этого используя копирование.

    2. В writeSafelyToURL:ofType:forSaveOperation:error: метод: Это должно обнаружить, куда поместить файл резервной копии.

    Когда Вы реализуете writeSafelyToURL:ofType:forSaveOperation:error: метод с NSSaveOperation или NSAutosaveInPlaceOperation тип работы, необходимо проверить значение этого свойства. Если это не nil, переместите предыдущее содержание файла (который был бы перезаписан) к расположению URL’s. Реализация по умолчанию writeSafelyToURL:ofType:forSaveOperation:error: делает это.

    Создать файл резервной копии из Вашей пользовательской реализации writeSafelyToURL:ofType:forSaveOperation:error: метод, вызовите NSFileManager метод replaceItemAtURL:withItemAtURL:backupItemName:options:resultingItemURL:error:, использование резервного названия товара [[self backupFileURL] lastPathComponent] и опция NSFileManagerItemReplacementWithoutDeletingBackupItem опция. Если Ваша пользовательская реализация неспособна сохранить файл резервной копии, необходимо переопределить это свойство и возврат nil гарантировать, что файл документа правильно сохраняется, прежде чем он будет перезаписан.

    Реализация по умолчанию writeSafelyToURL:ofType:forSaveOperation:error: метод возвращается не -nil оцените на основе значения [self fileURL], но только если файл документа должен быть сохранен до сохранения или если preservesVersions возвраты метода NOfalse. Иначе, это возвращается nil.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • fileURL fileURL Свойство

    Расположение дискового представления документа.

    Объявление

    Swift

    @NSCopying var fileURL: NSURL?

    Objective C

    @property(copy) NSURL *fileURL

    Возвращаемое значение

    Расположение документа.

    Обсуждение

    Реализация по умолчанию этого свойства возвращает URL открытого файла. Изменение значения этого свойства фактически не изменяет имя или расположение документа; это только для записи расположения документа во время его начального открытия или сохранения.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • проект проект Свойство

    Булево значение, указывающее, является ли документ проектом, что пользователь не выразил интерес к имению в наличии.

    Объявление

    Swift

    var draft: Bool

    Objective C

    @property(getter=isDraft) BOOL draft

    Обсуждение

    Когда пользователь закрывает проект документа, система представляет диалоговое окно Сохранения. Только документы с не -nil значения для fileURL свойство нужно считать проектами.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Устанавливает содержание этого документа путем чтения из файла или пакета файла, указанного типа, расположенного URL.

    Объявление

    Swift

    func readFromURL(_ absoluteURL: NSURL, ofType typeName: String, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)readFromURL:(NSURL *)absoluteURL ofType:(NSString *)typeName error:(NSError **)outError

    Параметры

    absoluteURL

    Расположение, из которого читается содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если содержание документа не могло бы быть считано, указатель на ошибочный объект, инкапсулирующий причину, они не могли быть считаны.

    Возвращаемое значение

    YEStrue если могло бы быть считано содержание документа; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода просто создает NSFileWrapper и вызывает [self readFromFileWrapper:theFileWrapper ofType:typeName error:outError].

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает [self readFromFile:[absoluteURL path] ofType:typeName] если readFromFile:ofType: переопределяется и URL использует file: схема.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Пишет содержание документа файлу или пакету файла, расположенному URL, отформатированным к указанному типу.

    Объявление

    Swift

    func writeToURL(_ absoluteURL: NSURL, ofType typeName: String, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)writeToURL:(NSURL *)absoluteURL ofType:(NSString *)typeName error:(NSError **)outError

    Параметры

    absoluteURL

    Расположение, в которое записано содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    outError

    По возврату, если содержание документа не могло бы быть записано, указатель на ошибочный объект, инкапсулирующий причину, которая они не могли быть записаны.

    Возвращаемое значение

    YEStrue если могло бы быть записано содержание документа; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода просто вызывает [self fileWrapperOfType:typeName error:outError] и пишет возвращенную обертку файла в диск.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает [self writeToFile:[absoluteURL path] ofType:typeName] если writeToFile:ofType: переопределяется и URL использует file: схема.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Пишет содержание документа файлу или пакету файла, расположенному URL.

    Объявление

    Swift

    func writeSafelyToURL(_ absoluteURL: NSURL, ofType typeName: String, forSaveOperation saveOperation: NSSaveOperationType, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)writeSafelyToURL:(NSURL *)absoluteURL ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation error:(NSError **)outError

    Параметры

    absoluteURL

    Расположение, в которое записано содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    saveOperation

    Тип работы сохранения.

    outError

    По возврату, если содержание документа не могло бы быть записано, указатель на ошибочный объект, инкапсулирующий причину, которая они не могли быть записаны.

    Возвращаемое значение

    YEStrue если могло бы быть записано содержание документа; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода вызывает writeToURL:ofType:forSaveOperation:originalContentsURL:error:. Это также вызывает fileAttributesToWriteToURL:ofType:forSaveOperation:originalContentsURL:error: и пишет возвращенные атрибуты, если таковые имеются, к файлу. Это может скопировать некоторые атрибуты со старой дисковой версии документа одновременно, если применимо.

    Этот метод ответственен за то, что делал записи документа в пути, минимизирующем опасность оставить диск, к которому записи делаются в противоречивом состоянии в случае сбоя приложения, системного катастрофического отказа, отказа оборудования, перебоя в питании, и т.д. Если Вы переопределяете этот метод, несомненно, вызовут реализацию суперкласса.

    Для NSSaveOperation, реализация по умолчанию этого метода использует значение в keepBackupFile свойство, чтобы определить, действительно ли старая дисковая версия документа, если было один, должно быть сохранено, будучи переименованным.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает writeWithBackupToFile:ofType:saveOperation: если тот метод, переопределяется, и URL использует file: схема. Работа сохранения в этом случае никогда не NSAutosaveOperation; NSSaveToOperation используется вместо этого.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Пишет содержание документа файлу или пакету файла, расположенному URL.

    Объявление

    Swift

    func writeToURL(_ absoluteURL: NSURL, ofType typeName: String, forSaveOperation saveOperation: NSSaveOperationType, originalContentsURL absoluteOriginalContentsURL: NSURL?, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)writeToURL:(NSURL *)absoluteURL ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation originalContentsURL:(NSURL *)absoluteOriginalContentsURL error:(NSError **)outError

    Параметры

    absoluteURL

    Расположение, в которое записано содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    saveOperation

    Тип работы сохранения.

    absoluteOriginalContentsURL

    Расположение ранее сохраненной копии документа (если нет nil).

    outError

    По возврату, если содержание документа не могло бы быть записано, указатель на ошибочный объект, инкапсулирующий причину, которая они не могли быть записаны.

    Возвращаемое значение

    YEStrue если могло бы быть записано содержание документа; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода просто вызывает [self writeToURL:absoluteURL ofType:typeName error:outError]. Можно переопределить этот метод вместо одного из трех простых методов записи (writeToURL:ofType:error:,fileWrapperOfType:error:, и dataOfType:error:) если для Вашего документа, пишущий машинное оборудование нужен доступ к дисковому представлению версии документа, собирающейся, перезаписываются. Значение absoluteURL часто не то же как [self fileURL]. Другие времена это не то же как URL для заключительного места назначения сохранения. Аналогично, absoluteOriginalContentsURL часто не то же значение как [self fileURL]. Если absoluteOriginalContentsURL nil, или документ никогда не сохранялся или пользователь, удалил файл документа, так как это было открыто.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, если writeToFile:ofType:originalFile:saveOperation: переопределяется и оба URLs использует file: схема, реализация по умолчанию этого метода вместо этого вызывает:

    • [self writeToFile:[absoluteURL path]
    •       ofType:typeName
    •       originalFile:[absoluteOriginalContentsURL path]
    •       saveOperation:aSaveOperation];

    Работа сохранения, используемая в этом случае, никогда не NSAutosaveOperation; NSSaveToOperation используется вместо этого.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Поскольку файл сохранен, возвращает атрибуты, которые должны быть записаны в файл, или пакет файла, расположенный URL, отформатировал к указанному типу, поскольку деталь отчасти сохраняют работу.

    Объявление

    Swift

    func fileAttributesToWriteToURL(_ absoluteURL: NSURL, ofType typeName: String, forSaveOperation saveOperation: NSSaveOperationType, originalContentsURL absoluteOriginalContentsURL: NSURL?, error outError: NSErrorPointer) -> [NSObject : AnyObject]?

    Objective C

    - (NSDictionary *)fileAttributesToWriteToURL:(NSURL *)absoluteURL ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation originalContentsURL:(NSURL *)absoluteOriginalContentsURL error:(NSError **)outError

    Параметры

    absoluteURL

    Расположение, в которое пишется документ.

    typeName

    Строка, идентифицирующая тип документа.

    saveOperation

    Тип работы сохранения.

    absoluteOriginalContentsURL

    Расположение ранее сохраненной копии документа (если нет nil).

    outError

    По возврату, если атрибуты не могли бы быть возвращены, указатель на ошибочный объект, инкапсулирующий причину, они не могли быть возвращены.

    Возвращаемое значение

    Словарь, содержащий атрибуты, которые будут записаны, или nil если неуспешный.

    Обсуждение

    Ваш подкласс NSDocument может переопределить этот метод для управления атрибутами, установленными во время работы сохранения. Переопределение этого метода должно возвратить копию словаря, возвращенного версией его суперкласса этого метода с надлежащими изменениями.

    Набор атрибутов правильного файла является подмножеством понятых под NSFileManager класс. Реализация по умолчанию этого метода возвращает пустой словарь для NSSaveOperation или NSAutosaveInPlaceOperation, или словарь с надлежащим NSFileExtensionHidden запись для любого другого отчасти сохраняет работу. Можно переопределить этот метод для настройки атрибутов, записанных в файлы документов.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.5 и ранее, реализация по умолчанию этого метода возвращает словарь с NSFileHFSCode и NSFileHFSTypeCode записи, имеющие значение 0 для NSSaveOperation, в приложениях, соединенных против OS X v10.5 или ранее.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вместо этого вызывает [self fileAttributesToWriteToFile:[url path] ofType:typeName saveOperation:aSaveOperation] если fileAttributesToWriteToFile:ofType:saveOperation: переопределяется и URL использует file: схема. Работа сохранения, используемая в этом случае, никогда не является одним из сохраняющихся автоматически: NSSaveToOperation используется вместо этого.

    Реализация по умолчанию writeSafelyToURL:ofType:forSaveOperation:error: автоматически копирует важные атрибуты как полномочия файла, дата создания и информация о Средстве поиска от старой дисковой версии документа новому во время NSSaveOperation или NSAutosaveInPlaceOperation. Этот метод предназначается, чтобы использоваться только для атрибутов, которые должны быть записаны впервые, для NSSaveAsOperation и NSSaveToOperation. url и absoluteOriginalContentsURL параметры передаются в для полноты; реализация по умолчанию NSDOCUMENT не должна использовать их.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Поскольку деталь отчасти сохраняют работу, сохраняет содержание документа файлу или пакету файла, расположенному URL, отформатированным к указанному типу.

    Объявление

    Swift

    func saveToURL(_ absoluteURL: NSURL, ofType typeName: String, forSaveOperation saveOperation: NSSaveOperationType, delegate delegate: AnyObject?, didSaveSelector didSaveSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)saveToURL:(NSURL *)absoluteURL ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation delegate:(id)delegate didSaveSelector:(SEL)didSaveSelector contextInfo:(void *)contextInfo

    Параметры

    absoluteURL

    Расположение файла или пакета файла, к которому сохраняется содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    saveOperation

    Тип работы сохранения.

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didSaveSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Когда сохранение завершается, независимо от успешности или неуспешности, метод отправляет сообщение, выбранное didSaveSelector к delegate, с contextInfo как последний параметр. Метод выбран didSaveSelector должен иметь ту же подпись как:

    • - (void)document:(NSDocument *)document didSave:(BOOL)didSaveSuccessfully contextInfo:(void *)contextInfo;

    Реализация по умолчанию этого метода вызывает [self saveToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation error:&anError] и, если NOfalse возвращается, представляет ошибку пользователю в модальной документом панели прежде, чем передать делегата.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Возвраты, может ли получатель одновременно записать в файл или пакет файла, расположенный URL, отформатированным для определенного типа, для определенного отчасти сохраняют работу.

    Объявление

    Swift

    func canAsynchronouslyWriteToURL(_ url: NSURL, ofType typeName: String, forSaveOperation saveOperation: NSSaveOperationType) -> Bool

    Objective C

    - (BOOL)canAsynchronouslyWriteToURL:(NSURL *)url ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation

    Параметры

    url

    Расположение файла или пакета, в который записан документ.

    typeName

    Строка, идентифицирующая тип документа.

    saveOperation

    Тип работы сохранения.

    Возвращаемое значение

    NOfalse по умолчанию; подклассы могут переопределить для возврата YEStrue, таким образом, включающая асинхронная запись.

    Обсуждение

    Реализация по умолчанию этого метода возвраты NOfalse. Вы строго призваны переопределить его и заставить его возвратиться YEStrue, после проверки Ваших переопределений методов записи документа может быть безопасно вызван на неосновной поток, и удостоверившись что unblockUserInteraction метод вызывается в некоторое подходящее время во время записи.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвращает объект, инкапсулирующий текущую запись изменений документа в начале работы сохранения.

    Объявление

    Swift

    func changeCountTokenForSaveOperation(_ saveOperation: NSSaveOperationType) -> AnyObject

    Objective C

    - (id)changeCountTokenForSaveOperation:(NSSaveOperationType)saveOperation

    Параметры

    saveOperation

    Тип работы сохранения.

    Возвращаемое значение

    Объект, инкапсулирующий изменения документа.

    Обсуждение

    Возвращенный объект предназначается, чтобы быть переданным updateChangeCountWithToken:forSaveOperation: в конце работы сохранения. Например, saveToURL:ofType:forSaveOperation:completionHandler: вызывает этот метод, на основном потоке, прежде чем это сделает любое фактическое сохранение. Этот метод упрощает асинхронное сохранение, во время которого пользователь может изменить документ, в то время как это сохраняется.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Сохраняет содержание документа файлу или пакету файла, расположенному URL, отформатированным к указанному типу, поскольку деталь отчасти сохраняют работу, и вызывает переданный - в обработчике завершения.

    Объявление

    Swift

    func saveToURL(_ url: NSURL, ofType typeName: String, forSaveOperation saveOperation: NSSaveOperationType, completionHandler completionHandler: (NSError!) -> Void)

    Objective C

    - (void)saveToURL:(NSURL *)url ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation completionHandler:(void (^)(NSError *errorOrNil))completionHandler

    Параметры

    url

    Расположение, в которое записано содержание документа.

    typeName

    Тип документа.

    saveOperation

    Тип работы сохранения.

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным в некоторый момент в будущем, возможно после того, как возвратился вызов метода. Обработчик завершения должен быть вызван на основной поток.

    Блок берет один параметр:

    errorOrNil

    Если успешный, передача a nil ошибка. Если не успешный, передайте NSError объект, инкапсулирующий причину, почему не мог быть сохранен документ.

    Обсуждение

    Реализация по умолчанию этого метода вызывает canAsynchronouslyWriteToURL:ofType:forSaveOperation:. Если записи не могут делаться одновременно, они вызывают writeSafelyToURL:ofType:forSaveOperation:error: на основном потоке потока. Если записи могут делаться одновременно, они вызывают тот метод на различный поток, но блокируют основной поток, пока что-то не вызывает unblockUserInteraction. Так или иначе, если writeSafelyToURL:ofType:forSaveOperation:error: возвраты YEStrue, это обновляет значения в fileModificationDate, fileType, fileURL, и autosavedContentsFileURL свойства и вызовы updateChangeCount: метод как надлежащий на основном потоке. Это также обновляет информацию это saveDocumentWithDelegate:didSaveSelector:contextInfo: использование для проверки на модификацию, переименование, перемещение, удаление и повреждение открытых документов, и удаляет сохраненные автоматически файлы содержания, когда они стали устаревшими. Можно переопределить этот метод, чтобы сделать вещи, которые должны быть сделаны прежде или после того, как любой сохраняет работу, но убеждаться вызвать super.

    Для обратной совместимости на уровне двоичных кодов с OS X v10.6 и ранее, реализация по умолчанию этого метода вместо этого вызывает saveToURL:ofType:forSaveOperation:error: если тот метод переопределяется, и этот не, и он передает любую ошибку обработчику завершения.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Записывает факт, что сохранение следовало и обновляет связанные аспекты механизма количества изменения.

    Объявление

    Swift

    func updateChangeCountWithToken(_ changeCountToken: AnyObject, forSaveOperation saveOperation: NSSaveOperationType)

    Objective C

    - (void)updateChangeCountWithToken:(id)changeCountToken forSaveOperation:(NSSaveOperationType)saveOperation

    Параметры

    changeCountToken

    Объект, инкапсулирующий изменения документа, возвращенные из changeCountTokenForSaveOperation:.

    saveOperation

    Тип работы сохранения.

    Обсуждение

    Этот метод обновляет значения в documentEdited и hasUnautosavedChanges свойства. Например, saveToURL:ofType:forSaveOperation:completionHandler: вызывает этот метод, на основном потоке, когда это сделано, сохранив. Реализация по умолчанию этого метода также отправляет все контроллеры окна документа setDocumentEdited: сообщения в надлежащих случаях.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Разблокирует основной поток во время асинхронного сохранения.

    Объявление

    Swift

    func unblockUserInteraction()

    Objective C

    - (void)unblockUserInteraction

    Обсуждение

    Если saveToURL:ofType:forSaveOperation:completionHandler: пишет на неосновном потоке потому что canAsynchronouslyWriteToURL:ofType:forSaveOperation: возвратился YEStrue, но это все еще блокирует основной поток, этот метод разблокирует основной поток. Иначе, это ничего не делает. Например, реализация по умолчанию fileWrapperOfType:error: вызывает это, когда это создало NSFileWrapper возразите для возврата. Предположение, что NSFileWrapper не видоизменен действиями следующего пользователя, это - эффективно «снимок» содержания документа, и как только это создается, безопасно продолжить обрабатывать пользовательские события на основном потоке, даже при том, что некоторые из тех пользовательских событий могли бы изменить содержание документа перед NSFileWrapper объект был безопасно записан. Если Вы переопределили, можно вызвать этот метод для создания асинхронного сохранения фактически асинхронным writeSafelyToURL:ofType:forSaveOperation:error:, writeToURL:ofType:forSaveOperation:originalContentsURL:error:, или writeToURL:ofType:error: таким способом, который вызов этого метода, сделанного writeToURL:ofType:error: реализация по умолчанию не произойдет во время записи.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Вызывает переданный - в блоке для предотвращения мертвой блокировки если performActivityWithSynchronousWaiting:usingBlock: вызывается рекурсивно.

    Объявление

    Swift

    func continueActivityUsingBlock(_ block: () -> Void)

    Objective C

    - (void)continueActivityUsingBlock:(void (^)(void))block

    Параметры

    block

    Блок, который будет вызван.

    Обсуждение

    Блок если, переданный performActivityWithSynchronousWaiting:usingBlock: вызывается, этот метод вызывает переданный - в блоке, записав состояние, делающее внутренние вызовы performActivityWithSynchronousWaiting:usingBlock: не ожидают. Если этот метод вызывается за пределами вызова блока, переданного performActivityWithSynchronousWaiting:usingBlock:, этот метод просто вызывает переданный - в блоке.

    Когда код, выполняемый в блоке, передал, этот метод полезен performActivityWithSynchronousWaiting:usingBlock: май также вызывает тот метод. Например, saveDocumentWithDelegate:didSaveSelector:contextInfo:, который использует performActivityWithSynchronousWaiting:usingBlock:, использование это вокруг его вызова runModalSavePanelForSaveOperation:delegate:didSaveSelector:contextInfo: или saveToURL:ofType:forSaveOperation:delegate:didSaveSelector:contextInfo: потому что оба из тех методов также используют performActivityWithSynchronousWaiting:usingBlock:. Без использования этого метода внутренний вызов performActivityWithSynchronousWaiting:usingBlock: ожидал бы навсегда.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Вызывает переданный - в блоке на основном потоке.

    Объявление

    Swift

    func continueAsynchronousWorkOnMainThreadUsingBlock(_ block: () -> Void)

    Objective C

    - (void)continueAsynchronousWorkOnMainThreadUsingBlock:(void (^)(void))block

    Параметры

    block

    Блок, который будет вызван.

    Обсуждение

    Если основной поток блокируется вызовом performActivityWithSynchronousWaiting:usingBlock: или performSynchronousFileAccessUsingBlock:, эти прерывания метода, которые блокирование для вызова блока, и затем продолжает блокировать, когда возвратился вызов блока. Вызовы этого метода всегда возвращаются, прежде чем переданный - в блоке вызывается.

    Можно вызвать этот метод, когда работа выполняется на неосновном потоке, и часть работы должна продолжаться на основном потоке. Например, saveToURL:ofType:forSaveOperation:completionHandler: использование этот метод, когда это только что завершило фактическую запись файла во время асинхронного сохранения и, для окончания работы сохранения, должно вызвать updateChangeCountWithToken:forSaveOperation: и другие методы на основном потоке.

    Этот метод может быть вызван на любой поток.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Ожидает любой работы, которая, как запланировали предыдущие вызовы этого метода, будет завершаться, затем вызывает переданный - в блоке.

    Объявление

    Swift

    func performActivityWithSynchronousWaiting(_ waitSynchronously: Bool, usingBlock inBlock: ((() -> Void)!) -> Void)

    Objective C

    - (void)performActivityWithSynchronousWaiting:(BOOL)waitSynchronously usingBlock:(void (^)(void (^activityCompletionHandler)(void)))inBlock

    Параметры

    waitSynchronously

    Если YEStrue, метод не возвращается, пока предыдущие действия не завершены, и переданный - в блоке был вызван. Если NOfalse, метод мог бы возвратиться, прежде чем передано - в блоке, вызывается. Это могло бы вместо этого быть вызвано позже на основном потоке, после того, как предыдущие действия завершены.

    inBlock

    Блок, выполняющий работу, которая могла бы привести к представлению модального диалогового окна.

    Обсуждение

    Блок передается другой блок, обработчик завершения действия, который должен быть вызван, когда действие завершено.

    Основное использование этого метода должно ожидать асинхронного сохранения. С асинхронным сохранением для пользователя возможно спровоцировать действие пользовательского интерфейса, которое могло бы представить модальное диалоговое окно, лист, например, когда асинхронное сохранение собирается привести к сбою и представить собственный ошибочный лист предупреждения, который не работал бы. Этот метод решает ту проблему. Если Ваш NSDocument разделите на подклассы поддерживает асинхронное сохранение, необходимо вызвать этот метод вокруг производительности любой работы, которая могла бы вызвать представление модального диалогового окна, независимо от того, выполняется ли та работа синхронно или асинхронно. Вот список NSDocument методы, реализации по умолчанию которых вызывают этот метод, потому что они могли бы представить листы, или для выяснения у пользователя, что сделать, поскольку они начинают свою работу или потому что они могут привести к сбою и представить ошибки пользователю:

    Больше использования этого метода может быть добавлено к NSDocument в будущем.

    Этот метод должен быть вызван на основной поток. Если YEStrue передается для waitSynchronously параметр, метод ожидает на основном потоке, блокируя дальнейшее взаимодействие с пользователем с документом. Цель блокировать основной поток состоит в том так, чтобы пользователь не мог продолжать изменять документ, в то время как действие находится на рассмотрении. Это предотвращает, например, ситуацию, в которой пользователь принимает решение вернуться документ, но возвращение сразу не происходит, потому что асинхронное сохранение все еще происходит, все же пользователь в состоянии продолжать изменять документ, и затем те изменения сразу отбрасываются, когда асинхронное сохранение завершено, и документ вернулся. Весь из NSDocument методы упомянули выше передачу YEStrue для waitSynchronously.

    Вы передаете NOfalse для waitSynchronously когда работа, которая будет сделана, спровоцирована пользователем так косвенно, что работа могла бы начаться, когда уже представляется модальное диалоговое окно. Например, другой метод, реализация по умолчанию которого вызывает этот метод, на сей раз передавая NOfalse для waitSynchronously:

    autosaveDocumentWithDelegate:didAutosaveSelector:contextInfo:

    Этот метод мог бы представить ошибочное предупреждение, но он обычно вызывается таймером. Если это передало YEStrue для waitSynchronously, и таймер стрелял, в то время как пользователь смотрел на лист, представленный предыдущим действием, блокирование основного потока предотвратит обработку событий пользовательского интерфейса, необходимых для отклонения того листа и завершенный что предыдущее действие. Мертвая блокировка закончилась бы.

    Заставляете ли Вы этот метод ожидать синхронно или асинхронно выполнить, Ваша работа является отдельной от того, выполнена ли Ваша работа синхронно или асинхронно. Например, как упомянуто выше, saveToURL:ofType:forSaveOperation:delegate:didSaveSelector:contextInfo: передачи YEStrue для waitSynchronously когда это использует этот метод, даже при том, что большинство работы, которую это выполняет, может быть сделано асинхронно.

    Вы не должны вызывать этот метод во время вызова блока, переданного performSynchronousFileAccessUsingBlock: или промежуточный время performAsynchronousFileAccessUsingBlock: вызывает блок, переданный ему и время, в которое вызывается соответствующий обработчик завершения доступа к файлу. Если Вы делаете, мертвая блокировка может закончиться. Другими словами, Вы не можете начать новое действие как часть доступа к файлу. Можно, с другой стороны, вызвать performSynchronousFileAccessUsingBlock: или performAsynchronousFileAccessUsingBlock: как часть действия.

    Некоторые асинхронные действия, такие как сохранение, должны выполнить работу на основном потоке, поскольку они завершаются. Если бы не было никакого способа прервать блокирование этого метода основного потока, мертвая блокировка была бы неизбежна. Посмотрите continueAsynchronousWorkOnMainThreadUsingBlock: узнать, как прервать блокирование этого метода основного потока.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Ожидает любого запланированного доступа к файлу для завершения, но не блокируя основной поток, затем вызывает переданный - в блоке.

    Объявление

    Swift

    func performAsynchronousFileAccessUsingBlock(_ inBlock: ((() -> Void)!) -> Void)

    Objective C

    - (void)performAsynchronousFileAccessUsingBlock:(void (^)(void (^fileAccessCompletionHandler)(void)))inBlock

    Параметры

    inBlock

    Блок, выполняющий доступ к файлу.

    Обсуждение

    Этот метод делает тот же вид работы как performSynchronousFileAccessUsingBlock:, но никогда не блокируя основной поток, и может не вызвать блок, пока вызов метода не возвратился, хотя все еще всегда на том же потоке как вызов метода. Блок передается другой блок, обработчик завершения доступа к файлу, который должен быть вызван, когда доступ к файлу завершен, хотя это может быть вызвано от любого потока. Этот метод для использования с доступом к файлу, который мог бы начаться на одном потоке, но продолжить другой, прежде чем это будет завершено. Например, saveToURL:ofType:forSaveOperation:completionHandler: использование этот метод вместо performSynchronousFileAccessUsingBlock: потому что, если это делает асинхронное сохранение тогда, нет никакого пути к нему для завершения всего его доступа к файлу прежде, чем возвратиться из блока доступа к файлу.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Ожидает любого запланированного доступа к файлу для завершения, затем вызывает переданный - в блоке.

    Объявление

    Swift

    func performSynchronousFileAccessUsingBlock(_ block: () -> Void)

    Objective C

    - (void)performSynchronousFileAccessUsingBlock:(void (^)(void))block

    Параметры

    block

    Блок, выполняющий доступ к файлу.

    Обсуждение

    Учитывая блок, который выполнит доступ к файлу, этот метод ожидает любого доступа к файлу, запланированного предыдущими вызовами этого метода или performAsynchronousFileAccessUsingBlock: для завершения, затем вызывает переданный - в блоке. Когда блочный вызов возвращается, метод позволяет следующий запланированный доступ к файлу к быть выполненным, если таковые имеются.

    Как performActivityWithSynchronousWaiting:usingBlock:, основное использование этого метода должно ожидать асинхронного сохранения, но в отличие от того метода это только для части асинхронной работы сохранения, фактически касающейся файла документа или значений в памяти, которые являются относительно файла документа.

    В целом необходимо использовать этот метод или performAsynchronousFileAccessUsingBlock: вокруг кода, получающего или устанавливающего значения в памяти, которые только целесообразны в контексте текущего состояния файла документа. Например, NSDocument самостоятельно последовательно использование этот механизм при использовании следующих методов и свойств:

    • fileType, fileURL, fileModificationDate, и autosavedContentsFileURL свойства, потому что Вы не можете надежно принять решения на основе расположения файла, вводят, или дата модификации, когда она асинхронно перемещается, переименовывается или изменяется в тот момент.

    • documentEdited и hasUnautosavedChanges свойства, потому что Вы не можете надежно принять решения на основе того, было ли содержание документа в памяти сохранено к файлу, когда она асинхронно сохраняется в тот момент.

    • updateChangeCountWithToken:forSaveOperation: и, иногда, updateChangeCount:, сделать использование этого механизма при вызове documentEdited и hasUnautosavedChanges значимый.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвращает булево значение, указывающее, безопасно ли, вероятно, сохранить изменения документа автоматически.

    Объявление

    Swift

    func checkAutosavingSafetyAndReturnError(_ outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)checkAutosavingSafetyAndReturnError:(NSError **)outError

    Параметры

    outError

    Если NOfalse возвращается, указатель на ошибочный объект, инкапсулирующий причину, документ не должен быть сохранен автоматически.

    Возвращаемое значение

    YEStrue если автоматическое сохранение документа, вероятно, безопасно; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода проверяет на документы, не измененные в некоторое время («некоторое время» подвержен изменениям), или сохраняются в папках, где пользователь обычно не редактирует документы ( ~/Downloads папка, например). Когда это обнаруживает один из тех случаев, это возвращается NOfalse с NSError объект, имеющий опции восстановления как Копия, Отмена, и Разблокировавший.

    В приложении, принявшем автоматическое сохранение на месте путем переопределения autosavesInPlace возвратиться YEStrue, можно переопределить этот метод для настройки сохраняющейся автоматически безопасности, проверяющей это NSDocument делает по умолчанию. Можно удалить NSDocument проверяющий значения по умолчанию, переопределяющий этот метод и не вызывающий супер. Можно добавить к NSDocument проверяющий значения по умолчанию, вызывающий супер и затем делающий Вашу собственную проверку, если [super checkAutosavingSafetyAndReturnError:] не сигнализировал ошибку. Например, TextEdit переопределяет этот метод для выяснения у пользователя, что сделать, когда открытие файла документа было с потерями и перезаписало, что файл мог бы поэтому быть с потерями.

    Когда автоматическое сохранение на месте включено NSDocument объект может вызвать этот метод, когда это получает уведомление от NSUndoManager возразите, что пользователь изменил документ, или отменил или восстановил изменение. Если ошибка возвращается, NSDocument представляет ошибку пользователю, позволяя пользователю выбрать опцию восстановления. Если пользователь выбирает опцию восстановления, то NSDocument вызывает этот метод снова, пока никакая ошибка не сообщена, чтобы удостовериться, что были сделаны все проверки. Это означает, что, когда Вы сигнализируете, ошибка и выбор пользователем опции восстановления указывают, что они видели и игнорировали беспокойство безопасности, необходимо записать тот факт и не сделать ту определенную проверку безопасности снова. Как только все ошибки обрабатываются, NSDocument продолжается путем вызова updateChangeCount:. Если пользователь не восстанавливается с ошибки, то NSDocument вызывает один из NSUndoManager методы undo или redo откатывать изменение. Так, часть из NSError опции восстановления пользователь могут выбрать, как NSDocument опции Duplicate и Cancel, должны указать отказавшее восстановление и заставить документ оставаться неизменным позже.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Планирует периодическое автоматическое сохранение в целях противоаварийной защиты.

    Объявление

    Swift

    func scheduleAutosaving()

    Objective C

    - (void)scheduleAutosaving

    Обсуждение

    Реализация по умолчанию этого метода проверяет, чтобы видеть, включено ли автоматическое сохранение и, раз так и если [self hasUnautosavedChanges] возвраты YEStrue, расписания NSTimer вызвать autosaveDocumentWithDelegate:didAutosaveSelector:contextInfo: в будущем. Если [self hasUnautosavedChanges] возвраты NOfalse это не планирует любой ранее запланированный таймер. Это заботится для не порождения autosaveDocumentWithDelegate:didAutosaveSelector:contextInfo: чтобы быть вызванным перед, предыдущий вызов, вызванный им, закончился. Точные синхронизации, которые это использует, являются сложными и подлежат изменению в будущих выпусках OS X. Когда точно периодическое автоматическое сохранение происходит, можно переопределить этот метод для управления. Это вызывается updateChangeCount: и updateChangeCountWithToken:forSaveOperation:.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Булево значение, указывающее, имеет ли документ несохраненные автоматически изменения. (только для чтения)

    Объявление

    Swift

    var hasUnautosavedChanges: Bool { get }

    Objective C

    @property(readonly) BOOL hasUnautosavedChanges

    Обсуждение

    Значение этого свойства YEStrue если документ имеет несохраненные автоматически изменения; иначе, значение NOfalse. Документ не сохранил изменения когда updateChangeCount: метод вызвали начиная с последнего сохранения.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Сохраняет содержание документа автоматически в надлежащем расположении.

    Объявление

    Swift

    func autosaveDocumentWithDelegate(_ delegate: AnyObject?, didAutosaveSelector didAutosaveSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)autosaveDocumentWithDelegate:(id)delegate didAutosaveSelector:(SEL)didAutosaveSelector contextInfo:(void *)contextInfo

    Параметры

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didAutosaveSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    После автоматического сохранения, отправляет сообщение, выбранное didAutosaveSelector делегату, с contextInfo как последний параметр. Метод выбран didAutosaveSelector должен иметь ту же подпись как:

    • - (void)document:(NSDocument *)document didAutosave:(BOOL)didAutosaveSuccessfully contextInfo:(void *)contextInfo

    Если ошибка происходит при автоматическом сохранении, метод сообщает о нем пользователю прежде, чем отправить делегата a succeeded:NO сообщение.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    autosavedContentsFileURL

  • Сохраняет содержание документа автоматически в надлежащем расположении, если ему нужно автоматическое сохранение.

    Объявление

    Swift

    func autosaveWithImplicitCancellability(_ autosavingIsImplicitlyCancellable: Bool, completionHandler completionHandler: (NSError!) -> Void)

    Objective C

    - (void)autosaveWithImplicitCancellability:(BOOL)autosavingIsImplicitlyCancellable completionHandler:(void (^)(NSError *errorOrNil))completionHandler

    Параметры

    autosavingIsImplicitlyCancellable

    Значение в autosavingIsImplicitlyCancellable свойство, в то время как происходит автоматическое сохранение.

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным в некоторый момент в будущем, возможно после того, как возвратился вызов метода. Обработчик завершения должен быть вызван на основной поток.

    Блок берет один параметр:

    errorOrNil

    Если успешный, передача a nil ошибка. Если не успешный, передайте NSError объект, инкапсулирующий причину, почему документ не мог быть сохранен автоматически.

    Обсуждение

    Реализация по умолчанию этого метода делает следующее:

    1. Проверяет значение hasUnautosavedChanges свойство.

    2. Если значение того свойства NOfalse, метод выполняет обработчик завершения с a nil ошибка и возвраты сразу.

      Если значение YEStrue, вызовы autosavesInPlace на классе для определения, куда должно пойти сохраненное автоматически содержание документа.

      Метод также вкладывает значение fileURL гарантировать, что файл имеет фактический URL, потому что не возможно сохраниться автоматически на месте, если документ еще не имеет постоянного расположения.

    3. Регистрирует значение autosavingFileType свойство для определения типа файла для сохраненного автоматически файла.

    4. Вызовы saveToURL:ofType:forSaveOperation:completionHandler:.

      Значение saveToURL параметр является расположением, где должен быть сохранен файл. Если файл имеет URL, и класс указывает, что автосохранение должно произойти на месте, это - URL файла. Иначе, это - расположение несуществующего файла в указанном расположении автосохранения.

      Значение для ofType параметр определяется вызовом к autosavingFileType.

      Значение forSaveOperation параметр NSAutosaveInPlaceOperation если класс сконфигурирован для автоматического сохранения на месте, и файл имеет URL. Иначе, значение NSAutosaveElsewhereOperation.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвраты, ли поддержки получателя, сохраняющиеся автоматически на месте.

    Объявление

    Swift

    class func autosavesInPlace() -> Bool

    Objective C

    + (BOOL)autosavesInPlace

    Возвращаемое значение

    YEStrue если поддержки получателя, сохраняющиеся автоматически на месте; NOfalse иначе.

    Обсуждение

    Реализация по умолчанию этого метода возвраты NOfalse. Можно переопределить его и возврат YEStrue объявить что Ваш подкласс NSDocument может сделать автоматическое сохранение на месте. Вы не должны вызывать этот метод, чтобы узнать, делается ли автоматическое сохранение на месте фактически в какой-либо определенный момент. Необходимо вместо этого использовать Save Operation Types параметр, который система передает Вашим переопределениям сохранения и методов записи.

    AppKit вызывает этот метод во множестве времен, и не всегда на основном потоке. Например, autosaveWithImplicitCancellability:completionHandler: вызывает этот метод как часть определения, будет ли автоматическое сохранение выполняться на месте (NSAutosaveInPlaceOperation) или в отдельном каталоге автосохранения (NSAutosaveElsewhereOperation). Как другой пример, canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo: метод и NSDocumentController машинное оборудование для обработки несохраненных изменений во время завершения приложения оба вызывает этот метод как часть определения, должны ли предупреждения о несохраненных изменениях быть представлены пользователю.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвраты, ли подкласс получения NSDocument автоматическое сохранение поддержек проектов.

    Объявление

    Swift

    class func autosavesDrafts() -> Bool

    Objective C

    + (BOOL)autosavesDrafts

    Возвращаемое значение

    YEStrue если подкласс получения NSDocument автоматическое сохранение поддержек проектов; иначе NOfalse.

    Обсуждение

    Система ожидает что NSDocument возвращающийся подкласс YEStrue от этого метода может должным образом обработать, сохраняют операции, использующие NSAutosaveAsOperation сохраните тип работы.

    Реализация по умолчанию этого метода возвраты YEStrue для приложений, соединенных на или после OS X, v10.8, и возвраты не для приложений соединился против более ранних версий OS X.

    Выбирать из автоматического сохранения в Вашем NSDocument разделите на подклассы при соединении на или после OS X v10.8, переопределите этот метод для возврата NOfalse.

    При соединении против версии OS X до 10,8, можно объявить что Ваш NSDocument разделите на подклассы поддержки, сохраняющиеся автоматически путем переопределения этого метода для возврата YEStrue.

    AppKit вызывает этот метод неоднократно. Например, когда updateChangeCount: с методом вызывают NSChangeDone но без NSChangeDiscardable измените тип, NSDocument будет следующее автосохранение, которое будет использовать NSAutosaveAsOperation и возвратите документ в проект.

    Не вызывайте этот метод, чтобы узнать, будет ли сделано автоматическое сохранение проекта.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Возвраты, ли подкласс получения NSDocument Версии поддержек.

    Объявление

    Swift

    class func preservesVersions() -> Bool

    Objective C

    + (BOOL)preservesVersions

    Возвращаемое значение

    YEStrue если подкласс получения NSDocument Версии поддержек; иначе NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода возвраты [self autosavesInPlace]. Можно переопределить его и возврат NOfalse объявить это NSDocument не должен сохранять старые версии документа.

    Возврат NOfalse от этого метода отключает просмотр версии и revertDocumentToSaved:, которые полагаются на сохранение версии при автоматическом сохранении на месте. Возврат YEStrue от этого метода, когда autosavesInPlace возвраты NOfalse приведет к неопределенному поведению.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Открывает браузер Версий в главном окне документа.

    Объявление

    Swift

    @IBAction func browseDocumentVersions(_ sender: AnyObject?)

    Objective C

    - (IBAction)browseDocumentVersions:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Это - действие пункта меню Browse Saved Versions в основанном на документе приложении.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Возвращает тип документа, который должен использоваться для работы автосохранения. (только для чтения)

    Объявление

    Swift

    var autosavingFileType: String? { get }

    Objective C

    @property(readonly, copy) NSString *autosavingFileType

    Обсуждение

    Это свойства содержат строку, идентифицирующую тип документа для файлов автосохранения. Реализация по умолчанию просто возвращает значение, предоставленное fileType свойство. Можно переопределить это свойство и возврат nil полностью отключить автоматическое сохранение отдельных документов (потому что объект NSDocumentController не вызывает autosaveDocumentWithDelegate:didAutosaveSelector:contextInfo: метод документа, не имеющего никакого типа файла автоматического сохранения). Можно также переопределить его, если приложение определяет тип документа, который специально предназначен для автоматического сохранения, например, тот, эффективно представляющий изменения содержания документа вместо полного содержания документа.

    Переопределение этого свойства может привести к неправильному поведению во время повторного открытия сохраненных автоматически документов. NSDocument метод initForURL:withContentsOfURL:ofType:error:, то, которое вызывается во время повторного открытия сохраненных автоматически документов после катастрофического отказа, берет два URLs, но только имя типа сохраненного автоматически файла содержания. Реализация по умолчанию обновляет fileType свойство с тем именем типа, но это может не быть правильным решением, если это свойство содержит что-то другое, чем fileType во время автоматического сохранения документа. Если Вы переопределяете autosavingFileType, вероятно, необходимо переопределить initForURL:withContentsOfURL:ofType:error: также, и сделайте обновление переопределения fileType с типом фактического файла документа, после вызова super. Посмотрите TextEdit Document класс для примера того, как сделать это.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Булево значение, указывающее, происходит ли автоматическое сохранение теперь, но могло бы быть безопасно отменено. (только для чтения)

    Объявление

    Swift

    var autosavingIsImplicitlyCancellable: Bool { get }

    Objective C

    @property(readonly) BOOL autosavingIsImplicitlyCancellable

    Обсуждение

    Значение этого свойства YEStrue если бы автоматическое сохранение происходит, но ничто плохо не произошло бы, если бы оно было отменено. Например, когда периодическое автоматическое сохранение делается только для противоаварийной защиты, которая не должна быть сделана все время, это свойство установлено в YEStrue. Когда автоматическое сохранение делается, потому что документ закрывается, свойство установлено в NOfalse.

    Когда значение YEStrue, Ваш пишущий документ код может вызвать unblockUserInteraction после записи факта, изменяющегося на модель документа, сделанную пользователем, должен сначала отменить остальную часть записи. Ваш код, вносящий изменения в модель документа тогда, должен всегда делать ту отмену сначала. Если Ваш код записи неявно отменяется таким образом, он должен установить NSError объект передал в отношении метода записи для NSUserCancelledError в NSCocoaErrorDomain.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Расположение последний раз сохраненного автоматически содержания документа.

    Объявление

    Swift

    @NSCopying var autosavedContentsFileURL: NSURL?

    Objective C

    @property(copy) NSURL *autosavedContentsFileURL

    Обсуждение

    Используйте это свойство для указания расположения, где Вы хотите, чтобы документ хранил файлы автосохранения. URL, который Вы указываете, должен указать абсолютный путь, не относительный путь.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Перемещает документ в хранение iCloud пользователя в ответ на пользователя, выбор Move к iCloud … пункт меню.

    Объявление

    Swift

    @IBAction func moveDocumentToUbiquityContainer(_ sender: AnyObject?)

    Objective C

    - (IBAction)moveDocumentToUbiquityContainer:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Это - метод действия Перемещения к iCloud … пункт меню в основанном на документе приложении. Реализация по умолчанию дарит пользователю предупреждение, просящее подтвердить перемещение прежде, чем вызвать moveToURL:completionHandler: метод с URL в контейнере повсеместности приложения по умолчанию.

    См. Движущиеся Документы для описаний методов для перемещения документа локальному пути.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Возвраты, ли Ваш NSDocument подкласс позволяет использование хранения документов iCloud.

    Объявление

    Swift

    class func usesUbiquitousStorage() -> Bool

    Objective C

    + (BOOL)usesUbiquitousStorage

    Обсуждение

    Возвраты реализации по умолчанию этого метода YEStrue если Ваше приложение имеет допустимое право хранения документов iCloud (com.apple.developer.ubiquity-container-identifiers или com.apple.developer.icloud-container-identifiers, как описано в Дающей право Ключевой Ссылке). Когда возвращается этот метод YEStrue, система добавляет новые пункты меню и другой UI для документов iCloud, как надлежащие, и позволяет документам быть сохраненными или перемещенными в основной контейнер iCloud. (Основной контейнер iCloud является тем, идентифицированным первой контейнерной строкой идентификатора в списке Контейнеров iCloud в цели XCode редактор.)

    Указать что Ваш NSDocument подкласс не использует хранение iCloud, переопределяет этот метод для возврата NOfalse.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Сохраняет связанное с интерфейсом состояние документа.

    Объявление

    Swift

    func encodeRestorableStateWithCoder(_ coder: NSCoder)

    Objective C

    - (void)encodeRestorableStateWithCoder:(NSCoder *)coder

    Параметры

    coder

    Объект кодера, в котором можно сохранить связанное с интерфейсом состояние документа.

    Обсуждение

    Этот метод является частью системы резервирования окна и вызывается в подходящее время для сохранения связанной с окном информации документа состояния к указанному архиву. Реализация по умолчанию этого метода записывает некоторую основную информацию о документе. При переопределении этого метода необходимо вызвать super в некоторый момент в Вашей реализации.

    Подклассы могут переопределить этот метод и использовать его для восстановления любой информации, которая была бы необходима для восстановления окна документа к его текущему состоянию. Например, Вы могли использовать этот метод для записи ссылок на данные, которыми в настоящее время управляет документ и выведенные на экран окном. (Не храните сами фактические данные. Сохраните только ссылки на данные так, чтобы можно было загрузить их позже из диска.) Необходимо хранить достаточно данных для реконфигурирования документа и его окна к их текущему состоянию во время последующего запуска приложения.

    Для получения информации об использовании объекта кодера записать данные в архив, см. Руководство по программированию Архивов и Сериализации.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

    См. также

    – restoreStateWithCoder:

  • Восстанавливает связанное с интерфейсом состояние документа.

    Объявление

    Swift

    func restoreStateWithCoder(_ coder: NSCoder)

    Objective C

    - (void)restoreStateWithCoder:(NSCoder *)coder

    Параметры

    coder

    Объект кодера использовать для восстановления связанного с интерфейсом состояния документа.

    Обсуждение

    Этот метод является частью системы резервирования окна и вызывается во время запуска для восстановления связанного с окном состояния объекта документа. Реализация по умолчанию восстанавливает некоторую основную информацию о документе. При переопределении этого метода необходимо вызвать super в некоторый момент в Вашей реализации.

    Подклассы могут переопределить этот метод и использовать его для восстановления связанной с документом информации, сохраненной в encodeRestorableStateWithCoder: метод. Можно также использовать этот метод для реконфигурирования документа (или его связанный контроллер окна и окно) к их предыдущему появлению.

    Для получения информации об использовании объекта кодера считать данные из архива, см. Руководство по программированию Архивов и Сериализации.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвращает массив ключевых путей, представляющих восстановимые атрибуты документа.

    Объявление

    Swift

    class func restorableStateKeyPaths() -> [AnyObject]

    Objective C

    + (NSArray *)restorableStateKeyPaths

    Возвращаемое значение

    Массив NSString объекты, каждый из которых содержит ключевой путь к одному из атрибутов документа.

    Обсуждение

    Можно использовать этот метод вместо, или в дополнение к, encodeRestorableStateWithCoder: и restoreStateWithCoder: методы, чтобы сохранить и восстановить состояние Вашего документа. Ключевые пути должны относиться к атрибутам, которые являются кодированием значения ключа и Значением ключа, наблюдающим совместимый.

    Когда изменения обнаруживаются, указанные атрибуты автоматически записаны в диск с остальной частью связанного с интерфейсом состояния приложения. Во время запуска атрибуты автоматически восстанавливаются их предыдущим значениям.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Отмечает связанное с интерфейсом состояние документа как грязное.

    Объявление

    Swift

    func invalidateRestorableState()

    Objective C

    - (void)invalidateRestorableState

    Обсуждение

    Вызовите этот метод каждый раз, когда изменяется восстановимое состояние Вашего документа. Этот метод отмечает состояние документа как грязное, который заставляет то состояние быть записанным в диск в некоторый момент в будущем. Не переопределяйте этот метод.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Восстанавливает окно, связанное с документом, после того, как вновь открывается тот документ.

    Объявление

    Swift

    func restoreDocumentWindowWithIdentifier(_ identifier: String, state state: NSCoder, completionHandler completionHandler: (NSWindow!, NSError!) -> Void)

    Objective C

    - (void)restoreDocumentWindowWithIdentifier:(NSString *)identifier state:(NSCoder *)state completionHandler:(void (^)(NSWindow *, NSError *))completionHandler

    Параметры

    identifier

    Уникальная интерфейсная строка идентификатора элемента, ранее связанная с окном. Используйте эту строку для определения который окно создать.

    state

    Объект кодера, содержащий информацию о статусе окна. Этот объект кодера содержит объединенное восстановимое состояние окна, которое может включать состояние окна, его делегата, контроллера окна и объекта документа. Можно использовать это состояние для определения который окно создать.

    completionHandler

    Блочный объект выполниться с результатами создания окна. Вы должны выполнить этот блок в некоторый момент, но можете сделать так после возвратов метода в случае необходимости. Этот блок берет следующие параметры:

    • Окно, создававшееся или nil если не могло бы быть создано окно.

    • Ошибочный объект, если окно не было распознано или не могло бы быть создано по любой причине; иначе, указать nil.

    Обсуждение

    Этот метод вызывает значение по умолчанию NSDocumentController реализация restoreWindowWithIdentifier:state:completionHandler:.

    Реализация по умолчанию этого метода сначала проверяет, имеет ли документ контроллеры окна, и в противном случае это вызывает makeWindowControllers. Если существует тогда точно один контроллер окна, он вызывает обработчик завершения со своим окном. Если существует больше чем один, это ищет контроллеры окна получателя окно, соответствующее данный идентификатор, и затем вызывающее обработчик завершения с ним. Если никакое окно не могло бы быть найдено, это вызывает обработчик завершения с a nil окно.

    Если Ваш документ имеет переменные или дополнительные окна, можно переопределить это, чтобы создать требуемое окно, и затем вызвать обработчик завершения с ним. Это позволяет Вам использовать документ по умолчанию, вновь открывающий поведение, но вмешиваться при создании окон. Параметры совпадают с в методе класса restoreWindowWithIdentifier:state:completionHandler:.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • userActivity userActivity Свойство

    Объект, инкапсулирующий пользовательское действие, поддерживается этим документом.

    Объявление

    Swift

    var userActivity: NSUserActivity?

    Objective C

    @property(strong) NSUserActivity *userActivity

    Обсуждение

    NSDocument автоматически создает NSUserActivity объекты для основанных на iCloud документов, если приложение Info.plist файл списка свойств включает a CFBundleDocumentTypes ключ NSUbiquitousDocumentUserActivityType. Значение NSUbiquitousDocumentUserActivityType строка, использующаяся для NSUserActivity тип действия объекта. URL документа помещается в NSUserActivity объект userInfo словарь с NSUserActivityDocumentURLKey.

    На OS X, NSUserActivity объекты, которыми управляют NSDocument автоматически becomeCurrent когда любое окно контроллера окна документа становится основным. Иначе, необходимо вызвать [[document userActivity] becomeCurrent] в подходящее время.

    Если документ становится неповсеместным, userActivity свойство nil. Любой NSUserActivity объекты, которыми управляет AppKit, но не имеющие никаких ассоциированных документов (или респонденты) автоматически лишены законной силы.

    Это свойство может использоваться от любого потока. Это KVO заметный в случае, если userActivity объект совместно используется с другими объектами, которые должны быть сохранены в синхронизации, когда документ перемещается в и из iCloud.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.10 и позже.

  • Восстановления состояние должны были продолжать данное пользовательское действие.

    Объявление

    Swift

    func restoreUserActivityState(_ activity: NSUserActivity)

    Objective C

    - (void)restoreUserActivityState:(NSUserActivity *)activity

    Параметры

    activity

    Пользовательское действие, которое будет продолжаться.

    Обсуждение

    Подклассы переопределяют этот метод для восстановления состояния респондента с данным пользовательским действием. Переопределение должно использовать данные состояния, содержавшиеся в userInfo словарь данного пользовательского действия для восстановления объекта.

    Пользовательские действия, которыми управляют NSDocument может быть восстановлен автоматически, если NOfalse возвращается из application:continueActivity:restorationHandler: или если это не реализовано. В этой ситуации документ открыт NSDocumentController метод openDocumentWithContentsOfURL:display:completionHandler: и получает a restoreUserActivityState: сообщение.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.10 и позже.

    См. также

    userActivity
    – updateUserActivityState:

  • Обновляет состояние данного пользовательского действия.

    Объявление

    Swift

    func updateUserActivityState(_ activity: NSUserActivity)

    Objective C

    - (void)updateUserActivityState:(NSUserActivity *)activity

    Параметры

    activity

    Пользовательское действие, которое будет обновлено.

    Обсуждение

    Реализация по умолчанию этого метода помещает документ fileURL в NSUserActivity объект userInfo словарь с NSUserActivityDocumentURLKey. NSDocument автоматически наборы needsSave свойство NSUserActivity к YEStrue когда fileURL изменения.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.10 и позже.

    См. также

    userActivity
    – restoreUserActivityState:

  • documentEdited documentEdited Свойство

    Булево значение, указывающее, имеет ли документ несохраненные изменения. (только для чтения)

    Объявление

    Swift

    var documentEdited: Bool { get }

    Objective C

    @property(getter=isDocumentEdited, readonly) BOOL documentEdited

    Обсуждение

    Значение этого свойства YEStrue если был отредактирован документ. Отредактированное состояние каждого окна документа отражает отредактированное состояние документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.10 и позже.

    См. также

    – updateChangeCount:
    setDocumentEdited: (NSWindow)

  • Булево значение, указывающее, принял ли пользователь решение скрыть расширение имени файла, выбранного в панели Save для документа. (только для чтения)

    Объявление

    Swift

    var fileNameExtensionWasHiddenInLastRunSavePanel: Bool { get }

    Objective C

    @property(readonly) BOOL fileNameExtensionWasHiddenInLastRunSavePanel

    Возвращаемое значение

    YEStrue если панель Save была представлена, и пользователь принял решение скрыть расширение; иначе, NOfalse.

    Обсуждение

    Значение этого свойства YEStrue если панель Save была представлена, и пользователь принял решение скрыть расширение; иначе, значение NOfalse.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.1 и позже.

  • inViewingMode inViewingMode Свойство

    Булево значение, указывающее, является ли документ в режиме только для чтения. (только для чтения)

    Объявление

    Swift

    var inViewingMode: Bool { get }

    Objective C

    @property(getter=isInViewingMode, readonly) BOOL inViewingMode

    Обсуждение

    Значение этого свойства YEStrue если документ заблокирован т.е. если документ находится в «режиме просмотра только для чтения». Когда пользователь просматривает старую версию документа, можно использовать эту информацию для предотвращения определенных видов пользовательских действий или изменений.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Вызванный runModalSavePanelForSaveOperation:delegate:didSaveSelector:contextInfo: сделать любую настройку данной панели Save.

    Объявление

    Swift

    func prepareSavePanel(_ savePanel: NSSavePanel) -> Bool

    Objective C

    - (BOOL)prepareSavePanel:(NSSavePanel *)savePanel

    Параметры

    savePanel

    Панель Save.

    Возвращаемое значение

    YEStrue если успешно подготовлено; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию пуста и возвраты YEStrue.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Распечатывает получатель в ответ на пользователя, выбирающего команду Меню печати.

    Объявление

    Swift

    @IBAction func printDocument(_ sender: AnyObject?)

    Objective C

    - (IBAction)printDocument:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    NSDocument объект получает это сообщение действия, поскольку это перемещается цепочка респондента. Реализация по умолчанию вызывает printDocumentWithSettings:showPrintPanel:delegate:didPrintSelector:contextInfo:.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Когда пользователь выбирает команду Установочного меню Страницы, метод действия вызвал в получателе как первый респондент.

    Объявление

    Swift

    @IBAction func runPageLayout(_ sender: AnyObject?)

    Objective C

    - (IBAction)runPageLayout:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Реализация по умолчанию вызывает runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo: с текущим NSPrintInfo документа возражают как параметр; если пользователь щелкает по кнопке OK, и документ авторизовывает изменения в своей информации о печати (shouldChangePrintInfo:), метод устанавливает новый документ NSPrintInfo возразите и постепенно увеличивает количество изменения документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Действие пункта меню File Возвращается в основанном на документе приложении.

    Объявление

    Swift

    @IBAction func revertDocumentToSaved(_ sender: AnyObject?)

    Objective C

    - (IBAction)revertDocumentToSaved:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Реализация по умолчанию этого метода представляет предупредительное диалоговое окно, дающее пользователю возможность отменить работу. Если пользователь принимает решение продолжать, метод гарантирует, что любой редактор зарегистрировал использование Привязки Какао NSEditorRegistration неофициальный протокол отбросил свои изменения и затем вызывает revertToContentsOfURL:ofType:error:. Если это возвращается NOfalse, метод представляет ошибку пользователю в модальном документом предупредительном диалоговом окне.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    – updateChangeCount:

  • Когда пользователь выбирает команду меню Save, метод действия вызвал в получателе как первый респондент.

    Объявление

    Swift

    @IBAction func saveDocument(_ sender: AnyObject?)

    Objective C

    - (IBAction)saveDocument:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Реализация по умолчанию сохраняет документ двумя различными способами, в зависимости от того, имеет ли документ путь к файлу и присвоенный тип документа. Если путь и тип присваиваются, это просто пишет документ под своим текущим путем к файлу, и введите после создания резервной копии предыдущего файла. Если документ является новым (никакой путь к файлу и тип), это выполняет модальную панель Save для получения расположения файла, под которым можно сохранить документ. Это пишет документ этому файлу, устанавливает расположение файла документа и тип документа (если собственный тип), и очищает отредактированное состояние документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Когда пользователь выбирает команду меню Save As, метод действия вызвал в получателе как первый респондент.

    Объявление

    Swift

    @IBAction func saveDocumentAs(_ sender: AnyObject?)

    Objective C

    - (IBAction)saveDocumentAs:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Реализация по умолчанию выполняет модальную панель Save для получения расположения файла, под которым можно сохранить документ. Это пишет документ этому файлу, устанавливает расположение файла документа и тип документа (если собственный тип), и очищает отредактированное состояние документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Когда пользователь выбирает команду меню Save To, метод действия вызвал в получателе как первый респондент.

    Объявление

    Swift

    @IBAction func saveDocumentTo(_ sender: AnyObject?)

    Objective C

    - (IBAction)saveDocumentTo:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Реализация по умолчанию идентична saveDocumentAs: если документ является собственным типом, за исключением того, что этот метод не очищает отредактированное состояние документа и не сбрасывает расположение файла и тип документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Сохраняет документ.

    Объявление

    Swift

    func saveDocumentWithDelegate(_ delegate: AnyObject?, didSaveSelector didSaveSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)saveDocumentWithDelegate:(id)delegate didSaveSelector:(SEL)didSaveSelector contextInfo:(void *)contextInfo

    Параметры

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didSaveSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Если NSSaveOperation может быть выполнен без дальнейшего вмешательства пользователя (по крайней мере, ни один fileURL ни fileType nil), тогда метод сразу сохраняет документ. Иначе, если пользователь утверждает панель, это представляет панель Save пользователю и сохраняет документ. Когда сохранение было завершено или отменено, метод отправляет сообщение, выбранное didSaveSelector к delegate, с contextInfo как последний параметр.

    С OS X v10.5, этот метод проверки, чтобы видеть, был ли файл документа изменен, так как документ был открыт или последний раз сохранен или вернулся, в дополнение к проверке перемещение файла, переименование и повреждение, которое это сделало начиная с OS X v10.1. Когда это обнаруживает модификацию файла, это представляет предупреждение, говоря, что пользователь «Файл этого документа был изменен другим приложением, так как Вы открыли или сохранили его”, дав им выбор сохранения или не сохранения. Для обратной совместимости на уровне двоичных кодов это только сделано в приложениях, соединенных против OS X v10.5 или позже.

    didSaveSelector метод обратного вызова должен иметь следующую подпись:

    • - (void)document:(NSDocument *)doc didSave:(BOOL)didSave contextInfo:(void *)contextInfo

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Если получатель не грязен, этот метод сразу вызывает shouldCloseSelector обратный вызов на указанном делегате с YEStrue.

    Объявление

    Swift

    func canCloseDocumentWithDelegate(_ delegate: AnyObject, shouldCloseSelector shouldCloseSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)canCloseDocumentWithDelegate:(id)delegate shouldCloseSelector:(SEL)shouldCloseSelector contextInfo:(void *)contextInfo

    Параметры

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    shouldCloseSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Если получатель грязен, предупреждение представлено, дав пользователю шанс сохранить, не сохранить, или отмена. Если пользователь принимает решение сохранить, этот метод сохраняет документ. Если сохранение завершается успешно, это вызовы метода обратный вызов с YEStrue. Если сохранение отменяется или иначе неуспешное, это вызовы метода обратный вызов с NOfalse. Этим методом можно вызвать shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo:. Это также вызывают NSDocumentController метод closeAllDocumentsWithDelegate:didCloseAllSelector:contextInfo:. Необходимо вызвать его перед вызовом close если Вы закрываете документ и хотите дать пользователю шанс сохранить какие-либо редактирования. Передайте contextInfo объект с обратным вызовом.

    shouldCloseSelector метод обратного вызова должен иметь следующую подпись:

    • - (void)document:(NSDocument *)doc shouldClose:(BOOL)shouldClose contextInfo:(void *)contextInfo

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Закрывает все окна, принадлежавшие получателю, и удаляет получатель из списка документов, сохраняемых контроллером документа, следовательно выпускающим его.

    Объявление

    Swift

    func close()

    Objective C

    - (void)close

    Обсуждение

    Этот метод сразу закрывает документ, не спрашивая пользователей, если они хотят сохранить документ. Этот метод нельзя всегда вызывать.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Отбрасывания все несохраненные модификации документа и замены содержание документа путем чтения файла или пакета файла, расположенного URL указанного типа.

    Объявление

    Swift

    func revertToContentsOfURL(_ absoluteURL: NSURL, ofType typeName: String, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)revertToContentsOfURL:(NSURL *)absoluteURL ofType:(NSString *)typeName error:(NSError **)outError

    Параметры

    absoluteURL

    Расположение, из которого читается содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    outError

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

    Возвращаемое значение

    YEStrue если мог бы вернуться документ; иначе, NOfalse.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Создает новый документ, содержание которого совпадает с получателем, и возвращает ошибочный объект, если неуспешный.

    Объявление

    Swift

    func duplicateAndReturnError(_ outError: NSErrorPointer) -> NSDocument?

    Objective C

    - (NSDocument *)duplicateAndReturnError:(NSError **)outError

    Параметры

    outError

    По возврату, если документ не мог бы быть дублирован, указатель на ошибочный объект, инкапсулирующий причину, почему это не могло быть дублировано.

    Возвращаемое значение

    Новый документ, если дублирование успешно; иначе nil.

    Обсуждение

    Новый документ, еще возвратился не имеет значения для возврата из fileURL.

    Реализация по умолчанию этого метода сначала использует writeSafelyToURL:ofType:forSaveOperation:error: записать текущее содержание документа в файл расположилось в том же каталоге, использующемся для сохраненного автоматически содержания документов без названия и с тем же видом имени, затем вызывающем [[NSDocumentController sharedDocumentController] duplicateDocumentWithContentsOfURL:newContentsURL copying:NO displayName:aDisplayName error:outError].

    Можно переопределить этот метод для настройки то, что сделано во время дублирования документа, но если переопределение не вызывает [NSDocumentController duplicateDocumentWithContentsOfURL:copying:displayName:error:] необходимо заботиться, чтобы сделать вещи, которые тот метод делает, особенно вызывая [NSDocumentController addDocument:] и [NSFileCoordinator addFilePresenter:].

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Создает копию документа получения в ответ на пользователя, выбор Duplicate из меню File.

    Объявление

    Swift

    @IBAction func duplicateDocument(_ sender: AnyObject?)

    Objective C

    - (IBAction)duplicateDocument:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение действия.

    Обсуждение

    Реализация по умолчанию этого метода просто вызывает [self duplicateDocumentWithDelegate:nil didDuplicateSelector:NULL contextInfo:NULL].

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Создайте новый документ, содержание которого совпадает с получателем и уведомляет делегата.

    Объявление

    Swift

    func duplicateDocumentWithDelegate(_ delegate: AnyObject?, didDuplicateSelector didDuplicateSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)duplicateDocumentWithDelegate:(id)delegate didDuplicateSelector:(SEL)didDuplicateSelector contextInfo:(void *)contextInfo

    Параметры

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didDuplicateSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Создающийся новый документ еще не имеет значения для возврата из fileURL. Когда дублирование завершается, независимо от успешности или неуспешности, или отклоняется ли работа пользователем, этот метод отправляет сообщение, обозначенное didDuplicateSelector делегату, с contextInfo как последний параметр. Метод выбран didDuplicateSelector должен иметь ту же подпись как:

    • - (void)document:(NSDocument *)document didDuplicate:(BOOL)didDuplicate contextInfo:(void *)contextInfo;

    Реализация по умолчанию этого метода сначала удостоверяется, что любой редактор зарегистрировал использование Привязки Какао NSEditorRegistration неофициальный протокол фиксировал свои изменения, затем проверяет, чтобы видеть, существуют ли недавние изменения, которые, возможно, были непреднамеренными и, если так, представляют панель, дающую пользователю выбор отмены, дублирования или дублирования, затем отбрасывая недавние изменения. Если пользователь не отменяет дублирование, или если никакая панель не была представлена, оно тогда вызывает duplicateAndReturnError:. Если пользователь выбрал дублирование и отбрасывание, оно также отбрасывает недавние изменения после дублирования.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Переименовывает текущий документ в ответ на пользователя, выбирающего пункт меню Rename.

    Объявление

    Swift

    @IBAction func renameDocument(_ sender: AnyObject?)

    Objective C

    - (IBAction)renameDocument:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Это - метод действия пункта меню Rename в основанном на документе приложении. Реализация по умолчанию этого метода инициирует сеанс переименования в окне, создаваемом [self windowForSheet] сообщение.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Перемещает документ новому расположению в ответ на пользователя, выбор Move To … пункт меню.

    Объявление

    Swift

    @IBAction func moveDocument(_ sender: AnyObject?)

    Objective C

    - (IBAction)moveDocument:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Это - метод действия Перемещения К … пункту меню в основанном на документе приложении. По умолчанию этот метод вызывает moveDocumentWithCompletionHandler: метод, передавая nil как значение параметра.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Перемещает документ выбранному пользователями расположению.

    Объявление

    Swift

    func moveDocumentWithCompletionHandler(_ completionHandler: ((Bool) -> Void)?)

    Objective C

    - (void)moveDocumentWithCompletionHandler:(void (^)(BOOL didMove))completionHandler

    Параметры

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным после того, как перемещение завершается, независимо от успеха, отказа или отмены движущегося действия.

    Обсуждение

    Этот метод дарит пользователю панель перемещения если [self fileURL] неноль и затем пытается сохранить документ к новому расположению путем вызова moveToURL:completionHandler: метод, если пользователь принимает расположение, представленное панелью. Если файл с тем же именем уже будет существовать в том расположении, то пользователя попросят выбрать между заменой существующего ранее файла, переименованием текущего документа или отменой процесса перемещения. Если [self fileURL] nil, тогда [self runModalSavePanelForSaveOperation:NSSaveAsOperation delegate:didSaveSelector:contextInfo:] сообщение отправляется вместо этого.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Перемещает файл документа в данный URL.

    Объявление

    Swift

    func moveToURL(_ url: NSURL, completionHandler completionHandler: ((NSError!) -> Void)?)

    Objective C

    - (void)moveToURL:(NSURL *)url completionHandler:(void (^)(NSError *))completionHandler

    Параметры

    url

    Расположение, где файл в конечном счете закончится, если перемещение будет успешно.

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным в некоторый момент в будущем, возможно после того, как возвратился вызов метода. Обработчик завершения должен быть вызван на основной поток. На выводе, a nil если перемещение успешно, ошибка передается; иначе NSError объект передается, который инкапсулирует причину отказа.

    Обсуждение

    Реализация по умолчанию этого метода заменяет любой файл, который может в настоящее время существовать в данном URL с перемещаемым тем по мере необходимости.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Блокирует документ в ответ на пользователя, выбирающего пункт меню Lock.

    Объявление

    Swift

    @IBAction func lockDocument(_ sender: AnyObject?)

    Objective C

    - (IBAction)lockDocument:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Это - действие пункта меню Lock в основанном на документе приложении. Этот метод действия вызывает lockDocumentWithCompletionHandler: метод по умолчанию.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Разблокировал документ в ответ на пользователя, выбирающего пункт меню Unlock.

    Объявление

    Swift

    @IBAction func unlockDocument(_ sender: AnyObject?)

    Objective C

    - (IBAction)unlockDocument:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Это - действие пункта меню Unlock в основанном на документе приложении. Этот метод действия вызывает unlockDocumentWithCompletionHandler: метод по умолчанию.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Препятствует тому, чтобы пользователь внес дальнейшие изменения в документ.

    Объявление

    Swift

    func lockDocumentWithCompletionHandler(_ completionHandler: ((Bool) -> Void)?)

    Objective C

    - (void)lockDocumentWithCompletionHandler:(void (^)(BOOL didLock))completionHandler

    Параметры

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным после того, как блокировка завершается, независимо от успешности или неуспешности блокировки.

    Обсуждение

    По умолчанию этот метод сначала гарантирует, что любой редактор, зарегистрировавший Привязку Какао использования NSEditorRegistration неофициальный протокол фиксировал все изменения и затем сохраняет документ автоматически, при необходимости, прежде, чем попытаться заблокировать его с помощью lockWithCompletionHandler: метод. После успешной блокировки, locked свойство установлено в [YES]. Документы, чей fileURL свойство установлено в nil не может быть заблокирован.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Препятствует тому, чтобы дальнейшие модификации были сделаны к файлу.

    Объявление

    Swift

    func lockWithCompletionHandler(_ completionHandler: ((NSError!) -> Void)?)

    Objective C

    - (void)lockWithCompletionHandler:(void (^)(NSError *))completionHandler

    Параметры

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным после того, как блокировка завершается, независимо от успешности или неуспешности блокировки.

    Обсуждение

    Этот метод сначала блокирует файл в [self fileURL] и затем вызывает данный блок. Реализация блокировки значения по умолчанию должна включить “пользователю неизменный” флаг на файле.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Позволяет пользователю делать модификации к документу.

    Объявление

    Swift

    func unlockDocumentWithCompletionHandler(_ completionHandler: ((Bool) -> Void)?)

    Objective C

    - (void)unlockDocumentWithCompletionHandler:(void (^)(BOOL didUnlock))completionHandler

    Параметры

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным после того, как разблокирование завершается, независимо от успешности или неуспешности.

    Обсуждение

    По умолчанию этот метод вызывает unlockWithCompletionHandler: метод для разблокирования документа. Этот метод отключает сохраняющуюся автоматически проверку безопасности, означая это checkAutosavingSafetyAndReturnError: больше не будет вызываться на этот документ. Когда разблокирование успешно выполняется, locked метод начнет возвращаться NOfalse.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Позволяет пользователю делать модификации к файлу.

    Объявление

    Swift

    func unlockWithCompletionHandler(_ completionHandler: ((NSError!) -> Void)?)

    Objective C

    - (void)unlockWithCompletionHandler:(void (^)(NSError *))completionHandler

    Параметры

    completionHandler

    Блочный объект обработчика завершения передал в быть вызванным после того, как разблокирование завершается, независимо от успешности или неуспешности.

    Обсуждение

    По умолчанию этот метод пытается очистить “пользователя неизменный” флаг и, при необходимости, добавить полномочия записи к самому файлу.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Булево значение, указывающее, может ли файл быть записан в. (только для чтения)

    Объявление

    Swift

    var locked: Bool { get }

    Objective C

    @property(getter=isLocked, readonly) BOOL locked

    Обсуждение

    Это свойство может содержать значение YEStrue потому что пользователь испытывает недостаток в надлежащих полномочиях записи, “пользователь, неизменный” флаг был повышен, родительский каталог или объем только для чтения, или checkAutosavingSafetyAndReturnError: метод возвратился NOfalse. Не переопределяйте это свойство.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • printInfo printInfo Свойство

    Информация о печати связалась с документом.

    Объявление

    Swift

    @NSCopying var printInfo: NSPrintInfo

    Objective C

    @property(copy) NSPrintInfo *printInfo

    Возвращаемое значение

    Получатель NSPrintInfo объект.

    Обсуждение

    Значение по умолчанию этого свойства является объектом NSPrintInfo по умолчанию. Для настройки информации о печати присвойте новое значение этому свойству. Панель Page Layout может также обновить объект в этом свойстве для отражения опций, выбранных пользователем.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Вызванный runModalPageLayoutWithPrintInfo: и runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo: сделать любую настройку панели Page Layout pageLayout, такой как добавление вспомогательного представление.

    Объявление

    Swift

    func preparePageLayout(_ pageLayout: NSPageLayout) -> Bool

    Objective C

    - (BOOL)preparePageLayout:(NSPageLayout *)pageLayout

    Параметры

    pageLayout

    Панель макета страницы для подготовки.

    Возвращаемое значение

    YEStrue если успешно подготовлено; иначе, NOfalse.

    Обсуждение

    Реализация по умолчанию пуста и возвраты YEStrue.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Выполняет модальную панель макета страницы с информационным объектом печати получателя

    Объявление

    Swift

    func runModalPageLayoutWithPrintInfo(_ printInfo: NSPrintInfo, delegate delegate: AnyObject?, didRunSelector didRunSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)runModalPageLayoutWithPrintInfo:(NSPrintInfo *)printInfo delegate:(id)delegate didRunSelector:(SEL)didRunSelector contextInfo:(void *)contextInfo

    Параметры

    printInfo

    NSPrintInfo объект для панели макета страницы для использования.

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didRunSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Вызванный от метода действия runPageLayout:. Представляет приложение панели макета страницы модально, если нет никакого окна документа, которому это может быть представленный документ модально.

    Когда панель отклонена, delegate отправляется a didRunSelector сообщение. didRunSelector метод обратного вызова должен иметь следующую подпись:

    • - (void)documentDidRunModalPageLayout:(NSDocument *)document accepted:(BOOL)accepted contextInfo:(void *)contextInfo

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Выполняет указанную работу печати модально.

    Объявление

    Swift

    func runModalPrintOperation(_ printOperation: NSPrintOperation, delegate delegate: AnyObject?, didRunSelector didRunSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)runModalPrintOperation:(NSPrintOperation *)printOperation delegate:(id)delegate didRunSelector:(SEL)didRunSelector contextInfo:(void *)contextInfo

    Параметры

    printOperation

    Работа печати для выполнения.

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didRunSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Переопределения printShowingPrintPanel: может вызвать этот метод.

    Когда панель отклонена, delegate отправляется a didRunSelector сообщение. Передайте contextInfo объект с обратным вызовом. didRunSelector метод обратного вызова должен иметь следующую подпись:

    • - (void)documentDidRunModalPrintOperation:(NSDocument *)document success:(BOOL)success contextInfo:(void *)contextInfo

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает булево значение, указывающее, должен ли получатель позволить изменения в значении по умолчанию NSPrintInfo объект, используемый в печати документа.

    Объявление

    Swift

    func shouldChangePrintInfo(_ newPrintInfo: NSPrintInfo) -> Bool

    Objective C

    - (BOOL)shouldChangePrintInfo:(NSPrintInfo *)newPrintInfo

    Параметры

    newPrintInfo

    NSPrintInfo объект, который является результатом пользователя, утверждающего панель макета страницы, представленную runPageLayout:.

    Возвращаемое значение

    YEStrue по умолчанию; подклассы могут переопределить этот метод для возврата NOfalse.

    Обсуждение

    Этот метод вызывается runPageLayout: метод, устанавливающий новое NSPrintInfoобъект для документа, только если возвращается этот метод YEStrue.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Распечатывает документ.

    Объявление

    Swift

    func printDocumentWithSettings(_ printSettings: [NSObject : AnyObject], showPrintPanel showPrintPanel: Bool, delegate delegate: AnyObject?, didPrintSelector didPrintSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)printDocumentWithSettings:(NSDictionary *)printSettings showPrintPanel:(BOOL)showPrintPanel delegate:(id)delegate didPrintSelector:(SEL)didPrintSelector contextInfo:(void *)contextInfo

    Параметры

    printSettings

    Словарь настроек печати для использования.

    showPrintPanel

    Булево значение, указывающее, показана ли панель печати.

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didPrintSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    Если показ панели печати указан showPrintPanel, метод представляет его сначала и распечатывает, только если пользователь утверждает панель. NSPrintInfo атрибуты в переданном - в printSettings словарь добавляется к копии информации печати документа, и получающиеся информационные настройки печати используются для работы. Когда печать завершена или отменяется, метод отправляет сообщение, выбранное didPrintSelector к delegate, с contextInfo как последний параметр. Метод выбран didPrintSelector должен иметь ту же подпись как:

    • - (void)document:(NSDocument *)document didPrint:(BOOL)didPrintSuccessfully contextInfo: (void *)contextInfo

    Реализация по умолчанию этого метода вызывает printOperationWithSettings:error:. Если nil возвращается это представляет ошибку пользователю в модальной документом панели прежде, чем передать делегата. Иначе это вызывает [thePrintOperation setShowsPrintPanel:showPrintPanel] тогда [self runModalPrintOperation:thePrintOperation delegate:delegate didRunSelector:didPrintSelector contextInfo:contextInfo].

    Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, реализация по умолчанию этого метода вызывает printShowingPrintPanel: если это переопределяется. При выполнении этого это использует частную функциональность, чтобы принять меры, чтобы настройки печати вступили в силу (несмотря на то, что переопределение printShowingPrintPanel: не может возможно знать о них) и быть уведомленным, когда работа печати была завершена, таким образом, она может передать делегата в корректное время. Корректный обмен сообщениями делегата необходим для корректной обработки события Print Apple.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Создает работу печати и возвращает его в случае успеха.

    Объявление

    Swift

    func printOperationWithSettings(_ printSettings: [NSObject : AnyObject], error outError: NSErrorPointer) -> NSPrintOperation?

    Objective C

    - (NSPrintOperation *)printOperationWithSettings:(NSDictionary *)printSettings error:(NSError **)outError

    Параметры

    printSettings

    Словарь настроек печати для использования.

    outError

    По возврату, если работа печати не могла бы быть создана, указатель на ошибочный объект, инкапсулирующий причину, это не могло быть создано.

    Возвращаемое значение

    Работа печати, или nil если неуспешный.

    Обсуждение

    Работа печати может быть выполнена для печати текущего содержания документа. NSPrintInfo атрибуты в переданном - в printSettings словарь добавляется к копии информации печати документа, и получающаяся информация печати используется для работы.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Работа печати, которую можно использовать для создания представления PDF текущего содержания документа. (только для чтения)

    Объявление

    Swift

    var PDFPrintOperation: NSPrintOperation { get }

    Objective C

    @property(readonly, strong) NSPrintOperation *PDFPrintOperation

    Обсуждение

    Объект в этом свойстве может быть выполнен для печати текущего содержания документа к файлу PDF.

    Работа печати по умолчанию, сохраненная этим свойством, получена путем вызова printOperationWithSettings:error: метод и передача объекта настроек печати, содержащего только расположение (NSPrintSaveJob) и a NULL ошибочная ссылка на объект. Если Ваши поддержки подкласса документа, создающие представления PDF, можно переопределить это свойство по мере необходимости для настройки опций.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.9 и позже.

  • Экспортирует представление PDF текущего содержания документа.

    Объявление

    Swift

    @IBAction func saveDocumentToPDF(_ sender: AnyObject?)

    Objective C

    - (IBAction)saveDocumentToPDF:(id)sender

    Параметры

    sender

    Управление, отправляющее сообщение.

    Обсуждение

    Этот метод действия обрабатывает Экспорт “меню File Как PDF …” элемент в основанном на документе приложении.

    Реализация по умолчанию этого вызовы метода printDocumentWithSettings:showPrintPanel:delegate:didPrintSelector:contextInfo: метод, передавая объект настроек печати, содержащий только расположение (NSPrintSaveJob), с отключенным взаимодействием с пользователем и NULL или nil для всех других параметров.

    Если Ваши поддержки подкласса документа, создающие представления PDF, можно переопределить этот метод в случае необходимости.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.9 и позже.

  • Представляет ошибочное предупреждение пользователю как модальная панель.

    Объявление

    Swift

    func presentError(_ error: NSError, modalForWindow window: NSWindow, delegate delegate: AnyObject?, didPresentSelector didPresentSelector: Selector, contextInfo contextInfo: UnsafeMutablePointer<Void>)

    Objective C

    - (void)presentError:(NSError *)error modalForWindow:(NSWindow *)window delegate:(id)delegate didPresentSelector:(SEL)didPresentSelector contextInfo:(void *)contextInfo

    Параметры

    error

    Ошибочный объект инкапсуляция информации для представления пользователю.

    window

    Окно, которому принадлежит модальное предупреждение.

    delegate

    Делегат, в которого отправляется селекторное сообщение.

    didPresentSelector

    Селектор сообщения отправил делегату.

    contextInfo

    Объект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.

    Обсуждение

    То, когда пользователь отклоняет предупреждение, и любое восстановление, возможное для ошибки и выбранное пользователем, было опробовано, отправляет сообщение didPresentSelector к указанному delegate.

    NSDocument реализация по умолчанию этого метода эквивалентна тому из NSResponder и обрабатывает совместно используемое NSDocumentController возразите как следующий респондент, и передает эти сообщения к нему. Реализации по умолчанию нескольких NSDocument методы вызывают этот метод.

    Реализация по умолчанию этого метода вызывает willPresentError: дать подклассам возможность настроить ошибочное представление. Вы не должны переопределять этот метод, но должны вместо этого переопределить willPresentError:.

    Метод, выбранный didPresentSelector должен иметь ту же подпись как:

    • - (void)didPresentErrorWithRecovery:(BOOL)didRecover contextInfo:(void *)contextInfo

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Представляет ошибочное предупреждение пользователю как модальная панель.

    Объявление

    Swift

    func presentError(_ error: NSError) -> Bool

    Objective C

    - (BOOL)presentError:(NSError *)error

    Параметры

    error

    Ошибочный объект инкапсуляция информации для представления пользователю.

    Возвращаемое значение

    YEStrue если было сделано восстановление после ошибки; иначе, NOfalse.

    Обсуждение

    Этот метод не возвращается, пока пользователь не отклоняет предупреждение и, если ошибка имеет опции восстановления и делегата восстановления, делегат восстановления ошибки отправляется attemptRecoveryFromError:optionIndex: сообщение.

    NSDocument реализация по умолчанию этого метода эквивалентна тому из NSResponder и обрабатывает совместно используемое NSDocumentController как следующий респондент и передает эти сообщения к нему.

    Реализация по умолчанию этого метода вызывает willPresentError: дать подклассам возможность настроить ошибочное представление. Вы не должны переопределять этот метод, но должны вместо этого переопределить willPresentError:.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Вызванный, когда получатель собирается представить ошибку.

    Объявление

    Swift

    func willPresentError(_ error: NSError) -> NSError

    Objective C

    - (NSError *)willPresentError:(NSError *)error

    Параметры

    error

    Ошибочный объект, собирающийся быть представленным пользователю.

    Возвращаемое значение

    Ошибка, которая должна фактически быть представлена.

    Обсуждение

    Реализация по умолчанию этого метода просто возвращает по ошибке переданный. Возвращенная ошибка может просто быть передана контроллеру документа.

    Можно переопределить этот метод для настройки представления ошибок путем исследования по ошибке переданного и, например, возврата более определенной информации. Когда Вы переопределяете этот метод, всегда проверяют NSError домен объекта и код для различения между ошибками, представление которых Вы хотите настроить и те, Вы не делаете. Для ошибок Вы не хотите настраивать, вызывать реализацию суперкласса, передавая исходную ошибку.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Подтверждает что данный NSError объект не состоит в том, чтобы быть представлен пользователю, и ошибка не может быть восстановлена с, так, чтобы могла быть сделана очистка.

    Объявление

    Swift

    func willNotPresentError(_ error: NSError)

    Objective C

    - (void)willNotPresentError:(NSError *)error

    Параметры

    error

    NSError объект, возвращенный другим NSDocument метод.

    Обсуждение

    Некоторые NSDocument методы, как включенные в письменной форме, могут не сразу удалить временные файлы, если существует шанс, что ошибка может быть восстановлена с, и работа может продолжаться. Чтобы удостовериться, что очистка всегда делается, необходимо вызвать этот метод с NSDocument ошибки, не бывшие переданными одному из presentError:... методы. Например, NSDocument реализация NSFilePresenter метод savePresentedItemChangesWithCompletionHandler: вызывает этот метод, когда он вызывает autosaveWithImplicitCancellability:completionHandler: и обработчик завершения передается NSError объект, потому что это не представляет ошибку пользователю.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • hasUndoManager hasUndoManager Свойство

    Булево значение, указывающее, владеет ли документ или должен владеть менеджером по отмене объект.

    Объявление

    Swift

    var hasUndoManager: Bool

    Objective C

    @property BOOL hasUndoManager

    Обсуждение

    Если Вы изменяете значение этого свойства к НЕ, и документу уже принадлежит NSUndoManager объект, документ удаляет менеджера по отмене как наблюдателя связанных с отменой уведомлений и затем удаляет ее ссылку на объект.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • undoManager undoManager Свойство

    Менеджер по отмене документа объект.

    Объявление

    Swift

    var undoManager: NSUndoManager?

    Objective C

    @property(strong) NSUndoManager *undoManager

    Обсуждение

    Когда hasUndoManager свойство YEStrue, доступ к этому свойству создает NSUndoManager прежде, чем возвратить его. Если hasUndoManager свойство NOfalse, значение этого свойства nil по умолчанию. Присвоение менеджера по отмене к этому свойству хранит ссылку на объект и автоматически изменяется hasUndoManager свойство к YEStrue.

    Присваиваете ли Вы менеджера по отмене или позволяете документу создать один, документ регистрирует себя как наблюдатель различных NSUndoManager уведомления так, чтобы надлежащие действия документа были сохранены на стеке отмены.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Обновляет количество изменения получателя согласно данному типу изменения.

    Объявление

    Swift

    func updateChangeCount(_ changeType: NSDocumentChangeType)

    Objective C

    - (void)updateChangeCount:(NSDocumentChangeType)changeType

    Параметры

    changeType

    Тип изменения, внесенного в документ. Для списка значений посмотрите NSDocumentChangeType.

    Обсуждение

    Количество изменения указывает отредактированное состояние документа; если количество изменения 0, документ не имеет никаких изменений для сохранения, и если количество изменения больше, чем 0, документ был отредактирован и не сохраняется. При реализации отмены и восстановления в приложении необходимо постепенно увеличиться, изменение рассчитывают каждый раз, когда Вы создаете группу отмены и постепенно уменьшаете количество изменения, когда отмена или восстанавливает работу, выполняется.

    Обратите внимание на то, что, если Вы используете NSDocument функции отмены/восстановления по умолчанию, устанавливая отредактированное состояние документа путем обновления количества изменения происходят автоматически. Когда Вы не используете эти функции, только необходимо вызвать этот метод.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Имя типа документа, как указано в приложении Info.plist файл.

    Объявление

    Swift

    var fileType: String?

    Objective C

    @property(copy) NSString *fileType

    Обсуждение

    Тип документа влияет, как данные отфильтрованы, когда это записано в или считано из файла. Когда документ сохраняется, тип определяется записями в информационном списке свойств приложения (указанный в Info.plist).

    Вы не можете использовать это свойство для изменения формата документа после того, как это было уже открыто или сохранено. Это отчеты об имуществе только начальный формат документа, используемый, сначала открываясь или сохранив файл.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Тип файла, в последний раз выбранный в панели Save. (только для чтения)

    Объявление

    Swift

    var fileTypeFromLastRunSavePanel: String? { get }

    Objective C

    @property(readonly, copy) NSString *fileTypeFromLastRunSavePanel

    Обсуждение

    Этот тип прежде всего используется saveDocument:, saveDocumentAs:, и saveDocumentTo: были выполнены методы для определения типа, который пользователь выбрал после панели Save. Строка соответствует имени типа документа, поскольку это указано в приложении Info.plist файл.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает булево значение, указывающее, являются ли данные документа указанного типа собственным типом — один, получатель может и читать и записать.

    Объявление

    Swift

    class func isNativeType(_ aType: String) -> Bool

    Objective C

    + (BOOL)isNativeType:(NSString *)aType

    Параметры

    aType

    Строка, идентифицирующая тип документа для тестирования.

    Возвращаемое значение

    YEStrue если тип документа является собственным типом; иначе, NOfalse.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает типы данных, которые получатель может считать исходно и любые типы, поддающиеся фильтрованию к тому собственному типу.

    Объявление

    Swift

    class func readableTypes() -> [AnyObject]

    Objective C

    + (NSArray *)readableTypes

    Возвращаемое значение

    Массив NSString объекты, представляющие читаемые типы документов.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает булево значение, указывающее, читает ли получатель многократные документы данного типа одновременно.

    Объявление

    Swift

    class func canConcurrentlyReadDocumentsOfType(_ typeName: String) -> Bool

    Objective C

    + (BOOL)canConcurrentlyReadDocumentsOfType:(NSString *)typeName

    Параметры

    typeName

    Строка, идентифицирующая тип документа.

    Возвращаемое значение

    NOfalse по умолчанию; подклассы могут переопределить для возврата YEStrue, таким образом, вызывающие документы указанного типа, который будет считан одновременно.

    Обсуждение

    Ваш NSDocument подкласс может реализовать этот метод для возврата YEStrue позволять загрузиться документов одновременно, с помощью фоновых потоков. Когда это средство включено таким образом, initWithContentsOfURL:ofType:error: выполняется на фоновом потоке когда вводные файлы через панель Open или от Средства поиска. Это позволяет параллельное чтение многократных документов и также позволяет приложению быть быстро реагирующим при чтении большого документа.

    Реализация по умолчанию этого метода возвраты NOfalse. Переопределение подкласса должно возвратиться YEStrue только для типов документов, чтение которых ориентировано на многопотоковое исполнение, как описано в Многожильных Соображениях. Необходимо отключить регистрацию отмены во время чтения документа, которое является хорошей идеей даже в отсутствие параллелизма.

    При проверке текущего События Apple на строку поиска Вы не должны включать параллельное открытие документа, потому что код, обрабатывающий открытие документа, инициированное Событием Apple, не может получить текущее Событие Apple. Это происходит, потому что событие приостановлено, пока все документы не читаются для включения корректного создания отчетов успеха или ошибки.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.6 и позже.

    См. также

    + readableTypes

  • Возвращает типы данных, которые получатель может записать исходно и любые типы, поддающиеся фильтрованию к тому собственному типу.

    Объявление

    Swift

    class func writableTypes() -> [AnyObject]

    Objective C

    + (NSArray *)writableTypes

    Возвращаемое значение

    Массив NSString объекты, представляющие перезаписываемые типы документов.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает имена типов, к которым этот документ может быть сохранен для указанного, отчасти сохраняют работу.

    Объявление

    Swift

    func writableTypesForSaveOperation(_ saveOperation: NSSaveOperationType) -> [AnyObject]

    Objective C

    - (NSArray *)writableTypesForSaveOperation:(NSSaveOperationType)saveOperation

    Параметры

    saveOperation

    Отчасти сохраняют работу.

    Возвращаемое значение

    Массив NSString объекты, представляющие перезаписываемые типы документов.

    Обсуждение

    Тип работы сохранения представлен saveOperation. Поскольку каждый отчасти сохраняют работу кроме NSSaveToOperation, возвращенный массив должен только включать типы, для которых приложение может играть роль Редактора. Для NSSaveToOperation возвращенный массив может включать типы, для которых приложение может только играть роль Средства просмотра и другие типы, которые может просто экспортировать приложение. Реализация по умолчанию этого метода возвраты [[self class] writableTypes] с, кроме во время NSSaveToOperation, типы те, для который isNativeType: возвраты NOfalse отфильтрованный.

    Можно переопределить этот метод для ограничения набора перезаписываемых типов, когда документ в настоящее время содержит данные, которые не являются представимыми во всех типах. Например, когда документ содержит присоединение и может только быть сохранен должным образом к файлам RTFD, можно запретить сохранение к файлам RTF.

    Можно вызвать этот метод при создании пользовательского представления аксессуара панели сохранения для представления легко того же набора типов как NSDocument делает в его стандартном всплывающем меню формата файла.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.4 и позже.

  • Возвращает расширение файла, которое может быть добавлено к основному имени файла, для указанного типа файла и отчасти сохранить работу.

    Объявление

    Swift

    func fileNameExtensionForType(_ typeName: String, saveOperation saveOperation: NSSaveOperationType) -> String?

    Objective C

    - (NSString *)fileNameExtensionForType:(NSString *)typeName saveOperation:(NSSaveOperationType)saveOperation

    Параметры

    typeName

    Тип файла.

    saveOperation

    Отчасти сохраняют работу.

    Возвращаемое значение

    Расширение файла.

    Обсуждение

    Реализация по умолчанию этого метода вызывает preferredFilenameExtensionForType: на совместно используемом объекте рабочей области, если тип является UTI или, если это не для обратной совместимости на уровне двоичных кодов с OS X v10.4 и ранее, вызывает fileExtensionsFromType: на совместно используемом контроллере документа и выбирает первое расширение файла в возвращенном массиве.

    Можно переопределить этот метод для настройки добавления расширений имен файлов NSDocument. Запускаясь в OS X v10.5, это вызывается только от двух мест в AppKit:

    1. autosaveDocumentWithDelegate:didAutosaveSelector:contextInfo: метод использует этот метод при создании нового имени файла для сохраненного автоматически содержания.

    2. handleSaveScriptCommand: метод использует этот метод при добавлении расширения имени файла, указанного сценарием.

    Во всех других случаях имя любого сохраненного файла будет полностью указано пользователем с панелью Save (знают ли они это или не).

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.5 и позже.

  • Проверяет указанный элемент интерфейса пользователя, которым управляет получатель.

    Объявление

    Swift

    func validateUserInterfaceItem(_ anItem: NSValidatedUserInterfaceItem) -> Bool

    Objective C

    - (BOOL)validateUserInterfaceItem:(id<NSValidatedUserInterfaceItem>)anItem

    Параметры

    anItem

    Элемент интерфейса пользователя для проверки.

    Возвращаемое значение

    YEStrue если элемент допустим; иначе, NOfalse.

    Обсуждение

    Эти элементы в настоящее время включают, только Возвращаются и Сохраняют. Можно переопределить этот метод для добавления большего количества селекторов, проверенных подклассом документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Обрабатывает команду Close AppleScript путем попытки закрыть документ.

    Объявление

    Swift

    func handleCloseScriptCommand(_ command: NSCloseCommand) -> AnyObject?

    Objective C

    - (id)handleCloseScriptCommand:(NSCloseCommand *)command

    Параметры

    command

    Близкий объект команды AppleScript.

    Обсуждение

    Выдержки Близкие аргументы команды от command возразите и использует их, чтобы определить, как закрыть документ — в частности, проигнорировать ли несохраненные изменения, сохранить изменения автоматически или спрашивает пользователя и идентифицировать файл, в котором можно сохранить документ (по умолчанию, файл, открытый или ранее сохраненный к). Команда Close AppleScript может указать больше чем один документ завершению. Если так, сообщение отправляется в каждый объект документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Обрабатывает команду Print AppleScript путем попытки распечатать документ.

    Объявление

    Swift

    func handlePrintScriptCommand(_ command: NSScriptCommand) -> AnyObject?

    Objective C

    - (id)handlePrintScriptCommand:(NSScriptCommand *)command

    Параметры

    command

    Объект команды AppleScript.

    Обсуждение

    Параметры Команды печати выдержек от command возразите и использует их, чтобы определить, как распечатать документ — в частности, любые настройки печати и показать ли диалоговое окно Печати. Команда Print AppleScript может указать больше чем один документ печати. Если так, сообщение отправляется в каждый документ.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Обрабатывает команду Save AppleScript путем попытки сохранить документ.

    Объявление

    Swift

    func handleSaveScriptCommand(_ command: NSScriptCommand) -> AnyObject?

    Objective C

    - (id)handleSaveScriptCommand:(NSScriptCommand *)command

    Параметры

    command

    Объект команды AppleScript.

    Обсуждение

    Выдержки Сохраняют аргументы команды от command возразите и использует их для определения файла, в котором можно сохранить документ и тип файла.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает объектный спецификатор для документа.

    Объявление

    Swift

    var objectSpecifier: NSScriptObjectSpecifier { get }

    Objective C

    @property(readonly, strong) NSScriptObjectSpecifier *objectSpecifier

    Возвращаемое значение

    Спецификатор объекта документа.

    Обсуждение

    Объектный спецификатор представляет ссылочную форму AppleScript, которая является выражением естественного языка такой как words 10 through 20 или front document. Во время обработки сценария, объект, содержавший документом (такой как second paragraph или third rectangle) возможно, должен указать его контейнер (документ).

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает название документа с точки зрения свойства имени сценариев (имя, которое писатель сценария использовал бы для указания документа в сценарии).

    Объявление

    Swift

    var lastComponentOfFileName: String

    Objective C

    @property(copy) NSString *lastComponentOfFileName

    Возвращаемое значение

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

    Обсуждение

    Обратите внимание на то, что это имя может отличаться, чем имя файла в fileURL или используемый в методах такой как writeToFile:ofType:.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    displayName

  • Устанавливает название документа в данную строку с точки зрения свойства имени сценариев (имя, которое писатель сценария использовал бы для указания документа в сценарии).

    Объявление

    Swift

    var lastComponentOfFileName: String

    Objective C

    @property(copy) NSString *lastComponentOfFileName

    Параметры

    str

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

    Обсуждение

    Обратите внимание на то, что это имя может отличаться, чем имя, используемое в fileURL.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    displayName

  • canCloseDocument - canCloseDocument Доступный в OS X v10.0 через OS X v10.3

    Этот метод больше не поддерживается.

    Оператор осуждения

    Использовать canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo: вместо этого.

    Объявление

    Objective C

    - (BOOL)canCloseDocument

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 через OS X v10.3.

    Не доступный 64-разрядным приложениям.

  • Примитивный метод, переопределенный подклассами для возврата объекта данных, представляющего данные получателя в данном типе.

    Оператор осуждения

    Использовать dataOfType:error: вместо этого.

    Объявление

    Objective C

    - (NSData *)dataRepresentationOfType:(NSString *)type

    Обсуждение

    Примитивный метод, переопределенный подклассами для возврата объекта данных, представляющего данные получателя в данном типе (aType). Реализация по умолчанию raises NSInternalInconsistencyException. Этот метод вызывается реализацией по умолчанию fileWrapperRepresentationOfType:.

    aType имя типа, соответствующее значению CFBundleTypeName запись в типе документа Info.plist словарь.

    Вот типичная реализация:

    • //Document type name
    • NSString *MyDocumentType = @"Rich Text Format (RTF) document";
    • ...
    • - (NSData *)dataRepresentationOfType:(NSString *)aType {
    • NSAssert([aType isEqualToString:MyDocumentType], @"Unknown type");
    • return [textView RTFFromRange:NSMakeRange(0, [[textView textStorage] length])];
    • }

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Возвращает атрибуты файла, которые должны быть записаны в именованный файл документа указанного типа.

    Оператор осуждения

    Использовать fileAttributesToWriteToURL:ofType:forSaveOperation:originalContentsURL:error: вместо этого.

    Объявление

    Objective C

    - (NSDictionary *)fileAttributesToWriteToFile:(NSString *)fullDocumentPath ofType:(NSString *)documentTypeName saveOperation:(NSSaveOperationType)saveOperationType

    Обсуждение

    Возвращает атрибуты файла, которые должны быть записаны в именованный файл документа указанного типа docType, как часть детали saveOperationType. Набор атрибутов правильного файла является подмножеством понятых под NSFileManager класс.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.1 и позже.

    Осуждаемый в OS X v10.4.

  • Возвращает имя файла (как полностью определенный путь), под которым был сохранен получатель.

    Оператор осуждения

    Использовать fileURL вместо этого.

    Объявление

    Objective C

    - (NSString *)fileName

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Возвращается имя файла ввело в панель Save.

    Оператор осуждения

    Использовать saveDocumentWithDelegate:didSaveSelector:contextInfo: вместо этого.

    Объявление

    Objective C

    - (NSString *)fileNameFromRunningSavePanelForSaveOperation:(NSSaveOperationType)saveOperation

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 через OS X v10.3.

    Не доступный 64-разрядным приложениям.

  • Возвращает объект NSFileWrapper, представляющий данные получателя в данном типе.

    Оператор осуждения

    Использовать fileWrapperOfType:error: вместо этого.

    Объявление

    Objective C

    - (NSFileWrapper *)fileWrapperRepresentationOfType:(NSString *)type

    Обсуждение

    Возвраты NSFileWrapper объект, представляющий данные получателя в данном типе (aType). Этот метод вызывает dataRepresentationOfType: получить объект данных, из которого можно создать обертку файла простого файла. Подклассы могут переопределить этот метод если dataRepresentationOfType: не достаточен для их потребностей. Этот метод вызывается реализацией по умолчанию writeToFile:ofType:.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Инициализирует и возвращается NSDocument объект.

    Оператор осуждения

    Использовать initWithContentsOfURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (id)initWithContentsOfFile:(NSString *)absolutePath ofType:(NSString *)typeName

    Обсуждение

    Инициализирует и возвращает объект NSDocument типа документа docType содержание данных сохранено в файле fileName. В открытии файла, вызывает readFromFile:ofType: метод. Если документ успешно открывает файл, он обновляет fileURL и fileType. Если файл не может быть открыт, или документ неспособен загрузить содержание файла, этот метод возвраты nil. Этот инициализатор обычно вызывается NSDocumentController метод makeDocumentWithContentsOfFile:ofType:.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Инициализирует и возвращает объект NSDocument данного типа документа.

    Оператор осуждения

    Использовать initWithContentsOfURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (id)initWithContentsOfURL:(NSURL *)url ofType:(NSString *)typeName

    Обсуждение

    Инициализирует и возвращается NSDocument объект типа документа docType содержа данные, хранившие в aURL. В открытии расположения, вызывает readFromURL:ofType: метод. Если документ успешно открывает расположение, он обновляет fileURL и fileType. Если расположение не может быть открыто, или документ неспособен загрузить содержание расположения, этот метод возвраты nil. Этот инициализатор обычно вызывается NSDocumentController метод makeDocumentWithContentsOfURL:ofType:.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Переопределенный подклассами для загрузки данных документа.

    Оператор осуждения

    Использовать readFromData:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)loadDataRepresentation:(NSData *)data ofType:(NSString *)type

    Обсуждение

    Переопределенный подклассами для загрузки данных документа (docData) из типа docType в получатель выведите на экран его в окнах и возвратитесь, была ли работа успешна. Этот метод обычно вызывается loadFileWrapperRepresentation:ofType: после NSData объект создается из содержания обертки файла (который может включать каталоги). Реализация по умолчанию raises NSInternalInconsistencyException. Подклассы должны переопределить этот метод, если они не переопределяют readFromFile:ofType: или loadFileWrapperRepresentation:ofType: сделать специализированное чтение и загрузку данных документа.

    docType параметром является имя типа, соответствующее значению CFBundleTypeName запись в типе документа Info.plist словарь.

    Вот реализация в качестве примера:

    • //Document type name
    • NSString *MyDocumentType = @"Rich Text Format (RTF) document";
    • ...
    • - (BOOL)loadDataRepresentation:(NSData *)data ofType:(NSString *)aType {
    • NSAssert([aType isEqualToString: MyDocumentType], @"Unknown type");
    • fileContents = [data copyWithZone:[self zone]];
    • return YES;
    • }

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Данные документа загрузок от данной обертки файла.

    Оператор осуждения

    Использовать readFromFileWrapper:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)loadFileWrapperRepresentation:(NSFileWrapper *)wrapper ofType:(NSString *)type

    Обсуждение

    Данные документа загрузок в обертке файла wrapper из типа docType в получатель дисплеи это в окнах, и возвращается, была ли работа успешна. Если wrapper простой файл, он вызывает loadDataRepresentation:ofType: загрузить данные. Если wrapper каталог, он возвращается NOfalse по умолчанию; подклассы могут переопределить для обработки оберток файла, которые являются каталогами. Этот метод обычно вызывается readFromFile:ofType: после того, как это создает объект NSData из содержания файла.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Переопределенный подклассами для печати текущего документа (получатель) данные.

    Оператор осуждения

    Использовать printDocumentWithSettings:showPrintPanel:delegate:didPrintSelector:contextInfo: вместо этого.

    Объявление

    Objective C

    - (void)printShowingPrintPanel:(BOOL)flag

    Обсуждение

    Переопределенный подклассами для печати текущего документа (получатель) данные; если flag YEStrue, реализация должна сначала вывести на экран панель Print. Этот метод обычно вызывается printDocument: с параметром YEStrue. Реализация по умолчанию ничего не делает. Если существует информация о печати кроме закодированного в получателе NSPrintInfo объект, подклассы должны получить его здесь.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Чтения и данные документа загрузок данного типа от данного файла.

    Оператор осуждения

    Использовать readFromURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)readFromFile:(NSString *)fileName ofType:(NSString *)type

    Обсуждение

    Чтения и данные документа загрузок типа docType от файла fileName, возврат, была ли работа успешна. Этот метод вызывает loadDataRepresentation:ofType: когда получатель сначала создается и инициализируется, и вызывается initWithContentsOfFile:ofType:. Это использует NSData initWithContentsOfFile: получить данные документа.

    Этот метод является одним из основанных на местоположении примитивов. Подклассы могут переопределить этот метод вместо переопределения loadDataRepresentation:ofType: считать и загрузить данные документа. Подклассы, обрабатывающие пакеты файла, такие как RTFD или та обработка расположения файлов как что-либо кроме путей, должны переопределить этот метод. Реализации переопределения этого метода могут отфильтровать использование данных документа NSPasteboard или другие службы фильтрации.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Чтения и данные документа загрузок.

    Оператор осуждения

    Использовать readFromURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)readFromURL:(NSURL *)url ofType:(NSString *)type

    Обсуждение

    Чтения и данные документа загрузок типа docType от URL aURL, возврат, была ли работа успешна. Этот метод только поддерживает URLs file: схема и вызовы readFromFile:ofType:.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Возвращается получатель к данным, хранившим в файловой системе.

    Оператор осуждения

    Использовать revertToContentsOfURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)revertToSavedFromFile:(NSString *)fileName ofType:(NSString *)type

    Обсуждение

    Возвращается получатель к данным, хранившим в файловой системе в названном файле fileName из типа файла type. Вызывает readFromFile:ofType: и возвраты, считал ли тот метод успешно файл и обработал данные документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Возвращается получатель.

    Оператор осуждения

    Использовать revertToContentsOfURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)revertToSavedFromURL:(NSURL *)url ofType:(NSString *)type

    Обсуждение

    Возвращается получатель к данным, хранившим в aURL из типа type. Вызывает readFromURL:ofType: и возвраты, считал ли тот метод успешно файл и обработал данные документа.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Выполняет макет страницы модальная панель с информационным объектом печати получателя.

    Оператор осуждения

    Использовать runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo: вместо этого.

    Объявление

    Objective C

    - (NSInteger)runModalPageLayoutWithPrintInfo:(NSPrintInfo *)printInfo

    Обсуждение

    Выполняет макет страницы модальная панель с информационным объектом печати получателя (printInfo) как параметр и возвраты постоянный результат (указание кнопки, нажатой пользователем). Для выполнения как лист на окне документа получателя использовать runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo: вместо этого.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Вызванный после того, как пользователю дали возможность выбрать место назначения через модальную панель Save.

    Оператор осуждения

    Использовать saveToURL:ofType:forSaveOperation:delegate:didSaveSelector:contextInfo: вместо этого.

    Объявление

    Objective C

    - (void)saveToFile:(NSString *)fileName saveOperation:(NSSaveOperationType)saveOperation delegate:(id)delegate didSaveSelector:(SEL)didSaveSelector contextInfo:(void *)contextInfo

    Обсуждение

    Вызванный после того, как пользователю дали возможность выбрать место назначения через модальную панель Save, представленную runModalSavePanelForSaveOperation:delegate:didSaveSelector:contextInfo:. delegate присваивается панели Save. Если fileName не -nil, этот метод пишет документ fileName, устанавливает расположение файла документа и тип документа (если собственный тип), и очищает отредактированное состояние документа. didSaveSelector с вызывают YEStrue если документ сохраняется успешно, и NOfalse иначе. saveOperation одна из констант в Константах. Передача contextInfo с обратным вызовом.

    didSaveSelector метод обратного вызова должен иметь следующую подпись:

    • - (void)document:(NSDocument *)doc didSave:(BOOL)didSave contextInfo:(void *)contextInfo

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Поскольку деталь отчасти сохраняют работу и возвраты, сохраняет содержание документа файлу или пакету файла, расположенному URL, отформатированным к указанному типу YEStrue в случае успеха.

    Оператор осуждения

    Использовать saveToURL:ofType:forSaveOperation:completionHandler: вместо этого.

    Объявление

    Objective C

    - (BOOL)saveToURL:(NSURL *)absoluteURL ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation error:(NSError **)outError

    Параметры

    absoluteURL

    Расположение файла или пакета файла, к которому сохраняется содержание документа.

    typeName

    Строка, идентифицирующая тип документа.

    saveOperation

    Тип работы сохранения.

    outError

    По возврату, если содержание документа не могло бы быть сохранено, указатель на ошибочный объект, инкапсулирующий причину, они не могли быть сохранены.

    Возвращаемое значение

    YEStrue если было успешно сохранено содержание документа; иначе, NOfalse.

    Обсуждение

    Можно переопределить этот метод, чтобы сделать вещи, которые должны быть сделаны прежде или после того, как любой сохраняет работу. При переопределении этого метода необходимо вызвать super в некоторый момент в Вашей реализации.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.4 и позже.

    Осуждаемый в OS X v10.6.

  • Устанавливает файл (имя файла и путь к каталогу), под которым сохраняются данные документа.

    Оператор осуждения

    Использовать setFileURL: вместо этого.

    Объявление

    Objective C

    - (void)setFileName:(NSString *)fileName

    Обсуждение

    Устанавливает файл (имя файла и путь к каталогу), под которым данные документа сохраняются к fileName. Как побочный эффект, синхронизирует заголовки окон документа с новым именем или расположением. Имя файла документа автоматически установлено, когда оно сохраняется, как новый документ (Сохраняет) и когда существующий документ сохраняется под различным именем файла, или путь (Сохраните Как). Средство поиска также отслеживает открытые документы и их связанные файлы. Когда пользователь перемещает или переименовывает файл в Средстве поиска, соответствующем открытому документу, вызовам Средства поиска setFileName: с новым именем файла.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • shouldCloseWindowController: - shouldCloseWindowController: Доступный в OS X v10.0 через OS X v10.3

    Дает пользователю возможность сохранить документ.

    Оператор осуждения

    Использовать shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo: вместо этого.

    Объявление

    Objective C

    - (BOOL)shouldCloseWindowController:(NSWindowController *)windowController

    Обсуждение

    При закрытии windowController заставил бы получатель быть закрытым, вызывает canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo: вывести на экран панель Save и дать пользователю возможность сохранить документ. Возвращает возвращаемое значение canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:. Обратите внимание на то, что получатель не закрывается, пока не закрывается его контроллер окна.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 через OS X v10.3.

    Не доступный 64-разрядным приложениям.

  • validateMenuItem: - validateMenuItem: Доступный в OS X v10.0 через OS X v10.3

    Проверяет пункт меню Revert и элементы, выбранные из раскрывающегося списка панели Save перезаписываемых элементов типов документов.

    Оператор осуждения

    Использовать validateUserInterfaceItem: вместо этого.

    Объявление

    Objective C

    - (BOOL)validateMenuItem:(NSMenuItem *)anItem

    Обсуждение

    Возвраты YEStrue если anItem должен быть включен, NOfalse иначе. Возвраты YEStrue для Возвращаются, если документ был отредактирован, и файл существует для документа. Возвраты YEStrue для элемента, представляющего перезаписываемый тип, если во время операции Save или Save As это - собственный тип для документа. Подклассы могут переопределить этот метод для выполнения дополнительных проверок.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 через OS X v10.3.

    Не доступный 64-разрядным приложениям.

  • Данные документа записей к файлу.

    Оператор осуждения

    Использовать writeToURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)writeToFile:(NSString *)fileName ofType:(NSString *)type

    Обсуждение

    Данные документа записей типа docType к файлу fileName, возврат, была ли работа успешна. Этот метод вызывает dataRepresentationOfType: и косвенно вызывается каждый раз, когда сохраняется файл документа. Это использует NSData метод writeToFile:atomically: записать в файл.

    Этот метод является одним из основанных на местоположении примитивов. Подклассы могут переопределить этот метод вместо переопределения dataRepresentationOfType: записать данные документа в файловую систему как NSData объект после создания того объекта от внутренних структур данных. Подклассы, обрабатывающие пакеты файла, такие как RTFD или та обработка расположения файлов как что-либо кроме путей, должны переопределить этот метод. Реализации переопределения этого метода должны гарантировать, чтобы они отфильтровали данные документа соответственно с помощью NSPasteboard фильтрация служб.

    См., что Документ Сохраняет Поведение для получения дополнительной информации о сохранении документов.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Пишет содержание документа получателя в файл.

    Оператор осуждения

    Использовать writeToURL:ofType:forSaveOperation:originalContentsURL:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)writeToFile:(NSString *)fullDocumentPath ofType:(NSString *)documentTypeName originalFile:(NSString *)fullOriginalDocumentPath saveOperation:(NSSaveOperationType)saveOperationType

    Обсуждение

    От этого метода вызывают writeWithBackupToFile:ofType:saveOperation: фактически записать файл типа docType к fullDocumentPath. fullOriginalDocumentPath если существует один и, путь к исходному файлу nil иначе. Реализация по умолчанию просто вызывает writeToFile:ofType:. Вы не должны должны быть вызывать этот метод непосредственно, но подклассы, которые должны получить доступ к ранее сохраненной копии их документа при сохранении нового, могут переопределить этот метод. saveOperationType параметром является одна из констант, перечисленных в Константах.

    См., что Документ Сохраняет Поведение для получения дополнительной информации о сохранении документов.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Данные документа записей к URL.

    Оператор осуждения

    Использовать writeToURL:ofType:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)writeToURL:(NSURL *)url ofType:(NSString *)type

    Обсуждение

    Данные документа записей типа docType к URL aURL, возврат, была ли работа успешна. Этот метод только поддерживает URLs file: схема и вызовы writeToFile:ofType:.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

  • Этот метод вызывают методы действия сохранить содержание документа к файлу.

    Оператор осуждения

    Использовать writeSafelyToURL:ofType:forSaveOperation:error: вместо этого.

    Объявление

    Objective C

    - (BOOL)writeWithBackupToFile:(NSString *)fullDocumentPath ofType:(NSString *)documentTypeName saveOperation:(NSSaveOperationType)saveOperationType

    Обсуждение

    Этот метод вызывают методы действия как saveDocument:, saveDocumentAs:, и saveDocumentTo:. Это ответственно за обработку резервного копирования существующего файла, если таковые имеются, и удаления того резервного копирования если keepBackupFile возвраты NOfalse. Промежуточный те две вещи, это вызывает writeToFile:ofType:originalFile:saveOperation: записать документ типа docType к fullDocumentPath. Вы никогда не должны должны быть вызывать writeWithBackupToFile:ofType:saveOperation:, но подклассы, хотящие изменить путь резервные работы, могут переопределить его. saveOperationType параметром является одна из констант, перечисленных в Константах.

    При переопределении этого метода необходимо вызвать fileAttributesToWriteToFile:ofType:saveOperation: и набор переменные возвратился из этого метода при записи fullDocumentPath. NSFileManager changeFileAttributes:atPath: может использоваться, чтобы сделать это.

    Оператор импорта

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.4.

Типы данных

  • Количества изменения указывают состояние редактирования документа. Эти константы указывают, как документ должен воздействовать на его изменение, рассчитывают и передаются updateChangeCount: метод.

    Объявление

    Swift

    enum NSDocumentChangeType : UInt { case ChangeDone case ChangeUndone case ChangeRedone case ChangeCleared case ChangeReadOtherContents case ChangeAutosaved case ChangeDiscardable }

    Objective C

    typedef enum NSDocumentChangeType : NSUInteger { NSChangeDone = 0, NSChangeUndone = 1, NSChangeCleared = 2, NSChangeReadOtherContents = 3, NSChangeAutosaved = 4, NSChangeRedone = 5, NSChangeDiscardable = 256 } NSDocumentChangeType;

    Константы

    • ChangeDone

      NSChangeDone

      Инкрементное количество изменения. Передайте это значение updateChangeCount: метод, чтобы указать, что было сделано единственное изменение. Например, встроенная поддержка отмены в NSDocument класс передает это значение каждый раз, когда документ получает NSUndoManagerDidCloseUndoGroupNotification уведомление от его собственного менеджера по отмене.

      Доступный в OS X v10.0 и позже.

    • ChangeUndone

      NSChangeUndone

      Декрементное количество изменения. Было отменено единственное изменение. Например, встроенная поддержка отмены NSDocument передачи это значение каждый раз, когда документ получает NSUndoManagerDidUndoChangeNotification от его собственного менеджера по отмене.

      Доступный в OS X v10.0 и позже.

    • ChangeCleared

      NSChangeCleared

      Изменение набора рассчитывает к 0. Документ синхронизировался с его файлом или пакетом файла. Например, saveToURL:ofType:forSaveOperation:error: передачи это значение для успешного NSSaveOperation или NSSaveAsOperation. revertDocumentToSaved: метод делает также.

      Доступный в OS X v10.0 и позже.

    • ChangeReadOtherContents

      NSChangeReadOtherContents

      Документ был инициализирован с содержанием файла или пакета файла кроме того, расположение которого находится в fileURL свойство, и поэтому не может возможно синхронизироваться с его персистентным представлением. Например, initForURL:withContentsOfURL:ofType:error: передачи это значение, когда эти два передали - в URLs, не равно, чтобы указать, что вновь открывается сохраненный автоматически документ.

      Доступный в OS X v10.4 и позже.

    • ChangeAutosaved

      NSChangeAutosaved

      Содержание документа было сохранено автоматически. Например, saveToURL:ofType:forSaveOperation:error: передачи это значение для успешного NSAutosaveOperation.

      Доступный в OS X v10.4 и позже.

    • ChangeRedone

      NSChangeRedone

      Было восстановлено единственное изменение. Например, встроенная поддержка отмены NSDocument передачи это значение каждый раз, когда документ получает NSUndoManagerDidRedoChangeNotification от его собственного менеджера по отмене.

      Доступный в OS X v10.5 и позже.

    • ChangeDiscardable

      NSChangeDiscardable

      Было сделано отбрасываемое изменение. Отбрасываемые изменения заставляют документ быть отредактированным. В заблокированном документе, например, отбрасываемые изменения могут быть выброшены вместо того, чтобы предложить пользователю сохранять их. Объедините это значение с надлежащим видом изменения, NSChangeDone, NSChangeUndone, или NSChangeRedone, использование оператора битового «ИЛИ» C. Например, отбрасываемое изменение NSChangeDone | NSChangeDiscardable.

      Доступный в OS X v10.7 и позже.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Тип работы сохранения указывает, что тип документа сохраняет работу для выполнения. Эти значения используются с параметрами метода типа Save Operation Types. В зависимости от метода тип работы сохранения может влиять на заголовок диалогового окна Сохранения и может влиять, какие файлы выведены на экран в диалоговом окне.

    Объявление

    Swift

    enum NSSaveOperationType : UInt { case SaveOperation case SaveAsOperation case SaveToOperation case AutosaveInPlaceOperation case AutosaveElsewhereOperation case AutosaveAsOperation }

    Objective C

    typedef enum NSSaveOperationType : NSUInteger { NSSaveOperation = 0, NSSaveAsOperation = 1, NSSaveToOperation = 2, NSAutosaveElsewhereOperation = 3, NSAutosaveInPlaceOperation = 4, NSAutosaveAsOperation = 5 } NSSaveOperationType;

    Константы

    • SaveOperation

      NSSaveOperation

      Операция Save, перезаписывающая файл документа или пакет файла с содержанием документа.

      Доступный в OS X v10.0 и позже.

    • SaveAsOperation

      NSSaveAsOperation

      Операция Save As, пишущая содержание документа в новый файл или пакет файла и затем изменяющая текущее местоположение документа для указания на просто записанный файл или пакет файла.

      Доступный в OS X v10.0 и позже.

    • SaveToOperation

      NSSaveToOperation

      Операция Save To, пишущая содержание документа в новый файл или пакет файла, не изменяя текущее местоположение документа для указания на новый файл или пакет.

      Доступный в OS X v10.0 и позже.

    • AutosaveElsewhereOperation

      NSAutosaveElsewhereOperation

      Операция Autosave Elsewhere, пишущая содержание документа в файл или пакет файла, который является отдельным от текущего расположения документа, не изменяя текущее местоположение документа.

      Для NSDocument переопределяющий подкласс autosavesInPlace иметь значение YEStrue, это используется во время автоматического сохранения документов, никогда не сохранявшихся и поэтому еще не имеющих файла документа, который может быть перезаписан во время автоматического сохранения. NSDocument май также передает NSAutosaveElsewhereOperation при вызове writeSafelyToURL:ofType:forSaveOperation:error: при дублировании или возвращении документа.

      Доступный в OS X v10.7 и позже.

    • AutosaveInPlaceOperation

      NSAutosaveInPlaceOperation

      Операция Autosave In Place, перезаписывающая файл документа или пакет файла с текущим содержанием документа даже при том, что пользователь явно не запросил его.

      Доступный в OS X v10.7 и позже.

    • AutosaveAsOperation

      NSAutosaveAsOperation

      Операция Autosave As, пишущая содержание документа в новый файл или пакет файла даже при том, что пользователь явно не запросил его, затем изменяет текущее местоположение документа для указания на просто записанный файл или пакет файла.

      Доступный в OS X v10.8 и позже.

    • NSAutosaveOperation

      NSAutosaveOperation

      Старое название для NSAutosaveElsewhereOperation тип работы.

      Осуждаемый в OS X v10.7. Использовать NSAutosaveElsewhereOperation вместо этого.

      Доступный в OS X v10.4 и позже.

      Осуждаемый в OS X v10.7.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.0 и позже.

  • Когда NSUbiquitousDocumentUserActivityType присутствует в a CFBundleDocumentTypes запись, AppKit автоматически создает NSUserActivity объект для документов в iCloud, с помощью данного типа действия. URL ассоциированного документа помещается в NSUserActivity объект userInfo словарь под этим ключом.

    Объявление

    Swift

    let NSUserActivityDocumentURLKey: NSString!

    Objective C

    NSString * const NSUserActivityDocumentURLKey

    Константы

    • NSUserActivityDocumentURLKey

      NSUserActivityDocumentURLKey

      Ключ NSUserActivity объект userInfo словарь. Его значением является URL документа, связанного с пользовательским действием.

      Доступный в OS X v10.10 и позже.