スタイルのプロパティー link

スタイルプロパティーは、 styles による displayable 表示方法の制御に関係しています。スタイルプロパティーは、接頭辞を付けずに displayable のすべての状態に対しても、接頭辞を付けて特定の状態だけに対してもプロパティーを適用できます。

スタイルプロパティーの接頭辞 link

スタイルプロパティーに接頭辞を使うとフォーカスや選択肢の状態に応じて displayable が見た目を変更できるようになります。例えばボタンの上にマウスがある時に色を変更したり、ボタンの状態によって現在選択されているものを表せます。

displayable が取り得る状態は5つあります。

insensitive

ユーザーが displayable を操作できない時に使用されます。

idle

displayable がフォーカスも選択もされていない時に使用されます。

hover

displayable がフォーカスされて選択されていない時に使用されます。

selected_idle

displayable がフォーカスされずに選択されている時に使用されます。

selected_hover

displayable がフォーカスされ、かつ選択されている時に使用されます。

ボタンとバーの displayable (及びその類のもの) は、自身の状態と子要素の状態をイベントに応じて更新します。例えばユーザーが選択されていないボタンの上でマウスを通過させた時、ボタンとその子要素は hover 状態になります。

スタイルプロパティーの接頭辞により、異なる状態に対してそれぞれのスタイルプロパティーを設定できます。包含セットアップのシステムがあるため、接頭辞によって1つ以上の状態に対してプロパティーをまとめて設定できます。

包含関係は:

接頭辞

接頭辞に含まれる状態

(接頭辞なし)

insensitive, idle, hover, selected_idle, selected_hover

idle_

idle, selected_idle

hover_

hover, selected_hover

selected_

selected_idle, selected_hover

insensitive_

insensitive

selected_idle_

selected_idle

selected_hover_

selected_hover

selected_insensitive_

selected_insensitive

テキストボタンを使ってこれを実演します。テキストボタンには2つのスタイルがあり、 button がボタン本体に、 button_text がボタン中のテキストに対応します。 background スタイルプロパティーによってボタンの背景を設定するとともに、 color プロパティーによってテキストの色を設定します。:

# The button background is gray when insensitive, light
# blue when hovered, and dark blue otherwise.
style button:
    background "#006"
    insensitive_background "#444"
    hover_background "#00a"

# The button text is yellow when selected, and white
# otherwise.
style button_text:
    color "#fff"
    selected_color "#ff0"

スタイルプロパティーの値 link

それぞれのスタイルプロパティーには特定の種類のデータを設定する必要があります。これらの多くは Python の標準的な型ですが、一部は独自のものです。スタイルプロパティーに設定できる独自の値について説明します。

position link

position はそれを含む領域 (場所とサイズでは領域は、その displayable を含むレイアウトがあればそのレイアウトによって、そうでなければ画面によって指定されます。 anchor では領域は displayable そのものの大きさとなります) の左上端からの相対的な位置を指定するために使用されます。

position の値は値の型によって解釈のされ方が異なります:

int (例 0, 1, 37, 42)

整数は、領域の左端または上端からのピクセル数として解釈されます。

float (例 0.0, 0.5, 1.0)

浮動小数点数は、領域に対する割合として解釈されます。例えば 0.5 は領域の両端に対する半分の点となり、また 1.0 は右端または下端となります。

absolute(value, /) link

例えば absolute(100.25)ab の両方が float または int のときの absolute(a+b) です。

absolute はスクリーンの左端または上端からのピクセル数として解釈され、サブピクセルの正確なレンダリングに使用します。

position(absolute, relative, /) link

例えば position(-10, .5) です。

上述のように絶対位置として扱われる absolute と相対位置として扱われる relative の組み合わせです。二つの要素が一緒に足されて最終的な座標に成ります。

両方のパラメーターが常に渡されるべきであり、そうでなければ未定義の結果に成ります。

displayable link

どのような displayable でもかまいません。 displayable に "[prefix_]" 置換文が含まれていれば後述するように接頭辞検索が処理されます。

color link

Ren'Pyにおける色は、先頭のハッシュマーク(#)と、それに続く3つか4つの16進数の文字列によって表現され、3つか4つの要素のそれぞれは、1桁か2桁の16進数の色コードとなっています。

