UI_Control ¶
<task pointer> = UI_Control( "<onClick callback>", "<onDrag callback>") function <onClick callback>(x, y) end function <onDrag callback>(mode, x, y, mvX, mvY) end
引数 ¶
- <onClick callback> クリック動作時に呼ばれるコールバック関数の名称。関数は以下の二つの引数を持つ。
- x,y クリックされた座標
- <onDrag callback> ドラッグ動作時に呼ばれるコールバック関数の名称。関数は以下の5つの引数を持つ。
- mode ドラッグ中もしくはリリース動作を表す値のいずれか
- PAD_ITEM_DRAG ドラッグ中
- PAD_ITEM_RELEASE リリース]
- x, y 現在の座標
- mvX, mvY タップ座標からの移動量
- mode ドラッグ中もしくはリリース動作を表す値のいずれか
戻り値 ¶
- <task pointer> 生成された UI_Control タスクのポインタ
解説 ¶
高レベルの入力ゼスチャーを解釈し、それぞれに対応したコールバックを呼ぶ。 ピンチイン/アウト、ローテーション、ダブルクリック、ロングタップ(長押し)に対応。
また、モーダルスタックの影響を受ける。
コマンド ¶
- UI_CONTROL_ON_PINCH
-
ピンチイン/アウトおよびローテーション動作の値を取得するコールバック関数を指定する。
- UI_CONTROL_ON_PINCH
pCtrl = UI_Control(...) sysCommand(pCtrl, UI_CONTROL_ON_PINCH, "<onPinch callback>") function <onPinch callback>( mode, pinch, rot ) end mode PAD_ITEM_DRAG / PAD_ITEM_RELEASE のどちらか pinch 最初に指を置いた2点間の距離に対する、現在の2点間の距離の比率 rot 最初に指を置いた2点間を結ぶ線分に対する、現在の2点間を結ぶ線分の角度
- UI_CONTROL_ON_PINCH
- UI_CONTROL_ON_DBLCLICK
-
ダブルクリック動作の値を取得するコールバック関数を指定する。
- UI_CONTROL_ON_DBLCLICK
pCtrl = UI_Control(...) sysCommand(pCtrl, UI_CONTROL_ON_DBLCLICK, "<onDblClick callback>") function <onDblClick callback>( x, y ) end x,y ダブルクリック動作が行われた座標
- UI_CONTROL_ON_DBLCLICK
- UI_CONTROL_ON_LONGTAP
-
ロングタップ(長押し)動作の値を取得するコールバック関数を指定する。
ロングタップ動作の通知は、ドラッグやリリースなどが行われるまで毎フレーム行われる。
- UI_CONTROL_ON_LONGTAP
pCtrl = UI_Control(...) sysCommand(pCtrl, UI_CONTROL_ON_LONGTAP, "<onLongTap callback>") function <onLongTap callback>( t, x, y ) end t タップ時点からの経過時間(ミリ秒) x,y ダブルクリック動作が行われた座標
- UI_CONTROL_ON_LONGTAP
- UI_CONTROL_SET_GROUP
-
UI_ControlをUI_FormやUI_Listと同様グループに所属させる。
指定されたグループの他のフォーム等が操作中、UI_Controlの各操作におけるコールバックは呼ばれなくなる。また、後述のUI_CONTROL_LOCKで同グループの他のフォーム等の操作を禁止することができる。
- UI_CONTROL_SET_GROUP
pCtrl = UI_Control(...) sysCommand(pCtrl, UI_CONTROL_SET_GROUP, "<group-name>")
- UI_CONTROL_SET_GROUP
- UI_CONTROL_SET_MASK
-
UI_Controlが呼び出すcallback各種の許可/禁止フラグを設定する。
指定はビットマスクで行い、対応するビットが 1 のコールバックは呼び出しが禁止される。
- UI_CONTROL_SET_MASK
pCtrl = UI_Control(...) sysCommand(pCtrl, UI_CONTROL_SET_MASK, <bit-mask>) <bit-mask> に指定できるマスクビット定数 CTRLMASK_CLICK クリック CTRLMASK_DRAG ドラッグ CTRLMASK_PINCH ピンチイン/アウト/ローテーション CTRLMASK_DBLCLICK ダブルクリック CTRLMASK_LONGTAP ロングタップ
- UI_CONTROL_SET_MASK