Macintoshプラットフォームで利用できます。
FrameWork モジュールは、対話型 Macintosh アプリケーションのク ラスで、同時にフレームワークを提供します。プログラマは、サブクラスを作っ て基底クラスの様々なメソッドをオーバーライドし、必要な機能を実装するこ とでアプリケーションを組み立てられます。機能のオーバーライドは、時によっ て様々な異なるレベルで行われます。つまり、ある一つのダイアログウィンド ウでクリックの処理を普段と違う方法で行うには、完全なイベント処理をオー バーライドする必要はありません。
FrameWork はまだ作成中のところがずいぶん残っています。このド キュメントでは最も重要な機能だけしか記述していませんし、それさえも論理 的な形で書かれてもいません。ソースか例題を詳しく見てください。次にあげ るのは、MacPython ニュースグループにポストされたコメントで、 FrameWork の強力さと限界について述べています。
FrameWork の最大の強みは、制御の流れをたくさんの異なる部分に 分割できることです。例えば W を使って、いろいろな方法でメ ニューをオン/オフしたり、残りをいじらずにうまくプラグインさせることが できます。FrameWork の弱点は、コマンドインタフェースが抽象化 されていないこと(といっても難しいわけではないですが)、ダイアログサポー トが最低限しかないこと、それからコントロール/ツールバーサポートが全く ないことです。
FrameWork モジュールは次の関数を定義しています。
) |
アプリケーション全体を表現しているオブジェクト。メソッドについての詳細 は以下の記述を参照してください。デフォルト __init__() ルーチ ンは、空のウィンドウ辞書とアップルメニューつきのメニューバーをを作成し ます。
) |
bar, title[, after]) |
メニューを表現するオブジェクト。生成時には、メニューが現われる
MenuBar
と、title 文字列、メニューが表示されるべき(1から
始まる)位置 after (デフォルトは末尾)を渡します。
menu, title[, shortcut, callback]) |
メニューアイテムオブジェクトを作成します。引数は作成するメニューと、ア イテムのタイトル文字列、オプションのキーボードショートカット、コールバッ クルーチンです。コールバックは、メニューID、メニュー内のアイテム番号(1 から数える)、現在のフロントウィンドウ、イベントレコードを引数に呼ばれ ます。
呼び出し可能なオブジェクトのかわりに、コールバックは文字列でも良いです。
この場合、メニューの選択は、最前面のウィンドウとアプリケーションの中で
メソッド探索を引き起こします。メソッド名は、コールバック文字列の前に
'domenu_'
を付けたものです。
MenuBar
の fixmenudimstate()メソッドを呼びだすと、現在
のフロントウィンドウにもとづいて、適切なディム化を全てのメニューアイテ
ムに対してほどこします。
menu) |
メニューの最後にセパレータを追加します。
menu, label) |
label の名前のサブメニューを、メニュー menu の下に作成しま す。メニューオブジェクトが返されます。
parent) |
(モードレス)ウィンドウを作成します。Parent は、ウィンドウが属す るアプリケーションオブジェクトです。作成されたウィンドウはまだ表示され ません。
parent) |
モードレスダイアログウィンドウを作成します。
width, height) |
与えた幅と高さのウィンドウを作成するのに必要な、(left,
top, right, bottom)
からなるタプルを返します。ウィ
ンドウは以前のウィンドウに対して位置をずらして作成され、全体のウィンド
ウが画面からなるべく外れないようにします。しかし、ウィンドウはいつでも
全く同じサイズで、そのため一部は画面から隠れる場合もあります。
) |
マウスカーソルを時計型に設定します。
) |
マウスカーソルを矢印型に設定します。