[BACK]Return to MGLAPI.doc CVS log [TXT][DIR] Up to [jp.NetBSD.org] / othersrc / mgl / mgl2

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /othersrc/mgl/mgl2/MGLAPI.doc between version 1.4 and 1.14

version 1.4, 2000/09/09 03:33:57 version 1.14, 2001/03/14 13:54:35
Line 16  int open_graph(void)
Line 16  int open_graph(void)
         SCREEN_HEIGHT=ysize          SCREEN_HEIGHT=ysize
   
                 希望する画面サイズの指定。                  希望する画面サイズの指定。
         mgl_apli_type = AT_MAIN or AT_MINIAPLI  
   
                 MGLサーバを使ったとき、どちらの領域を使うか指定します。          mgl_apli_type = AT_MAIN or AT_MINIAPLI or AT_WHOLE or AT_LMAIN
                           ( | AT_OPT_LOCK )
   
           MGLサーバを使ったとき、どのようなウインドーを生成するかの指定です。
   
           AT_MAIN はメイン画面を使うことを指定。( デフォルト )
           AT_MINIAPLI は、ミニアプリ画面を使うことを指定。
                   ( ミニアプリ画面がなければ、メイン画面を使用)
   
           AT_WHOLE は、画面全体 (ただし タスクバーは見えるようにする)を
           使う指定。
   
           AT_LMAIN は、メイン画面が2つの場合、両方の領域を使う指定。
                   ( 1 つの場合は、メイン画面を使用)
   
           上記の指定に加えて、AT_OPT_LOCK オプションを付けることができます。
           これは、スクリーン切替えの機能(F9,F10)を使えなくするオプションです。
           ( 当然ですが、起動したら自動的に FOCUS されます。)
           AT_WHOLE が指定された場合もしくは、AT_OPT_LOCK のみが指定された
           場合、タスクバーも無視して全画面の大きさのスクリーンになります。
   
           その他の指定
   
           AT_SCRSVR : いまのところ (AT_WHOLE | AT_OPT_LOCK) と同じ意味です。
   
           AT_TASKBAR: (予約)指定できません。
                   タスクバーのアイコンを画面とするアプリケーションを生成する
                   とき使う予定。
           AT_PALM: (予約)指定できません。
                   縦長のアプリケーションを生成するときに使う予定。
                   ( LMAIN と同じように、メイン画面が2つの場合のみ有効で
                     240x320 の画面を生成する予定 )
   
         戻り値          戻り値
   
         SCREEN_WIDTH          SCREEN_WIDTH