16進数が3つの場合、それぞれの成分は赤、緑、青を意味します。16進数が4つの場合、それぞれの成分は赤、緑、青、アルファを意味します。例 :

  • "#f00""#ff0000" は不透明の赤色を意味します。

  • "#0f08"#00ff0080" は半透明の緑色を意味します。

3つの16進数で表される色は、HTMLで使われているものと同じです。

色は4つの要素のタプルとして表すこともでき、4つの要素は0から255までの整数となります。それぞれの要素は、赤、緑、青、アルファの順です。

  • (0, 0, 255, 255) は不透明の青色を意味します。

最後にカラーは Color クラスのインスタンスにもできます。

すべてのスタイルプロパティーの一覧 link

スタイルプロパティーによって様々な displayable の外観を制御できます。すべてのスタイルプロパティーがすべての displayable に適用できるわけではないため、これらを分類しました。

位置スタイルプロパティー link

これらのプロパティーはすべての displayable に適用され、多くは layout によって確保される領域の内部、または layout の内部でない場合は screen 上で displayable の位置を制御します。

alt -  string or None link

セルフボイシングが有効なときに displayable に使用される代替テキスト。詳細は セルフボイシング の節を参照してください。

xpos -  position link

displayable が含まれている領域の左端からの相対的な位置。

ypos -  position link

displayable が含まれている領域の左端からの相対的な位置。

pos -  tuple of (position, position) link

タプルの第1要素に xpos を設定し、タプルの第2要素に ypos を設定するのに等しいです。

xanchor -  position link

displayable の左端からの、アンカーの相対的な位置。

yanchor -  position link

displayable の右端からの、アンカーの相対的な位置。

displayable が Text() であるとき、このプロパティーは特殊な値を受け取ります。 renpy.BASELINE に設定されると、アンカーはテキストの最初の行のベースラインに設定されます。

anchor -  tuple of (position, position) link

タプルの第1要素に xanchor を設定し、タプルの第2要素に yanchor を設定するのに等しいです。

xalign -  float link

xpos と xanchor に同じ値を設定するのに等しいです。これはスクリーン上の相対的な位置に displayable を設置するときに効果があり、0.0 で左端、0.5 で中央、1.0 で右端となります。

yalign -  float link

ypos と yanchor に同じ値を設定するのに等しいです。これはスクリーン上の相対的な位置に displayable を設置するときに効果があり、0.0 で上端、0.5 で中央、1.0 で下端となります。

align -  tuple of (float, float) link

タプルの第1要素に xalign を設定し、タプルの第2要素に yalign を設定するのに等しいです。

xcenter -  position link

xpos をこのプロパティーの値に、xanchor を 0.5 に設定するに等しいです。

ycenter -  position link

ypos にこのプロパティーの値を、yanchor に 0.5 を設定するに等しいです。

xycenter -  tuple of (position, position) link

タプルの第1要素に xcenter を設定し、タプルの第2要素に ycenter を設定するのに等しいです。

xoffset -  int link

xpos と xalign から計算される水平方向の位置に追加されるピクセル数を返します。

yoffset -  int link

ypos と yalign から計算される垂直方向の位置に追加されるピクセル数を返します。

offset -  tuple of (int, int) link

xpos をタプルの第1要素に、 yos を第2要素に設定するに等しいです。

xmaximum -  int link

displayable の水平方向の大きさの最大値をピクセル数で指定します。

ymaximum -  int link

displayable の垂直方向の大きさの最大値をピクセル数で指定します。

maximum -  tuple of (int, int) link

タプルの第1要素に xmaximum を設定し、第2要素に ymaximum を設定するのに等しいです。

xminimum -  int link

displayable の幅の最小値をピクセル数で設定します。displayable の大きさが変更可能なときのみ動作します。

yminimum -  int link

displayable の高さの最小値をピクセル数で設定します。displayable の大きさが変更可能なときのみ動作します。

minimum -  tuple of (int, int) link

タプルの第1要素に xminimum を設定し、第2要素に yminimum を設定するのに等しいです。

xsize -  int or float link

xminimum と xmaximum に同じ値を設定するに等しいです。この結果として、displayable の幅が設定されます。

ysize -  int or float link

yminimum と ymaximum に同じ値を設定するに等しいです。この結果として、displayable の高さが設定されます。値が浮動小数なら内包する領域に対して相対的なものです。

xysize -  tuple of (int or float, int or float) link

タプルの第1要素に xsize を設定し、タプルの第2要素に ysize を設定するのに等しいです。

