Panel Stack Splitter 解説

これ何?

Columns UI用のパネルを配置するためのsplitter。ボーダーなしや、パネルを重ねたりなど少しは自由度の高い設定が出来る。(Release.txtより)http://foo2k.chottu.net/で配布されている。

導入方法

foo_uie_panel_splitter.dllをcomponentsフォルダに入れ、Columns UIのLayoutタブでSplitter>Panel Stack Splitterを選択、配置する。

操作方法

設定

関数

OPTIONSで複数の設定を指定する場合、区切り文字には半角スペースを使う。

フォント

$font()

$font(name,size,OPTIONS)

フォント設定

描画

$drawstring()

$drawstring(text,x,y,W,H,r-g-b-a,RESERVED)

文字列描画関数

$drawrect()

$drawrect(x,y,w,h,R1-G1-B1-A1,R2-G2-B2-A2,OPTIONS)

矩形描画関数

$gradientrect()

$gradientrect(x,y,w,h,r1-g1-b1-a1,r2-g2-b2-a2,OPTIONS)

矩形内をグラデーションで塗りつぶす描画関数

$drawroundrect()

$drawroundrect(x,y,w,h,w2,h2,R1-G1-B1-A1,R2-G2-B2-A2,RESERVED)

角を丸めた矩形描画関数

$drawellipse()

$drawellipse(x,y,w,h,R1-G1-B1-A1,R2-G2-B2-A2,RESERVED)

画像

$imageabs()

$imageabs(x,y,w,h,path,OPTIONS,n)

座標(x,y)にサイズ(w,h)で pathで指定される画像を表示する。 最初にTFが評価されたとき(起動時など)のサイズ(w,h)にリサイズしてメモリ上にキャッシュする。 メモリ上にキャッシュした後で参照されなくなった画像は、速やかにメモリ上から削除される。 次に同じpathで画像が参照されれば、すべてメモリ上のリサイズ済み画像を使って表示する。 w,hが省略されると、オリジナルのサイズでキャッシュする。 メモリにキャッシュした画像については、$getimagewidth(path),$getimageheight(path)が使える。

この関数は、毎回画像ファイルをHDDに読みにいくことを回避したり、処理速度を上げる目的で使用する。 リサイズに関する処理が気にいらなければ、drawimageを使うこと。 普通はこっち使っておけば問題ないはず。

$imageabs_rc()

$imageabs_rc(rw,rh,srcx,srcy,srcw,srch,x,y,path,OPTIONS,n)

リサイズ後クリップして画像を表示する関数。pathで指定される画像をサイズ(rw,rh)にリサイズ後に、その領域(srcx,srcy,srcw,srch)を座標(x,y)にサイズ(srcw,srch)で 表示する。

$getimagewidth(), $getimageheight()

$getimagewidth(path), $getimageheight(path)

pathで指定される画像が$imageabs $imageabs_rcもしくは $imagebuttonでメモリにキャッシュ中の画像であれば、そのリサイズ済みの水平幅、垂直幅を返す。

$drawimage()

$drawimage(x,y,w,h,path,OPTIONS,n)

ファイル

$findfile()

$findfile(path)

path(ワイルドカード可)で指定されるファイルが存在すれば、最初に見つかったファイルのパスを返す。ファイルが無ければ何も返さない。

座標

$setparcentmode()

$setparcentmode(bx,by,bw,bh)

座標の指定モードを設定する。ウィンドウの表示領域が(0,0) ~ (%_width%, %_height%)であるところを、パーセント値指定モードでは、(0,0) ~ (100,100)にマッピングする。 x,y,w,h個別に設定できる。x,y,w,hのいずれかを引数にもつ関数すべてに影響を及ぼす。

ボタン

$textbutton()

$textbutton(x,y,w,h,text,mover_text,command,options1,options2)

特にCOMMANDとWINDOWSIZEが指定される場合、WINDOWSIZEの方がおそらく先に実行される。COMMAND,CONTEXT同士だと、順序が保証されるかも。

$imagebutton()

$imagebutton(x,y,w,h,path,mover_path,command,options1,options2)

画像ボタンを作る。Per Trackのみ有効。 Per Secondには記述しないこと。画像の内部処理としては$imageabsと扱いが等しく、メモリ上にキャッシュされる。 w,hが省略されると、pathで指定される画像のオリジナルサイズになる。commandはtextbuttonと共通。

GDI描画

GDIで描画する。 シンプルだけど処理が軽い場合がある。(特にWindowsXP)

$drawtext()

$drawtext(text,x,y,W,H,r-g-b,RESERVED)

文字列描画関数

$drawtextex()

$drawtextex(text,x,y,W,H,r-g-b,OPTIONS)

GDI文字列描画関数2

$gettextwidth()

$gettextwidth(text)

GDIで描画したときのテキストの水平幅を返す。

$gettextheight()

$gettextheight()

GDIで描画したときのテキストの垂直幅を返す。

$fillrect()

$fillrect(x,y,w,h,r-g-b,RESERVED)

矩形塗りつぶし関数

パネル操作

$showpanel(),$showpanel_c()

$showpanel(i,sh),$showpanel_c(caption,sh)

パネルの表示、非表示変更関数

$movepanel(),$movepanel_c()

$movepanel(i,x,y,w,h),$movepanel_c(caption,x,y,w,h) 

Force layout指定されたパネルのみ、座標(x,y) サイズ(w,h)に移動させる。

$getcaption()

$getcaption(i)

子パネルリストでのi番目パネルに設定されているキャプションを返す。

$isvisible_c()

$isvisible_c(caption)

パネルの表示状態を返す。(表示されていれば真、非表示なら偽)


Last-modified: 2016-05-07 (土) 12:27:09 (955d)