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

Solaris ソフトウェアの Motif ツールキット

この節では Solaris 7 Motif と IXI Motif ツールキットについて説明します。Solaris アプリケーション開発で使用できる Motif ツールキット間の違いについては、「Motif ツールキットのまとめ」を参照してください。

Solaris 7 Motif

Solaris 7 Motif は、バグを修正し、機能拡張した OSF/Motif 2.1 をベースにしています。Solaris 7 ソフトウェアには Motif ツールキットが含まれます。

既存の OSF/Motif 2.1 の機能に対する拡張機能

特定の OPEN LOOK ユーザインタフェースと Microsoft Windows の機能をエミュレートするために、Solaris Motif ライブラリには OSF/Motif 2.1 に使いやすい小規模な拡張機能が入っています。使いやすさに関する拡張機能は次のとおりです。

Solaris CDE の Motif ライブラリ

Motif ライブラリ (libXm)

Solaris CDE には、Motif 1.2.5 のすべてのヘッダファイルが含まれています。Solaris Motif ライブラリは、Motif 1.2.5 ライブラリのバグを修正し機能を拡張したものです。

Motif UIL ライブラリ (libUill)

Motif ユーザインタフェース言語 (UIL) は、Motif アプリケーションのユーザインタフェースの初期状態を記述する指定言語です。Motif UIL ライブラリの CDE バージョンは、実質的には Motif 1.2.5 バージョンから変更されていません。

ヘッダファイル UilDef.h (/usr/dt/include/uil ディレクトリにあります) を取り込むと、UIL にアクセスできます。

Motif リソースマネージャライブラリ (libMrm)

Motif リソースマネージャ (MRM) には、UIL コンパイラで作成されたユーザインタフェース定義 (UID) ファイル内の定義に基づいてウィジェットを作成する役割があります。MRM は UIL コンパイラの出力を解釈し、ウィジェット作成機能のための引き数リストを生成します。libMrm を使用すると、Motif リソースマネージャにアクセスできます。CDE バージョンは、実質的には Motif バージョンから変更されていません。

ヘッダファイル Mrm/MrmPublic.h を取り込むと、アプリケーション内で libMrm にアクセスできます。

関連マニュアル

UIL、UIL コンパイラ、UID、Mrm の詳細は、『OSF/Motif プログラマーズ・リファレンス リリース 1.2』 (トッパン発行) を参照してください。

IXI Motif 1.2.2 ツールキット

Solaris 2.3 ソフトウェア開発で使用できる IXI Motif 1.2.2 ツールキットには、標準 OSF/Motif 1.2.2 とは互換性のない機能が含まれています。これらの機能は OSF/Motif 1.2 仕様の一部ではないので、Solaris 2.4 以降のバージョンの Solaris Motif のツールキットには含まれていません。

XmList 簡易関数

IXI Motif には、次の標準ではない関数が含まれています。これらの関数を使用していた場合は、アプリケーションコードから削除します。

XmForm ウィジェット

IXI Motif と OSF/Motif 1.2.2 では、API は同じですが XmForm ウィジェットの実装は異なります。したがって、IXI Motif とリンクされているアプリケーションは、OSF/Motif とリンクし直したときに XmForm ウィジェット内で動作や画像に些細な違いが生じることがあります。

Solaris Motif ツールキットは、OSF/Motif 1.2.3 の XmForm ウィジェットの実装を使用します。これは IXI Motif の XmForm ウィジェットではなく、OSF/Motif 1.2.2 とバイナリ互換です。

Complex Text Layout (CTL) Support

Solaris 7 ソフトウェアは、Motif 2.1 で導入された 5 つの新しい CTL ウィジェットをサポートしています。Solaris 7 のオペレーティング環境で開発された単一のバイナリによって、ヘブライ語、アラビア語、タイ語に標準対応しています。

以下の Motif ウィジェットが新しくサポートされています。