xfill -  boolean link

True のとき、displayable が水平方向の利用可能なすべての空きスペースに拡張されます。True でない場合は、子要素を含むのに必要十分な大きさになります。

displayable の大きさが変更可能なときのみ動作します。

yfill -  boolean link

True のとき、displayable が垂直方向の利用可能なすべての空きスペースに拡張されます。True でない場合は、子要素を含むのに必要十分な大きさになります。

displayable の大きさが変更可能なときのみ動作します。

area -  tuple of (int, int, int, int) link

タプルは (xpos, ypos, width, height) と解釈されます。displayable の左上角の位置が xposypos に、大きさが widthheight になるように設定を試みます。

xpos、ypos、xanchor、yanchor、xmaximum、ymaximum、xminimum、yminimum、xfill、yfill プロパティーを適切な値に設定してこれを行います。

これはすべての displayable や layout で動作するわけではありません。

mipmap -  boolean or None link

この displayable に作成されたテクスチャがミップマップされるか制御します。 Text() および Movie(), ディゾルブを含む特定の Displayable にのみ適用されます。

None ならデフォルト値は config.mipmap_textconfig.mipmap_movies, config.mipmap_dissolves のような設定変数から所得されます。

テキストスタイルプロパティー link

antialias -  boolean link

True のとき(既定値)、TrueType フォントのテキストがアンチエイリアスされてレンダリングされます。

adjust_spacing -  boolean or str link

True なら Ren'Py は描画するテキストの解像度サイズを仮想解像度で描画されるテキストのスペースに合せて、フレームとテキストを含むコンテナのサイズが変更されないことを保証します。

False ならテキストはサイズに応じて変更されませんが、どんなウィンドウサイズに対してもテキストをレイアウトするのに十分なスペースを確保することはクリエーターの責任です。

文字列 "horizontal" に設定されると、テキストは水平方向のみで調節されます。文字列 "verticall" に設定されると、テキストは垂直方向のみで調節されます。

デフォルトでほとんどのテキストに対して True になりますが、 input のテキストに対しては False です。

altruby_style -  style or None link

None を設定するか、ルビテキストに使用されるスタイルオブジェクトを設定します。

axis -  dict or None link

これにより、 variable font の軸を設定できます。None でない場合、これは軸名に対する値の辞書でなければなりません。例

style default:
    font "VariableFont.ttf"
    axis { "weight" : 500, "width" : 95 }
black_color -  color link

画像ベースのフォントをレンダリングする際、黒がこの色にマッピングされます。TrueType フォントには影響しません。

これはルビ/ふりがなのテキストでは、親テキストと同じ色を使用するために None にするでしょう。

bold -  boolean link

True のとき、フォントを太字でレンダリングします。TrueType フォントでは、通常はフォントの太さが全体的に増えるようになります。このプロパティーと config.font_replacement_map を使ってフォントを再マップすることもできます。

caret -  displayable or None link

None を設定するか、displayable を設定します。これは入力ウィジェットでテキスト末尾のカーソルとして使用されます。None の場合は1ピクセルの幅の線がカーソルとして使用されます。

color -  color link

テキストをレンダリングするときの色です。TrueType フォントを使用するときは、フォントはこの色で描画されます。画像ベースのフォントを使用するときは、白色がこの色にマッピングされます。

これはルビ/ふりがなのテキストでは、親テキストと同じ色を使用するために None にするでしょう。

emoji_font -  string link

絵文字のレンダリングに使用されるフォントです。 1 つ以上の絵文字に対して、 font テキストタグが使用されていない場合に自動的に使用されます。

first_indent -  int link

段落のテキストの1行目のインデント量を、ピクセル数で指定します。

font -  string link

テキストのレンダリングに使用されるフォントの名前の文字列です。

TrueType フォントでは、これは通常フォントが含まれたファイルの名前となります (例: "DejaVuSans.ttf")。フォント集合の2つ目以降を選択するには、数字と記号を頭に付けます (例: "0@font.ttc" もしくは "1@font.ttc")。画像ベースのフォントでは、フォント登録時に使用された名前にする必要があります。

hinting -  str link

フォントのヒンティングを制御します。これは以下の文字列の一つであるべきです。 :

"auto"

デフォルトで、フリータイプのオートヒンティングを強制的に使用します。

"auto-light"

