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

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

Разработчик

Ссылка платформы основы ссылка класса NSAppleEventManager

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

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

NSAppleEventManager

Обеспечивает механизм для регистрации подпрограмм обработчика для определенных типов событий Apple и диспетчеризации событий к тем обработчикам.

Какао предоставляет встроенную scriptability поддержку, использующую scriptability информацию, предоставленную приложением для автоматического преобразования событий Apple в объекты команды сценария, выполняющие желаемую работу. Однако некоторые приложения могут хотеть выполнить более основную обработку событий Apple, в которой приложение регистрирует обработчики для событий Apple, которые это может обработать, затем обращается к менеджеру по корпоративным мероприятиям Apple с просьбой диспетчеризировать полученные события Apple надлежащему обработчику. NSAppleEventManager поддержки эти механизмы путем обеспечения методов, чтобы зарегистрироваться и демонтировать обработчики и диспетчеризировать события Apple надлежащему обработчику, если Вы существуете. Для соответствующей информации посмотрите Как Дескриптор Приложений Какао События Apple.

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

Для получения информации о менеджере по корпоративным мероприятиям Apple посмотрите Ссылку менеджера по корпоративным мероприятиям Apple и Руководство по программированию Событий Apple.

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


Соответствует


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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в OS X v10.0 и позже.
  • Возвращает единственный экземпляр NSAppleEventManager, создание его сначала, если это не существует.

    Объявление

    Swift

    class func sharedAppleEventManager() -> NSAppleEventManager

    Objective C

    + (NSAppleEventManager *)sharedAppleEventManager

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Если обработчик событий Apple был зарегистрирован для события, указанного eventClass и eventID, удаляет его.

    Объявление

    Swift

    func removeEventHandlerForEventClass(_ eventClass: AEEventClass, andEventID eventID: AEEventID)

    Objective C

    - (void)removeEventHandlerForEventClass:(AEEventClass)eventClass andEventID:(AEEventID)eventID

    Обсуждение

    Иначе ничего не делает.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Регистрирует обработчик событий Apple, указанный handler для события, указанного eventClass и eventID.

    Объявление

    Swift

    func setEventHandler(_ handler: AnyObject, andSelector handleEventSelector: Selector, forEventClass eventClass: AEEventClass, andEventID eventID: AEEventID)

    Objective C

    - (void)setEventHandler:(id)handler andSelector:(SEL)handleEventSelector forEventClass:(AEEventClass)eventClass andEventID:(AEEventID)eventID

    Обсуждение

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

    • - (void)handleAppleEvent:(NSAppleEventDescriptor *)event withReplyEvent: (NSAppleEventDescriptor *)replyEvent;

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Вызывает событие Apple, указанное theAppleEvent быть диспетчеризированным надлежащему обработчику событий Apple, если Вы были зарегистрированы путем вызова setEventHandler:andSelector:forEventClass:andEventID:.

    Объявление

    Swift

    func dispatchRawAppleEvent(_ theAppleEvent: UnsafePointer<AppleEvent>, withRawReply theReply: UnsafeMutablePointer<AppleEvent>, handlerRefCon handlerRefCon: SRefCon) -> OSErr

    Objective C

    - (OSErr)dispatchRawAppleEvent:(const AppleEvent *)theAppleEvent withRawReply:(AppleEvent *)theReply handlerRefCon:(SRefCon)handlerRefCon

    Обсуждение

    theReply параметр всегда указывает событие Apple ответа, никогда nil. Если тип дескриптора для события ответа, Однако обработчик не должен заполнять ответ typeNull, указание отправителя не хочет ответ.

    handlerRefcon параметр обеспечивает 4 байта данных к обработчику; общее использование для этого параметра должно передать указатель на дополнительные данные.

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Учитывая ненулевое suspensionID возвращенный вызовом suspendCurrentAppleEvent, возвращает дескриптор для события, обработка которого была приостановлена.

    Объявление

    Swift

    func appleEventForSuspensionID(_ suspensionID: NSAppleEventManagerSuspensionID) -> NSAppleEventDescriptor

    Objective C

    - (NSAppleEventDescriptor *)appleEventForSuspensionID:(NSAppleEventManagerSuspensionID)suspensionID

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Возвращает дескриптор для currentAppleEvent если событие Apple обрабатывается на текущем потоке.

    Объявление

    Swift

    var currentAppleEvent: NSAppleEventDescriptor? { get }

    Objective C

    @property(readonly, retain) NSAppleEventDescriptor *currentAppleEvent

    Обсуждение

    Событие Apple обрабатывается на текущем потоке, если обработчик, зарегистрированный в setEventHandler:andSelector:forEventClass:andEventID: передается в сейчас же или setCurrentAppleEventAndReplyEventWithSuspensionID: был просто вызван. Возвраты nil иначе. Эффекты видоизменения или сохранения возвращенного дескриптора не определены, несмотря на то, что это может быть скопировано.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – currentReplyAppleEvent

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

    Объявление

    Swift

    var currentReplyAppleEvent: NSAppleEventDescriptor? { get }

    Objective C

    @property(readonly, retain) NSAppleEventDescriptor *currentReplyAppleEvent

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

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

    Объявление

    Swift

    func replyAppleEventForSuspensionID(_ suspensionID: NSAppleEventManagerSuspensionID) -> NSAppleEventDescriptor

    Objective C

    - (NSAppleEventDescriptor *)replyAppleEventForSuspensionID:(NSAppleEventManagerSuspensionID)suspensionID

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Учитывая ненулевое suspensionID возвращенный вызовом suspendCurrentAppleEvent, сигнализируйте, что может теперь продолжаться обработка приостановленного события.

    Объявление

    Swift

    func resumeWithSuspensionID(_ suspensionID: NSAppleEventManagerSuspensionID)

    Objective C

    - (void)resumeWithSuspensionID:(NSAppleEventManagerSuspensionID)suspensionID

    Обсуждение

    Если отправитель запросил ответ, это может привести к непосредственной отправке события ответа к отправителю приостановленного события. Если suspensionID использовался в предыдущем вызове setCurrentAppleEventAndReplyEventWithSuspensionID: эффекты того вызова полностью отменены. Избыточные вызовы resumeWithSuspensionID: проигнорированы. Последующие вызовы другого NSAppleEventManager методы с помощью той же приостановки ID недопустимы. resumeWithSuspensionID: может быть вызван в любом потоке, не только том в который соответствующий вызов suspendCurrentAppleEvent произошедший.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Учитывая ненулевое suspensionID возвращенный вызовом suspendCurrentAppleEvent, устанавливает значения, которые будут возвращены последующими вызовами currentAppleEvent и currentReplyAppleEvent быть событием, обработка которого была приостановлена и ее соответствующее событие ответа, соответственно.

    Объявление

    Swift

    func setCurrentAppleEventAndReplyEventWithSuspensionID(_ suspensionID: NSAppleEventManagerSuspensionID)

    Objective C

    - (void)setCurrentAppleEventAndReplyEventWithSuspensionID:(NSAppleEventManagerSuspensionID)suspensionID

    Обсуждение

    Избыточные вызовы setCurrentAppleEventAndReplyEventWithSuspensionID: проигнорированы.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

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

    Объявление

    Swift

    func suspendCurrentAppleEvent() -> NSAppleEventManagerSuspensionID

    Objective C

    - (NSAppleEventManagerSuspensionID)suspendCurrentAppleEvent

    Обсуждение

    Событие Apple обрабатывается на текущем потоке если currentAppleEvent не возвращается nil. Возвраты обнуляют иначе. Приостановленное событие больше не является текущим событием после этого метода возвраты.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

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

    Объявление

    Swift

    let NSAppleEventTimeOutDefault: Double let NSAppleEventTimeOutNone: Double

    Objective C

    extern const double NSAppleEventTimeOutDefault; extern const double NSAppleEventTimeOutNone;

    Константы

    • NSAppleEventTimeOutDefault

      NSAppleEventTimeOutDefault

      Указывает, что работа обработки событий должна продолжаться, пока тайм-аут не происходит на основе значения, определенного менеджером по корпоративным мероприятиям Apple (приблизительно 1 минута). Не в настоящее время используемый приложениями.

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

    • NSAppleEventTimeOutNone

      NSAppleEventTimeOutNone

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

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

  • Отправленный NSAppleEventManager прежде чем это сначала диспетчеризирует событие Apple. Ваше приложение может использовать это уведомление, чтобы избежать регистрировать любые обработчики событий Apple до первого раза, когда в который они могут быть необходимы. Объект уведомления NSAppleEventManager. Это уведомление не содержит a userInfo словарь.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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