スタイル・マネージャを使用するか、追加のフォントやカラーのリソースをカスタマイズすることによって、ディスプレイに対していろいろなカラーやフォントを選択できます。この章では、フォントとカラーのリソースをカスタマイズする方法について説明します。
また、デスクトップ・テキスト・エディタ (dtpad) やメール・プログラム (dtmail) などの DtEditor ウィジェット・アプリケーションのスタイル変換方法と、これらの変換と競合する DtEditor ウィジェット・アプリケーションのメニュー・アクセラレータに代わるものを指定する方法についても説明します。
アプリケーションはリソースを使用して、外観と動作を設定します。たとえば、スタイル・マネージャ (dtstyle) が提供するリソースにより、システムがカラー・パレットに関する情報が入っているファイルを検索する場所を指定できます。
dtstyle*paletteDirectories: /usr/dt/palettes/C HomeDirectory/.dt/palettes
デスクトップ・アプリケーションのデフォルトのリソース・ファイルは、/usr/dt/app-defaults/language ディレクトリにあります。
たとえば、/etc/dt/config/C/sys.resources に次のように指定します。
AnApplication*resource: value
この場合、次のログイン時にリソース AnApplication*resource が各ユーザの RESOURCE_MANAGER 属性に設定されます。
スタイル・マネージャ・リソースの詳細は、dtstyle(1X) のマニュアルページを参照してください。メール・プログラム・リソースの詳細は、dtmail(1X) のマニュアルページを参照してください。
リソースは、セッション・マネージャによってセッションの起動時に読み込まれます。セッション・マネージャがリソースを RESOURCE_MANAGER に読み込む方法の詳細は、「セッション・リソースの読み込み」を参照してください。
次のプロセス・マネージャ・リソースが使用可能です。
sampleNowTR
postPopupMenuTR
selectNextProcessTR
selectPrevProcessTR
selectFirstProcessTR
selectLastProcessTR
killSelectedProcessTR
デフォルトでは UNIX 割り当ては利用できません。
次のように指定します。
デスクトップのテキスト・エディタ (dtpad) やメール・プログラム (dtmail) などの DtEditor ウィジェット・アプリケーションの EMACS スタイル変換
これらの変換と競合する DtEditor ウィジェット・アプリケーションのメニュー・アクセラレータに代わるもの
次の行を HomeDirectory/.Xdefaults ファイルに追加します。
#include "/usr/dt/app-defaults/language/UNIXbindings"
language は、LANG
環境変数の値です。
セッションを再起動します。
ファイル /usr/dt/app-defaults/language/UNIXbindings の内容を HomeDirectory/.Xdefaults に挿入します。
.Xdefaults ファイルの割り当てを編集します。
編集を終了してから、セッションを再起動します。
/usr/dt/app-defaults/language/UNIXbindings ファイルは、次の割り当てを行います。
UNIX 割り当てが可能な場合、[Delete] キーは直前の文字を削除し、[Shift] + [Delete] キーは次の文字を削除します。
表 17-1 は、dtpad が無効にする UNIX 割り当てと競合するメニュー・アクセラレータとアクセラレータ・テキストのリストです。
表 17-1 dtpad が無効にするキー
メニュー・アクセラレータとアクセラレータ・テキスト |
無効キー |
---|---|
Dtpad*fileMenu.print.acceleratorText: |
|
Dtpad*fileMenu.print.accelerator: |
|
Dtpad*editMenu.undo.acceleratorText: |
Ctrl+_ |
Dtpad*editMenu.undo.accelerator: |
Ctrl<Key>_ |
Dtpad*editMenu.paste.acceleratorText: |
Shift+Insert |
Dtpad*editMenu.paste.accelerator: |
Shift<Key>osfInsert |
Dtpad*editMenu.findChange.acceleratorText: |
Ctrl+S |
Dtpad*editMenu.findChange.accelerator: |
Ctrl<Key>s |
表 17-2 は、UNIX 割り当てと競合するメニュー・アクセラレータとアクセラレータ・テキストの dtmail メール作成ウィンドウの無効キーのリストです。
表 17-2 dtmail メール作成ウィンドウの無効キー
メニュー・アクセラレータとアクセラレータ・テキスト |
無効キー |
---|---|
Dtmail*ComposeDialog*menubar*Edit.Undo.acceleratorText: |
Ctrl+_ |
Dtmail*ComposeDialog*menubar*Edit.Undo.accelerator: |
Ctrl<Key>_ |
Dtmail*ComposeDialog*menubar*Edit.Paste.acceleratorText: |
Shift+Insert |
Dtmail*ComposeDialog*menubar*Edit.Paste.accelerator: |
Shift<Key>osfInsert |
Dtmail*ComposeDialog*menubar*Edit.Find/Change.acceleratorText: |
Ctrl+S |
Dtmail*ComposeDialog*menubar*Edit.Find/Change.accelerator: |
Ctrl<Key>s |
次の変換は、(GNU スタイル) EMACS コントロールと [Meta] キー割り当て、および追加の割り当てを提供します。適切な場合は、[Shift] キーを通常の割り当てと組み合わせて使用して、オペレーションの方向を反対にすることもできます。たとえば、[Ctrl] + [F] キーは通常 1 文字前に移動するので、[Ctrl] + [Shift] + [F] キーは 1 文字後ろにカーソルを移動します。
追加の割り当ては次のとおりです。
Ctrl+comma - 1 語後ろへ (backward-word)
Ctrl+Shift+comma - 1 語前へ (forward-word)
Ctrl+period - 1 語前へ (forward-word)
Ctrl+Shift+period - 1 語後ろへ (backward-word)
Ctrl+Return - ファイルの最後へ (end-of-file)
Ctrl+Shift+Return - ファイルの最初へ (beginning-of-file)
GNU EMACS は、[Delete] キーに対して delete-next-character() ではなく delete-previous-character() を割り当てます。[Meta] + [F] キーは通常は [ファイル] メニューのニーモニックのため、forward-word() への割り当ては無視されます。1 語前 (forward-word) の割り当てのうち 1 つを使用します (たとえば、[Ctrl] + [period])。
表 17-3 は、DtEditor.text 変換のリストです。
表 17-3 DtEditor.text 変換
修飾キー |
キー | アクション・ルーチン |
---|---|---|
c ‾s |
<Key>a: |
beginning-of-line()¥n¥ |
c s |
<Key>a: |
end-of-line()¥n¥ |
c ‾s |
<Key>b: |
backward-character()¥n¥ |
c s |
<Key>b: |
forward-character()¥n¥ |
c ‾s |
<Key>b: |
backward-character()¥n¥ |
c s |
<Key>b: |
backward-word()¥n¥ |
m ‾s |
<Key>b: |
backward-word()¥n¥ |
m s |
<Key>b: |
forward-word()¥n¥ |
c ‾s |
<Key>d: |
delete-next-character()¥n¥ |
c s |
<Key>d: |
delete-previous-character()¥n¥ |
m ‾s |
<Key>d: |
kill-next-word()¥n¥ |
m s |
<Key>d: |
kill-previous-word()¥n¥ |
c ‾s |
<Key>e: |
end-of-line()¥n¥ |
c s |
<Key>e: |
beginning-of-line()¥n¥ |
c ‾s |
<Key>f: |
forward-character()¥n¥ |
c s |
<Key>f: |
backward-character()¥n¥ |
m ‾s |
<Key>f: |
forward-word()¥n¥ |
m s |
<Key>f: |
backward-word()¥n¥ |
c |
<Key>j: |
newline-and-indent()¥n¥ |
c ‾s |
<Key>k: |
kill-to-end-of-line()¥n¥ |
c s |
<Key>k: |
kill-to-start-of-line()¥n¥ |
c |
<Key>l: |
redraw-display()¥n¥ |
c |
<Key>m: |
newline()¥n¥ |
c s |
<Key>n: |
process-up()¥n¥ |
c ‾s |
<Key>n: |
process-down()¥n¥ |
c |
<Key>o: |
newline-and-backup()¥n¥ |
c ‾s |
<Key>p: |
process-up()¥n¥ |
c s |
<Key>p: |
process-down()¥n¥ |
c ‾s |
<Key>u: |
kill-to-start-of-line()¥n¥ |
c s |
<Key>u: |
kill-to-end-of-line()¥n¥ |
c ‾s |
<Key>v: |
next-page()¥n¥ |
c s |
<Key>v: |
previous-page()¥n¥ |
m ‾s |
<Key>v: |
previous-page()¥n¥ |
m s |
<Key>v: |
next-page()¥n¥ |
c |
<Key>w: |
kill-selection()¥n¥ |
c ‾s |
<Key>y: |
unkill()¥n¥ |
m |
<Key>]: |
forward-paragraph()¥n¥ |
m |
<Key>[: |
backward-paragraph()¥n¥ |
c ‾s |
<Key>comma: |
backward-word()¥n¥ |
c s |
<Key>comma: |
forward-word()¥n¥ |
m |
<Key>¥¥<: |
beginning-of-file()¥n¥ |
c ‾s |
<Key>period: |
forward-word()¥n¥ |
c s |
<Key>period: |
backward-word()¥n¥ |
m |
<Key>¥¥>: |
end-of-file()¥n¥ |
c ‾s |
<Key>Return: |
end-of-file()¥n¥ |
c s |
<Key>Return: |
beginning-of-file()¥n¥ |
‾c ‾s ‾m ‾a |
<Key>osfDelete: |
delete-previous-character()¥n¥ |
‾c s ‾m ‾a |
<Key>osfDelete: |
delete-next-character() |
スタイル・マネージャの [フォント] ダイアログ・ボックスを使用して、すべてのアプリケーションに対してフォントグループとサイズを選択できます。コマンド行でフォントを指定するか、次を実行してリソースを使用することもできます。
個々のアプリケーションにフォントのグループとリソースを設定する
[フォント] ダイアログ・ボックスによって異なるフォントを使用するように割り当てる
「フォント」は、テキスト文字が印刷または表示される型のスタイルです。デスクトップには、異なるスタイルやサイズのさまざまな種類のフォントが入っています。
「ビットマップ・フォント」は、ドットのマトリックスから成ります。(デフォルトでは、スタイル・マネージャはビットマップ・フォントだけを構成します。) フォントは、完全に 1 つのファイルに収められます。多くのファイルには、いろいろなサイズ、スラント、線の太さが入っている必要があります。
フォントは、リソースの値およびコマンドへのパラメータとして指定されます。XLFD 名 (論理フォント名) は、希望のフォントを要求するための方法です。システムは、指定された記述と最もよく一致するフォントを探し出します。
スタイル・マネージャの [フォント] ダイアログ・ボックスにより、テキストのエントリやラベルなどに対してフォントを (7 種類のサイズまで) 設定できます。また、フォント・グループを追加または削除できます。
フォントを選択すると、次のリソースが RESOURCE_MANAGER 属性に書き込まれます。
SystemFont は、メニュー・バー、メニュー区画、プッシュ・ボタン、トグル・ボタン、ラベルなどのシステム領域に使用します。次のリソースは SystemFont によって設定されます。
*FontList
- デスクトップのクライアントと、OSF/Motif ツールキットを使用して作成された、その他のクライアントのシステム領域に表示されます。
UserFont は、ウィンドウに入力するテキストに使用します。次のリソースが UserFont によって設定されます。
*Font
- X アプリケーションの以前のバージョンをサポートします。
*FontSet
- 一次設定です。
*XmText*FontList
- テキスト・エントリ・ボックスに表示されます。
*XmTextField*FontList
- テキスト・エントリ・ボックスに表示されます。
[フォント] ダイアログ・ボックスでの各選択に対して使用されるフォントは、/usr/dt/app-defaults/Dtstyle リソース・ファイルで指定します。最高 7 種類までのサイズを指定できます。
NumFonts
- [フォント] ダイアログ・ボックスにあるフォント・サイズの数
SystemFont[1-7]
- SystemFont の [フォント] ダイアログ・ボックス選択に特定フォントを割り当てる、最高 7 種類までのリソース
UserFont[1-7]
- UserFont の [フォント] ダイアログ・ボックス選択に特定フォントを割り当てる、最高 7 種類までのリソース
これらのリソースのデフォルト・フォントは、さまざまなディスプレイで読み込み可能なように選択されています。アプリケーション用に特定フォントを使用する場合は、これらのデスクトップ・フォントを変更するよりもアプリケーションのフォント・リソースでフォントを設定します。
アプリケーション・フォントの詳細は、DtStdAppFontNames(5) と DtStdInterfaceFontNames(5) のマニュアル・ページを参照してください。
次の行を入力します。
xlsfonts [-options] [-fn pattern]
システムで使用できる XLFD 名とフォント別名が表示されます。ビットマップ・フォントは、14 個の XLFD フィールドの全部の値を示します。スケーラブル・タイプフェースは、PixelSize、 PointSize、ResolutionX、ResolutionY の位置にあるゼロを示します。
特定フォントをチェックするには、xlsfonts のパターン一致機能を使用します。ワイルドカードを使用して、一致させるつもりがないパターンの一部を置き換えます。
xlsfonts が dt で始まるフォント名を表示しない場合は、フォント・パスにデスクトップ・フォントが入っていません。デスクトップ・フォントを使用可能なフォントに入れるには、次のコマンドを入力します。
xset +fp directory name
directory name は、デスクトップ・フォントが入っているディレクトリです。セッション起動によって設定されるデフォルトの位置は、/usr/dt/config/xfonts/language です。
追加情報については、次を参照してください。
xset(1) と xlsfonts(1) のマニュアル・ページには、使用可能なオプションのリストがあります。
『Using the X Window System』では、フォント別名と xset クライアントについて説明しています。
-xrm コマンド行オプションを使用して、特定クライアントのフォント・リソースを指定します。たとえば、次のようになります。
application name -xrm "*bitstream-charter-medium-r-normal-8-88-75-75-p-45-iso8859-1"
フォントは、ダッシュ (-) で区切られた 14 個の異なる特性をリストすることによって指定されます。これは、論理フォント名 (XLFD) と呼ばれます。いくつかの場合、リストにある属性は、ワイルドカード「*」に、属性内の文字はワイルドカード「?」にそれぞれ置き換えることができます。表 17-4 は、フォント属性文字列指定のリストです。
"-Foundry-FamilyName-WeightName- Slant-SetwidthName-AddStyleName-PixelSize- PointSize-ResolutionX-ResolutionY-Spacing- AverageWidth-CharSetRegistry-CharSetCoding"
表 17-4 フォント属性文字列指定
属性文字列 |
定義 |
---|---|
Foundry |
フォント作成者を識別する文字列 |
FamilyName |
フォントの商標登録された名前を識別する文字列 |
WeightName |
ボールドなどの、フォントの相対的な線の太さを指定する文字列 |
Slant |
スラントの方向を記述するコード R (ローマン - スラントなし) I (イタリック - 右スラント) O (オブリック - 右スラント) RI (リバース・イタリック - 左スラント) RO (リバース・オブリック - 左スラント) |
SetwidthName |
圧縮または拡張などの、幅について記述する文字列 |
AddStyleName |
フォントを識別するためだけに必要な追加情報を提供する文字列 |
PixelSize |
全角の M が入る正方形 (エム・スクウェア) のサイズをピクセル単位で指定する整数 |
PointSize |
全角の M が入る正方形 (エム・スクウェア) のサイズを 0.1 ポイント単位で指定する整数 |
ResolutionX |
水平解像度をピクセル単位で指定する整数 |
ResolutionY |
垂直解像度をピクセル単位で指定する整数 |
Spacing |
ユニット間の間隔を指定するコード M (モノスペース - 固定幅) P (プロポーショナル・スペース - 可変幅) C (キャラクタ・セル) |
AverageWidth |
1/10 ピクセル単位で平均幅を指定する整数 |
CharSetRegistry |
フォントのエンコーディングを登録した登録権限を識別する文字列 |
CharSetEncoding |
指定した登録の文字セットを識別する文字列 |
次の論理フォント名は、ISO8859-1 標準エンコーディングをサポートする Bitstream によって作成された charter という名前のフォントについて説明します。
-bitstream-charter-medium-r-normal--8-80-75-75-p-45-iso8859-1
これは、ミディアム・ウェイトで、特別にスラントしていない、通常の幅です。フォントはプロポーショナルで、そのサイズは 8 ピクセルまたは 8.0 ポイントの全角の M が入る (エム・スクエア) です。水平解像度と垂直解像度は、両方とも 75 ピクセルです。文字幅の平均は 45 1/10 ピクセルまたは 4.5 ピクセルです。
これらの文字列の一部は、ワイルドカードで置き換えることができます。システムは指定した部分と一致する最初に見つけたフォントを使用します。
8 ピクセルの charter フォントを希望する場合、次の行を使用できます。
*-charter-*-*-*-*-8-*
スタイル・マネージャの [フォント] ダイアログ・ボックスから [属性] ボタンを選択することによって、次のフォント・グループ属性を表示できます。
Font Group (フォント・グループ)
Size (サイズ)
Alias (別名)
Alias XLFD (別名 XLFD)
Alias Location (別名位置)
Font (フォント)
Font XLFD (フォント XLFD)
ユーザがフォント・グループを追加した場合、そのフォント・グループは次の位置に格納されます。
HomeDirectory/.dt/sdtfonts/host/locale/typeface-nnnnnn
host は、ローカル・ワークステーションのホスト名です。
locale は、ユーザの現在のロケールです (たとえば「C」や「ja」など)。
typeface-nnnnnn は、選択したフォントと固有の生成番号から決定される名前です。
このフォント・グループ・ディレクトリには、次の 3 つのファイルがあります。
fonts.alias
fonts.dir
sdtfonts.group
fonts.alias ファイルと fonts.dir ファイルは、X サーバのフォント・パスへ追加するのに適切な、通常の X11 フォント・ファイルです。sdtfonts.group ファイルには、ユーザ指定のフォント・グループ名が入っています。
他のユーザがワークステーション上のフォント・グループにアクセスできるようにするために、システム管理者は、フォント・グループを /etc/dt/sdtfonts/locale ディレクトリか /usr/openwin/lib/X11/stdfonts/locale ディレクトリにコピーできます。セッション・マネージャは、まず HomeDirectory/.dt/stdfonts/host/locale を、次に /etc/dt/sdtfonts/locale を、最後に /usr/openwin/lib/X11/stdfonts/locale を探します。
この節では次の内容を説明します。
スタイル・マネージャがディスプレイ・カラーを設定する方法
デスクトップ・カラーの使用をコントロールするためにスタイル・マネージャが使用するリソース
パレットは、カラー・セットのグループから成ります。現在のパレットのカラー・セットは、スタイル・マネージャの [カラー] ダイアログ・ボックスに表示されます。
各パレットに 1 つのファイルが存在します。paletteDirectories リソースは、パレット・ファイルが入っているディレクトリを指定します。デフォルトでは、このリソースには次のものが入っています。
組み込みパレット: /usr/dt/palettes
システム共通パレット: /etc/dt/palettes
個人用パレット: HomeDirectory/.dt/palettes
現在のパレットに設定されている各カラーは、スタイル・マネージャの [カラー] ダイアログ・ボックスにあるカラー・ボタンによって表されます。各カラーは、1 から 8 までのカラー・セット ID によって識別します。
各カラー・セットは、最高 5 色までのカラーで構成されます。各カラー・ボタンは、カラー・セットのバックグラウンド・カラーを表示します。各カラー・セットにある 5 つのカラーは、次のディスプレイ・コンポーネント・リソースを表します。
foreground - アプリケーション・ウィンドウまたはウィンドウ枠のフォアグラウンドです。通常は黒か白です。一般的にウィンドウやタイトル内のテキストに使用します。
background - アプリケーション・ウィンドウまたはウィンドウ枠のバックグラウンドです。
topShadowColor - アプリケーション・コントロール (プッシュ・ボタンなど) とウィンドウ枠の上部と左部の射影のカラーです。
bottomShadowColor - アプリケーション・コントロールとウィンドウ枠の下部と右部の射影のカラーです。
selectColor - アクティブなトグルやボタンなど、特定コントロールのアクティブな状態を示すカラーです。
各パレットが使用するカラー・セットの数は、colorUse リソースによって決まりますが、スタイル・マネージャの [使用する色の数] ダイアログ・ボックスを使用して設定できます。
スタイル・マネージャは、そのパレット・ファイルにカラー情報を書き込むときに RGB 値を使用します。RGB 数の構文は次のとおりです。
#RedGreenBlue
Red、Green、Blue はそれぞれ 1 桁から 4 桁 の 16 進数で、使用するカラーの量を示します。カラーのそれぞれの桁数は同じでなければなりません。したがって、有効カラー値は、3、6、9、12 桁のいずれかの 16 進数から成ります。
たとえば、白は次のどの方法でも指定できます。
#fff #ffffff #fffffffff #fffffffffffff
カラー・リソースを直接設定する場合、カラー名か RGB 値のどちらかを使用できます。ファイル /usr/lib/X11/rgb.txt には、名前が付いたカラーのすべてがリストされています。
デスクトップはリソースを介してさまざまなディスプレイ要素にカラー・セットをマップし、表 17-5 のような割り当てを行います。
表 17-5 リソースにマップされているカラー・セット
リソース |
ディスプレイ要素 |
---|---|
アプリケーションのメニュー・バー、メニュー、およびダイアログ・ボックス |
これらのリソースは、カラー・セット ID を値として取ります。カラー・セット ID でディスプレイ要素に配色を指定すると、新しいパレットがスタイル・マネージャで選択されるときに要素を新しい配色へと動的に変更できます。
個々のアプリケーションに対して、これらのリソースを使用できます。たとえば次の行は、原色に 8 カラー・セットを使用することにより、すべての dtterm ウィンドウを視覚的にグループ化する方法を示します。
dtterm*primaryColorSetId: 8
ディスプレイ要素に使用されるカラー・セット ID は、スタイル・マネージャのカラーの数の設定に対応します。
表 17-6 に、スタイル・マネージャで [デスクトップにもっと多くの色数を割り当てる] を設定した場合の、High Color (8 カラー・セット) 用のカラー・セット ID を示します。
表 17-6 High Color
カラー・セット ID |
ディスプレイ要素 |
---|---|
1 |
アクティブなウィンドウ枠のカラー |
2 |
非アクティブなウィンドウ枠のカラー |
3 |
未使用 (デフォルト時) |
4 |
テキスト・エントリ領域 |
5 |
アプリケーションのメイン・バックグラウンド領域 |
6 |
アプリケーションのメニュー・バー、メニュー、およびダイアログ・ボックス |
7 |
デフォルト時には未使用 |
8 |
フロント・パネルのバックグラウンド |
表 17-7 に、スタイル・マネージャで [アプリケーションにもっと多くの色数を割り当てる] に設定した場合の、Medium Color (4 カラー・セット) 用のカラー・セット ID を示します。
表 17-7 Medium Color
カラー・セット ID |
ディスプレイ要素 |
---|---|
1 |
アクティブなウィンドウ枠のカラー |
2 |
非アクティブなウィンドウ枠のカラー |
3 |
アプリケーションとフロント・パネルのバックグラウンドのカラー |
4 |
テキスト・エントリ領域 |
表 17-8 に、スタイル・マネージャで [アプリケーションに最大限度の色数を割り当てる] に設定した場合の、Low Color (2 カラー・セット) 用のカラー・セット ID を示します。
表 17-8 Low Color
カラー・セット ID |
ディスプレイ要素 |
---|---|
1 |
アクティブなウィンドウ枠、ワークスペース選択ボタン |
2 |
すべてのその他のディスプレイ要素 |
スタイル・マネージャを介して、デスクトップ・アプリケーションやその他の連携アプリケーションのカラーを動的に変更できます。スタイル・マネージャが設定するフォアグラウンド・カラーとバックグラウンド・カラーは、非連携アプリケーションに対して使用可能です。
スタイル・マネージャのカラー変更に反応するクライアントの場合、クライアントは必ずデスクトップの Motif ライブラリを使用してください。他のツールキットで書かれたクライアントは、スタイル・マネージャの変更に応じて動的にカラーを変更できません。これらのクライアントに対するカラーの変更は、クライアントが再起動されるまで有効ではありません。
クライアントに適用される特定のカラー・リソースは他にありません。これには、ユーザ指定のリソース、app-defaults、およびアプリケーションに組み込まれるリソースが含まれます。
クライアントは primaryColorSetId リソースと secondaryColorSetId リソースを指定して、デスクトップ・パレット内の特定のカラーを使用できます。
スタイル・マネージャが使用するカラーの数は、次のリソースの値に依存します。
colorUse - デスクトップが使用するカラーの数を設定します。
shadowPixmaps - 2 つのシャドウ・カラーをピックスマップと置き換えるようにデスクトップに指示します。
foregroundColor - フォアグラウンド・カラーを動的に変更するか指定します。
dynamicColor - パレットを切り替えるときにアプリケーションがカラーを変更するかをコントロールします。
表 17-9 は、デスクトップが割り当てるカラーの最大数をリストします。
表 17-9 デスクトップ・カラーの数
ディスプレイ |
カラーの最大数 |
内訳 |
---|---|---|
B_W |
2 |
黒と白 |
LOW_COLOR |
12 |
2 カラー・セット x 5 カラー + (黒と白) |
MEDIUM_COLOR |
22 |
4 カラー・セット x 5 カラー + (黒と白) |
HIGH_COLOR |
42 |
8 カラー・セット x 5 カラー + (黒と白) |
カラーの最大数を決定するには、次のようにします。
しかし、次の設定により、パレット内に 10 色のカラー (つまり、4 カラー・セット x 各セット (background と selectColor) 内の 2 色のカラー + (黒と白)) だけを持つことになります。
*colorUse: MEDIUM_COLOR *shadowPixmaps: True *foregroundColor: White
マルチカラー・アイコンは、さらに 14 色のカラーを使用します。
colorUse リソースのデフォルトの値は、MEDIUM_COLOR です。このリソースの値は、パレットで使用するカラーの数に影響を与えます。他のリソースは、シャドウを作成するのに使用するカラーの数に影響を与えます。colorUse リソースの値は、マルチカラー・アイコンの使用にも影響を与えます。
値 |
説明 |
---|---|
B_W |
[白黒] スタイル・マネージャ設定。1 から 3 までのカラー区画で表示 カラー・セットの数: 2 カラーの最大数: 2 デフォルトのカラー数: 2 マルチカラー・アイコンなし |
LOW_COLOR |
[アプリケーションに最大限度の色数を割り当てる] スタイル・マネージャ設定。4 から 5 までのカラー区画で表示 カラー・セットの数: 2 カラーの最大数: 12 デフォルトのカラー数: 12 マルチカラー・アイコンなし |
MEDIUM_COLOR |
[アプリケーションにもっと多くの色数を割り当てる] スタイル・マネージャ設定。6 のカラー区画で表示 カラー・セットの数: 4 カラーの最大数: 22 デフォルトのカラー数: 22 マルチカラー・アイコンあり |
HIGH_COLOR |
[デスクトップにもっと多くの色数を割り当てる] スタイル・マネージャ設定。7 以上のカラー区画で表示 カラー・セットの数: 8 カラーの最大数: 42 デフォルトのカラー数: 42 マルチカラー・アイコンあり |
デフォルト |
デスクトップは、そのディスプレイに対して正確な値を選択します。(色数が多いディスプレイでデスクトップが使用するカラーの数を減らすには、デフォルトの colorUse リソースに MEDIUM_COLOR を設定します。) |
shadowPixmaps リソースは、デスクトップに 2 つのシャドウ・カラーをピックスマップに置き換えるよう指示します。これらのピックスマップは、黒または白とバックグラウンド・カラーを混ぜ合わせて、上部か下部のシャドウ値のシミュレーションを行います。この方法は、カラー・セルをシャドウ・カラーに割り当てる必要がないため、必要なカラーの数から 2 が引かれます。
値 |
説明 |
---|---|
True |
デスクトップは topShadowPixmap と bottomShadowPixmap を作成して、シャドウ・カラーの代わりに使用します。 |
False |
パレットの topShadowColor と bottomShadowColor を使用します。 |
shadowPixmaps のデフォルト値は、持っている colorUse リソースとディスプレイをサポートするハードウェアに依存します。
foregroundColor リソースは、パレットでフォアグラウンドを設定する方法を指定します。
設定 |
結果 |
---|---|
White |
フォアグラウンドに白を設定します。 |
Black |
フォアグラウンドに黒を設定します。 |
Dynamic |
(デフォルト) フォアグラウンドに、background の値に応じて、黒か白を動的に設定します。たとえば、黄色のバックグラウンドで白い文字を使用すると読みにくいので、システムは黒を選択します。 |
foregroundColor に Black か White を設定する場合、カラー・セット内のカラーの数が 1 減りますが、フォアグラウンドがバックグラウンド・カラーの変更に応じて変更されることはありません。
colorUse の値が B_W の場合以外、foregroundColor のデフォルト値は Dynamic です。
dynamicColor リソースは、アプリケーションがカラーを動的に変更するかどうか、つまりパレットを切り替えるときにクライアントがカラーを変更するかどうかをコントロールします。
値 |
説明 |
---|---|
True |
クライアントは新しいパレットが選択されるとカラーを動的に変更します。これがデフォルト値です。 |
False |
クライアントはカラーを動的に変更しません。新しいパレットが選択されると、クライアントはセッションの再起動時に新しいカラーを使用します。 |
dynamicColor リソースの値が True の場合、同じカラーに見えたとしても、カラーを動的に変更できるクライアントではなく、カラーを動的に変更できないクライアント (非 Motif アプリケーション) が、カラー・マップに異なるセルを割り当てます。
すべてのクライアントは同じカラー・セルを共有するので、dynamicColor に False を設定すると、デスクトップで使用したカラーの数だけ減少します。
デスクトップは、ボタンのシャドウやフォーカス強調表示などのように、アプリケーション・ウィンドウにあるコンポーネントの 1 ピクセルのデフォルトのシャドウの濃さを定義します。Motif 1.2 アプリケーションは、このリソース値を使用します。他のアプリケーションはこのリソース値を取得しないので、ディスプレイには異なる状態で表示されます。
シャドウの濃さを非 Motif 1.2 アプリケーションの 1 ピクセルに設定するには、次のようにします。
root でログインします。
/etc/dt/config/language/sys.resources ファイルを作成します。
/etc/dt/config/language/sys.resources にアプリケーションに固有のリソースを次のように指定します。
application_class_name*XmCascadeButton*shadowThickness: 1
システム・デフォルト・リソースを無効にする方法、およびすべてのデスクトップ・ユーザに追加のリソースを指定する方法の詳細は、「セッション・リソースの読み込み」を参照してください。