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 が少し変わります。 |
|
|
---- ここでおしまい。 |
---- ここでおしまい。 |
|
|
|
|
|
|
|
|
|
|
|
|