共通デスクトップ環境 スタイル・ガイド

拡張可能なウィンドウとダイアログ・ボックス

この節では、共通デスクトップ環境で拡張可能なウィンドウまたはダイアログを提供するための標準的な方法について説明します。拡張可能なウィンドウにより、ユーザは、ウィンドウが最初に表示された時点では通常は表示されない、ウィンドウの独立した部分にある拡張機能、あるいはアプリケーション固有の機能を選択的に表示できます。ユーザは、自分のニーズと好みに応じて、ウィンドウ全体を表示したり、中核機能だけを表示したりできます。アプリケーションは、既存のツールキット・コンポーネントを使用して、拡張可能なウィンドウを簡単に実装できます。

拡張可能なウィンドウは、アプリケーションが限られた数の追加のダイアログ・ボックス・オプションを表示する必要がある場合にのみ使用します。ダイアログが、たとえば典型的な低解像度ディスプレイが表示できないほど大きくなる場合は、別の方法を考えてください。また、ダイアログが他の言語に翻訳されたときにサイズが大きくなることにも注意してください。拡張可能なダイアログの代案としては、複数ページ・ダイアログを使用して、ページの切り替えを行う [カテゴリ] ボタンを用意するという方法があります。

拡張可能なウィンドウとダイアログ・ボックスのガイドライン

推奨 

fn: 

ダイアログ・ボックスまたはウィンドウの主区画は、作業の完了に必要なすべてのコントロールを含んでいなければならない。これには、重要な機能と頻繁に使用される機能のすべてが含まれる。 

推奨 

fo: 

めったに使用されない機能は副区画に配置する。アプリケーションの中核機能は、副区画に置かれているコントロールに依存していてはならない。 

必須 

fp: 

コマンド・ボタンは、ダイアログ・ボックスの下部に配置される。ウィンドウが拡張されて、副区画が表示されたとき、ボタンは副区画の下部に移動される。ダイアログ・ボックスにおけるアクション・ボタンの配置については、第 6 章「アプリケーション設計の原理」を参照すること。

推奨 

fq: 

重要なコントロールを副区画に置かなければならない場合、アプリケーションは、対象のウィンドウがデフォルトで拡張された状態で表示されるかどうかを指定できる。この場合でも、ユーザは [縮小] ボタンを押してウィンドウを縮小できなければならない。 

拡張可能なウィンドウのコンポーネント

拡張可能なウィンドウまたはダイアログ・ボックスを作成するには、標準の Motif ウィジェットを、状態変数や、その動作を支配するいくつかの単純な規則と組み合わせて使用します。ウィンドウそのものの内容を構成するアプリケーション定義のコントロールと表示に加えて、次のように主区画と副区画を使用します。

主区画と副区画

主区画は、アプリケーションのほぼすべてのエンド・ユーザが必要とする中核機能、あるいは基本機能を含んでいなければなりません。主区画は、ウィンドウまたはダイアログのメイン・コンポーネントである標準の Motif コンテナです。拡張可能なウィンドウが最初に表示された時点では、主区画だけが表示されています。ユーザは、[拡張] ボタンを使用することで、ウィンドウまたはダイアログのすべての機能へのアクセスを提供する副区画を表示できます (図 7-2 を参照)。

図 7-2 [追加設定の表示] 拡張ボタン時のカレンダの [アポイントエディタ] の主区画

Graphic

副区画の拡張

副区画は、他のオプションや拡張機能のためのスペースを提供し、主区画の中核機能の難易度を高めないようにするという役割を果たします。副区画は縦または横に拡張されます。拡張の方向を決定する際には、次の点を検討してください。

推奨 

fr: 

副区画は、ユーザの予想、表示される言語における文字の読み方、および表示される情報の内容との一貫性が最も高い方向に拡張されなければならない。 

推奨 

fs: 

可能ならば、区画のデフォルトの幅は同一であるべきである。 

必須 

ft: 

主区画を副区画から区切るためのセパレータを使用する。 

どの要素が主区画に属しており、どの要素が拡張可能なウィンドウの副区画に属しているのかという点について、明確な視覚的フィードバックをユーザに与える必要があります。 

拡張されたウィンドウまたはダイアログのサイズの変更

必須 

fu: 

ウィンドウのサイズが変更可能な場合、サイズの変更は、表示されている長さが格納されている長さよりも小さいようなスクロール・リストまたはテキスト・フィールドを含んでいる区画に割り当てられなければならない。両方の区画がスクロール可能なコントロールを含んでいる場合、サイズの変更は 2 つの区画の間で均等に割り当てられる。どちらの区画もスクロール可能なコントロールを含んでいない場合、ウィンドウはサイズ変更が不可能であるべきである。 

図 7-3 [追加設定の非表示] 拡張ボタン時のカレンダの [アポイントエディタ] の主区画と副区画

Graphic

拡張ボタン

拡張ボタンは副区画の表示に使用されます。拡張ボタンは、ウィンドウの状態に応じて変化するラベルを持つ、Motif の標準の描画ボタンです。2 つの状態のボタン・ラベルは、ユーザに何が起こるのかを通知する内容でなければなりません。たとえば、ウィンドウを閉じているときは [オプション]、開いているときは [基本] というラベルを付けます。[オプション] をクリックすると下部の区画が表示されます。[基本] ボタンをクリックすると、下部の区画が隠されます。ラベルは [拡張] と [縮小]、[拡大] と [縮小]、[基本] と [オプション] のように、対照的な内容でなければなりません。

必須 

fv: 

拡張可能なウィンドウは、ウィンドウの状態に応じてラベルが変化するボタンを 1 個持っていなければならない。 

必須 

fw: 

拡張ボタンは、拡張可能なウィンドウの 2 つの状態を正確に反映する 2 つのラベルを持っていなければならない。現在のラベルは、ユーザがボタンをクリックしたときに何が起こるのかを、ユーザに通知するものでなければならない。 

ラベルの例としては、[基本] と [オプション]、[拡張] と [縮小]、[追加設定の表示] と [追加設定の非表示] などが考えられます。 

オプション 

fx: 

拡張ボタンは、ラベルに加えてグラフィックを含むことがある。このグラフィックは、ウィンドウが拡張または縮小する方向を示す。 

拡張ボタンの配置

推奨 

fy: 

ボタンは、縦方向の拡張の場合には、ウィンドウまたはダイアログ・ボックスの左下隅に、横方向の拡張の場合には右下隅に表れる。 

必須 

fz: 

ウィンドウまたはダイアログ・ボックスが、区画の右端に置かれたスクロール・リストを含んでいる場合は、描画ボタンをスクロール・バーと揃えて配置しないようにする。たとえば、ボタンはスクロール・バーではなく、リストに揃えて配置する。 

ウィンドウの状態

必須 

ga: 

アプリケーションは、個々のウィンドウまたはダイアログ・ボックスの状態 (拡張されているかどうか) を個別に (まとめてではなく) 記憶しておく必要がある。状態はユーザによってのみ変更され、ユーザが明示的に変更するまでは必ず保存されていなければならない。 

推奨 

gb: 

アプリケーションが実行されるたびに、ユーザが拡張可能なウィンドウを手動で構成しなくて済むように、アプリケーションは個々の拡張可能なウィンドウまたはダイアログ・ボックスの状態を、セッション間でも記憶しておくべきである。 

アプリケーションは、ユーザが拡張可能なウィンドウの状態を、アプリケーションに対してグローバルな形で設定できるような機能を提供することもできます。これはアプリケーションの [オプション] の一部として用意することになります。