アップルイベント | アプリケーション間通信の規格 |
●命令 | メッセージを発生させる文 |
●オブジェクト | メッセージを送る対象 |
●ハンドラ | メッセージを処理するプログラム |
委任 | メッセージの転送 |
用語説明 | メッセージ翻訳データ |
メッセージは命令や利用者の操作等によって発生し、オブジェクトに送られハンドラで受け取られて処理される。
─ → ()
アップルイベントのメッセージは、サーバ・イベント・データの三つの部分から構成されている。各部分の意味は以下の通りである。命令が殆どそのままメッセージとなっている事が分かるだろう。
サーバ | メッセージを処理するプログラム |
イベント | 出来事の種類を表す |
データ | 引数 |
サーバは対象となるアプリケーション(オブジェクト)で、多くは4バイトのクリエータで指定される。
イベントは、スイート(suit)とIDで構成される。スイートは用語説明を見た時にウィンドウの左側に太字で表示されるものである。IDはスイートの下に表示される用語のことでほぼ命令と同義。
それぞれ、4バイトのコードで表される。
4バイトのコードはaeteリソースを介して翻訳されることにより、AppleScript用語として使用できる。
逆に言えば、aeteにより定義されていないイベントは、4バイトのコードが生データとなる。これはインストールされていないアプリケーションやOSAXを使うスクリプト等に現れる。
このイベントに対応するハンドラが実行されることとなる。
利用者定義命令は、利用者がハンドラを定義する。アプリケーション命令はアプリケーション内部に対応するハンドラが組み込まれている。
実際には、メッセージはアプリケーション単位で処理されており、オブジェクト単位で処理されてはいないようだ。
データは、4バイトのキーワードとデータの羅列によって構成されており、そのままでは非常に読みにくいものであるが、これも翻訳されることにより、AppleScriptで普段目にするような引数のかたちになる。
これらのデータはスクリプトの中でもAppleEventの生データとして目にすることがある。