Solaris 共通デスクトップ環境 Motif への移行

OPEN LOOK と Motif のツールキットアーキテクチャ

OLIT と Motif のアーキテクチャはよく似ていますが、XView と Motif には違いがあります。XView から Motif に移行するときには、このようなツールキットの違いに注意する必要があります。

XView のツールキットでは、「パッケージ」と呼ばれるユーザインタフェースオブジェクトと、インタフェースをまとめて保持するルーチンやプロセス (作成ルーチン、イベント処理など) が実装されます。これに対して Motif と OLIT には、基本的にはユーザインタフェースオブジェクトである「ウィジェット」しか実装されず、ルーチンとプロセスはイントリンシクスライブラリに残されます。たとえば xv_init() は、XView ライブラリに入っている関数です。それに対応するものとして OLIT や Motif のプログラミングに使用する関数である XtAppInitialize() がありますが、これは Xt イントリンシクスライブラリに入っています。

これら 3 つのツールキットは、2 つの異なる GUI を示します。XView と OLIT のツールキットの外観は似ていますが、Solaris Motif の外観は大きく異なります。ライブラリ内の関数呼び出し間には、ほぼ 1 対 1 の対応関係がありますが、並列プログラムの「動作」は異なります。つまり、Solaris Motif ライブラリを使用するように OLIT (または XView) プログラムを変換した後も、ある程度は OPEN LOOK の外観が残ります。このような状態のプログラムは、どちらのスタイルにも完全に準拠していません。