Line 369  void vk_detach(struct virtual_key *vk,in
Line 399  void vk_detach(struct virtual_key *vk,in
         clean_mode が true の場合は、再帰的に free します。          clean_mode が true の場合は、再帰的に free します。
   
   
   void mgl_set_key_mode(int mode)
   
   mode に MGL_SK_RAW を指定することで、get_key を RAW モード
   にすることができます。
   
   RAW モードでは、get_key() で得られる コードは、ASCII コードではなく、
   キーそのものに対応した 7bit の キーコード と 1bit の状態
   が 得られます。
   
   例:
           ESC を 押した -> 0x01
           ESC を 離した -> 0x81
   
   元のモードにするには、
   
   mode に MGL_SK_TRANSLATED
   
   を指定します。
   
   また、MGL_SK_EXTRANSLATED を指定すると、
   ASCII コード に モデファイヤー情報を付加した値が得られます。
   
   得られるモデファイヤーは、
           MGL_SKM_CAPS
           MGL_SKM_SHIFT
           MGL_SKM_CTRL
           MGL_SKM_ALT
           MGL_SKM_MENU
   です。
   
   また、モデファイヤーを取り除くには、
   
   ~MGL_SKM_MASK で & を取ってください。
   
   例:
           c = get_key(-1);
           val = c & ~MGL_SKM_MASK;
           shift = c & MGL_SKM_SHIFT;
   
   注意) モデファイヤーを単独で押し/離した 場合
           モディファイヤー情報 | MGL_SKM_NOTICE
         が得られます。MGL_SKM_NOTICE が立っている場合は、キーコードは
         意味を持ちません。
   
   set_key_mode で、MGL_SK_EXMODIFIER を指定した場合
   
           MGL_SKM_RSHIFT
           MGL_SKM_RCTRL
           MGL_SKM_RALT
           MGL_SKM_RMENU
   
   も取得できるようになります。
   
   extern int mgl_mouse_shift
   
   3button マウスのエミュレーションのための API
   
           MENU + 1
           MENU + 2
           MENU + 3
   
   のオペレーションで、値が 0-2 に変化します。mouse_down/up のときに
   この値を参照して、button1-3 に対応させることが可能。
   
   ----
   
   
 ge_key_im で使われる 入力メソッド(以下 im) とのインターフェイス  ge_key_im で使われる 入力メソッド(以下 im) とのインターフェイス
 単純に get_key_im を呼ぶだけで、変換ウインドウが適当に出ますが  単純に get_key_im を呼ぶだけで、変換ウインドウが適当に出ますが
 場所を多少コントロールできるようになりました。  場所を多少コントロールできるようになりました。
   
   マウスイベントに関するモードを次のフラグで設定できます。
   
           MGL_SK_EXMOUSE_EVENT
   
   いままで、ボタンを押している状態でないと マウス移動イベントは得られません
   でしたが、このフラグがセットされた場合、ボタンを離していても
   マウス移動イベントが得られます。
   
   キーマップのための関数群。( 対応済は、netbsd+emcons のみ)
   
   void mgl_get_keymap(int code, char *sym1, char *sym2, char *sym3);
   
   mgl_get_keymap は、RAW_CODE(code) がどのように 変換されるかを返します。
   sym1 に 通常の 変換シンボル (文字列)
   sym2 に シフトされたときの 変換シンボル (文字列)
   sym3 に ALT が押されたときの 変換シンボル (文字列)
   
   が返ります。シンボルの実際のコードが何かを調べるためには、mgl_get_keysym()
   を使います。
   
   int mgl_get_keysym(char *name);
   
   シンボルのコードを返します。設定されていない場合 (-1) が返ります。
   
   int mgl_set_keysym(char *name, int code);
   
   一部のシンボルは、mgl_set_keysym を呼ばないと得ることができません。
   code には、任意のコード を指定できます。( virtual_key と同じように
   MK_VX を指定することを推奨 )
   
   現在この対象になる シンボルは、
     F13 - F24 KP_0 - KP_9 KP_plus KP_minus KP_mult KP_div
     KP_delete KP_insert KP_home KP_end KP_up KP_down KP_left KP_right
     KP_pageup KP_pagedown KP_begin KP_return KP_execute
     break pause print hanzen kanji nuhenkan numlock scrlock select
   (等)です。
   
 void im_avoid_point(int x,int y,int clean)  void im_avoid_point(int x,int y,int clean)
   
 im に対し、避けて欲しい矩形領域を通知します。  im に対し、避けて欲しい矩形領域を通知します。
Line 432  void mgl2_draw_string(struct screen *s,i
Line 565  void mgl2_draw_string(struct screen *s,i
 -------- MGL1 から削除  -------- MGL1 から削除
   
         draw_pixel_wc          draw_pixel_wc
                 get_pixel に変更されました。                  put_pixel に変更されました。
                 # define されているので使えないことはないです。                  # define されているので使えないことはないです。
   
         draw_font_clipping          draw_font_clipping
Line 459  void mgl2_draw_string(struct screen *s,i
Line 592  void mgl2_draw_string(struct screen *s,i
         2. virtual_key  多分 API が少し変わります。          2. virtual_key  多分 API が少し変わります。
   
 ---- ここでおしまい。  ---- ここでおしまい。
   
   
   
   
   
   

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.14

CVSweb <webmaster@jp.NetBSD.org>