垂直方向のヒンティングのみ使用される light モードのフリータイプのオートヒンティングを強制的に使用します。

"bytecode"

フォントのバイトコードのヒンティング情報を使用します。

"none"

フォントのヒンティングしません。

これは True になる場合もあり、その場合値は config.font_hinting から検索されます。

これは、テキスト中のハイパーリンクに関連する3つの関数のタプルです。

1つ目のアイテムはハイパーリンクのスタイルの関数です。単一のハイパーリンクの引数で呼び出されたとき、例えば style.hyperlink_text のようなハイパーリンクで使用するスタイルを返す必要があります。スタイルオブジェクトは文字列でないことに注意して下さい。

2つ目の引数はハイパーリンクがクリックされた時の関数です。この関数はハイパーリンクがユーザーにクリックされた時に呼び出されます。これが None 以外の値を返した場合、処理全体がその値を返します。

3つ目のアイテムはハイパーリンクのフォーカスの関数です。これはハイパーリンクにフォーカスが当てらてた時にハイパーリンクの引数とともに呼び出され、フォーカスを失った時は None を引数にして呼び出されます。これが None 以外の値を返した場合、インタラクションはその値を返します。

instance -  string or None link

variable font を使用する場合、使用するフォントのインスタンスの文字列にできます。例えば、フォントに "Bold" インスタンスがある場合、これを "Bold" に設定してそのインスタンスを使用できます。

italic -  boolean link

True のとき、フォントを斜字でレンダリングします。TrueType フォントでは、通常はフォントが全体的の傾くようになります。このプロパティーと config.font_replacement_map を使ってフォントを再マップすることもできます。

justify -  boolean link

True のとき、単語間に空白が追加で挿入され、各行の左右の余白が等しくなります。これは段落の最終行には適用されません。

kerning -  float link

カーニングの調整で、各文字の間に追加されるスペースのピクセル数です(これを負の値にしてスペースを削除することもできます)。

language -  string link

テキストを行へ分割したり、その他のテキスト変換に対して使用する言語ファミリーを制御します。設定可能な値は次の通りです :

"unicode" (既定値)

Unicode の改行アルゴリズムを用い、ほとんどの言語に適しています。

"japanese-strict"

日本語テキストの「厳密な」書き方です。小さい仮名文字と長音符の前では改行をしません。

"japanese-normal"

日本語テキストの「一般的な」書き方です。小さい仮名文字、長音符、いくつかのハイフンの前での改行を許可します。

"japanese-loose"

日本語テキストの「ゆるい」書き方です。小さい仮名文字、長音符、反復記号、分割できない文字、リーダー、接頭辞、接尾辞の前での改行を許可します。

"korean-with-spaces"

空白で区切られたハングル文字に使用します。隣接するハングルで改行されることを防ぎます。

"thaic90"

C90エンコーディングに対応したフォントで表示される タイ語テキスト に使用します。これは、文字のグループを1つのグリフにまとめるて母音やトーンマークをよりよく表示できるようにします。改行はユニコードアルゴリズムを使用します。

"western"

空白以外の場所では改行をしません。ほとんどの言語に適しています。

"anywhere"

ルビ以外のどこででも改行します。

3つの日本語の改行モードは CSS3 text module から引用しました。

layout -  string link

単語が行にどのように割り当てられるかを制御します。設定可能な値は:

"tex" (既定値)

Knuth-Plass の改行アルゴリズムを使用し、最後の行以外のすべての行の長さの違いを最小限に抑えるようにします。

"subtitle"

Knuth-Plass の改行アルゴリズムを使用しますが、すべての行の長さを揃えるようにします。

"greedy"

単語が入るスペースが無いときだけ改行されます。

"nobreak"

改行されません。

line_leading -  int link

各行の上に含められるスペースのピクセル数。

line_overlap_split -  int link

低速テキストモードで2つの行が重なるとき、重なったピクセルのうちこの数の分が一行目に割り当てられます。一行目の文字の下が欠ける場合に増やしてください。

line_spacing -  int link

各行の下に含められるスペースのピクセル数。

min_width -  int link

各行の最小幅を設定します。行がこの値よりも短い場合は、 textalign によって指定された位置に余白を作り、この長さに調整されます。

newline_indent -  boolean link

True のとき、文字列の最初の行が first_indent で設定された分だけインデントされます。それ以外の場合は rest_indent が使用されます。

