NSScriptSuiteRegistry
NSScriptSuiteRegistry
функции как репозиторий верхнего уровня scriptability информации для приложения во время выполнения.
Информация о Scriptability указывает терминологию, доступную для использования в сценариях, предназначающихся для приложения. Это также предоставляет информацию, используемую AppleScript и Какао, о том, как поддержка той терминологии реализована в приложении. Эта информация включает описания scriptable классов объектов в приложении и команд поддержка приложений.
Существует два стандартных формата для предоставления scriptability информация: более старый формат комплекта сценария, состоя из файла комплекта сценария и одного или более файлов с терминологией сценария и более нового определения сценариев (или sdef) формат, состоя из единственного sdef файла.
Существует один экземпляр NSScriptSuiteRegistry
на scriptable приложение. Этот объект реестра собирает scriptability информацию, когда приложение сначала должно реагировать на событие Apple, для которого Какао не установило обработчик стандартного события. Это тогда создает один экземпляр NSScriptClassDescription
для каждого класса объекта и одного экземпляра NSScriptCommandDescription
для каждого класса команды и установок обработчик команды для каждой команды.
Когда пользователь выполняет сценарий AppleScript, события Apple отправляются в целевое приложение. Используя информацию, хранившую в объекте реестра, Какао автоматически преобразовывает входящие события Apple в команды сценария (на основе NSScriptCommand
или подкласс), которые управляют объектами в приложении.
Открытые методы NSScriptSuiteRegistry
используются прежде всего встроенной поддержкой сценариев Какао. Вы не должны должны быть создавать подкласс NSScriptSuiteRegistry
.
Для получения информации о scriptability информационных форматах загрузка scriptability информации и связанные разделы, видят «информацию о Scriptability» в Обзоре Поддержки Какао Приложений Scriptable в Руководстве по созданию сценариев Какао.
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Устанавливает единственный, совместно используемый экземпляр
NSScriptSuiteRegistry
кregistry
.Объявление
Swift
class func setSharedScriptSuiteRegistry(_
registry
: NSScriptSuiteRegistry)Objective C
+ (void)setSharedScriptSuiteRegistry:(NSScriptSuiteRegistry *)
registry
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает единственный, совместно используемый экземпляр
NSScriptSuiteRegistry
, создание его сначала, если это не существует.Объявление
Swift
class func sharedScriptSuiteRegistry() -> NSScriptSuiteRegistry
Objective C
+ (NSScriptSuiteRegistry *)sharedScriptSuiteRegistry
Обсуждение
Если это создает экземпляр, и если приложение предоставляет scriptability информацию в формате комплекта сценария, определения комплекта загрузок метода во всех платформах и других пакетах, которые приложение в настоящее время импортирует или включает; если информация предоставлена в формате sdef, информация о загрузках метода только от указанного sdef файла. Если в чтении scriptability информация исключение
raised
из-за ошибок анализа это обрабатывает исключение путем печати строки информации к консоли.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает имя определения комплекта, связанного с данным кодом события Apple с четырьмя символами,
code
.Объявление
Swift
func suiteForAppleEventCode(_
appleEventCode
: FourCharCode) -> String?Objective C
- (NSString *)suiteForAppleEventCode:(FourCharCode)
appleEventCode
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает имена определений комплекта, в настоящее время загружаемых приложением.
Объявление
Swift
var suiteNames: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *suiteNames
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает описания класса, содержавшиеся в комплекте, идентифицированном
suiteName
.Объявление
Objective C
- (NSDictionary *)classDescriptionsInSuite:(NSString *)
suiteName
Обсуждение
Каждое описание класса (экземпляр
NSScriptClassDescription
) в возвращенном словаре идентифицируется именем класса.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает описание класса, связанное с данным кодом события Apple с четырьмя символами,
code
.Объявление
Swift
func classDescriptionWithAppleEventCode(_
appleEventCode
: FourCharCode) -> NSScriptClassDescription?Objective C
- (NSScriptClassDescription *)classDescriptionWithAppleEventCode:(FourCharCode)
appleEventCode
Обсуждение
Переопределяющее поведение важно здесь. Если классы имеют непрерывное линейное наследование от друг друга, многократные классы могут иметь тот же код. Например, если класс B является подклассом A, и класс C является подклассом B, и все три класса имеют тот же код события Apple с четырьмя символами, то этот метод возвращает описание класса для класса C.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Описание класса регистров
classDescription
поскольку использование встроенными сценариями Какао поддерживает путем хранения его во внутреннем словаре на комплект под именем класса.Объявление
Swift
func registerClassDescription(_
classDescription
: NSScriptClassDescription)Objective C
- (void)registerClassDescription:(NSScriptClassDescription *)
classDescription
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает описания команды, содержавшиеся в комплекте, идентифицированном
suiteName
.Объявление
Objective C
- (NSDictionary *)commandDescriptionsInSuite:(NSString *)
suiteName
Обсуждение
Каждое описание команды (экземпляр
NSScriptCommandDescription
) в возвращенном словаре идентифицируется названием команды.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
commandDescriptionWithAppleEventClass (_: andAppleEventCode:) - commandDescriptionWithAppleEventClass:andAppleEventCode:
Возвращает описание команды, идентифицированное кодом события Apple комплекта с четырьмя символами класса (
eventClass
) и код события Apple с четырьмя символами команды (commandCode
).Объявление
Swift
func commandDescriptionWithAppleEventClass(_
appleEventClassCode
: FourCharCode, andAppleEventCodeappleEventIDCode
: FourCharCode) -> NSScriptCommandDescription?Objective C
- (NSScriptCommandDescription *)commandDescriptionWithAppleEventClass:(FourCharCode)
appleEventClassCode
andAppleEventCode:(FourCharCode)appleEventIDCode
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Описание команды регистров
commandDesc
поскольку использование встроенными сценариями Какао поддерживает путем хранения его во внутреннем словаре на комплект под названием команды.Объявление
Swift
func registerCommandDescription(_
commandDescription
: NSScriptCommandDescription)Objective C
- (void)registerCommandDescription:(NSScriptCommandDescription *)
commandDescription
Обсуждение
Также регистры с единственным, совместно используемым экземпляром
NSAppleEventManager
обработать входящие события Apple, которые должны быть обработаны командой.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвраты
NSData
объект, содержащий данные в'aete'
формат ресурса, описывающий scriptability информацию, в настоящее время известную приложению.Объявление
Обсуждение
Этот метод обычно вызывается для реализации
get aete
Событие Apple для приложения, предоставляющего scriptability информацию в формате комплекта сценария.languageName
параметром является имя языка для который локализованный каталог ресурса (такой какEnglish.lproj
) существует. Эта индикация языка указывает набор.scriptTerminology
файлы, которые будут использоваться для генерации данных.NSScriptSuiteRegistry
не создает'aete'
ресурс, если не вызывают этот метод.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает код события Apple, связанный с названным комплектом
suiteName
, такой как‘core’
для Базового комплекта.Объявление
Swift
func appleEventCodeForSuite(_
suiteName
: String) -> FourCharCodeObjective C
- (FourCharCode)appleEventCodeForSuite:(NSString *)
suiteName
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает пакет, содержащий список свойств определения комплекта (расширение
.scriptSuite
) идентифицированныйsuiteName
.Объявление
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Загружает определение комплекта, инкапсулировавшее в
dictionary
; ранее, это определение комплекта было проанализировано от a.scriptSuite
список свойств, содержавшийся в платформе или вbundle
.Объявление
Swift
func loadSuiteWithDictionary(_
suiteDeclaration
: [NSObject : AnyObject], fromBundlebundle
: NSBundle)Objective C
- (void)loadSuiteWithDictionary:(NSDictionary *)
suiteDeclaration
fromBundle:(NSBundle *)bundle
Обсуждение
Метод извлекает информацию из словаря и кэширует его в различных внутренних объектах коллекции. Если ключи отсутствуют, или значения имеют неправильный тип, он регистрирует сообщения к консоли. Это также регистрирует описания класса и описания команды. В регистрации описания класса это вызывает
NSClassDescription
метод классаregisterClassDescription:forClass:
. В регистрации описания команды это принимает меры, чтобы переводчик события Apple обработал входящие события Apple, представляющие определенные команды.Этот метод вызывается, когда совместно используемый экземпляр инициализируется и когда пакеты загружаются во время выполнения. До вызова его,
NSScriptSuiteRegistry
создает параметр словаря от.scriptSuite
список свойств. При вызове этого метода в коде необходимо попытаться сделать это, прежде чем приложение получит свое первое событие Apple.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Загружает определения комплекта в пакете
aBundle
, вызовloadSuiteWithDictionary:fromBundle:
для каждого найденного комплекта.Объявление
Swift
func loadSuitesFromBundle(_
bundle
: NSBundle)Objective C
- (void)loadSuitesFromBundle:(NSBundle *)
bundle
Обсуждение
Если ошибки происходят, в то время как метод анализирует файл определения комплекта, метод регистрирует сообщения об ошибках к консоли.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.