# アプリケーション・ビルダのウィンドウとダイアログ・ボックス

この付録ではアプリケーション・ビルダの主なウィンドウとダイアログ・ボックスに ついて説明します。ウィンドウおよびダイアログ・ボックスの図解、ウィンドウおよびダイアログ・ボックスの要素の説明をします。

ABUG.apWDB.mkr.2
ABUG.apWDB.mkr.3
ABUG.apWDB.mkr.4
ABUG.apWDB.mkr.5
ABUG.apWDB.mkr.7
ABUG.apWDB.mkr.8
ABUG.apWDB.mkr.9

## アプリケーション・ビルダの主ウィンドウ

アプリケーション・ビルダの主ウィンドウは、グラフィカル・ユーザ・インタフェースを 構築する出発点です。インタフェースは、アプリケーション・ビルダのオブジェクト・ パレット([ウィンドウ]、[区画]、[コントロール])からワークスペースにオブジェクトを ドラッグし、インタフェース・オブジェクトの属性の編集、そしてインタフェースの レイアウトの調整をすることによって作成されます。 インタフェースを作成する手順は、 ABUG.intro.mkr.1の ABUG.intro.mkr.4を参照してください。

タイトル・バー | アプリケーションの名前、「アプリケーション・ビルダ」、ウィンドウ・マネージャ・メニュー、 アイコン化ボタン、最大化ボタン、現在のプロジェクトの名前(プロジェクトが開いて いるとき)が含まれています。保存した後に現在のプロジェクトを変更したときは 「(保存が必要)」という表示があります。
モード・バー | 構築モードおよびテスト・モードを指定する[構築]、[表示モジュールをテスト]、 [プロジェクトをテスト]ラジオ・ボタンがあります。 [構築]は、インタフェースの設計および構築用です。 [表示モジュールをテスト]は、ヘルプ、メニュー、および現在の接続、表示モジュールの テスト用です。初期状態が[表示]に設定されていないウィンドウ・オブジェクトを含む すべてのウィンドウ・オブジェクトが表示されます。 初期状態が[表示]に設定されていないウィンドウ・オブジェクトは表示され ません。
ウィンドウ・パレット | 3種類のアプリケーション・ビルダのウィンドウ・オブジェクト(メイン・ウィンドウ、 カスタム・ダイアログ、ファイル選択ダイアログ)があります。ウィンドウ・オブジェクトは ワークスペース上にドロップされます。詳細はabug.apwdb.mkr.3を参照してください。
区画パレット | 4種類のアプリケーション・ビルダの区画オブジェクト(コントロール区画、テキスト区画、 描画領域区画、端末区画)があります。区画オブジェクトはメイン・ウィンドウ、カスタム・ ダイアログ、またはその他の区画上にドロップします。詳細は、abug.apwdb.mkr.4を参照してください。
コントロール・パレット | 14種類のアプリケーション・ビルダのコントロール・オブジェクト(ボタン、メニュー・ボタン、 コンボ・ボックス、オプション・メニュー、メニュー・バー、ラジオ・ボックス、 チェック・ボックス、ゲージ、スケール、セパレータ、テキスト・フィールド、ラベル、 リスト、スピン・ボックス)があります。コントロール・オブジェクトは、コントロール 区画上にドロップします。詳細は、abug.apwdb.mkr.5を参照してください。
オブジェクト情報領域 | カーソルの下にあるオブジェクトの情報を与えます。詳細は、 abug.apwdb.mkr.6を参照してください。

### ウィンドウ・パレット

ウィンドウ・パレットには、3種類のオブジェクト(メイン・ウィンドウ、カスタム・ダイアログ、 ファイル選択ダイアログ)があります。

#### メイン・ウィンドウ

メイン・ウィンドウは、基本的なアプリケーション・ビルダのオブジェクト です。ワークスペース上にメイン・ウィンドウのアイコンをドロップすることで作成でき ます。ユーザ・インタフェースの出発点は、メイン・ウィンドウを構築することです。 メイン・ウィンドウはアイコン化ボタンを持っているので、アイコン化することができます。

