目次 タイトル・ページ コピーライト・ページ ~~~~~~~~ 1 ~~~~~~~~ 1.1 DECwindows Motif ツ ー ル キ ッ ト の 概要 1.1.1 ツ ー ル キ ッ ト 構 成 ブ ロ ッ ク - ウ ィジェットとガジェット 1.1.2 ウィジェットの種類 1.1.3 OSF/Motif ツ ー ル キ ッ ト の ウ ィ ジェット 1.1.4 DEC が提供するウィジェット 1.1.5 ツ ー ル キ ッ ト の ウ ィ ジ ェ ッ ト と ガジェットのルーチン 1.1.6 アプリケーション開発ツール 1.1.7 UIL と MRM を 使 用 し た 各 国 語 対 応 1.1.8 ツールキット Intrinsics ルーチン 1.2 ツ ー ル キ ッ ト・ ル ー チ ン と UIL の 対比 1.3 ツ ー ル キ ッ ト・ ル ー チ ン と Xlib ル ーチンの対比 1.4 ツ ー ル キ ッ ト・ プ ロ グ ラ ミ ン グ 上 の注意事項 1.4.1 ア プ リ ケ ー シ ョ ン の ウ ィ ジ ェ ッ ト階層 1.4.2 DECburger の ア プ リ ケ ー シ ョ ン 階層 1.4.3 形式と機能 1.4.4 機能とコールバックの関連付け 1.4.5 ア プ リ ケ ー シ ョ ン に お け る ウ ィ ジェット属性の使用 1.4.5.1 サイズ属性と位置属性 1.4.5.2 見た目の属性 1.4.5.3 コールバック属性 1.4.5.4 ウ ィ ジ ェ ッ ト 属 性 へ の 値 の 割 当て 1.5 DECburger デ モ 用 ア プ リ ケ ー シ ョ ン 1.6 C 以外の言語の例 2 DECwindows ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~~~~~~~~~~~~~~~~~~~~~~~ 2.1 DECwindows ア プ リ ケ ー シ ョ ン の 設計 - 何から始めるか 2.1.1 ア プ リ ケ ー シ ョ ン の 設 計 に つ い て 2.1.2 コールバックの使用 2.1.3 資源についての仮定 2.1.4 適切なウィジェットの選択 2.1.5 DECburger ア プ リ ケ ー シ ョ ン の ウィジェット 2.1.6 DECburger で 使 用 さ れ る ツ ー ル キット Intrinsics ルーチン 3 DECwindows ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ 3.1 DEC が 提 供 す る ウ ィ ジ ェ ッ ト の UIL からの使用 3.2 XmForm ウ ィ ジ ェ ッ ト に つ い て の ヒント 3.2.1 子 を 持 つ フ ォ ー ム・ ダ イ ア ロ グ・ボックスの作成 3.2.2 サイズが異なる子の位置合わせ 3.2.3 XmForm ウ ィ ジ ェ ッ ト 内 の ウ ィ ジェットのセンタリング 3.2.4 XmForm ウ ィ ジ ェ ッ ト に お け る XmPushButton の配置 3.3 デフォルト・ファイルの使用 3.4 変 更 し た 設 定 を 保 管 す る た め の デ フォルト・ファイルの使用 3.5 複数のディスプレイの使用 3.5.1 複 数 の 独 立 し た デ ィ ス プ レ イ の 使用 3.5.2 相 互 に 接 続 さ れ た 複 数 デ ィ ス プ レイの使用 3.6 カーソルの作成 3.7 XtAppAddInput ルーチンの使用 3.8 UIL で 割 り 当 て ら れ た リ ソ ー ス の 解放 4 Help ~~~~~~~~~~~~~~~~~~ 4.1 Help ウィジェットの概要 4.1.1 Help ウィジェットの呼び出し 4.1.2 Help ウィジェットの用語 4.2 ヘルプ・ライブラリ情報 4.2.1 ヘ ル プ・ ラ イ ブ ラ リ・ モ ジ ュ ー ル 4.2.1.1 ヘ ル プ・ ラ イ ブ ラ リ・ モ ジ ュ ールのアクセス 4.2.1.2 ヘ ル プ・ ラ イ ブ ラ リ の キ ー 名 の指定 4.2.2 OpenVMS ヘ ル プ・ ラ イ ブ ラ リ の強化 4.3 Help ウィジェットの構成要素 4.4 Help ウィジェットの見た目の変更 4.4.1 Help ウ ィ ジ ェ ッ ト の ラ ベ ル と ニ ーモニックの変更 4.4.2 Help ウィジェットのメッセージ 4.5 Help ウィジェットのコールバック 4.6 Help ウ ィ ジ ェ ッ ト の ト ピ ッ ク の 指 定 4.7 Help ウィジェットの使用 4.7.1 コンテキスト依存ヘルプ 4.7.1.1 UIL に よ る 「コ ン テ キ ス ト」 プッシュ・ボタンの作成 4.7.1.2 コ ン テ キ ス ト 依 存 ヘ ル プ・ モ ードに入る 4.7.2 ヘルプ・コールバックの指定 4.8 UIL に よ る Help ウ ィ ジ ェ ッ ト の 作 成 4.9 Help ウ ィ ジ ェ ッ ト の 実 現 - C 言 語 モジュール 4.10 ツ ー ル キ ッ ト の Help ウ ィ ジ ェ ッ ト作成ルーチンの使用 5 DECwindows Motif ~~ ~~ ~~~~ ~~ ~~ ~~~~~~~~~~ 5.1 ヘルプ・システムの概要 5.2 ヘルプ・システムの呼び出し 5.3 ヘルプ・ファイル情報 5.4 ヘ ル プ・ フ ァ イ ル 情 報 - VAX DOCUMENT の例 5.5 コ ン テ キ ス ト 依 存 ヘ ル プ・ コ ー ル バック 5.5.1 UIL に よ る 「コ ン テ キ ス ト」 プ ッシュ・ボタンの作成 5.5.2 コ ン テ キ ス ト 依 存 ヘ ル プ・ モ ー ドに入る 5.5.3 ヘルプ・コールバックの指定 5.6 ヘルプ・システムの実現 5.7 ヘ ル プ・ シ ス テ ム の 実 現 - C 言 語 モジュール 6 Color Mixing ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ 6.1 Color Mixing ウィジェットの概要 6.2 Color Mixing ウィジェットの資源 6.3 カラー・モデル 6.3.1 色選択カラー・モデル 6.3.1.1 色 選 択 カ ラ ー・ モ デ ル の ス ペ クトル 6.3.1.2 色 選 択 カ ラ ー・ モ デ ル を 使 用 しての色の選択 6.3.1.3 補間の使用 6.3.2 HLS 配合カラー・モデル 6.3.3 RGB 配合カラー・モデル 6.3.4 色名指定カラー・モデル 6.3.5 グレー・スケール・ミキサ 6.4 Color Mixing ウ ィ ジ ェ ッ ト の 構 成 要素 6.4.1 スクラッチ・パッド 6.4.2 Color Display サブウィジェット 6.4.3 Color Model Option Menu サ ブ ウ ィジェット 6.4.4 Color Mixer サブウィジェット 6.4.5 Push Button サブウィジェット 6.4.6 Label サブウィジェット 6.4.7 Work Area サブウィジェット 6.4.8 新規の色の値の設定と検索 6.4.9 Color Mixing ウ ィ ジ ェ ッ ト の 変 更 6.4.9.1 サイズの指定 6.4.9.2 マージンの指定 6.4.9.3 Color Mixing ウィジェットのラ ベル付け 6.4.9.4 Color Display サ ブ ウ ィ ジ ェ ッ トの背景色の定義 6.4.9.5 Color Mixing ウィジェットへの 作業領域の追加 6.4.9.6 色選択カラー・モデルの変更 6.5 他のカラー・モデルのサポート 6.5.1 Color Display サ ブ ウ ィ ジ ェ ッ ト の置き換え 6.5.2 Color Mixer サ ブ ウ ィ ジ ェ ッ ト の 置き換え 6.6 コ ー ル バ ッ ク と Color Mixing ウ ィ ジェットの関連付け 6.7 Color Mixing ウィジェットの作成 6.7.1 Color Mixing ウ ィ ジ ェ ッ ト の 作 成 - UIL の例 6.7.2 Color Mixing ウ ィ ジ ェ ッ ト - 「了解」コールバック 6.7.3 Color Mixing ウ ィ ジ ェ ッ ト - 「適用」コールバック 6.7.4 Color Mixing ウ ィ ジ ェ ッ ト - 「取消」コールバック 6.7.5 Color Mixing ウ ィ ジ ェ ッ ト の 作 成 - ツールキットの例 7 Print ~~~~~~~~~~~~~~~~~~ 7.1 Print ウィジェットの概要 7.2 Print ウィジェットの使用方法 7.3 Print ウィジェットの構成要素 7.4 Print ウィジェットのコールバック 7.5 Print ウ ィ ジ ェ ッ ト の フ ァ イ ル・ タ イプ推測機能 7.6 Print ウィジェットのリソース 7.6.1 Print ウィジェットの機能の禁止 7.6.2 Print ウィジェットの機能の追加 7.6.2.1 プ リ ン ト・ フ ォ ー マ ッ ト の 追 加 7.6.2.2 オ プ シ ョ ン・ メ ニ ュ ー へ の 追 加 7.7 UIL に よ る Print ウ ィ ジ ェ ッ ト の 作 成 7.8 ツ ー ル キ ッ ト・ ル ー チ ン に よ る Print ウィジェットの作成 7.9 プ リ ン ト・ ジ ョ ブ の キ ュ ー へ の 登 録 8 Compound String Text ~~ ~~ ~~ ~~ ~~~~~~~~~~ 8.1 CSText ウィジェットの概要 8.2 CSText ウ ィ ジ ェ ッ ト の リ ソ ー ス の 変更 8.2.1 CSText ウ ィ ジ ェ ッ ト の テ キ ス ト 内容の操作 8.2.1.1 コ ン パ ウ ン ド・ ス ト リ ン グ の CSText ウィジェットへの配置 8.2.1.2 CSText ウ ィ ジ ェ ッ ト か ら の コ ン パ ウ ン ド・ ス ト リ ン グ の 検 索 8.2.1.3 テキスト編集の禁止 8.2.1.4 テキストの長さの制限 8.2.2 CSText ウ ィ ジ ェ ッ ト の 見 た 目 の 変更 8.2.2.1 サイズの指定 8.2.2.2 マージンの指定 8.2.2.3 サイズ変更動作の制御 8.2.2.4 スクロール・バーの位置設定 8.2.2.5 テ キ ス ト・ カ ー ソ ル の 見 た 目 の制御 8.2.2.6 挿入点の位置設定 8.2.2.7 現 在 の 記 述 方 向 お よ び 編 集 方 向の識別 8.2.3 CSText ウ ィ ジ ェ ッ ト に お け る マ ルチライン編集 8.2.4 テキスト選択の処理 8.2.4.1 テキストの選択 8.2.4.2 選択したテキストの検索 8.2.4.3 選 択 し た テ キ ス ト の ク リ ッ プ ボードへの複写 8.2.4.4 選 択 し た テ キ ス ト の ク リ ッ プ ボードからの貼り付け 8.2.4.5 選択したテキストの削除 8.2.4.6 選択に関する位置情報の取得 8.2.4.7 1 次選択所有権の判断 8.2.4.8 テキストの選択の取り消し 8.2.5 コ ー ル バ ッ ク と CStext ウ ィ ジ ェ ットの関連付け 8.3 変換ルーチン 8.4 CSText ウィジェットの作成 8.4.1 UIL に よ る CSText ウ ィ ジ ェ ッ ト の作成 8.4.2 ツ ー ル キ ッ ト の CSText ウ ィ ジ ェット作成ルーチンの使用 9 SVN ~~~~~~~~~~~~~~~~~~ 9.1 SVN ウィジェットの概要 9.1.1 項目の構成要素 9.1.2 選択モード 9.1.3 ツ リ ー・ モ ー ド の ナ ビ ゲ ー シ ョ ン・ウィンドウ 9.1.4 位置カーソル 9.1.5 項目の強調表示 9.1.6 編集可能なテキスト 9.1.7 選択可能項目 9.1.8 SVN ウ ィ ジ ェ ッ ト の 使 用 可 能 設 定と使用不可能設定 9.1.9 SVN ウィジェットの無効化 9.1.10 スクロール・バーの外側の矢印 9.1.11 ス ク ロ ー ル・ バ ー・ イ ン デ ッ ク ス・ウィンドウ 9.2 SVN ウ ィ ジ ェ ッ ト の プ ロ グ ラ ミ ン グ上の注意事項 9.2.1 データ階層の作成 9.2.1.1 デ ー タ へ の 接 続 - DXmSvnNattachToSourceCallback コールバック 9.2.1.2 entry_number フ ィ ー ル ド の 理 解 9.2.1.3 項目に関する情報の取得 9.2.1.4 階層データと SVN の関連付け 9.2.2 SVN ウ ィ ジ ェ ッ ト の 使 用 可 能 設 定と使用不可能設定 9.2.3 位置カーソルの設定 9.2.4 項目の無効化 9.2.5 ツリー・スタイルの設定 9.2.6 ディスプレイ・モードの設定 9.2.7 項目の座標位置の設定 9.2.8 項目の位置の設定 9.2.9 項目の選択 9.2.10 項目の操作 9.2.11 コラム・モードの項目の操作 9.2.12 項目のフラッシュ 9.2.13 構成要素の操作 9.2.14 項目の強調表示 9.2.15 表示されている項目の取得 9.2.16 項目のドラッグ 9.2.17 ゴースト 9.2.18 項目のフォント・リストの設定 9.3 ツリー・モードの属性の設定 9.3.1 ツリーの位置の操作 9.3.2 ツリー・モードの円弧幅の設定 9.3.3 ツ リ ー・ モ ー ド 構 成 要 素 の セ ン タリング 9.3.4 ツリー・モードの輪郭 9.3.5 ツ リ ー・ モ ー ド の 項 目 の シ ャ ド ウ 9.3.6 ツリー・モードの垂直線 9.4 コ ー ル バ ッ ク と SVN ウ ィ ジ ェ ッ トの関連付け 9.5 SVN ヘルプ・コールバック 9.5.1 ユーザが生成するコールバック 9.6 SVN ウィジェットの作成 9.7 例 - SVN デモ用アプリケーション 10 ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~~~~~~~ 10.1 互換性の重要性 10.2 フォント・フォールバック 10.2.1 フォントの命名規則 10.2.2 フ ォ ン ト・ フ ォ ー ル バ ッ ク の 実 現 10.2.3 共通フォントの使用 10.2.4 UIL に よ る フ ォ ン ト・ フ ォ ー ル バックの実現 10.2.5 ツ ー ル キ ッ ト・ ル ー チ ン に よ る フ ォ ン ト・ フ ォ ー ル バ ッ ク の 実 現 10.3 画面の独立性 10.3.1 画面の DPI についての仮定 10.3.2 マ ル チ ヘ ッ ド・ サ ー バ の サ ポ ー ト 10.3.2.1 XtAppInitialize ル ー チ ン に よ る 画面指定 10.3.2.2 XtOpenDisplay ル ー チ ン に よ る 画面指定 10.3.3 ウィンドウ・サイズの調整 10.3.4 ス ク ロ ー ル す る ウ ィ ン ド ウ の 使 用 10.3.5 DXmNfitToScreenPolicy リ ソ ー ス の使用 10.3.6 画 面 が 小 さ い 場 合 の ウ ィ ン ド ウ の配置 10.4 カラーのサポート 10.4.1 使 用 す る カ ラ ー と デ ィ ス プ レ イ のタイプの一致 10.4.1.1 書き込み可能なカラー・セル 10.4.1.2 ディスプレイの深さ 10.4.1.3 不十分なカラー資源の処理 10.5 イメージ・フォーマット 10.5.1 イメージ・フォーマットの実現 10.5.2 イメージ・フォーマットの決定 A OpenVMS DECTERM PORT ~~ ~~ ~~ ~~~~~~~~ ~~ 1-1 引数リストの引き渡し 1-2 形式と機能 1-3 形 式 と 機 能 - 汎 用 プ ル ダ ウ ン・メニュー 3-1 子 を 持 つ XmForm ダ イ ア ロ グ - UIL モジュール 3-2 サ イ ズ が 異 な る 子 の 位 置 合 わ せ 3-3 XmForm 内 の 子 ウ ィ ジ ェ ッ ト の セ ン タ リ ン グ - UIL モ ジ ュ ール 3-4 XmForm 内 の 子 ウ ィ ジ ェ ッ ト の作成 - C モジュール 3-5 DXmFormSpaceButtonsEqually ルーチンの呼び出し 3-6 ア プ リ ケ ー シ ョ ン の 省 略 時 の 値の保管 - UIL モジュール 3-7 ア プ リ ケ ー シ ョ ン の 省 略 時 の 値の保管 - C モジュール 3-8 複 数 の 独 立 し た デ ィ ス プ レ イ の使用 - UIL モジュール 3-9 複 数 の 独 立 し た デ ィ ス プ レ イ の使用 - C モジュール 3-10 相 互 に 接 続 さ れ た 複 数 デ ィ ス プレイの使用 3-11 DXmCreateCursor ルーチン 3-12 XtAppAddInput ル ー チ ン の 使 用 - UIL モジュール 3-13 XtAppAddInput ル ー チ ン の 使 用 - C モジュール 4-1 サンプルのヘルプ・ファイル 4-2 UIL に お け る 「コ ン テ キ ス ト」プッシュ・ボタン 4-3 DXmHelpOnContext ル ー チ ン の 呼び出し 4-4 ヘ ル プ・ コ ー ル バ ッ ク の 指 定 - UIL モジュール 4-5 ヘ ル プ・ コ ー ル バ ッ ク の 指 定 - C モジュール 4-6 UIL に よ る Help ウ ィ ジ ェ ッ ト の実現 4-7 Help ウ ィ ジ ェ ッ ト の 実 現 - C 言語モジュール 4-8 Help ウ ィ ジ ェ ッ ト の 実 現 - C 言語モジュール 4-9 ツ ー ル キ ッ ト・ ル ー チ ン に よ る Help ウィジェットの作成 5-1 DECBURGER_HELP.SDML ヘ ル プ・ファイル 5-2 UIL に よ る 「コ ン テ キ ス ト」 プッシュ・ボタン 5-3 DXmHelpOnContext ル ー チ ン の 呼び出し 5-4 ヘ ル プ・ コ ー ル バ ッ ク の 指 定 - UIL モジュール 5-5 ヘ ル プ・ コ ー ル バ ッ ク の 指 定 - C モジュール 5-6 UIL に お け る ヘ ル プ・ シ ス テ ムの実現 5-7 ヘ ル プ・ シ ス テ ム の 実 現 - C 言語モジュール 6-1 DXmColorMixCallbackStruct デ ータ構造体 6-2 Color Mixing ウィジェットの作 成 - UIL の例 6-3 UIL を 使 用 し て Color Mixing ウ ィ ジ ェ ッ ト を 作 成 す る た め の C ソース・コード 6-4 Color Mixing ウ ィ ジ ェ ッ ト - 「了解」コールバック 6-5 Color Mixing ウ ィ ジ ェ ッ ト - 「適用」コールバック 6-6 Color Mixing ウ ィ ジ ェ ッ ト - 「取消」コールバック 6-7 Color Mixing ウィジェットの作 成 - ツールキットの例 7-1 UIL に よ る Print ウ ィ ジ ェ ッ ト の各種リソースの設定 7-2 プ リ ン ト・ フ ォ ー マ ッ ト の 追 加 7-3 印刷オプションの追加 7-4 UIL に よ る Print ウ ィ ジ ェ ッ ト の作成 7-5 UIL に よ る Print ウ ィ ジ ェ ッ ト の作成 - C サポート 7-6 DXmCreatePrintDialog ル ー チ ン の呼び出し 7-7 DXmPrintWgtPrintJob ル ー チ ン の呼び出し 8-1 DXmCSTextGetString 支 援 ル ー チンの使用 8-2 例 - ス ク ロ ー ル す る CSText ウィジェットの作成 8-3 マ ル チ ラ イ ン 編 集 機 能 を も つ CSText ウィジェット 8-4 UIL に よ る CSText ウ ィ ジ ェ ッ トの作成 8-5 UIL を 使 用 し て CSText ウ ィ ジ ェ ッ ト を 作 成 す る た め の C の ソース 8-6 ツ ー ル キ ッ ト の CSText 作 成 ル ーチン 9-1 SVN デ モ 用 ア プ リ ケ ー シ ョ ン のデータ階層の一部