# 3.4 `aetypes` -- AppleEvent オブジェクト

利用可能な条件: Macintosh.

`aetypes` は Apple Event データディスクリプタおよび Apple Event オブジェクト指定子を表わすために使用されるクラスを定義します。

Apple Event データはディスクリプタに含まれていて、これらのディスクリプ タは型です。多くのディスクリプタについては、そのPython 表現は単に対応 するPython の型になります。例えば、OSA 中の `typeText` は Python 文字列型で、`typeFloat` は 浮動小数点型、などのようになります。直 接 Python で相当する型がない OSA の型については、このモジュールがクラ スを宣言します。これらのクラスのインスタンスのパック、アンパックは `aepack` によって自動的に処理されます。

オブジェクト指定子は本質的に Apple Event サーバーの中で実行しているオ ブジェクトのアドレスです。Apple Event 指定子は、Apple Event のための直 接オブジェクト、あるいはオプションパラメータの引数として使用されます。 `aetypes` モジュールは OSA クラス、およびプロパティのための基底 クラスを含んでいて、それらは、与えられたクラス群やプロパティ群のクラス およびプロパティに含めるために、 `gensuitemodule` によって生成 されたパッケージによって使用されます。

下位互換性のためと、スクリプトにスタブパッケージを生成していないアプリ ケーションを必要とする場合のために、このモジュールはさらに `Document` 、`Window`、`Character`、などのような多くの共 通 OSA クラス用のオブジェクト指定子を含んでいます。

`AEObjects` モジュールは Apple Event ディスクリプタデータを表わ すために次のクラスを定義しています。

class `Unknown`( | type, data)

  これ以外のクラスによって表わされず、単純な Python の値と等価でないよう な、`aepack` および `aetypes` モジュールでサポートしてい ない OSA ディスクリプタデータの表現。

class `Enum`( | enum)

  与えられた4文字のストリング値を持った列挙値。

class `InsertionLoc`( | of, pos)

  オブジェクト `of` の中の `pos` の位置。

class `Boolean`( | bool)

  真偽値。

class `StyledText`( | style, text)

  スタイル情報(フォント、フェイスなど)を持っているテキスト。

class `AEText`( | script, style, text)

  スクリプトシステムおよびスタイル情報を持っているテキスト。

class `IntlText`( | script, language, text)

  スクリプトシステムおよび言語情報を持っているテキスト。

class `IntlWritingCode`( | script, language)

  スクリプトシステムと言語情報。

class `QDPoint`( | v, h)

  QuickDrawの点。

class `QDRectangle`( | v0, h0, v1, h1)

  QuickDrawの矩形。

class `RGBColor`( | r, g, b)

  色。

class `Type`( | type)

  4文字の名前を持つ OSA 型の値。

class `Keyword`( | name)

  4文字の名前をを持つ OSA のキーワード。

class `Range`( | start, stop)

  範囲。

class `Ordinal`( | abso)

  `"firs"` で最初とか、`"midd"` で中央、のような数値表現でな い絶対位置。

class `Logical`( | logc, term)

  `term` にオペレーター `logc` を適用する論理表現。

class `Comparison`( | obj1, relo, obj2)

  `obj1` と `obj2` の `relo` による比較。

Python の中で AppleScript クラスおよプロバティを表わすために、次のクラ スは生成するスタブパッケージの基底クラスとして使用されます。

class `ComponentItem`( | which[, fr])

  OSA クラス用の抽象基底クラスです。サブクラスには4文字のOSAクラスコード のクラス属性 `want` を設定する必要があります。このクラスのサブク ラスのインスタンスは AppleScript オブジェクト指定子と等価になります。 インスタンス化する時、`which` の値としてセレクターを渡す事は必須 で、`fr` 中の親オブジェクトを渡すかは任意です。

class `NProperty`( | fr)

  OSA プロパティ用の抽象基底クラスです。サブクラスはクラス属性として `want` と `which` を設定する必要がありあます。このクラスのサ ブクラスのインスタンスはオブジェクト指定子と等価です。

class `ObjectSpecifier`( | want, form, seld[, fr])

  `ComponentItem` と `NProperty` の基底クラスで、一般的な OSA オブジェクト指定子です。引数の内容はApple オープンスクリプティングアー キテクチャの文書を御覧ください。このクラスは抽象クラスではない事に注 意してください。