ステータス領域には、ウィンドウの一部であるモジュールの名前が表示されており、 オブジェクトが選択されたときに表示されます。これは、コンパイルされたアプリケー ションには表示されません。

アプリケーション・ビルダ自身で使用されているメイン・ウィンドウの例としては、 アプリケーション・ビルダの主ウィンドウ、プロジェクト・オーガナイザ、モジュール・ ブラウザ、コード・ジェネレータがあります。

#### カスタム・ダイアログ

カスタム・ダイアログは、情報の表示、またはインタフェース内の特定の作業のための ポップアップを与えるウィンドウです。ワークスペース上にカスタム・ダイアログの アイコンをドロップすることで作成できます。カスタム・ダイアログは、メイン・ウィンドウ のボタンまたはメニューに接続します。ボタンがクリックされるか、またはメニューが 選択されると、ポップアップ・ダイアログが表示されます。カスタム・ダイアログは アイコン化できません。

ステータス領域には、ウィンドウの一部であるモジュールの名前が表示されており、 オブジェクトが選択されたときに表示されます。これは、コンパイルされたアプリケー ションには表示されません。

アプリケーション・ビルダ自身で使用されているカスタム・ダイアログの例としては、 ファイル選択ダイアログ、プロジェクト名ダイアログ・ボックス、モジュール名ダイアログ・ ボックス、全てのエディタ、およびメッセージ・ダイアログ・ボックスがあります。

#### ファイル選択ダイアログ

ファイル選択ダイアログ は、指定したファイルを開いたり保存したりする操作のための特別なポップアップ・ ダイアログです。ワークスペース上にファイル選択ダイアログのアイコンをドロップすることで 作成できます。

ステータス領域には、ウィンドウの一部であるモジュールの名前が表示されており、 オブジェクトが選択されたときに表示されます。これは、コンパイルされたアプリケー ションには表示されません。

### 区画パレット

区画パレットには4種類のオブジェクト(コントロール区画、テキスト区画、描画領域区画、 端末区画)があります。全ての区画は、メイン・ウィンドウ、カスタム・ダイアログ、または その他の区画にドロップできます。区画を区画上にドロップすると、ドロップした区画は最初の区画の子になるか、または階層化された区画を作成します。詳細は、 abug.crobj.mkr.1の abug.crobj.mkr.5を参照してください。

#### コントロール区画

コントロール区画はアプリケーション・ビルダのコントロールのドロップ領域です。 メイン・ウィンドウ、カスタム・ダイアログ、またはその他の区画をドロップすることで 作成します。上の図のように、コントロール区画は、キャンバス全体にひろげるために サイズ変更することを見越して、メイン・ウィンドウの左上の隅にドロップされます。

アプリケーション・ビルダ自身で使用されているコントロール区画の例としては、 アプリケーション・ビルダの主ウィンドウの3種類の区画パレットが置かれている区画、各属性 エディタ上にコントロールの下にある区画があります。

#### テキスト区画

テキスト区画完成したアプリケーションの複数行のテキスト入力 領域です。メイン・ウィンドウ、カスタム・ダイアログ、またはその他の区画をドロップ することで作成します。

アプリケーション・ビルダ自身で使用されているテキスト区画の例としては、テキスト区画 属性エディタの[初期値]フィールド、ヘルプ・エディタの[ヘルプ・テキスト]フィールド があります。

#### 描画領域区画

描画領域区画は、完成したアプリケーションの描画または表示領域として使用されます。

描画領域区画は、現在の表示領域の外にあるオブジェクトを表示できるようにする水平 および垂直のスクロール・バーがあります。

アプリケーション・ビルダで使用されている描画領域区画の例には、、モジュール・ブラウザ 内でモジュールとモジュール・オブジェクトを表示する区画、およびiプロジェクト・ オーガナイザ内でモジュールを表示する区画があります。

