38.4. aetypes
— AppleEvent オブジェクト¶
aetypes
では、 Apple Event データデスクリプタ (data descriptor) や Apple
Event オブジェクト指定子 (object specifier) を表現するクラスを定義しています。
Apple Event データはデスクリプタに含まれていて、これらのデスクリプタは型付けされています。多くのデスクリプタは、単に対応するPython の型で 表現されています。例えば、OSA 中の typeText
は Python 文字列型で、 typeFloat
は 浮動小数点型になる、といった具合です。 このモジュールでは、OSA の型のうち、直接的に対応する Python の型がないもののためにクラスを定義しています。そのようなクラスのインスタンスに対するパックやアンパック操作は、 aepack
モジュール自動的に処理します。
オブジェクト指定子は、本質的には Apple Event サーバ中に実装されているオブジェクトへのアドレスです。Apple Event 指定子は、Apple Event のオブジェクトそのものとして、あるいはオプションパラメタの引数として使われます。 aetypes
モジュールには OSA クラスやプロパティを表現するための基底クラスが入っています。これらのクラスは、 gensuitemodule
が生成するパッケージ内で、目的に応じてクラスやプロパティを増やす際に使われます。
以前のバージョンとの互換性や、スタブパッケージを生成していないようなアプリケーションをスクリプトで書く必要がある場合のために、このモジュールには Document
、 Window
、 Character
、 といったよく使われる OSA クラスのいくつかを指定できるオブジェクト指定子も入っています。
注釈
このモジュールは Python 3.x で削除されました。
AEObjects
モジュールでは、以下のようなクラスを定義して、 Apple Event デスクリプタデータを表現しています:
-
class
aetypes.
Unknown
(type, data)¶ aepack
やaetypes
がサポートしていない OSA の デスクリプタデータ、すなわち、このモジュールで扱っている他のクラスや、 Python の組み込み型の値で表現されていないようなデータを表現するクラスです。
-
class
aetypes.
Enum
(enum)¶ 列挙値 (enumeration value) を表すクラスです。 値は 4 文字の文字列型になります。
-
class
aetypes.
InsertionLoc
(of, pos)¶ オブジェクト
of
の中のpos
の位置を表すクラスです。
-
class
aetypes.
Boolean
(bool)¶ ブール値 (真偽値) を表すクラスです。
-
class
aetypes.
StyledText
(style, text)¶ スタイル情報 (フォント、タイプフェイスなど) つきのテキストを表すクラスです。
-
class
aetypes.
AEText
(script, style, text)¶ スクリプトシステム (script system) およびスタイル情報の入ったテキストを表すクラスです。
-
class
aetypes.
IntlText
(script, language, text)¶ スクリプトシステムと言語情報 (language information) の入ったテキストを表すクラスです。
-
class
aetypes.
IntlWritingCode
(script, language)¶ スクリプトシステムと言語情報を表すクラスです。
-
class
aetypes.
QDPoint
(v, h)¶ QuickDraw の点を表すクラスです。
-
class
aetypes.
QDRectangle
(v0, h0, v1, h1)¶ QuickDraw の矩形を表すクラスです。
-
class
aetypes.
RGBColor
(r, g, b)¶ 色を表すクラスです。
-
class
aetypes.
Type
(type)¶ OSA の型 (type value) を表すクラスです。 4 文字からなる名前を値に持ちます。
-
class
aetypes.
Keyword
(name)¶ OSA のキーワードです。 4 文字からなる名前を値に持ちます。
-
class
aetypes.
Range
(start, stop)¶ 範囲を表すクラスです。
-
class
aetypes.
Ordinal
(abso)¶ 先頭を表す
"firs"
や中央を表す"midd"
のように、 数値でない絶対位置指定子を表すクラスです。
-
class
aetypes.
Logical
(logc, term)¶ 演算子
logc
をterm
に適用したときの論理式を表すクラスです。
-
class
aetypes.
Comparison
(obj1, relo, obj2)¶ obj1
とobj2
のrelo
による比較を表すクラスです。
以下のクラスは、生成されたスタブパッケージが、 AppleScript のクラスやプロパティを Python で表現する上で基底クラスとして利用します。
-
class
aetypes.
ComponentItem
(which[, fr])¶ OSA クラス用の抽象基底クラスです。サブクラスでは、クラス属性
want
を 4 文字の OSA クラスコードに設定せねばなりません。 このクラスのサブクラスのインスタンスは AppleScript オブジェクト指定子と同じになります。インスタンス化を行う最には、which
にセレクタを渡さねばなりません。また、任意で親オブジェクトをfr
に渡せます。
-
class
aetypes.
NProperty
(fr)¶ OSA プロパティ用の抽象基底クラスです。サブクラスでは、クラス属性
want
とwhich
を設定して、どのプロパティを表しているかを指定せねばなりません。このクラスのサブクラスのインスタンスはオブジェクト指定子と同じになります。
-
class
aetypes.
ObjectSpecifier
(want, form, seld[, fr])¶ ComponentItem
とNProperty
の基底クラスで、汎用の OSA オブジェクト指定子を表します。パラメタの説明は Apple Open Scripting Architecture のドキュメントを参照してください。 このクラスは抽象クラスではないので注意してください。