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 для тех типов.
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSFilePresenter -
NSObjectProtocol -
NSUserInterfaceValidations -
Печатаемый -
NSFilePresenter -
NSObject -
NSUserInterfaceValidations
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует и возвращает пустое
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 указанного типа.
Объявление
Параметры
absoluteURLURL, из которого получено содержание документа.
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.
Объявление
Параметры
absoluteDocumentURLURL, где расположен документ.
absoluteDocumentContentsURLURL, из которого получено содержание документа.
typeNameСтрока, идентифицирующая тип документа.
outErrorПо возврату, если инициализация неуспешна, указатель на ошибочный объект, инкапсулирующий причину, документ не мог быть создан.
Возвращаемое значение
Инициализированный
NSDocumentобъект, или, если документ не мог бы быть создан,nil.Обсуждение
absoluteDocumentURLпараметрnilкогда сохраненный автоматически документ явно никогда не сохранялся, если инициализация является частью повторного открытия сохраненного автоматически документа.Во время повторного открытия сохраненных автоматически документов этот метод использует следующий
NSDocumentChangeTypeпостоянный, чтобы указать, что вновь открывается сохраненный автоматически документ:NSChangeReadOtherContentsОператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Инициализирует документ указанного типа.
Объявление
Swift
convenience init?(typetypeName: String, erroroutError: NSErrorPointer)Параметры
typeNameСтрока, идентифицирующая тип документа.
outErrorПо возврату, если инициализация неуспешна, указатель на ошибочный объект, инкапсулирующий причину, документ не мог быть создан.
Возвращаемое значение
Инициализированный
NSDocumentобъект, или, если документ не мог бы быть создан,nil.Обсуждение
Реализация по умолчанию этого метода просто вызывает
[self init]и[self setFileType:typeName].Можно переопределить этот метод для выполнения инициализации, которая должна быть сделана при создании новых документов, но не должна быть сделана при открытии существующих документов. Ваше переопределение должно обычно вызывать
super, или по крайней мере это должно вызватьinit,NSDocumentопределяемый инициализатор, для инициализацииNSDocumentчастные переменные экземпляра.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Создает и возвращает объект данных, содержащий содержание документа, отформатированного к указанному типу.
Объявление
Параметры
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, erroroutError: NSErrorPointer) -> NSFileWrapper?Objective C
- (NSFileWrapper *)fileWrapperOfType:(NSString *)typeNameerror:(NSError **)outErrorПараметры
typeNameСтрока, идентифицирующая тип документа.
outErrorПо возврату, если обертка файла не могла бы быть создана, указатель на ошибочный объект, инкапсулирующий причину, это не могло быть создано.
Возвращаемое значение
Обертка файла, содержащая содержание документа, или, если обертка файла не могла бы быть создана,
nil.Обсуждение
Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, если
fileWrapperRepresentationOfType:переопределяется, реализация по умолчанию этого метода вместо этого вызывает[self fileWrapperRepresentationOfType:typeName].Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Устанавливает содержание этого документа путем чтения из данных указанного типа и возвратов
YEStrueв случае успеха.Объявление
Параметры
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 и позже.
-
entireFileLoaded entireFileLoadedСвойствоБулево значение, указывающее, загружается ли файл документа полностью в память. (только для чтения)
Объявление
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:добавить их к документу после создания их.Этот метод вызывают
NSDocumentControlleropen...методы, но Вы могли бы хотеть вызвать его непосредственно при некоторых обстоятельствах.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
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 и позже.
См. также
-
Если получатель является владельцем файла пера, отправленный после того, как указанный контроллер окна загружает файл пера.
Объявление
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 и позже.
-
windowControllers windowControllersСвойствоТекущие контроллеры окна документа. (только для чтения)
Объявление
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:обменивайтесь сообщениями к переданному - в контроллере окна с anilпараметр. Вы обычно не переопределяли бы этот метод.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
shouldCloseDocument(NSWindowController) -
shouldCloseWindowController (_: delegate:shouldCloseSelector:contextInfo:) - shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo:Вызывает
shouldCloseSelectorс результатомcanCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:. если закрывающийся указанный контроллер окна последним или отмечен как порождение документа завершению, являетсяОбъявление
Swift
func shouldCloseWindowController(_windowController: NSWindowController, delegatedelegate: AnyObject?, shouldCloseSelectorshouldCloseSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)shouldCloseWindowController:(NSWindowController *)windowControllerdelegate:(id)delegateshouldCloseSelector:(SEL)shouldCloseSelectorcontextInfo:(void *)contextInfoПараметры
windowControllerЗакрывающийся контроллер окна.
delegateДелегат, в которого отправляется селекторное сообщение.
shouldCloseSelectorСелектор сообщения отправил делегату.
contextInfoОбъект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.
Обсуждение
Иначе это вызывает
shouldCloseSelectorсYEStrue. Этим методом вызывают автоматическиNSWindowдля любого окна, имеющего контроллер окна и документ, связанный с ним.NSWindowвызовы этот метод до отправкиdelegatewindowShouldClose:сообщение. Передайте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.Обсуждение
Реализация по умолчанию этого метода возвращает «Неназванную» строку, как скорректировано согласно указанной локали пользователя. Ваше приложение должно обычно возвращать имя, описывающее вид документа. Например, приложение электронной таблицы могло возвратить «электронную таблицу». Документ, создаваемый из шаблона, мог возвратить имя шаблона, например, «Резюме».
Когда документ еще не был присвоен имя и еще не был сохранен автоматически с
NSAutosaveAsOperationсохраните тип работы, документ базирует имя по умолчанию на значении вdisplayNameсвойство.Если бы существует уже другой документ или файл в том же месте и с тем же именем, как был бы возвращен этим методом,
NSDocumentдобавляет число кdefaultDraftNameстрока.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.8 и позже.
-
Устанавливает содержание этого документа путем чтения из обертки файла указанного типа.
Объявление
Swift
func readFromFileWrapper(_fileWrapper: NSFileWrapper, ofTypetypeName: String, erroroutError: NSErrorPointer) -> BoolObjective C
- (BOOL)readFromFileWrapper:(NSFileWrapper *)fileWrapperofType:(NSString *)typeNameerror:(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 и позже.
-
fileModificationDate fileModificationDateСвойствоПоследняя известная дата модификации дискового представления документа.
Объявление
Swift
@NSCopying var fileModificationDate: NSDate?Objective C
@property(copy) NSDate *fileModificationDateОбсуждение
NSDocumentфайл по умолчанию, сохраняющий машинное оборудование, использует эту информацию для предупреждения пользователя, когда дисковое представление открытого документа было изменено чем-то другим, чем текущее приложение.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
runModalSavePanelForSaveOperation (_: delegate:didSaveSelector:contextInfo:) - runModalSavePanelForSaveOperation:delegate:didSaveSelector:contextInfo:Если пользователь утверждает панель, представляет модальную панель Save пользователю, затем пытается сохранить документ.
Объявление
Swift
func runModalSavePanelForSaveOperation(_saveOperation: NSSaveOperationType, delegatedelegate: AnyObject?, didSaveSelectordidSaveSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)runModalSavePanelForSaveOperation:(NSSaveOperationType)saveOperationdelegate:(id)delegatedidSaveSelector:(SEL)didSaveSelectorcontextInfo:(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 и позже.
См. также
-
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:метод. Документ получает значение этого свойства дважды во время сохранения:Прежде, чем вызвать
writeSafelyToURL:ofType:forSaveOperation:error:метод: Это должно проверить, возможно ли использование опции замены перемещением и, в противном случае чтобы позволить системе сохранять данные, вместо этого используя копирование.В
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 и позже.
-
Расположение дискового представления документа.
Возвращаемое значение
Расположение документа.
Обсуждение
Реализация по умолчанию этого свойства возвращает URL открытого файла. Изменение значения этого свойства фактически не изменяет имя или расположение документа; это только для записи расположения документа во время его начального открытия или сохранения.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Булево значение, указывающее, является ли документ проектом, что пользователь не выразил интерес к имению в наличии.
Объявление
Swift
var draft: BoolObjective C
@property(getter=isDraft) BOOL draftОбсуждение
Когда пользователь закрывает проект документа, система представляет диалоговое окно Сохранения. Только документы с не -
nilзначения дляfileURLсвойство нужно считать проектами.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.8 и позже.
-
Устанавливает содержание этого документа путем чтения из файла или пакета файла, указанного типа, расположенного URL.
Объявление
Параметры
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, отформатированным к указанному типу.
Объявление
Параметры
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 и позже.
-
writeSafelyToURL (_: ofType:forSaveOperation:error:) - writeSafelyToURL:ofType:forSaveOperation:error:Пишет содержание документа файлу или пакету файла, расположенному URL.
Объявление
Swift
func writeSafelyToURL(_absoluteURL: NSURL, ofTypetypeName: String, forSaveOperationsaveOperation: NSSaveOperationType, erroroutError: NSErrorPointer) -> BoolObjective C
- (BOOL)writeSafelyToURL:(NSURL *)absoluteURLofType:(NSString *)typeNameforSaveOperation:(NSSaveOperationType)saveOperationerror:(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 и позже.
-
writeToURL (_: ofType:forSaveOperation:originalContentsURL:error:) - writeToURL:ofType:forSaveOperation:originalContentsURL:error:Пишет содержание документа файлу или пакету файла, расположенному URL.
Объявление
Swift
func writeToURL(_absoluteURL: NSURL, ofTypetypeName: String, forSaveOperationsaveOperation: NSSaveOperationType, originalContentsURLabsoluteOriginalContentsURL: NSURL?, erroroutError: NSErrorPointer) -> BoolObjective C
- (BOOL)writeToURL:(NSURL *)absoluteURLofType:(NSString *)typeNameforSaveOperation:(NSSaveOperationType)saveOperationoriginalContentsURL:(NSURL *)absoluteOriginalContentsURLerror:(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]. ЕслиabsoluteOriginalContentsURLnil, или документ никогда не сохранялся или пользователь, удалил файл документа, так как это было открыто.Для обратной совместимости на уровне двоичных кодов с OS X v10.3 и ранее, если
writeToFile:ofType:originalFile:saveOperation:переопределяется и оба URLs используетfile:схема, реализация по умолчанию этого метода вместо этого вызывает:[self writeToFile:[absoluteURL path]ofType:typeNameoriginalFile:[absoluteOriginalContentsURL path]saveOperation:aSaveOperation];
Работа сохранения, используемая в этом случае, никогда не
NSAutosaveOperation;NSSaveToOperationиспользуется вместо этого.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
fileAttributesToWriteToURL (_: ofType:forSaveOperation:originalContentsURL:error:) - fileAttributesToWriteToURL:ofType:forSaveOperation:originalContentsURL:error:Поскольку файл сохранен, возвращает атрибуты, которые должны быть записаны в файл, или пакет файла, расположенный URL, отформатировал к указанному типу, поскольку деталь отчасти сохраняют работу.
Объявление
Swift
func fileAttributesToWriteToURL(_absoluteURL: NSURL, ofTypetypeName: String, forSaveOperationsaveOperation: NSSaveOperationType, originalContentsURLabsoluteOriginalContentsURL: NSURL?, erroroutError: NSErrorPointer) -> [NSObject : AnyObject]?Objective C
- (NSDictionary *)fileAttributesToWriteToURL:(NSURL *)absoluteURLofType:(NSString *)typeNameforSaveOperation:(NSSaveOperationType)saveOperationoriginalContentsURL:(NSURL *)absoluteOriginalContentsURLerror:(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 и позже.
-
saveToURL (_: ofType:forSaveOperation:delegate:didSaveSelector:contextInfo:) - saveToURL:ofType:forSaveOperation:delegate:didSaveSelector:contextInfo:Поскольку деталь отчасти сохраняют работу, сохраняет содержание документа файлу или пакету файла, расположенному URL, отформатированным к указанному типу.
Объявление
Swift
func saveToURL(_absoluteURL: NSURL, ofTypetypeName: String, forSaveOperationsaveOperation: NSSaveOperationType, delegatedelegate: AnyObject?, didSaveSelectordidSaveSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)saveToURL:(NSURL *)absoluteURLofType:(NSString *)typeNameforSaveOperation:(NSSaveOperationType)saveOperationdelegate:(id)delegatedidSaveSelector:(SEL)didSaveSelectorcontextInfo:(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 и позже.
-
canAsynchronouslyWriteToURL (_: ofType:forSaveOperation:) - canAsynchronouslyWriteToURL:ofType:forSaveOperation:Возвраты, может ли получатель одновременно записать в файл или пакет файла, расположенный URL, отформатированным для определенного типа, для определенного отчасти сохраняют работу.
Объявление
Swift
func canAsynchronouslyWriteToURL(_url: NSURL, ofTypetypeName: String, forSaveOperationsaveOperation: NSSaveOperationType) -> BoolObjective C
- (BOOL)canAsynchronouslyWriteToURL:(NSURL *)urlofType:(NSString *)typeNameforSaveOperation:(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) -> AnyObjectObjective C
- (id)changeCountTokenForSaveOperation:(NSSaveOperationType)saveOperationПараметры
saveOperationТип работы сохранения.
Возвращаемое значение
Объект, инкапсулирующий изменения документа.
Обсуждение
Возвращенный объект предназначается, чтобы быть переданным
updateChangeCountWithToken:forSaveOperation:в конце работы сохранения. Например,saveToURL:ofType:forSaveOperation:completionHandler:вызывает этот метод, на основном потоке, прежде чем это сделает любое фактическое сохранение. Этот метод упрощает асинхронное сохранение, во время которого пользователь может изменить документ, в то время как это сохраняется.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.7 и позже.
-
saveToURL (_: ofType:forSaveOperation:completionHandler:) - saveToURL:ofType:forSaveOperation:completionHandler:Сохраняет содержание документа файлу или пакету файла, расположенному URL, отформатированным к указанному типу, поскольку деталь отчасти сохраняют работу, и вызывает переданный - в обработчике завершения.
Объявление
Swift
func saveToURL(_url: NSURL, ofTypetypeName: String, forSaveOperationsaveOperation: NSSaveOperationType, completionHandlercompletionHandler: (NSError!) -> Void)Objective C
- (void)saveToURL:(NSURL *)urlofType:(NSString *)typeNameforSaveOperation:(NSSaveOperationType)saveOperationcompletionHandler:(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, forSaveOperationsaveOperation: NSSaveOperationType)Objective C
- (void)updateChangeCountWithToken:(id)changeCountTokenforSaveOperation:(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 и позже.
-
continueAsynchronousWorkOnMainThreadUsingBlock (_:) - continueAsynchronousWorkOnMainThreadUsingBlock:Вызывает переданный - в блоке на основном потоке.
Объявление
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 и позже.
-
performActivityWithSynchronousWaiting (_: usingBlock:) - performActivityWithSynchronousWaiting:usingBlock:Ожидает любой работы, которая, как запланировали предыдущие вызовы этого метода, будет завершаться, затем вызывает переданный - в блоке.
Объявление
Swift
func performActivityWithSynchronousWaiting(_waitSynchronously: Bool, usingBlockinBlock: ((() -> Void)!) -> Void)Objective C
- (void)performActivityWithSynchronousWaiting:(BOOL)waitSynchronouslyusingBlock:(void (^)(void (^activityCompletionHandler)(void)))inBlockПараметры
waitSynchronouslyЕсли
YEStrue, метод не возвращается, пока предыдущие действия не завершены, и переданный - в блоке был вызван. ЕслиNOfalse, метод мог бы возвратиться, прежде чем передано - в блоке, вызывается. Это могло бы вместо этого быть вызвано позже на основном потоке, после того, как предыдущие действия завершены.inBlockБлок, выполняющий работу, которая могла бы привести к представлению модального диалогового окна.
Обсуждение
Блок передается другой блок, обработчик завершения действия, который должен быть вызван, когда действие завершено.
Основное использование этого метода должно ожидать асинхронного сохранения. С асинхронным сохранением для пользователя возможно спровоцировать действие пользовательского интерфейса, которое могло бы представить модальное диалоговое окно, лист, например, когда асинхронное сохранение собирается привести к сбою и представить собственный ошибочный лист предупреждения, который не работал бы. Этот метод решает ту проблему. Если Ваш
NSDocumentразделите на подклассы поддерживает асинхронное сохранение, необходимо вызвать этот метод вокруг производительности любой работы, которая могла бы вызвать представление модального диалогового окна, независимо от того, выполняется ли та работа синхронно или асинхронно. Вот списокNSDocumentметоды, реализации по умолчанию которых вызывают этот метод, потому что они могли бы представить листы, или для выяснения у пользователя, что сделать, поскольку они начинают свою работу или потому что они могут привести к сбою и представить ошибки пользователю:runModalSavePanelForSaveOperation:delegate:didSaveSelector:contextInfo:saveToURL:ofType:forSaveOperation:delegate:didSaveSelector:contextInfo:canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:duplicateDocumentWithDelegate:didDuplicateSelector:contextInfo:runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo:printDocumentWithSettings:showPrintPanel:delegate:didPrintSelector:contextInfo:
Больше использования этого метода может быть добавлено к
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) -> BoolObjective 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 и позже.
-
autosaveDocumentWithDelegate (_: didAutosaveSelector:contextInfo:) - autosaveDocumentWithDelegate:didAutosaveSelector:contextInfo:Сохраняет содержание документа автоматически в надлежащем расположении.
Объявление
Swift
func autosaveDocumentWithDelegate(_delegate: AnyObject?, didAutosaveSelectordidAutosaveSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)autosaveDocumentWithDelegate:(id)delegatedidAutosaveSelector:(SEL)didAutosaveSelectorcontextInfo:(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 и позже.
См. также
-
autosaveWithImplicitCancellability (_: completionHandler:) - autosaveWithImplicitCancellability:completionHandler:Сохраняет содержание документа автоматически в надлежащем расположении, если ему нужно автоматическое сохранение.
Объявление
Swift
func autosaveWithImplicitCancellability(_autosavingIsImplicitlyCancellable: Bool, completionHandlercompletionHandler: (NSError!) -> Void)Objective C
- (void)autosaveWithImplicitCancellability:(BOOL)autosavingIsImplicitlyCancellablecompletionHandler:(void (^)(NSError *errorOrNil))completionHandlerПараметры
autosavingIsImplicitlyCancellableЗначение в
autosavingIsImplicitlyCancellableсвойство, в то время как происходит автоматическое сохранение.completionHandlerБлочный объект обработчика завершения передал в быть вызванным в некоторый момент в будущем, возможно после того, как возвратился вызов метода. Обработчик завершения должен быть вызван на основной поток.
Блок берет один параметр:
errorOrNilЕсли успешный, передача a
nilошибка. Если не успешный, передайтеNSErrorобъект, инкапсулирующий причину, почему документ не мог быть сохранен автоматически.Обсуждение
Реализация по умолчанию этого метода делает следующее:
Проверяет значение
hasUnautosavedChangesсвойство.Если значение того свойства
NOfalse, метод выполняет обработчик завершения с anilошибка и возвраты сразу.Если значение
YEStrue, вызовыautosavesInPlaceна классе для определения, куда должно пойти сохраненное автоматически содержание документа.Метод также вкладывает значение
fileURLгарантировать, что файл имеет фактический URL, потому что не возможно сохраниться автоматически на месте, если документ еще не имеет постоянного расположения.Регистрирует значение
autosavingFileTypeсвойство для определения типа файла для сохраненного автоматически файла.Вызовы
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() -> BoolObjective 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() -> BoolObjective 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() -> BoolObjective 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 и позже.
-
autosavingFileType autosavingFileTypeСвойствоВозвращает тип документа, который должен использоваться для работы автосохранения. (только для чтения)
Объявление
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. Посмотрите TextEditDocumentкласс для примера того, как сделать это.Оператор импорта
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() -> BoolObjective 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 и позже.
См. также
-
Восстанавливает связанное с интерфейсом состояние документа.
Объявление
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 и позже.
-
restoreDocumentWindowWithIdentifier (_: state:completionHandler:) - restoreDocumentWindowWithIdentifier:state:completionHandler:Восстанавливает окно, связанное с документом, после того, как вновь открывается тот документ.
Объявление
Параметры
identifierУникальная интерфейсная строка идентификатора элемента, ранее связанная с окном. Используйте эту строку для определения который окно создать.
stateОбъект кодера, содержащий информацию о статусе окна. Этот объект кодера содержит объединенное восстановимое состояние окна, которое может включать состояние окна, его делегата, контроллера окна и объекта документа. Можно использовать это состояние для определения который окно создать.
completionHandlerБлочный объект выполниться с результатами создания окна. Вы должны выполнить этот блок в некоторый момент, но можете сделать так после возвратов метода в случае необходимости. Этот блок берет следующие параметры:
Окно, создававшееся или
nilесли не могло бы быть создано окно.Ошибочный объект, если окно не было распознано или не могло бы быть создано по любой причине; иначе, указать
nil.
Обсуждение
Этот метод вызывает значение по умолчанию
NSDocumentControllerреализацияrestoreWindowWithIdentifier:state:completionHandler:.Реализация по умолчанию этого метода сначала проверяет, имеет ли документ контроллеры окна, и в противном случае это вызывает
makeWindowControllers. Если существует тогда точно один контроллер окна, он вызывает обработчик завершения со своим окном. Если существует больше чем один, это ищет контроллеры окна получателя окно, соответствующее данный идентификатор, и затем вызывающее обработчик завершения с ним. Если никакое окно не могло бы быть найдено, это вызывает обработчик завершения с anilокно.Если Ваш документ имеет переменные или дополнительные окна, можно переопределить это, чтобы создать требуемое окно, и затем вызвать обработчик завершения с ним. Это позволяет Вам использовать документ по умолчанию, вновь открывающий поведение, но вмешиваться при создании окон. Параметры совпадают с в методе класса
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файл списка свойств включает aCFBundleDocumentTypesключ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:и получает arestoreUserActivityState:сообщение.Оператор импорта
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) -> BoolObjective 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 и позже.
См. также
-
Когда пользователь выбирает команду меню 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 и позже.
-
saveDocumentWithDelegate (_: didSaveSelector:contextInfo:) - saveDocumentWithDelegate:didSaveSelector:contextInfo:Сохраняет документ.
Объявление
Swift
func saveDocumentWithDelegate(_delegate: AnyObject?, didSaveSelectordidSaveSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)saveDocumentWithDelegate:(id)delegatedidSaveSelector:(SEL)didSaveSelectorcontextInfo:(void *)contextInfoПараметры
delegateДелегат, в которого отправляется селекторное сообщение.
didSaveSelectorСелектор сообщения отправил делегату.
contextInfoОбъект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.
Обсуждение
Если
NSSaveOperationможет быть выполнен без дальнейшего вмешательства пользователя (по крайней мере, ни одинfileURLниfileTypenil), тогда метод сразу сохраняет документ. Иначе, если пользователь утверждает панель, это представляет панель 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 и позже.
-
canCloseDocumentWithDelegate (_: shouldCloseSelector:contextInfo:) - canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:Если получатель не грязен, этот метод сразу вызывает
shouldCloseSelectorобратный вызов на указанном делегате сYEStrue.Объявление
Swift
func canCloseDocumentWithDelegate(_delegate: AnyObject, shouldCloseSelectorshouldCloseSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)canCloseDocumentWithDelegate:(id)delegateshouldCloseSelector:(SEL)shouldCloseSelectorcontextInfo:(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 указанного типа.
Объявление
Параметры
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 и позже.
-
duplicateDocumentWithDelegate (_: didDuplicateSelector:contextInfo:) - duplicateDocumentWithDelegate:didDuplicateSelector:contextInfo:Создайте новый документ, содержание которого совпадает с получателем и уведомляет делегата.
Объявление
Swift
func duplicateDocumentWithDelegate(_delegate: AnyObject?, didDuplicateSelectordidDuplicateSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)duplicateDocumentWithDelegate:(id)delegatedidDuplicateSelector:(SEL)didDuplicateSelectorcontextInfo:(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.
Объявление
Параметры
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 и позже.
-
Информация о печати связалась с документом.
Объявление
Swift
@NSCopying var printInfo: NSPrintInfoObjective 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 LayoutpageLayout, такой как добавление вспомогательного представление.Объявление
Swift
func preparePageLayout(_pageLayout: NSPageLayout) -> BoolObjective C
- (BOOL)preparePageLayout:(NSPageLayout *)pageLayoutПараметры
pageLayoutПанель макета страницы для подготовки.
Возвращаемое значение
YEStrueесли успешно подготовлено; иначе,NOfalse.Обсуждение
Реализация по умолчанию пуста и возвраты
YEStrue.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
runModalPageLayoutWithPrintInfo (_: delegate:didRunSelector:contextInfo:) - runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo:Выполняет модальную панель макета страницы с информационным объектом печати получателя
Объявление
Swift
func runModalPageLayoutWithPrintInfo(_printInfo: NSPrintInfo, delegatedelegate: AnyObject?, didRunSelectordidRunSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)runModalPageLayoutWithPrintInfo:(NSPrintInfo *)printInfodelegate:(id)delegatedidRunSelector:(SEL)didRunSelectorcontextInfo:(void *)contextInfoПараметры
printInfoNSPrintInfoобъект для панели макета страницы для использования.delegateДелегат, в которого отправляется селекторное сообщение.
didRunSelectorСелектор сообщения отправил делегату.
contextInfoОбъект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.
Обсуждение
Вызванный от метода действия
runPageLayout:. Представляет приложение панели макета страницы модально, если нет никакого окна документа, которому это может быть представленный документ модально.Когда панель отклонена,
delegateотправляется adidRunSelectorсообщение.didRunSelectorметод обратного вызова должен иметь следующую подпись:- (void)documentDidRunModalPageLayout:(NSDocument *)document accepted:(BOOL)accepted contextInfo:(void *)contextInfo
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
runModalPrintOperation (_: delegate:didRunSelector:contextInfo:) - runModalPrintOperation:delegate:didRunSelector:contextInfo:Выполняет указанную работу печати модально.
Объявление
Swift
func runModalPrintOperation(_printOperation: NSPrintOperation, delegatedelegate: AnyObject?, didRunSelectordidRunSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)runModalPrintOperation:(NSPrintOperation *)printOperationdelegate:(id)delegatedidRunSelector:(SEL)didRunSelectorcontextInfo:(void *)contextInfoПараметры
printOperationРабота печати для выполнения.
delegateДелегат, в которого отправляется селекторное сообщение.
didRunSelectorСелектор сообщения отправил делегату.
contextInfoОбъект передал с обратным вызовом для обеспечения любой дополнительной контекстной информации.
Обсуждение
Переопределения
printShowingPrintPanel:может вызвать этот метод.Когда панель отклонена,
delegateотправляется adidRunSelectorсообщение. Передайте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) -> BoolObjective C
- (BOOL)shouldChangePrintInfo:(NSPrintInfo *)newPrintInfoПараметры
newPrintInfoNSPrintInfoобъект, который является результатом пользователя, утверждающего панель макета страницы, представленнуюrunPageLayout:.Возвращаемое значение
YEStrueпо умолчанию; подклассы могут переопределить этот метод для возвратаNOfalse.Обсуждение
Этот метод вызывается
runPageLayout:метод, устанавливающий новоеNSPrintInfoобъект для документа, только если возвращается этот методYEStrue.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
printDocumentWithSettings (_: showPrintPanel:delegate:didPrintSelector:contextInfo:) - printDocumentWithSettings:showPrintPanel:delegate:didPrintSelector:contextInfo:Распечатывает документ.
Объявление
Swift
func printDocumentWithSettings(_printSettings: [NSObject : AnyObject], showPrintPanelshowPrintPanel: Bool, delegatedelegate: AnyObject?, didPrintSelectordidPrintSelector: Selector, contextInfocontextInfo: UnsafeMutablePointer<Void>)Objective C
- (void)printDocumentWithSettings:(NSDictionary *)printSettingsshowPrintPanel:(BOOL)showPrintPaneldelegate:(id)delegatedidPrintSelector:(SEL)didPrintSelectorcontextInfo:(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], erroroutError: NSErrorPointer) -> NSPrintOperation?Objective C
- (NSPrintOperation *)printOperationWithSettings:(NSDictionary *)printSettingserror:(NSError **)outErrorПараметры
printSettingsСловарь настроек печати для использования.
outErrorПо возврату, если работа печати не могла бы быть создана, указатель на ошибочный объект, инкапсулирующий причину, это не могло быть создано.
Возвращаемое значение
Работа печати, или
nilесли неуспешный.Обсуждение
Работа печати может быть выполнена для печати текущего содержания документа.
NSPrintInfoатрибуты в переданном - вprintSettingsсловарь добавляется к копии информации печати документа, и получающаяся информация печати используется для работы.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
PDFPrintOperation PDFPrintOperationСвойствоРабота печати, которую можно использовать для создания представления PDF текущего содержания документа. (только для чтения)
Объявление
Swift
var PDFPrintOperation: NSPrintOperation { get }Objective C
@property(readonly, strong) NSPrintOperation *PDFPrintOperationОбсуждение
Объект в этом свойстве может быть выполнен для печати текущего содержания документа к файлу PDF.
Работа печати по умолчанию, сохраненная этим свойством, получена путем вызова
printOperationWithSettings:error:метод и передача объекта настроек печати, содержащего только расположение (NSPrintSaveJob) и aNULLошибочная ссылка на объект. Если Ваши поддержки подкласса документа, создающие представления 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 и позже.
-
presentError (_: modalForWindow:delegate:didPresentSelector:contextInfo:) - presentError:modalForWindow:delegate:didPresentSelector: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) -> BoolObjective 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 и позже.
-
Вызванный, когда получатель собирается представить ошибку.
Объявление
Параметры
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Параметры
errorNSErrorобъект, возвращенный другим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: BoolObjective 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файл.Обсуждение
Тип документа влияет, как данные отфильтрованы, когда это записано в или считано из файла. Когда документ сохраняется, тип определяется записями в информационном списке свойств приложения (указанный в
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) -> BoolObjective C
+ (BOOL)isNativeType:(NSString *)aTypeПараметры
aTypeСтрока, идентифицирующая тип документа для тестирования.
Возвращаемое значение
YEStrueесли тип документа является собственным типом; иначе,NOfalse.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает типы данных, которые получатель может считать исходно и любые типы, поддающиеся фильтрованию к тому собственному типу.
Возвращаемое значение
Массив
NSStringобъекты, представляющие читаемые типы документов.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает булево значение, указывающее, читает ли получатель многократные документы данного типа одновременно.
Объявление
Swift
class func canConcurrentlyReadDocumentsOfType(_typeName: String) -> BoolObjective 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 и позже.
См. также
-
Возвращает типы данных, которые получатель может записать исходно и любые типы, поддающиеся фильтрованию к тому собственному типу.
Возвращаемое значение
Массив
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, saveOperationsaveOperation: NSSaveOperationType) -> String?Objective C
- (NSString *)fileNameExtensionForType:(NSString *)typeNamesaveOperation:(NSSaveOperationType)saveOperationПараметры
typeNameТип файла.
saveOperationОтчасти сохраняют работу.
Возвращаемое значение
Расширение файла.
Обсуждение
Реализация по умолчанию этого метода вызывает
preferredFilenameExtensionForType:на совместно используемом объекте рабочей области, если тип является UTI или, если это не для обратной совместимости на уровне двоичных кодов с OS X v10.4 и ранее, вызываетfileExtensionsFromType:на совместно используемом контроллере документа и выбирает первое расширение файла в возвращенном массиве.Можно переопределить этот метод для настройки добавления расширений имен файлов
NSDocument. Запускаясь в OS X v10.5, это вызывается только от двух мест в AppKit:autosaveDocumentWithDelegate:didAutosaveSelector:contextInfo:метод использует этот метод при создании нового имени файла для сохраненного автоматически содержания.handleSaveScriptCommand:метод использует этот метод при добавлении расширения имени файла, указанного сценарием.
Во всех других случаях имя любого сохраненного файла будет полностью указано пользователем с панелью Save (знают ли они это или не).
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
-
Проверяет указанный элемент интерфейса пользователя, которым управляет получатель.
Объявление
Swift
func validateUserInterfaceItem(_anItem: NSValidatedUserInterfaceItem) -> BoolObjective 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: StringObjective C
@property(copy) NSString *lastComponentOfFileNameВозвращаемое значение
Имя сценариев документа.
Обсуждение
Обратите внимание на то, что это имя может отличаться, чем имя файла в
fileURLили используемый в методах такой какwriteToFile:ofType:.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает название документа в данную строку с точки зрения свойства имени сценариев (имя, которое писатель сценария использовал бы для указания документа в сценарии).
Объявление
Swift
var lastComponentOfFileName: StringObjective C
@property(copy) NSString *lastComponentOfFileNameПараметры
strИмя сценариев документа.
Обсуждение
Обратите внимание на то, что это имя может отличаться, чем имя, используемое в
fileURL.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
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-разрядным приложениям.
-
dataRepresentationOfType: - dataRepresentationOfType:(OS X v10.4)Примитивный метод, переопределенный подклассами для возврата объекта данных, представляющего данные получателя в данном типе.
Оператор осуждения
Использовать
dataOfType:error:вместо этого.Обсуждение
Примитивный метод, переопределенный подклассами для возврата объекта данных, представляющего данные получателя в данном типе (
aType). Реализация по умолчаниюraisesNSInternalInconsistencyException. Этот метод вызывается реализацией по умолчаниюfileWrapperRepresentationOfType:.aTypeимя типа, соответствующее значениюCFBundleTypeNameзапись в типе документаInfo.plistсловарь.Вот типичная реализация:
//Document type nameNSString *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.
См. также
-
fileAttributesToWriteToFile:ofType:saveOperation: - fileAttributesToWriteToFile:ofType:saveOperation:(OS X v10.4)Возвращает атрибуты файла, которые должны быть записаны в именованный файл документа указанного типа.
Оператор осуждения
Использовать
fileAttributesToWriteToURL:ofType:forSaveOperation:originalContentsURL:error:вместо этого.Объявление
Objective C
- (NSDictionary *)fileAttributesToWriteToFile:(NSString *)fullDocumentPathofType:(NSString *)documentTypeNamesaveOperation:(NSSaveOperationType)saveOperationTypeОбсуждение
Возвращает атрибуты файла, которые должны быть записаны в именованный файл документа указанного типа
docType, как часть деталиsaveOperationType. Набор атрибутов правильного файла является подмножеством понятых подNSFileManagerкласс.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.1 и позже.
Осуждаемый в OS X v10.4.
-
имя файла - имя файла(OS X v10.4)Возвращает имя файла (как полностью определенный путь), под которым был сохранен получатель.
Оператор осуждения
Использовать
fileURLвместо этого.Объявление
Objective C
- (NSString *)fileNameОператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
fileNameFromRunningSavePanelForSaveOperation: - fileNameFromRunningSavePanelForSaveOperation:Доступный в OS X v10.0 через OS X v10.3Возвращается имя файла ввело в панель 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:вместо этого.Объявление
Обсуждение
Инициализирует и возвращает объект 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:вместо этого.Обсуждение
Инициализирует и возвращается
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:вместо этого.Обсуждение
Переопределенный подклассами для загрузки данных документа (
docData) из типаdocTypeв получатель выведите на экран его в окнах и возвратитесь, была ли работа успешна. Этот метод обычно вызываетсяloadFileWrapperRepresentation:ofType:послеNSDataобъект создается из содержания обертки файла (который может включать каталоги). Реализация по умолчаниюraisesNSInternalInconsistencyException. Подклассы должны переопределить этот метод, если они не переопределяютreadFromFile:ofType:илиloadFileWrapperRepresentation:ofType:сделать специализированное чтение и загрузку данных документа.docTypeпараметром является имя типа, соответствующее значениюCFBundleTypeNameзапись в типе документаInfo.plistсловарь.Вот реализация в качестве примера:
//Document type nameNSString *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 *)wrapperofType:(NSString *)typeОбсуждение
Данные документа загрузок в обертке файла
wrapperиз типаdocTypeв получатель дисплеи это в окнах, и возвращается, была ли работа успешна. Еслиwrapperпростой файл, он вызываетloadDataRepresentation:ofType:загрузить данные. Еслиwrapperкаталог, он возвращаетсяNOfalseпо умолчанию; подклассы могут переопределить для обработки оберток файла, которые являются каталогами. Этот метод обычно вызываетсяreadFromFile:ofType:после того, как это создает объект NSData из содержания файла.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
См. также
-
printShowingPrintPanel: - printShowingPrintPanel:(OS X v10.4)Переопределенный подклассами для печати текущего документа (получатель) данные.
Оператор осуждения
Использовать
printDocumentWithSettings:showPrintPanel:delegate:didPrintSelector:contextInfo:вместо этого.Объявление
Objective C
- (void)printShowingPrintPanel:(BOOL)flagОбсуждение
Переопределенный подклассами для печати текущего документа (получатель) данные; если
flagYEStrue, реализация должна сначала вывести на экран панель Print. Этот метод обычно вызываетсяprintDocument:с параметромYEStrue. Реализация по умолчанию ничего не делает. Если существует информация о печати кроме закодированного в получателеNSPrintInfoобъект, подклассы должны получить его здесь.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
readFromFile:ofType: - readFromFile:ofType:(OS X v10.4)Чтения и данные документа загрузок данного типа от данного файла.
Оператор осуждения
Использовать
readFromURL:ofType:error:вместо этого.Обсуждение
Чтения и данные документа загрузок типа
docTypeот файлаfileName, возврат, была ли работа успешна. Этот метод вызываетloadDataRepresentation:ofType:когда получатель сначала создается и инициализируется, и вызываетсяinitWithContentsOfFile:ofType:. Это используетNSDatainitWithContentsOfFile:получить данные документа.Этот метод является одним из основанных на местоположении примитивов. Подклассы могут переопределить этот метод вместо переопределения
loadDataRepresentation:ofType:считать и загрузить данные документа. Подклассы, обрабатывающие пакеты файла, такие как RTFD или та обработка расположения файлов как что-либо кроме путей, должны переопределить этот метод. Реализации переопределения этого метода могут отфильтровать использование данных документаNSPasteboardили другие службы фильтрации.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
readFromURL:ofType: - readFromURL:ofType:(OS X v10.4)Чтения и данные документа загрузок.
Оператор осуждения
Использовать
readFromURL:ofType:error:вместо этого.Обсуждение
Чтения и данные документа загрузок типа
docTypeот URLaURL, возврат, была ли работа успешна. Этот метод только поддерживает URLsfile:схема и вызовыreadFromFile:ofType:.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
Возвращается получатель к данным, хранившим в файловой системе.
Оператор осуждения
Использовать
revertToContentsOfURL:ofType:error:вместо этого.Обсуждение
Возвращается получатель к данным, хранившим в файловой системе в названном файле
fileNameиз типа файлаtype. ВызываетreadFromFile:ofType:и возвраты, считал ли тот метод успешно файл и обработал данные документа.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
Возвращается получатель.
Оператор осуждения
Использовать
revertToContentsOfURL:ofType:error:вместо этого.Обсуждение
Возвращается получатель к данным, хранившим в
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.
-
saveToFile:saveOperation:delegate:didSaveSelector:contextInfo: - saveToFile:saveOperation:delegate:didSaveSelector:contextInfo:(OS X v10.4)Вызванный после того, как пользователю дали возможность выбрать место назначения через модальную панель Save.
Оператор осуждения
Использовать
saveToURL:ofType:forSaveOperation:delegate:didSaveSelector:contextInfo:вместо этого.Объявление
Objective C
- (void)saveToFile:(NSString *)fileNamesaveOperation:(NSSaveOperationType)saveOperationdelegate:(id)delegatedidSaveSelector:(SEL)didSaveSelectorcontextInfo:(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 *)absoluteURLofType:(NSString *)typeNameforSaveOperation:(NSSaveOperationType)saveOperationerror:(NSError **)outErrorПараметры
absoluteURLРасположение файла или пакета файла, к которому сохраняется содержание документа.
typeNameСтрока, идентифицирующая тип документа.
saveOperationТип работы сохранения.
outErrorПо возврату, если содержание документа не могло бы быть сохранено, указатель на ошибочный объект, инкапсулирующий причину, они не могли быть сохранены.
Возвращаемое значение
YEStrueесли было успешно сохранено содержание документа; иначе,NOfalse.Обсуждение
Можно переопределить этот метод, чтобы сделать вещи, которые должны быть сделаны прежде или после того, как любой сохраняет работу. При переопределении этого метода необходимо вызвать
superв некоторый момент в Вашей реализации.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.4 и позже.
Осуждаемый в OS X v10.6.
-
setFileName: - setFileName:(OS X v10.4)Устанавливает файл (имя файла и путь к каталогу), под которым сохраняются данные документа.
Оператор осуждения
Использовать
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-разрядным приложениям.
-
writeToFile:ofType: - writeToFile:ofType:(OS X v10.4)Данные документа записей к файлу.
Оператор осуждения
Использовать
writeToURL:ofType:error:вместо этого.Обсуждение
Данные документа записей типа
docTypeк файлуfileName, возврат, была ли работа успешна. Этот метод вызываетdataRepresentationOfType:и косвенно вызывается каждый раз, когда сохраняется файл документа. Это используетNSDataметодwriteToFile:atomically:записать в файл.Этот метод является одним из основанных на местоположении примитивов. Подклассы могут переопределить этот метод вместо переопределения
dataRepresentationOfType:записать данные документа в файловую систему какNSDataобъект после создания того объекта от внутренних структур данных. Подклассы, обрабатывающие пакеты файла, такие как RTFD или та обработка расположения файлов как что-либо кроме путей, должны переопределить этот метод. Реализации переопределения этого метода должны гарантировать, чтобы они отфильтровали данные документа соответственно с помощьюNSPasteboardфильтрация служб.См., что Документ Сохраняет Поведение для получения дополнительной информации о сохранении документов.
Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
writeToFile:ofType:originalFile:saveOperation: - writeToFile:ofType:originalFile:saveOperation:(OS X v10.4)Пишет содержание документа получателя в файл.
Оператор осуждения
Использовать
writeToURL:ofType:forSaveOperation:originalContentsURL:error:вместо этого.Объявление
Objective C
- (BOOL)writeToFile:(NSString *)fullDocumentPathofType:(NSString *)documentTypeNameoriginalFile:(NSString *)fullOriginalDocumentPathsaveOperation:(NSSaveOperationType)saveOperationTypeОбсуждение
От этого метода вызывают
writeWithBackupToFile:ofType:saveOperation:фактически записать файл типаdocTypeкfullDocumentPath.fullOriginalDocumentPathесли существует один и, путь к исходному файлуnilиначе. Реализация по умолчанию просто вызываетwriteToFile:ofType:. Вы не должны должны быть вызывать этот метод непосредственно, но подклассы, которые должны получить доступ к ранее сохраненной копии их документа при сохранении нового, могут переопределить этот метод.saveOperationTypeпараметром является одна из констант, перечисленных в Константах.См., что Документ Сохраняет Поведение для получения дополнительной информации о сохранении документов.
Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
writeToURL:ofType: - writeToURL:ofType:(OS X v10.4)Данные документа записей к URL.
Оператор осуждения
Использовать
writeToURL:ofType:error:вместо этого.Обсуждение
Данные документа записей типа
docTypeк URLaURL, возврат, была ли работа успешна. Этот метод только поддерживает URLsfile:схема и вызовыwriteToFile:ofType:.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.4.
-
writeWithBackupToFile:ofType:saveOperation: - writeWithBackupToFile:ofType:saveOperation:(OS X v10.4)Этот метод вызывают методы действия сохранить содержание документа к файлу.
Оператор осуждения
Использовать
writeSafelyToURL:ofType:forSaveOperation:error:вместо этого.Объявление
Objective C
- (BOOL)writeWithBackupToFile:(NSString *)fullDocumentPathofType:(NSString *)documentTypeNamesaveOperation:(NSSaveOperationType)saveOperationTypeОбсуждение
Этот метод вызывают методы действия как
saveDocument:,saveDocumentAs:, иsaveDocumentTo:. Это ответственно за обработку резервного копирования существующего файла, если таковые имеются, и удаления того резервного копирования еслиkeepBackupFileвозвратыNOfalse. Промежуточный те две вещи, это вызываетwriteToFile:ofType:originalFile:saveOperation:записать документ типаdocTypeкfullDocumentPath. Вы никогда не должны должны быть вызыватьwriteWithBackupToFile:ofType:saveOperation:, но подклассы, хотящие изменить путь резервные работы, могут переопределить его.saveOperationTypeпараметром является одна из констант, перечисленных в Константах.При переопределении этого метода необходимо вызвать
fileAttributesToWriteToFile:ofType:saveOperation:и набор переменные возвратился из этого метода при записиfullDocumentPath.NSFileManagerchangeFileAttributes: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;Константы
-
ChangeDoneNSChangeDoneИнкрементное количество изменения. Передайте это значение
updateChangeCount:метод, чтобы указать, что было сделано единственное изменение. Например, встроенная поддержка отмены вNSDocumentкласс передает это значение каждый раз, когда документ получаетNSUndoManagerDidCloseUndoGroupNotificationуведомление от его собственного менеджера по отмене.Доступный в OS X v10.0 и позже.
-
ChangeUndoneNSChangeUndoneДекрементное количество изменения. Было отменено единственное изменение. Например, встроенная поддержка отмены
NSDocumentпередачи это значение каждый раз, когда документ получаетNSUndoManagerDidUndoChangeNotificationот его собственного менеджера по отмене.Доступный в OS X v10.0 и позже.
-
ChangeClearedNSChangeClearedИзменение набора рассчитывает к 0. Документ синхронизировался с его файлом или пакетом файла. Например,
saveToURL:ofType:forSaveOperation:error:передачи это значение для успешногоNSSaveOperationилиNSSaveAsOperation.revertDocumentToSaved:метод делает также.Доступный в OS X v10.0 и позже.
-
ChangeReadOtherContentsNSChangeReadOtherContentsДокумент был инициализирован с содержанием файла или пакета файла кроме того, расположение которого находится в
fileURLсвойство, и поэтому не может возможно синхронизироваться с его персистентным представлением. Например,initForURL:withContentsOfURL:ofType:error:передачи это значение, когда эти два передали - в URLs, не равно, чтобы указать, что вновь открывается сохраненный автоматически документ.Доступный в OS X v10.4 и позже.
-
ChangeAutosavedNSChangeAutosavedСодержание документа было сохранено автоматически. Например,
saveToURL:ofType:forSaveOperation:error:передачи это значение для успешногоNSAutosaveOperation.Доступный в OS X v10.4 и позже.
-
ChangeRedoneNSChangeRedoneБыло восстановлено единственное изменение. Например, встроенная поддержка отмены
NSDocumentпередачи это значение каждый раз, когда документ получаетNSUndoManagerDidRedoChangeNotificationот его собственного менеджера по отмене.Доступный в OS X v10.5 и позже.
-
ChangeDiscardableNSChangeDiscardableБыло сделано отбрасываемое изменение. Отбрасываемые изменения заставляют документ быть отредактированным. В заблокированном документе, например, отбрасываемые изменения могут быть выброшены вместо того, чтобы предложить пользователю сохранять их. Объедините это значение с надлежащим видом изменения,
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;Константы
-
SaveOperationNSSaveOperationОперация Save, перезаписывающая файл документа или пакет файла с содержанием документа.
Доступный в OS X v10.0 и позже.
-
SaveAsOperationNSSaveAsOperationОперация Save As, пишущая содержание документа в новый файл или пакет файла и затем изменяющая текущее местоположение документа для указания на просто записанный файл или пакет файла.
Доступный в OS X v10.0 и позже.
-
SaveToOperationNSSaveToOperationОперация Save To, пишущая содержание документа в новый файл или пакет файла, не изменяя текущее местоположение документа для указания на новый файл или пакет.
Доступный в OS X v10.0 и позже.
-
AutosaveElsewhereOperationNSAutosaveElsewhereOperationОперация Autosave Elsewhere, пишущая содержание документа в файл или пакет файла, который является отдельным от текущего расположения документа, не изменяя текущее местоположение документа.
Для
NSDocumentпереопределяющий подклассautosavesInPlaceиметь значениеYEStrue, это используется во время автоматического сохранения документов, никогда не сохранявшихся и поэтому еще не имеющих файла документа, который может быть перезаписан во время автоматического сохранения.NSDocumentмай также передаетNSAutosaveElsewhereOperationпри вызовеwriteSafelyToURL:ofType:forSaveOperation:error:при дублировании или возвращении документа.Доступный в OS X v10.7 и позже.
-
AutosaveInPlaceOperationNSAutosaveInPlaceOperationОперация Autosave In Place, перезаписывающая файл документа или пакет файла с текущим содержанием документа даже при том, что пользователь явно не запросил его.
Доступный в OS X v10.7 и позже.
-
AutosaveAsOperationNSAutosaveAsOperationОперация Autosave As, пишущая содержание документа в новый файл или пакет файла даже при том, что пользователь явно не запросил его, затем изменяет текущее местоположение документа для указания на просто записанный файл или пакет файла.
Доступный в OS X v10.8 и позже.
-
NSAutosaveOperationNSAutosaveOperationСтарое название для
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присутствует в aCFBundleDocumentTypesзапись, AppKit автоматически создаетNSUserActivityобъект для документов в iCloud, с помощью данного типа действия. URL ассоциированного документа помещается вNSUserActivityобъектuserInfoсловарь под этим ключом.Объявление
Swift
let NSUserActivityDocumentURLKey: NSString!Objective C
NSString * const NSUserActivityDocumentURLKeyКонстанты
-
NSUserActivityDocumentURLKeyNSUserActivityDocumentURLKeyКлюч
NSUserActivityобъектuserInfoсловарь. Его значением является URL документа, связанного с пользовательским действием.Доступный в OS X v10.10 и позже.
-