outlines -  list of tuple of (int, color, int, int) link

これはテキストの後ろに描画される輪郭のリストです。それぞれのタプルで輪郭を指定すると、輪郭が後ろから前にかけて描画されます。

リストには (size, color, xoffset, yoffset) というタプルを含めます。 size にはフォントを広げる量をピクセル数で、 color には輪郭の色を、 xoffsetyoffset には輪郭をずらす量をピクセル数で指定します。

外枠は機能的にはフォントに影を落とすためにも使用できます。これを行うには、サイズを0にしてオフセットを0以外にします。

デフォルトでは、 sizexoffset, yoffset はテキストと共に拡大縮小されます。 absolute 型が指定されると、拡大縮小されません。以下のようなコードは

style default:
    outlines [ (absolute(1), "#000", absolute(0), absolute(0)) ]

常に 1 ピクセルの幅を生成します。

アウトラインは TrueType フォントでのみ動作します。アウトラインはテキスト displayable 全体に適用されるとき動作します。ハイパーリンクやテキストタグ、その他のテキストの一部にのみ適用される物に適用されても動作しません。

outline_scaling -  string link

アウトラインのサイズやオフセットがウィンドウのスケーリング時にどうスケーリングされるかを決めます。

"linear"

デフォルトは厚いアウトラインのテキストに最適です。ウィンドウのスケーリング係数がアウトラインサイズに適用されてから整数に丸められます。これにより厚いアウトラインはよりよく見えますが、同じような厚みの同心円状のアウトラインは判別できなくなることがあります。

結果の幅は常に最低1 pixelはあります。

"step"

薄いアウトラインとテキストには複数のアウトラインの使用が最適です。ウィンドウスケーリング係数は整数に丸められてからアウトラインサイズとオフセットに適用されます。これは複数のアウトラインが同様にスケーリングされるようにして互いを覆い隠すリスクをなくしますが、ゲームウィンドウのサイズによって外観が異なることになります。

windowのスケーリング係数は、常に1以上です。

prefer_emoji -  boolean link

ユニコード文字の中には、絵文字表示と非絵文字表示の両方を持つものがあります。このスタイル プロパティーは、そのような文字に絵文字表現を与えるかどうかを選択します。

rest_indent -  int link

段落の2行目以降のインデント量をピクセル数で指定します。

ruby_line_leading -  int link

ruby text を含む各行の上に含める間隔のピクセル数です。これは line_leading に追加されます。

ruby_style -  style or None link

None を設定するか、スタイルオブジェクトを設定します。これはルビテキストに使用されるスタイルです。

shaper -  "harfbuzz" or "freetype". link

テキストに使用するシェイパーです。これは "harfbuzz" か "freetype" のどちらかでなければなりません。harfbuzz シェイプは "freetype" に対してより高機能ですが、 Ren'Py 8 でのみ動作します。

シェイパーは一連の文字を受け取ると、一連の配置されたグリフに変換します。これは合字, インド/ブラーフミー言語, 絵文字の結合などに使われます。

size -  int link

スクリーン上のフォントの大きさです。ピクセル数として指定しますが、フォントファイルではこの値について別の解釈をするかもしれません。

slow_abortable -  boolean link

True なら、テキストオブジェクトへのクリックで表示中のテキストは停止し、テキストの残りが瞬時に表示されます。

slow_cps -  int or True link

数値の場合、ここで指定された文字数を1秒間に表示します。True のときは、"Text Speed" preference の速度でテキストを表示します。

slow_cps_multiplier -  float link

テキスト速度にこの数値が掛けられます。通常よりも速い速度で話すキャラクターがいるときに使用できます。

strikethrough -  boolean link

True のとき、テキストの中央に線が描画されます。

textalign -  float link

これは行がテキスト displayable の幅よりも短い場合に使用します。これによってテキストの左側に追加のスペースをどの程度入れるかを指定します(つまりテキストの位置合わせです)。

0.0 で左寄せのテキスト、0.5 で中央揃えのテキスト、1.0 で右寄せのテキストとなります。

underline -  boolean link

True のとき、テキストに下線が追加されます。

vertical -  boolean link

True のとき、テキストが縦書きでレンダリングされます。