#### 端末区画

端末区画は、ユーザの入力を受け入れ、標準出力に書き出す端末エミュレーションの区画です。メイン・ウィンドウ、カスタムダイアログ、または 他の区画上にドロップすることで作成できます。

### コントロール・パレット

コントロール・パレットには14種類のオブジェクト(ボタン、リスト、テキスト・フィールド、 メニュー・バー)があります。これらのオブジェクトの属性を編集する方法は、 ABUG.edprp.mkr.1.を参照してください。 メニューおよびサブメニューを作成し、これらをオブジェクトに接続する方法は、ABUG.crobj.mkr.1のABUG.crobj.mkr.11を参照してください。

ボタン | クリックすると指定したアクションを実行するコントロールです。ボタンは、 ボタン属性エディタで、プッシュ・ボタン、描画ボタン、またはメニュー・ボタンに設定 できます。描画ボタンは、プッシュ・ボタンのように、クリックしたときに指定した機能 を実行します、描画ボタン上のラベルはアプリケーションの状態によって動的に変化させる ことができます。
メニュー・ボタン | メニューの接続のための特別なボタンです。メニュー・ボタンの属性エディタはありません。 メニュー・ボタンの属性は、ボタン属性エディタで編集します。
コンボ・ボックス | テキスト・フィールドとオプション・メニュー・のオブジェクトを組合せたものです。 ポップダウン・メニューから項目を選択できます。属性エディタの[編集可能]をチェックし、それを機能させるコードを記述したとき、リスト内の任意の項目を編集できます。
オプション・メニュー | 3つの 「選択」オブジェクト(オプション・メニュー、ラジオ・ボックス、 チェック・ボックス)の1つです。オプション・メニューをクリックすると、メニューが 表示され、1つのメニュー項目が選択されています。選択された項目は、オプション・ メニュー・ボックスの中に残り、アクティブな選択肢になります。アプリケーション・ ビルダで使用されているオプション・メニューの例は、属性エディタの[オブジェクト型] および接続エディタの[ソース]および[ターゲット]です。オプション・メニューは排他的 な選択オブジェクトです。
ラジオ・ボックス | 3つの 「選択」オブジェクト(オプション・メニュー、ラジオ・ボックス、 チェック・ボックス)の1つです。 ラジオ・ボックスは、ラベルとアプリケーションの機能を表す2つ以上の丸ボタンから 成ります。丸ボタンは、その中の1つだけを選択できます。 (「ラジオ・ボタン」 という用語は、自動車のラジオのボタンの型から名付けました。) ラジオ・ボックスは排他的な選択オブジェクトです。
チェック・ボックス | 3つの 「選択」オブジェクト(オプション・メニュー、ラジオ・ボックス、 チェック・ボックス)の1つです。チェック・ボックスは、ラベルとそれぞれが独自のラベル をもつ1つ以上のチェック・ボックスから成ります。 各チェック・ボックスは「二者択一」(オンまたはオフ)の状態を持っています。 チェックボックスは、非排他的なオブジェクトです。
ゲージ | 2つの「スケール」オブジェクト(ゲージ、スケール)の1つです。ゲージは値を示すのに 使用されます。
スケール | 2つの「スケール」オブジェクト(ゲージ、スケール)の1つです。スケールは、 ゲージのように値を示しますが、スライダを移動することによってスケールの値を修正することもできます。
セパレータ | 水平線または垂直線で、アプリケーション・ウィンドウ内の機能を分けて表示するのに 使用されます。
メニュー・バー | メイン・ウィンドウの一番上にある、メニュー・ボタンを配列した水平バーです。ボタン は、メニューを接続するためのカスケード・ボタンです。デフォルトのメニュー・バーは、 [ファイル]、[編集]、[ヘルプ]トピックを含んでいます。このトピックのグループに対して、 変更、削除、または追加を行うことができます。メニュー・バーは、厳密に言うと、1つの コントロール・オブジェクトではありません。メニュー・バーは3つのボタンをもつ コントロール区画です。
テキスト・フィールド | ラベルをもつ1行のテキスト入力領域です(対象的に、テキスト区画は、 複数行のテキスト入力領域です)。
ラベル | オブジェクトに接続されるテキスト文字またはグラフィックです。 目的を示すのに使用されます。
スクロール・リスト | 選択可能なオプションをリストしたオブジェクトです。スクロール・リストは、スクロール ・バーを持つ可変長のリストとオプションのラベルで表示されています。単一または複数 の選択ができ、ポップアップ・メニューを含むことができます。
スピン・ボックス | 多くの選択肢から選択を行うオブジェクトです。1度に表示されている選択肢は、その中の1つだけです。スピン・ボックスは、テキスト・フィールド、ラベル、選択肢を連続して表示するための矢印から構成されています。

