共通デスクトップ環境 プログラマ概要

Motif GUI エンジン

Motif ツールキットはデスクトップの GUI エンジンとして考えてください。この節では共通デスクトップ環境 Motif、共通デスクトップ環境ウィジェット、および Motif プログラミングの代替モードについて説明します。

共通デスクトップ環境 Motif ツールキット

共通デスクトップ環境 Motif ツールキットは、Motif 1.2.3 のバグを修正し、機能を拡張し、いくつかの新機能を加えたものです。新機能を使用できるよう、明示的にリソースを設定してください。追加された機能には、ファイル選択ボックス GUI の変更、既存のリソースの別のデフォルト設定 (あらかじめデフォルトのボーダ幅を目立たせてあります)、カラー管理機能の向上、エラー・メッセージの国際化対応、使いやすさの向上 (OPEN LOOK ユーザの共通デスクトップ環境への移行を容易にする効果があります) などがあります。

共通デスクトップ環境 Motif と Motif 2.0 も互換性が高くなっています。共通デスクトップ環境 Motif にある機能のほとんどが Motif 2.0 に導入されています。したがって、開発者はアプリケーションを共通デスクトップ環境 Motif でコンパイルし、Motif 2.0 に再リンクして、アプリケーションを正常に実行できます。ウィジェットサイズの変更からプログラムを保護するように設計されている Motif 1.2 サブクラス化ガイドラインに従っていないウィジェットのサブクラス化は、うまく動作しない可能性が高くなります。

ドラッグ&ドロップ簡易階層は、Motif 1.2 ドラッグ&ドロップ API の最上位に追加されます。また、共通デスクトップ環境は Motif 1.2 登録済みドラッグ・フィードバック・プロトコルを使用します。ドロップ・サイト・ドラッグ・マネージャ・プロセスは、デスクトップの可視ドロップ領域を追跡しています。ドラッグ・ソース・クライアント・プロセスはこのデータを使用してドラッグ・フィードバック対話を管理します。ドロップ領域の制限付きドラッグ時の有効性は、ドロップ時まですべて継承され、ドロップが失敗した場合は、もとにスナップ・バックするアニメーションが行われます。

共通デスクトップ環境 Motif には、Motif 1.2 スタイル・ガイドを大幅に拡張した GUI スタイル・ガイドと確認チェックリストが入っています。追加事項は入力モデル、ウィンドウ管理、GUI 設計原理に関係するものです。

共通デスクトップ環境 Motif ウィジェット

共通デスクトップ環境 Motif は、Motif 1.2.3 では使用できない 2 種類のウィジェットを提供します。

ヘルプは、Standard Generalized Markup Language (SGML) 形式のファイルをヘルプタグでコンパイルした、セマンティック記述言語 (SDL) ファイル形式のアプリケーションで提供されます。ヘルプ・システムの特徴は、テキストとグラフィックス、ハイパーリンク、テキストの動的フォーマット変更、構造化ナビゲーション機能を統合したことです。

GUI シェル

共通デスクトップ環境には、デスクトップ Korn シェルがあります。これは Motif ツールキットの C プログラミングの代わりのインタプリンタ・スクリプト言語です。デスクトップ Korn シェルには、選択された頻繁に使用される共通デスクトップ環境 API、Xt API、Xlib API があります。環境の機能を十分活用するには、コンパイル言語でアクセスしてください。しかし、ドラッグ&ドロップ、セッション管理、ToolTalk メッセージなどのデスクトップ統合アクティビティを利用するデスクトップ Korn シェルスクリプトを書くことができます。

シェル・プログラミングに習熟している場合は、次のような理由により、簡単なプログラミング・タスクにデスクトップ Korn シェルを使用した方がいいこともあります。

GUI 構築

共通デスクトップ環境アプリケーションを生成するのに最も簡単で、たぶん最も早い方法は、Motif ツールキット・プログラミングをなるべく使わないことです。共通デスクトップ環境のアプリケーション・ビルダ (AppBuilder) を使用し、アプリケーションの GUI コントロール部分を構築してください。AppBuilder はデフォルト・ウィジェット動作をアクセスしやすくすることを目的としています。これは、多くのウィジェットで使用可能な難解なリソースをほとんど隠してしまうことにより実現します。また、ドラッグ&ドロップ、セッション管理、ToolTalk メッセージなどのデスクトップ統合インフラストラクチャをアプリケーションに組み込みやすくします。


ヒント -

アプリケーションビルダはよい教材になります。Sun Microsystems Advanced Developer Tools から、全機能 Motif GUI ビルダである XDesigner を購入することができます。


AppBuilder は、ビルダ・インタフェース言語 (BIL) ファイルに、ユーザ・インタフェースの状態を保管します。コード・ジェネレータは BIL ファイルを取り込んで、Motif ツールキット・コードを作成します。AppBuilder はユーザ・インタフェース言語 (UIL) ファイルを生成することもできます。

アプリケーションのユーザ・インタフェースを変更すると、AppBuilder はカスタム・コードを生成したコードにマージします。生成されたコードは、アプリケーションの GUI 状態を保持するために AppBuilder を使用していない場合でも、良いソースコード例になります。

さらに、プログラマ以外の人も AppBuilder を使用してアプリケーション GUI プロトタイプを作成できます。プロトタイプは、開発の製造過程でプログラマに渡すことができます。