捕捉が複数あります :

  • shaper が "freetype" なら縦方向のレイアウトには不具合が出るでしょう。

  • Harfbuzz は、水平方向の form がフォント内に存在する場合、それらの form を垂直方向の form に変換します。

  • 文字は上から下、右から左にレイアウトされますが回転はしません。つまり水平方向の文字は他の文字の上に表示されます。

  • 縦書きのテキスト情報がフォントに存在しない場合は合成されますが、正しくない可能性があります。一般に非表意文字テキストよりも表意文字テキストでよく動作します。

ウィンドウスタイルプロパティー link

ウィンドウプロパティーは、ウィンドウ、フレーム、ボタンの外観を指定するときに使用します。 マージンスタイルプロパティー もこのグループの一部です。

background -  displayable or None link

ウィンドウの背景に使用される displayable です。しばしばここに Frame() を指定して、ウィンドウのサイズに合わせてサイズを変更できるようにします。

None のときは背景が描画されませんが、他のプロパティーの機能によって背景があるようにも見せられます。

foreground -  displayable or None link

None でない場合、ウィンドウの内容に重ねてこの displayable が描画されます。

left_padding -  int link

背景とウィンドウ内容の左端との間のスペース量を、ピクセル数で指定します。

right_padding -  int link

背景とウィンドウ内容の右端との間のスペース量を、ピクセル数で指定します。

xpadding -  int link

left_padding と right_padding に同じ値を設定するに等しいです。

top_padding -  int link

背景とウィンドウ内容の上端との間のスペースの量を、ピクセル数で指定します。

bottom_padding -  int link

背景とウィンドウ内容の下端との間のスペースの量を、ピクセル数で指定します。

ypadding -  int link

top_padding と bottom_padding に同じ値を設定するに等しいです。

padding -  tuple link

二要素のタプルの指定は、 xpadding と yapadding にその二つの要素を設定するに等しいです。四要素のタプルの指定は、 left_padding と top_padding, right_padding, bottom_padding にその四つの要素を設定するに等しいです。

size_group -  string or None link

None を設定するか、文字列を設定します。Ren'Py は、すべての同じ size_group のウィンドウを同じ大きさでレンダリングします。

modal -  boolean or callable link

True ならそのウィンドウはモーダルとして扱われ、そのウィンドウやボタン内にマウス全体があるならレイヤー間をイベントは伝播しません。 False なら、ウィンドウはモーダルではありません。

これは呼び出し可能な関数にもできます。そうであればその関数は (ev, x, y, w, h) を引数に呼び出されます。ここで、 ev は pygame event またはNone であり、代替マウスイベントを表します。 x, y はそのウィンドウに対する相対座標で、 wh はウィンドウの高さと幅です。関数が True を返せば、そのウィンドウはモーダルとして扱われ、 False ならモーダルになりません。

ボタンスタイルプロパティー link

child -  displayable or None link

None を設定するか、ボタンの子要素を置き換える displayable を設定します。例えば、insensitive_child を使うと無効なボタンの内容を画像によって置き換えてボタンがロックされていると示せます。

hover_sound -  string link

ボタンがフォーカスされた時に再生されるサウンド。

activate_sound -  string link

そのボタンがアクティベート(クリック)された時に再生されるサウンド。これはバーまたは drab がアクティベートされたときも再生されます。

mouse -  string link

ボタンがフォーカスされた時に使われるマウスのスタイルです。これは config.mouse の1スタイルでなければなりません。

focus_mask -  multiple link

ボタンのどの部分をフォーカスでき、クリックできるかを制御するためのマスクです。このプロパティーの型によって、解釈のされ方が決まります。

Displayable

displayable の透明以外の領域でボタンがフォーカスされるようになります。

True

ボタン自身が displayable として使用されます (つまり、透明以外の領域でボタンがフォーカスされるようになります)。

callable

displayable 以外の (関数やメソッド、__call__ メソッドを持つオブジェクトのような) callableが与えられた場合、その関数は2つの引数、その displayable の左上角からの x, y 座標で呼び出されます。

その関数が 2 つの引数で呼び出されて callable を返した場合、その callable は 4 つの引数、その Displayable の 左上隅からの x と y 座標、および幅と高さ で呼び出されます。

その関数が True を返せばその Displayable はフォーカスされます。

None

None が与えられた場合、ボタン全体をフォーカスできます。

keyboard_focus -  boolean link

