UI_VirtualDoc

(マニュアル作成中)

   <task pointer> = UI_VirtualDoc( <parent pointer>, <order>, <x>, <y>,
                                   <doc width>, <doc height>, <view width>, <view height>,
                                   <max command nums>, <vertical flag> [, "<callback>"] )

   function <drag callback>(<task pointer>, <type>, <tap-x>, <tap-y>, <move-x>, <move-y>)

   end

引数

  • <parent pointer> 親UIのポインタ
  • <order> 表示プライオリティ
  • <x>, <y> 表示座標
  • <doc width>, <doc height> 表示するドキュメントのサイズ
  • <view width>, <view height> 表示域のサイズ
  • <max command nums> 受付可能な描画コマンドの最大数
  • <vertical flag> trueで縦スクロールモード(falseで横スクロール)
  • <callback> Virtual Document上におけるポインティングデバイス操作のコールバック
  • <task pointer> コールバックを呼び出した UI_List タスクのポインタ
  • <type> タッチパネル操作の種類
  • <tap-x> 今回の操作が始まった時点におけるタップ位置x座標
  • <tap-y> 今回の操作が始まった時点におけるタップ位置y座標
  • <move-x> タップ位置から今回のイベントが検出された位置までのx方向差分
  • <move-y> タップ位置から今回のイベントが検出された位置までのy方向差分

戻り値

  • <task pointer> 生成された UI_VirtualDoc タスクのポインタ

解説

スクロール可能なドキュメント領域を生成する。 ドキュメントはviewのサイズでクリッピングされて表示される。

コマンド

UI_VDOC_CLEAR
VirtualDocumentのクリア色を指定する
  • UI_VDOC_CLEAR
       pVDoc = UI_VirtualDoc(...)
       sysCommand(pVDoc, UI_VDOC_CLEAR, <alpha>, <rgb>)
    
UI_VDOC_FONT
VirtualDocumentの指定したフォントインデックスに、フォント名とサイズを指定する。 以後、このフォントインデックスによる文字列描画はそのフォント/サイズで行われる。
  • UI_VDOC_FONT
       pVDoc = UI_VirtualDoc(...)
       sysCommand(pVDoc, UI_VDOC_FONT, <font index>, "<font name>", <font size>)
    
UI_VDOC_VIEWPOS
表示域から見えるドキュメントの位置を指定する。
  • UI_VDOC_VIEWPOS
       pVDoc = UI_VirtualDoc(...)
       sysCommand(pVDoc, UI_VDOC_VIEWPOS, <x>, <y>)
    
UI_VDOC_ALIGN
テキスト描画の際のalignと、必要な場合はセンタリングや右寄せに用いる幅のサイズを指定する。 UI_VDOC_DRAWで描画を行う以前に指定する必要がある。 <align-width>を指定しない場合、表示域のサイズ( = <doc width>)を指定したのと同義となる。
  • UI_VDOC_ALIGN
       pVDoc = UI_VirtualDoc(...)
       sysCommand(pVDoc, UI_VDOC_ALIGN, <align-mode> [ , <align-width> ] )
    
       <align-mode>に指定できる値
    
        VD_ALIGN_LEFT   左寄せ(デフォルト)
        VD_ALIGN_CENTER センタリング
        VD_ALIGN_RIGHT  右寄せ
    
UI_VDOC_DRAW
Virtual Document に対し描画命令を発行する。描画命令は配列で指定したものを一括で与える。 与えられる描画命令の数は、タスク起動時に<max command nums>で与えた値が上限となる。
  • UI_VDOC_DRAW
       pVDoc = UI_VirtualDoc(...)
       sysCommand(pVDoc, UI_VDOC_DRAW, <command list table>)
    
       <command list table> = {
         -- 指定の色で線分を描画する
         { VD_DRAW_LINE, <x0>, <y0>, <x1>, <y1>, <alpha>, <rgb> },
    
         -- 指定の色と、フォントインデックスで指定されたフォントで文字列を描画する
         { VD_DRAW_TEXT, <x>, <y>, "<string>", <alpha>, <rgb>, <font index> },
    
         -- 矩形を描画する。<fill>をtrueにすることで、矩形を塗りつぶす。
         { VD_FILL_RECT, <x>, <y>, <width>, <height>, <alpha>, <rgb>, <fill> },
    
         -- インラインイメージを描画する。
         { VD_DRAW_IMAG, <x>, <y>, "<image asset>", <alpha> },
       }