前へ | 次へ | 目次 | 索引 |
motifshell プログラムは,Motif を使用して作成された環境を示す一例です。プログラム例の目的は,Motif をスタンドアロンの環境で使用する場合,どのように他のプログラムやユーティリティをタスク指名するかを示すことです。
motifshell プログラムは C コードで書かれています。 UIL は参照しません。
ファイルの一覧や処理状態を表示するのは,多少時間がかかります。これらの操作は,SPAWNにより DCL コマンドを起動し,出力をファイルに保管してから,そのファイルを読むことで行われます。 省略時のフォントはプロポーショナル・スペースが使用されています。一覧表の中には,クーリエのような固定スペースを使ったほうが読みやすい場合もあります。別のフォントを選択するには,フォント・オプションを使用します。 |
periodicプログラムには,Motifの表示可能なウィジェットの例が示されています。このプログラムにより Motifのウィジェットを周期チャート形式で表示します。
B.4.10 Textedit プログラム例
textedit プログラムは, XmNsource リソース・ファイルを使用するMotif XmText ウィジェットに基づく,基本的なテキスト・エディタで,重なっている同一テキストを複数表示することができます。
表 B-4 の表で,使用可能な表示メニューのオプションを説明します。
オプション | 説明 |
---|---|
Split Pane | テキストの独立したスクロールが可能な新しい表示画面を追加します。 |
Remove Pane | 指定画面を消去します。 |
One Pane | 指定画面以外の画面をすべて消去します。 |
指定画面は次のようにして決定します。
編集メニューでペーストを選択した場合に,クリップボードの内容のペーストが行われるのも指定画面です。
texteditのソース・ファイルは独立した層として別れています。 texteditに含まれるソース・ファイルは 表 B-5 に一覧が掲載されています。
ファイル名 | 説明 |
---|---|
tfile.c | ファイルの読み込み,書き込み,削除のためのコード。オペレーティング・システムまたはファイル・システムに対する依存を隠します。 |
app.c | tfile.c を使用してファイル操作およびこれに関連するバッファのためのあらゆるコードを提供します。このファイルはツールキットに依存します。 |
tk.c | Xm ツールキットへの依存を切り離します。
このファイルの前半では,ユーティリティのルーチンおよびツールキットから独立した (しかし特定のアプリケーションに限定された)インタフェースを提供します。このインタフェースは,アプリケーションのツールキットに依存しないダイアログ層を使用することができます。 ファイルの後半では,すべてのコールバック・ルーチンを定義しています。コールバック・ルーチンの多くは,この層内部の状態更新に使われ,残りが追加動作を行います。これらの動作は,ファイルの前半で定義された特定のツールキットの動作ルーチンとの間に明白に関連しています。明白ではない場合,行うべき動作を決定するために,ツールキットに依存しないダイアログ・層に対してアップコールが行われます。 |
dlg.c | ユーザとの対話を管理するために tk.c を使用します。このコードはツールキットに依存しません。 |
textedit.c | アプリケーションを初期化し,ウィジェットの階層の実例を示します。このコードによりUILおよびMrmの使用を他のアプリケーションから隠します。 |
ファイルの移動と削除の手段は,現在のところ用意されていません。 |
V1.2
次のトランスレーションを DECW$XDEFAULTS.DAT ファイルに追加しておくと, emacs を使い慣れたユーザには便利です。
*XmText.translations: Mod1<Btn3Down>: scroll-cursor-vertically()\n\ Mod1<Btn3Motion>: scroll-cursor-vertically()\n\ Ctrl<key>a: beginning-of-line()\n\ Ctrl<key>b: backward-character()\n\ Ctrl<key>d: delete-next-character()\n\ Ctrl<key>e: end-of-line()\n\ Ctrl<key>f: forward-character()\n\ Ctrl<key>g: beep()\n\ Ctrl<key>h: delete-previous-character()\n\ Ctrl<key>i: cut-primary()\n\ Ctrl<key>j: newline-and-indent()\n\ Ctrl<key>k: set-anchor() end-of-line() key-select() cut-clipboard()\n\ Ctrl<key>l: redraw-display()\n\ Ctrl<key>m: newline()\n\ Ctrl<key>n: next-line()\n\ Ctrl<key>o: newline-and-backup()\n\ Ctrl<key>p: previous-line()\n\ Ctrl<key>v: next-page()\n\ Ctrl<key>w: cut-clipboard()\n\ Ctrl<key>y: paste-clipboard()\n\ Ctrl<key>z: scroll-one-line-up()\n\ Mod1<key>b: backward-word()\n\ Mod1<key>d: delete-next-word()\n\ Mod1<key>f: forward-word()\n\ Mod1<key>h: delete-previous-word()\n\ Mod1<key>i: copy-primary()\n\ Mod1<key>k: delete-to-end-of-line()\n\ Mod1<key>v: previous-page()\n\ Mod1<key>w: copy-clipboard()\n\ Mod1<key>z: scroll-one-line-down()\n\ Mod1 Shift<key>greater: end-of-file()\n\ Mod1<key>less: beginning-of-file()\n\ Mod1<key>]: forward-paragraph()\n\ Mod1<key>[: backward-paragraph() |
viewプログラムは, Motifの国際化サポートを使用した DCL コマンドの TYPE/PAGE と似ています。このプログラムによって,ファイルを数カ国語で表示することができます。
用意されているコマンド・ファイル DECW$EXAMPLES:FILEVIEW.COM を使用して,各国の言語を選ぶことができます。有効な言語は,フランス語,英語,およびドイツ語です。言語を選択するには,次のコマンドを実行してください。
$ SET DEFAULT DECW$USER_DEFAULTS $ @DECW$EXAMPLES:FILEVIEW language |
このコマンド・ファイルでは, .UID および .DAT の各ファイルを現在のディレクトリに複写するとともに,適切なロケールを設定し,ファイル表示のための view プログラム例を実行します。
アプリケーションが起動されると,1次の最上位のシェルが作成されます。 1次の最上位のシェルから,2次シェルを作成することができます。
各最上位のシェルはメイン・ウィンドウの親に当たります。メイン・ウィンドウの作業領域が PanedWindow です。
メニュー・バーには,次のエントリがあります。
ファイル・メニューには次のオプションが含まれています。
表示メニューには,次のオプションが含まれています。
1つのウィンドウ内でもう1つ別のファイルを開こうとすると,アプリケーションは突然終了します。この場合,表示メニューは正常に作動しません。
B.4.12 Xmpiano プログラム例
xmpiano プログラムは MIDI (Motif Interface to Dumb Instruments) アプリケーションの書き込み方法を示します。譜表は,楽譜を書くためにも,キーボードのためにも使用することができます。
ウィンドウの下部には,譜表上で使用するための音符のセットがあります。音符ボタンの1つを選択すると,それに従って使用される音符が変わります。選択した音符は,マウスのカーソルとして表示されます。
選択できる音符の種類は制限されたものですが,自然音階のほかに,シャープも選択可能です。プログラムのインタフェースは,フラットの音階をサポートしていません。譜表は,音符が書き加えられて右端を超えると自動的に延長されます。右端を超えたところにある音符は,必要に応じて楽譜のウィンドウをスクロールすることで表示できます。
このアプリケーションを使用するには,表示された譜表の上でマウスの右ボタンを押します。これによって次のメニュー項目が表示されます。
本バージョンでは,音符を操作して編曲することはできません。編曲するには,譜表を消去して再度入力するか,保管ファイルからデータを読み込みます。
音符の色を設定するには,アプリケーションの前景色を変更します。このためにはコマンド・ラインで -fg オプションを使用します。次の例を参照してください。
$ xmpiano :== $DECW$EXAMPLES:xmpiano $ xmpiano -fg blue |
表 B-6 の表には, Motif ツールキットのさまざまな機能の一覧が掲載されています。
ファイル名 | 説明 |
---|---|
xmdialogs.c | ダイアログ・サンプラ |
xmfonts.c | フォント検索用 |
xmeditor.c | テキスト・エディタ |
xmlist.c | 例の一覧表示用 |
xmprotocol.c | ウィンドウ・マネージャ・プロトコルの例 |
xmter.c | 図形とアニメーションの例 |
xmform.c | フォーム・アタッチメントの例 |
xmforc.c | フォーム・アタッチメントと行・列の例 |
xmmap.c | 描画領域とスクロールされたウィンドウの例 |
xmgetres.c | リソース取り出しの例 |
xmapdef.c | app の定義によるスクロールされたウィンドウの例 |
これらのサンプル・プログラムには,次の項目が適用されます。
$ xmform :== $DECW$EXAMPLES:xmform $ xmform string |
stringの変数はオプションです。 stringを指定する場合に使用できる文字は,F,I,M,O,T です。使用する文字列は必ず大文字で,引用符(" ")で囲まなければなりません。 stringが省略された場合,xmform は"MOTIF"に戻ります。
$ xmgetres :== $DECW$EXAMPLES:xmgetres $ xmgetres WidgetClass |
WidgetClass の変数はオプションです。 WidgetClassが省略された場合, "Widget"という省略時のクラスに戻ります。 "All"のクラスも使用できます。この設定では Xt と Motif のすべてのウィジェットに対するリソースが表示されます。
xmtravel プログラムは,旅行代理店関係やフライト・データベース向けのプログラム例です。このプログラムによって,『OSF/Motif スタイル・ガイドリリース 1.2』に準拠した様々なユーザ・インタフェースの設計概念を知ることができます。
このプログラムはほんの一例に過ぎず,装備されていない機能も多く,使用を目的とした定義済設定も行われていません。
B.4.15 プログラム例のリソース・ファイル
プログラム例の多くには,それらの表示属性を定義する関連リソース・ファイルがあります。これらのリソース・ファイルを使用するには, DECW$EXAMPLES ディレクトリからユーザの DECW$USER_DEFAULTS ディレクトリに複写を行うか,あるいはファイルの内容をユーザの DECW$XDEFAULTS.DAT ファイルに追加します。
プログラム例ファイルおよびその関連リソース・ファイルの一覧を次の表に示します。
プログラム例 | リソース・ファイル |
---|---|
DECW$CDPLAYER.EXE | DECW$CDPLAYER.DAT |
FILEVIEW.EXE | FILEVIEW.DAT |
PERIODIC.EXE | PERIODIC.DAT |
MOTIFANM.EXE | MOTIFANIM.DAT |
XMAPDEF.EXE | XMDEMOS.DAT |
XMDIALOGS.EXE | XMDEMOS.DAT |
XMEDITOR.EXE | XMDEMOS.DAT |
XMFONTS.EXE | XMDEMOS.DAT |
XMFORC.EXE | XMDEMOS.DAT |
XMFORM.EXE | XMDEMOS.DAT |
XMGETRES.EXE | XMDEMOS.DAT |
XMLIST.EXE | XMDEMOS.DAT |
XMMAP.EXE | XMDEMOS.DAT |
XMPROTOCOL.EXE | XMDEMOS.DAT |
XMTER.EXE | XMDEMOS.DAT |
XMTRAVEL.EXE | XMTRAVEL.DAT |
リソース・ファイルが見つからない場合には,プログラム例は実行されますが,正しく表示されないこともあります。
前へ | 次へ | 目次 | 索引 |