AMBundleAction
Экземпляры класса AMBundleAction управляют действиями Automator, которые являются загружаемыми пакетами. Automator загружает пакеты действия из стандартных расположений в файловой системе: /System/Library/Automator, /Library/Automator, и ~/Library/Automator.
Объекты AMBundleAction имеют несколько важных свойств:
NSBundleобъект связался с физическим пакетом действияПредставление действия, содержащее его пользовательский интерфейс
Словарь параметров, отражающий настройки в пользовательском интерфейсе
При создании Какао проект Действия Automator в XCode шаблон проекта включает пользовательский подкласс AMBundleAction. (Этому пользовательскому классу дают имя проекта.) Единственное требование для этого пользовательского класса должно обеспечить реализацию runWithInput:error:, который объявляется суперклассом AMAction.
Разделение на подклассы примечаний
Как отмечено в разделе Overview, шаблоны проекта XCode для действий Automator включают частично завершенный заголовок и исходные файлы для пользовательского подкласса AMBundleAction. Имя этого пользовательского класса является именем проекта XCode. Для завершения реализации этого подкласса необходимо переопределить runWithInput:error: (объявленный AMAction).
Методы для переопределения
Для разделения на подклассы AMBundleAction необходимо переопределить runWithInput:error: реализовать задачу, выполняемую действием. Если Вы добавили какие-либо переменные экземпляра, необходимо переопределить initWithDefinition:fromArchive: метод и writeToDictionary: метод AMAction работать с ними.
Наследование
-
NSObject -
AMAction -
AMBundleAction -
AMAppleScriptAction -
AMShellScriptAction
-
NSObject -
AMAction -
AMBundleAction -
AMAppleScriptAction -
AMShellScriptAction
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSCopying -
NSObjectProtocol -
Печатаемый -
NSCoding -
NSCopying -
NSObject
Оператор импорта
Swift
import Automator
Objective C
@import Automator;
Доступность
Доступный в OS X v10.4 и позже.
-
Отправленный в получатель, когда были разархивированы все объекты в его пакете.
Объявление
Swift
func awakeFromBundle()Objective C
- (void)awakeFromBundleОбсуждение
Этот метод позволяет объекту действия выполнять задачи установки, требующие присутствия всех объектов пакета, такие как добавление себя как наблюдатель уведомлений, динамично установление привязки и динамично ставить цели и действия.
Оператор импорта
Objective C
@import Automator;Swift
import AutomatorДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Инициализирует и возвращает выделенный объект AMBundleAction.
Объявление
Swift
init!(definitiondict: [NSObject : AnyObject]!, fromArchivearchived: Bool)Objective C
- (instancetype)initWithDefinition:(NSDictionary *)dictfromArchive:(BOOL)archivedОбсуждение
Словарь определений
dictсодержит конфигурационную информацию, определенную для получателя. ЕслиarchivedYEStrue, определения прибывают из архива. Можно исследовать словарь определений для приобретения знаний об определенных свойствах и настройках действия, но некоторые ключи являются частными к Automator. Вы не должны пытаться изменить значения вdict, но можно добавить пользовательские пары ключ/значение к словарю определения путем переопределенияwriteToDictionary:метод, объявленный суперклассом,AMAction. Если во время выполнения необходимо узнать об или изменить свойства действия в его информационном списке свойств (Info.plist), отправьте надлежащееNSDictionaryсообщения к пакету действияinfoDictionary; например:[NSDictionary *infoDict = [[self bundle] infoDictionary];NSString *theApp = [infoDict objectForKey:@"AMApplication"];if ([theApp isEqualToString:@"Finder"]) {// do something appropriate}
Оператор импорта
Objective C
@import Automator;Swift
import AutomatorДоступность
Доступный в OS X v10.4 и позже.
См. также
– awakeFromBundle– definition(AMAction)
-
Возвращает объект пакета получателя.
Объявление
Swift
var bundle: NSBundle! { get }Objective C
@property(readonly, strong) NSBundle *bundleОбсуждение
Возвраты
nilесли не был установлен никакой пакет.Оператор импорта
Objective C
@import Automator;Swift
import AutomatorДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвраты, связали ли получателю представление с ним.
Объявление
Swift
var hasView: Bool { get }Objective C
@property(readonly) BOOL hasViewОператор импорта
Objective C
@import Automator;Swift
import AutomatorДоступность
Доступный в OS X v10.4 и позже.
См. также
-
представление представлениеСвойство -
Возвращает параметры получателя.
Объявление
Swift
var parameters: NSMutableDictionary!Objective C
@property(strong) NSMutableDictionary *parametersОбсуждение
Параметры действия отражают сделанный выбор и значения, вводимые в пользовательский интерфейс действия. Ключи в словаре параметров идентифицируют определенные объекты пользовательского интерфейса. Если действие использует механизм привязки Какао, параметры объекта AMBundleAction автоматически устанавливаются. Можно изменить оптовую торговлю параметрами с
setParameters:. Или можно получить текущий словарь параметров сparametersсвойство и параметры частного лица обновления.Оператор импорта
Objective C
@import Automator;Swift
import AutomatorДоступность
Доступный в OS X v10.4 и позже.