### オブジェクト情報領域

オブジェクト情報領域は、主ウィンドウのパレットの1つまたはユーザ・インタフェース のどちらかで、カーソルの直下にあるオブジェクトの情報を表示します。オブジェクト 情報領域には以下の情報フィールドがあります。

オブジェクト型 | カーソルの下にあるオブジェクトの型(たとえば、メイン・ウィンドウ、コントロール・パネル、テキスト・フィールドなど)です。このフィールドは、アプリケーション・ビルダ内でアクティブです。オブジェクト・パレット内のオブジェクトの型を識別するのに使用できます。
オブジェクト名 | カーソルの下にあるインタフェース・オブジェクトの名前です。この名前はモジュール名 を組合せで、アプリケーション・ビルダのオブジェクト固有のものとして識別されます。 パレット・オブジェクトには名前がありません。アプリケーション・ビルダの主ウィンドウ の上にあるときは、このフィールドは空白です。インタフェースで初期化されるときに、 パレット・オブジェクトに固有の名前がつけれてます。オブジェクトの名前は、その オブジェクトのための属性エディタで変更できます。
位置 | カーソルの下にあるオブジェクトの左上端のピクセル単位の(x,y)座標です。オブジェクトが ウィンドウ・オブジェクト(メイン・ウィンドウ、カスタム・ダイアログ、ファイル選択 ダイアログ)のときは、モニタ画面の左上端からの相対位置になります。 オブジェクトがウィンドウの左上端にドロップされた区画であるとき、その位置は、(0,0) です。(0,0)は、親ウィンドウの左上端にの座標です。他の区画上にドロップされた区画および階層化された区画もまた、(0,0)座標になります。 オブジェクトが、コントロールまたはコントロール区画の子として作成された区画のとき、 その座標は、親オブジェクトの左上端から子オブジェクトの左上端までを計測したものに なります。
サイズ | カーソルの下にあるオブジェクトのサイズ(ピクセル単位)です。(幅X,高さY)という形式で 表したものです。
カーソル位置 | カーソルの位置を、ピクセル単位の(x,y)座標で表したもので、それを含むオブジェクトの 座標系で測定したものです。コントロールを含むすべてのオブジェクトは、独自の座標系 を持っています。複数のウィジェットで構成された複合オブジェクトは、複数の座標系を 持っています。たとえば、カスタム・ダイアログは、コントロール区画、ツール・バー、 ボタンから構成されており、それぞれが独自の座標系を持っています。
編集モジュール | 現在の編集中のモジュールの名前です。ウィンドウ・パレットからドラッグされた任意の ウィンドウは、モジュールの一部になります。複数のオブジェクトがワークスペース上に 表示されているときは、他のモジュールでオブジェクトを選択することによって、 現在のモジュールを別のモジュールに変更できます。

## プロジェクト・オーガナイザ

プロジェクト・オーガナイザはプロジェクトを開く、保存する、閉じる、またはモジュール を保存する、表示する、隠す、インポートする、エクスポートする、削除するときに使用 します。

