動作
多くのビューを開いている際、画面外にさっと掃くことができます。また、戻すこともできます。
バージョン
Curl Advanced UI 0.5
API説明
SweepWindowクラス
Viewを画面外に掃くクラスです。
パッケージ
COM.CURLAP.ADVANCED-UI.CONTAINERS
スーパークラス
View
コンストラクタ
default
キーワード引数(view-owner:#SweepWindow = null):親のView
キーワード引数(corner:String = “upper-left”):sweepする方向
キーワード引数(sweep-key:char = KeyPressValue.f12):sweepするボタン
メソッド
sweep(手動で子Viewを画面外へ掃き出す)
restore(掃き出した子Viewを画面内へ戻す)
notify(Viewの状態に応じて、sweepとrestoreを呼び出す)
利用方法
親のSweepWindowを作成し、その親のSweepWindowを引数にセットして掃き出したり・戻したりするView(SweepWindow )を作成する。
{curl 6.0 applet} {applet manifest = “manifest.mcurl”, {compiler-directives careful? = true} }
{import * from COM.CURLAP.ADVANCED-UI.CONTAINERS} {import * from COM.CURL.GUI.STYLED-CONTROLS} {install-style-sheet {manifest-url “file”, “DEFAULT-STYLE-SHEET”}}
{let pos_table:{Array-of Distance} = {{Array-of Distance} 150pt, 180pt, 333pt, 243pt, 355pt, 214pt, 70pt, 165pt } }
{let corner_table:{Array-of String} = {{Array-of String} “upper-left”, “upper-right”, “lower-left”, “lower-right” } }
{let cmb:CommandButton = {CommandButton label = “Make some window” } }
|| 親SweepWindowの作成 {let first-parent:SweepWindow = {SweepWindow width = 16cm, height = 12cm, halign = “center”, valign = “center”,
{VBox spacing = 40pt, halign = “center”, {bold Demo for Sweep Window}, cmb },
visibility = “normal”, {on WindowClose do {exit} } } }
{cmb.add-event-handler {on Action do {for i:int=0 to 3 step 1 do || 子SweepWindowの作成 let sw:SweepWindow = {SweepWindow view-owner = first-parent, || 親SweepWindow corner = corner_table[i rem 4], width = 12cm, height = 8cm, halign = “center”, valign = “center”, visibility = “normal” } {sw.add “Press F12 to sweep & restore”} {sw.set-position pos_table[i rem 4], pos_table[(i rem 4)*2+1]} } } }
{value first-parent}
|
サンプル
SweepWindowサンプル
関連Curl標準API
View