デフォルトは True で、フォーカス可能ならこのボタンはキーボードフォーカスシステムを使用してフォーカスを得られます。 False ならキーボードフォーカスシステムはこのボタンをスキップします ( キーボードフォーカスシステムはゲームパッドのようなキーボードやキーボード風なデバイスで使用されます )。

keyboard_focus_insets -  (int, int, int, int) or None link

None または 4 つの整数のタプルであるべきです。4つの数値はキーボードフォーカスに使われるとき、フォーカス矩形の左、上、右、下辺を縮小するのに使われるピクセル数です。

これはボタンが重なっているときに有用です。キーボードフォーカスのアルゴリズムはボタンが重なっていると機能しないので、これにより内部的にボタンのサイズを縮小してフォーカスが機能するようにします。

key_events -  boolean link

True ならキーボードから生成されたイベントがこのボタンの子に渡されます。False ならそれらのイベントは渡されません。デフォルトのスタイルでは、ボタンにフォーカスがあるあいだは True なければ False になります。

True なら ボタンにフォーカスがないときでもボタン内のインプットにキーボードイベントが渡されます。

バースタイルプロパティー link

バーには左右の枠がともに描画され、クリックしてバーを少し移動出来ます。残りのスペースはバーの値を変更できる部分で、左右の量の比はバーの値に比例し、その値は可変範囲の分数となります。

つまみ (thumb) はバーの中央部分の領域で、ユーザーはここをドラッグできます。

バーが描画される時、つまみの影が最初に描画されます。次にバーの上下左右側が描画され、最後にバーそのものが描画されます。

上述のバーの側面は bar_vertical プロパティーによって変化するので注意して下さい。これが True のときは上下側、それ以外のときは左右側になります。

bar_vertical -  boolean link

True のとき、バーは縦方向になります。False のときは、横方向になります。

bar_invert -  boolean link

True のとき、バーの値は右/上側が基準となり、それ以外のときは左/下側が基準となります。

bar_resizing -  boolean link

True のとき、バーの側をリサイズします。False のときは、バーの側面をフルサイズでレンダリングし、それを切り抜きます。

left_gutter -  int link

バーの左側の枠の大きさを、ピクセル数で指定します。

right_gutter -  int link

バーの右側の枠の大きさを、ピクセル数で指定します。

top_gutter -  int link

バーの上側の枠の大きさを、ピクセル数で指定します。

bottom_gutter -  int link

バーの下側の枠の大きさを、ピクセル数で指定します。

left_bar -  displayable link

バーの左側に使用される displayable。

right_bar -  displayable link

バーの右側に使用される displayable。

top_bar -  displayable link

バーの上側に使用される displayable。

bottom_bar -  displayable link

バーの下側に使用される displayable。

base_bar -  displayable link

left_bar/right_bar や top_bar/bottom_bar に使用される displayable です( これは thumb と共にスライダーやスクロールバーの作成にも使えます)。

thumb -  displayable or None link

None を設定するか、バーの両側の境目に描かれる displayable を設定します。

thumb_shadow -  displayable or None link

None を設定するか、バーの両側の境目に描かれる displayable を設定します。

thumb_offset -  int link

つまみがバーをはみ出すピクセル数での量です。バーの左右が崩れないために、これをピクセル数でつまみの半分に設定しましょう。

mouse -  string link

ボタンがフォーカスされた時に使われるマウスのスタイルです。これは config.mouse の1スタイルでなければなりません。

unscrollable -  string or None link

バーがスクロール不能な時の挙動を制御します(範囲が0に設定されていて、ビューポートが自身よりも小さい displayable を含んでいる場合に限る)。設定可能な値は3つあります:

None

バーを通常通りレンダリングします。

"insensitive"

バーを無効な状態でレンダリングします。これはバーのスタイルを変更して使用不能を反映できるようにします。

"hide"

バーがまったくレンダリングされません。スペースはバーのために確保されますが、そのスペースの箇所には何も描画されません。

keyboard_focus -  boolean link

デフォルトは True で、フォーカス可能ならこのボタンはキーボードフォーカスシステムを使用してフォーカスを得られます。 False ならキーボードフォーカスシステムはこのボタンをスキップします ( キーボードフォーカスシステムはジョイスティックのようなキーボードやキーボード風なデバイスで使用されます )。

ボックススタイルプロパティー link

これらは、水平または垂直にボックスをレイアウトするときに使用します。

spacing -  int link

ボックス内の要素間のスペースをピクセル数で指定します。

first_spacing -  int link

