An instance of NSAppleEventDescriptor represents a descriptor—the basic building block for Apple events. This class is a wrapper for the underlying Apple event descriptor data type, AEDesc. Scriptable Cocoa applications frequently work with instances of NSAppleEventDescriptor, but should rarely need to work directly with the AEDesc data structure.NSAppleEventDescriptorのインスタンスは、ひとつの記述子 — アップルイベントのための基本的な建築ブロック — を表します。このクラスは、基盤となるアップルイベント記述子データ型、AEDescに対するラッパーです。スクリプト対応のCocoaアプリケーションは、しばしばNSAppleEventDescriptorのインスタンスを扱います、しかし直接にAEDescデータ構造体を扱う必要は滅多にありません。
A descriptor is a data structure that stores data and an accompanying four-character code. A descriptor can store a value, or it can store a list of other descriptors (which may also be lists). All the information in an Apple event is stored in descriptors and lists of descriptors, and every Apple event is itself a descriptor list that matches certain criteria.記述子は、データと付属の4文字コードを格納するデータ構造体です。記述子は1つの値を格納することができます、またはそれは別の記述子からなる1つのリストを格納できます(リスト中の記述子もまたリストであることができます)。あるアップルイベントの中の全ての情報はいくらかの記述子およびいくらかの記述子からなるいくらかのリストの中に格納されます、つまりあらゆるアップルイベントはそれ自身が、ある規範に合致する1つの記述子リストです。
Descriptors can be used to build arbitrarily complex containers, so that one Apple event can represent a script statement such as tell application "TextEdit" to get word 3 of paragraph 6 of document 3.
いくらかの記述子が使われることで随意に複雑なコンテナを組み立てることが可能です、その結果ある1つのアップルイベントは1つのスクリプト文を表すことができます、例えばtell application "TextEdit" to get word 3 of paragraph 6 of document 3など。
In working with Apple event descriptors, it can be useful to understand some of the underlying data types. You’ll find terms such as descriptor, descriptor list, Apple event record, and Apple event defined in Building an Apple Event in Apple Events Programming Guide. You’ll also find information on the four-character codes used to identify information within a descriptor. Apple event data types are defined in Apple Event Manager. The values of many four-character codes used by Apple (and in some cases reused by developers) can be found in AppleScript Terminology and Apple Event Codes.
アップルイベント記述子を扱う場合に、いくつかの基盤データ型を理解するのは役立つことがあります。あなたは、記述子、記述子リスト、アップルイベントレコード、そしてアップルイベントなどの用語を「Building an Apple Event」の中の「Building an Apple Event」で定義されるのを見るでしょう。あなたはまた、ある記述子内部で情報を識別するのに使われる4文字コードに関する情報も見つけるでしょう。様々なアップルイベントデータ型が、Apple Event Managerで定義されます。Appleによって使われる(そしていくつかの場合には開発者によって再利用される)たくさんの4文字コードの値は「AppleScript用語」と「Apple Eventコード」で見つけられます。
The most common reason to construct an Apple event with an instance of NSAppleEventDescriptor is to supply information in a return Apple event. The most common situation where you might need to extract information from an Apple event (as an instance of NSAppleEventDescriptor) is when an Apple event handler installed by your application is invoked, as described in “Installing an Apple Event Handler” in How Cocoa Applications Handle Apple Events. In addition, if you execute an AppleScript script using the NSAppleScript class, you get an instance of NSAppleEventDescriptor as the return value, from which you can extract any required information.NSAppleEventDescriptorのインスタンスを使ってアップルイベントを組み立てる最も普通の理由は、返されるアップルイベントにおいて情報を提供することです。あなたがあるアップルイベント(NSAppleEventDescriptorのインスタンス)から情報を引き出す必要があるところの最も普通の状況は、「どのようにCocoaアプリケーションはアップルイベントを取り扱うか」の「アップルイベント・ハンドラーをインストールする」で記述されように、あなたのアプリケーションによってインストールされるあるアップルイベントハンドラが発動される時です。加えて、あなたがAppleScriptスクリプトをNSAppleScriptクラスを使用して実行するならば、あなたはNSAppleEventDescriptorのインスタンスを戻り値として得ます。
When you work with an instance of NSAppleEventDescriptor, you can access the underlying descriptor directly, if necessary, with the aeDesc method. Other methods, including descriptorWithDescriptorType:bytes:length: make it possible to create and initialize instances of NSAppleEventDescriptor without creating temporary instances of NSData.
あなたがNSAppleEventDescriptorのインスタンスを扱う場合、あなたは基盤となる記述子にaeDescメソッドで、必要ならば、直接にアクセスできます。他のメソッドは、descriptorWithDescriptorType:bytes:length:を含めて、NSAppleEventDescriptorのインスタンスをNSDataの一時な仮のインスタンスを作成することなしに作成および初期化できるようにします。
The designated initializer for NSAppleEventDescriptor is init(aeDescNoCopy:). However, it is unlikely that you will need to create a subclass of NSAppleEventDescriptor.NSAppleEventDescriptorのための指定イニシャライザは、init(aeDescNoCopy:)です。しかしながら、あなたがNSAppleEventDescriptorのサブクラスの作成を必要とすることは起こりそうもありません。
Cocoa doesn’t currently provide a mechanism for applications to directly send raw Apple events (though compiling and executing an AppleScript script with NSAppleScript may result in Apple events being sent). However, Cocoa applications have full access to the Apple Event Manager C APIs for working with Apple events.
Cocoaは、直接に生のアップルイベントを送る仕組みをアプリケーションに対して現在は提供しません(もっともAppleScriptスクリプトをNSAppleScriptでコンパイルして実行するのはアップルイベントが送られる結果となります)。しかしながら、Codoaアプリケーションはアップルイベントを扱うために「アップルイベントマネージャーC API」への完全なアクセスを持ちます。
So, for example, you might use an instance of NSAppleEventDescriptor to assemble an Apple event and call the Apple Event Manager function AESend(_:_:_:_:_:_:_:) to send it.
If you need to send Apple events, or if you need more information on some of the Apple event concepts described here, see Apple Events Programming Guide and Apple Event Manager.
あなたがアップルイベントを送る必要があるならば、またはあなたがここで記述されるアップルイベントの概念のいくつかに関する情報をもっと必要とするならば、Apple Event Managerを見てください。
Creates a descriptor initialized with type typeEnumerated that stores the specified enumerator data type value.
型typeEnumeratedで初期化される記述子を作成します、それは指定された列挙子データ型値を格納します。
Creates a descriptor initialized with Apple event type typeSInt32 that stores the specified integer value.
アップルイベント型typeSInt32で初期化される記述子を作成します、それは指定された整数値を格納します。
Creates a descriptor initialized with type typeUnicodeText that stores the text from the specified string.typeUnicodeText型で初期化される記述子を作成します、それは指定された文字列からのテキストを格納します。
Initializes a newly allocated instance as a descriptor for the specified Carbon AEDesc structure.
新たに割り当てされたインスタンスを指定されたCarbonAEDesc構造体に対する記述子として初期化します。
Initializes a newly allocated instance as a descriptor with the specified descriptor type and data (from an arbitrary sequence of bytes and a length count).
新たに割り当てされたインスタンスを指定された記述子型とデータ(随意のバイトシーケンスと長さ合計から)を伴う記述子として初期化します。
Initializes a newly allocated instance as a descriptor with the specified descriptor type and data (from an instance of NSData).
新たに割り当てされたインスタンスを指定された記述子型とデータ(NSDataのインスタンスから)を伴う記述子として初期化します。
Initializes a newly allocated instance as a descriptor for an Apple event, initialized with the specified values.
新たに割り当てされたインスタンスをあるアップルイベントに対する記述子として初期化します、指定された値で初期化されます。
Getting Information About a Descriptor
記述子についての情報を取得する
Inserts a descriptor at the specified (one-based) position in the receiving descriptor list, replacing the existing descriptor, if any, at that position.
ある記述子をレシーバである記述子リストの中の指定された位置(1起点)で挿入します、既存の記述子を、もしあれば、その位置で置き換えます。
A mechanism for registering handler routines for specific types of Apple events and dispatching events to those handlers.
特定の型のアップルイベント用のハンドラールーチンを登録する、そして様々なイベントをそれらのハンドラーへ発送する仕組み。