これは RuntimeRevolution 1.1.1 のヘルプにある文書を邦訳したものです。この文書の文責はUDIにあり、またUDIはこの文書についての一切の債務を負いません。 間違いがありましたら eudio@chabashira.co.jp までお知らせ下さい。この文書は必要と思われる時に適宜アップデートされます。
Help -> Revolution Documantation -> Development Guide -> Appearance & Positioning -> About... colors and color specifications
About colors and color specifications
カラーと、カラー指定
==============
参照:
--------------
Color Names Reference, Object menu > Colors and Patterns, Text menu > Color, accentColor property, backgroundColor property, borderColor property, bottomColor property, colorNames function, effective keyword, focusColor property, foregroundColor property, hiliteColor property, shadowColor property, topColor property
Revolution の各オブジェクトには8つのカラープロパティがある。各プロパティはそれぞれのオブジェクトタイプで違った働きをする。これら個々のカラープロパティは、数値や名前で設定することが出来る。
このトピックでは、Revolution のカラーモデル、オブジェクトの各部のカラー効果、そしてその設定方法について考える。
このトピックを理解するには、オブジェクトの作り方、簡単なスクリプトの作り方、そしてオブジェクト階層について知っている必要がある。もし 'Getting Started' チュートリアルが済んでいるなら、このトピックを読むための情報は得ている。
Contents:
The Eight Colors of an Object
Color Inheritance
Specifying a Color by Name
Specifying a Color as a Numeric Triplet
Specifying a Color as an HTML Color Spec
Other Ways of Specifying Colors
The Eight Colors of an Object
オブジェクトの8つのカラー
Revolution の各オブジェクトには8つのカラー「スロット」がある。これら8つのプロパティは、オブジェクトの各部位のカラーを決定する:
foregroundColor: オブジェクトのテキストカラー
backgroundColor: オブジェクトの塗りつぶしカラー
borderColor: threeD プロパティが false の時のオブジェクトの枠のカラー
topColor: 3Dオブジェクトの上端カラー
bottomColor: 3Dオブジェクトの下端カラー
shadowColor: オブジェクトのシャドーカラー
hiliteColor: オブジェクトのハイライトカラーと、選択テキストのカラー
focusColor: フォーカス時のアウトラインカラー( Unix と Windows システムのみ。プレビュー時を除く)
カラープロパティを使って、これら8つのカラーを個々に見たり設定したりすることが出来る。
各オブジェクトで利用できるカラープロパティは8つと決まっているので、いくつかのプロパティは二重の意味を持っている。例えばスクロールフィールドの backgroundColor プロパティは、テキストのバックグラウンドカラーと、スクロールバーにあるアローボックスのカラーを決定する。
(オブジェクトごとの各カラープロパティの詳細については、各カラーの Transcript Dictionary を参照のこと)
また各オブジェクトは、8つのカラープロパティに対応した8つのパターンプロパティを持っている。オブジェクトのパターンプロパティを設定すると、対応するカラープロパティは再設定するまで効果を失う。カラープロパティとパターンプロパティはどちらも使うことが出来るが、両方を同時に使うことは出来ない。
Color Inheritance
カラーの継承
オブジェクトのカラープロパティは、オブジェクト階層上位にあるオブジェクトの設定を継承する。グループ化されたオブジェクトはそのグループから、カードにあるコントロールはカードから、カードはスタックから、そしてサブスタックはそのメインスタックからプロパティを継承する。
例えばフィールドの backgroundColor が設定されていなければ、そのオーナーであるカードのバックグラウンドカラーが適用される。もしカードの backgroundColor も設定されていなければ、スタックの backgroundColor が使われる。これはスタックの backgroundColor を設定するだけで、全てのオブジェクトの設定を変えることが出来ることを意味する。
あるオブジェクトのカラープロパティが未設定である時、そのプロパティの値は empty である。例えばカードの shadowColor が empty ならば、スタックの shadowColor を継承する。もしオブジェクトのカラープロパティが empty でないなら、上位のオブジェクト階層から継承するであろう値を上書きすることになる。
The effective keyword:
effective キーワード:
実際にオブジェクトが使っているカラー(他のオブジェクトから継承している値も含む)を得るには、effective キーワードを使いなさい。このキーワードを使うと、カラープロパティが empty であっても、実際に使われているカラーの値を得ることが出来る。
例えば下の文は、フィールド自身のカラープロパティであるか、そのオーナーのプロパティであるかに関わらず、必要ならオブジェクト階層を辿って、フィールドの backgroundColor を探し当てる。
get the effective backgroundColor of field "My Field"The hiliteColor property:
the mouseColorそれから色を調べたい場所にマウスポインタを移動して、Return キーを押す。