None を設定するか、ボックス内の1つ目の要素と2つ目の要素の間のスペースを、ピクセル数で設定します。これは、spacing プロパティーを上書きします。

box_reverse -  boolean link

True のとき、ボックス内のアイテムの配置が逆転します。これが True のとき、hbox は右から左に埋められ、vbox は下から上に埋められます。既定値は False です。

box_wrap -  boolean link

True のとき、ボックスは行や列の終端に達すると折り返されます。False (既定) のときは、行の終端を超えてボックスが配置されます。

box_wrap_spacing -  int link

box_wrap が True なら、これは折り返された行や列の間隔になります( hbox なら行の縦間隔、 vboxなら列の横間隔)。

box_align -  float or None link

これにより、ボックス内の行または列のアライメントが決まります。デフォルトの 0.0 の場合、行は左揃え、列は上揃えになります。0.5 の場合、折り返された行が中央揃えになります。

これが None でない場合、xfill または yfill が設定されている場合、ボックスの主方向における子の位置を無視して、追加のスペースは子に提供されません。

order_reverse -  boolean link

デフォルトでは False で、ボックスの要素は最初の要素が二番目の下に来るように、一つ目から最後まで描写されます。 True ならこの順番は逆になり、ボックスの最初の要素はボックスの他のすべての要素の上に来ます。

box_justify -  boolean or "first" or "all" link

Falseでない場合、ボックスの内容は両端揃えされます - つまり、ボックス内のアイテムは、ボックスのサイズに均等に広がるようにそれらの間の間隔が調整されます。True を指定すると、最後の行を除くすべての行が両端揃えになります。"first" は、最初の行のみが両端揃えになります。「all」は、最後の行を含むすべての行を両端揃えにします。両端揃えの行は、1 行に項目が 1 つしかない場合を除き、box_align に従いません。

これが False でない場合、xfill または yfill が設定されている場合、ボックスの主方向における子の位置を無視して、追加のスペースは子に提供されません。

Grid スタイルプロパティー link

これらは grid と vgrid displayable に使用されるプロパティーです。 マージンスタイルプロパティー もこのグループと同じ形式です。

spacing -  int link

グリッドのセル間のスペースをピクセル数で指定します。

xspacing -  int or None link

ピクセル数で、grid のセル間を水平方向に空けます。これは None でなければ spacing プロパティーの設定を受け継ぎます。

yspacing -  int or None link

ピクセル数で、grid のセル間を垂直方向に空けます。これは None でなければ spacing プロパティーの設定を受け継ぎます。

Fixed スタイルプロパティー link

これらは fixed のレイアウトで使用されます。

fit_first -  boolean or "width" or "height" link

True なら fixed のサイズはその最初の要素のサイズと等しくなります。"width" なら幅のみが変更されます(fixed は画面を縦に満たします)。 同様に、"height" なら高さのみが変更されます。

子の position は fit_first のために無視されます。

xfit -  boolean link

True なら、 fixed layout のサイズは fix の最も右側の子の右側面に水平に合わされます。

yfit -  boolean link

True なら、 fixed layout のサイズは fix の最も下側の子の下端に縦に合わされます。

これらのプロパティが指定されると、 Fixed の子には、最初にその親から Fixed に与えられた完全な領域が提供されます。子のサイズと配置がわかったら、これらのプロパティを使用して Fixed のサイズを選択します。

マージンスタイルプロパティー link

マージンプロパティーでは displayable の周りに透明なスペースを追加します。主にグリッドの外側やウィンドウ、フレーム、ボタンで使用されます。

left_margin -  int link

displayableの左にある透明なスペースの量を、ピクセル数で指定します。

right_margin -  int link

displayableの右にある透明なスペースの量を、ピクセル数で指定します。

xmargin -  int link

left_margin と right_margin に同じ値を設定するに等しいです。

top_margin -  int link

displayableの上にある透明なスペースの量を、ピクセル数で指定します。

bottom_margin -  int link

displayableの下にある透明なスペースの量を、ピクセル数で指定します。

ymargin -  int link

top_margin と bottom_margin に同じ値を設定するに等しいです。

margin -  tuple link

二要素のタプルの指定は、 xmargin と ymargin にその二つの要素を設定するのと等価です。四要素のタプルの指定は、 left_margin と top_margin, right_margin, bottom_margin にその四つの要素を設定するに等しいです。