位置 | [プロジェクト・パス]と[モジュール・パス]をもつコントロール区画で、現在のプロジェ クトの絶対パスの位置とモジュールの相対パスが示されます。モジュールは、通常、プロ ジェクトと同じフォルダにあり、そのパスは「.」(現在のフォルダを表す「ドット」) で表記されます。
モジュール配列 | アプリケーション・ビルダのアイコンの下にモジュール名をもつ単一アイコンとして、 現在のオブジェクトのそれぞれのモジュールを描画した描画領域区画です。

## モジュール・ブラウザ

モジュール・ブラウザ(ブラウザとも呼ばれます)は、階層的なモジュールのツリー表示を 示します。 これは、モジュールの表示、インタフェースの編集、オブジェクトのグループ 化またはグループ化解除、接続の作成、および編集のためのオブジェクト属性エディタの 表示で使用されます。ブラウザでは、オブジェクトの移動または配列はできません。 これらは、インタフェースで行うことができます。

ブラウザを表示するには、アプリケーション・ビルダの主ウィンドウの[表示]メニューから [モジュール・ブラウザ]を選択し、右側に表示されたメニューからモジュールを選択し ます。またはインタフェースでオブジェクトを選択して、ポップアップ・メニュー (インタフェースでマウス・ボタン3を押すと表示されます)から[ブラウザ]を選択します。

[編集]メニュー | アプリケーション・ビルダの[編集]メニューと同じ機能([元に戻す]、[カット]、[コピー]、 [ペースト]、および[削除])があります。ブラウザで、1つのオブジェクトまたは複数の オブジェクトを選択し、メニュー項目を選択すると、オブジェクトはインタフェースでも選択され、選択した機能がインタフェース内で実行されます。
[表示]メニュー | [水平]は、親オブジェクトの右に子オブジェクトを表示します。[垂直]に切り替えると、 親オブジェクトの下に子オブジェクトを表示します。[垂直]はデフォルトの表示です。 [オブジェクトのグリフを隠す]は、インタフェースのオブジェクトを表すアイコン/グリフを隠します。デフォルトである[オブジェクトグリフを表示]に切り替えることができます。 [オブジェクト型を表示]は、インタフェースのオブジェクトのオブジェクト型を表示します。 デフォルトである[オブジェクト型を隠す]に切り替えることができます。 [縮退]は、選択した親オブジェクトの子を 「非表示」にします。 これは、狭いスペースで多くのインタフェースを表示可能にします。 [拡張]は縮退した親オブジェクトを選択すると、その子オブジェクトを表示します。 [すべてに拡張] すべての縮退した親オブジェクトを、展開します。 [モジュール]は、サブメニューから選択したモジュールを表示します。 [検索]は、[オブジェクトを検索]ダイアログ・ボックスを表示し、オブジェクト名で、 オブジェクトを検索します。オブジェクトが見つかったとき、そのオブジェクトは選択され、キャンバスがスクロールしてオブジェクトを表示します。 [ティアオフ・ブラウザ]は新しいブラウザを表示します。1つ以上のモジュールを表示できるようにします。
モジュール名 | 表示されているモジュールを示します。[表示]メニューで変更できます。
トップレベル表示 | モジュールの直接の子(ウィンドウ、メニュー、メッセージ)をすべて表示します。 ここで選択された各オブジェクトの詳細な表示は、[詳細なツリー表示]内に表示されます。
詳細なツリー表示 | 選択したトップレベル・オブジェクトの詳細な表示を示します。選択したトップレベル・ オブジェクトのすべての子オブジェクトが表示されます。

オブジェクトをグループ化、またはブラウザでインタフェースを編集するとき、オブジェクトを 隠していないかどうか、インタフェースをチェックして確認してください。特に、オブジェクト をグループ化したときは、作成された区画のグループがその後ろにオブジェクトを隠し ている場合があります。

## コード・ジェネレータ・ウィンドウ

コード・ジェネレータ・ウィンドウは、作成したインタフェースのコードを生成し、 コンパイルされたアプリケーションをmakeして実行するのに使用します。アプリケーション ・ビルダの主ウィンドウの[ファイル]メニューから、コード・ジェネレータを選択すると、 ウィンドウが表示されます。

パス | 現在のプロジェクトのパスを示します。これはウィンドウの一番上にあるタイトル・バー に表示されます。
出力区画 | このラベルの下にあるテキスト区画を参照します。テキスト区画の下にあるボタンを クリックすると、その結果がこのテキスト区画に表示されます。(ボタンの機能は、[ファイル] メニューのメニュー項目にも表されます。)
[コードの生成] | 現在のプロジェクトのコードを生成します。このアクションの出力は、出力区画に表示されます。
[Make] | 現在のプロジェクトのアプリケーションを「make」します。 このアクションの出力は、出力区画に表示されます。
[実行] | コードを生成し、アプリケーションをmakeした後、コンパイルしたアプリケーションを 実行します。このアクションの出力は、出力区画に表示されます。コンパイルした アプリケーションの主ウィンドウが表示されます。
[Make&実行] | 前述の3つのボタン([Generate Code]、[Make]、[実行])を組み合わせたものです。 このアクションの出力は、出力区画に表示されます。コンパイルしたアプリケーション の主ウィンドウが表示されます。
[中止] | 現在実行している機能を中止します。コンパイルしたアプリケーションが実行中のときは、 [中止]をクリックするとアプリケーションが終了します。
[端末区画] | 任意の端末エミュレータ機能を実行します。

### コード・ジェネレータのオプション・ダイアログ・ボックス

コード・ジェネレータのオプション・ダイアログ・ボックスは、コード・ジェネレータの [オプション]メニューからアクセスでます。様々なコード・ジェネレータ機能が実行された ときに何をするかを決めるオプションを、設定するのに使用します。

プロジェクト | 現在のプロジェクトの名前です。
コードの生成対象 | [プロジェクト全体]、[メインのみ]、[特定のモジュールのみ]、[特定のモジュールとメイン]から、 どのコードを生成するかを指定します。[特定のモジュールのみ]、または[特定の モジュールとメイン]を指定した場合、スクロール・リスト内のモジュールがアクティブ になります。
マージ禁止 | ユーザが記述したコードを生成コードにマージするかを指定します。 [マージ禁止]をチェックすると、ユーザが記述したコードは、コード生成時に破棄されます。
正常メッセージの通知 | コード生成時に、正常メッセージを出力区画に表示するか、メッセージを生成しないか ([サイレントで])、すべてのメッセージを出力するか([冗長で])を指定します。
Make 引き数 | コード・ジェネレータでMakeコマンドを実行するとき、Makeコマンドに付加する引数を 指定します。
実行時引き数 | コード・ジェネレータでRunコマンドを実行するとき、Runコマンドに付加する引数を 指定します。
デフォルト設定にリセット | すべてのコード・ジェネレータ・オプションの設定をデフォルト値にリセットします。

### コード・ジェネレータの環境オプション・ダイアログ・ボックス

コード・ジェネレータの環境オプション・ダイアログ・ボックスは、コード・ジェネレータ・ ウィンドウの[オプション]メニューからアクセス可能で、[変数名]と変数の[値]を指定 するのに使用します。この値は、コード・ジェネレータ・ウィンドウで実行する機能に 使用されます。

変数名 | 環境変数の名前を指定します。
値 | [変数名]で指定した変数の値を指定します。この値は、コード・ジェネレータ・ウィンドウ でのみ設定され、コード・ジェネレータ以外の変数の値には影響しません。
取得 | 現在のコード・ジェネレータの[変数名]の値を取得して、[値]テキスト・フィールドに 表示します。
設定 | [値]内の値に、[変数名]で指定した変数を設定します。この値は、コード・ジェネレータ でのみ設定されます。
リセット | コード・ジェネレータ以外で設定されている値に、[値]または[変数値]をリセットします。
取消し | [値]の変更を取り消して、環境オプション・ダイアログ・ボックスを終了します。