XConvertCase(3) キーシンボルを変換する

Other Alias

XStringToKeysym, XKeysymToString, XKeycodeToKeysym, XKeysymToKeycode

書式

KeySym XStringToKeysym(string)

      char *string;

char *XKeysymToString(keysym)

      KeySym keysym;

KeySym XKeycodeToKeysym(display, keycode, index)

      Display *display;

      KeyCode keycode;

      int index;

KeyCode XKeysymToKeycode(display, keysym)

      Display *display;

      KeySym keysym;

void XConvertCase(keysym, lower_return, upper_return)

      KeySym keysym;

      KeySym *lower_return;

      KeySym *upper_return;

引き数

display
X サーバへの接続を指定する。
index
KeyCode ベクトルの要素を指定する。
keycode
KeyCode を指定する。
keysym
検索あるいは変換される KeySym を指定する。
lower_return
キーシンボルか小文字の形式のキーシンボルが返される。
string
変換する KeySym の名前を指定する。
upper_return
キーシンボルか大文字の形式のキーシンボルが返される。

説明

標準の KeySym 名は <X11/keysymdef.h> 内のそれぞれの名前から接頭辞 XK_ を取り除くことによって得られる。 Xlib の標準に含まれていない KeySym もこの関数で得られる。 この方法で得られる KeySym と Xlib がこれらの KeySym を得るために使う 機構は実装依存である。

KeySym の名前のエンコーディングがホストポータブル文字エンコーディング でない場合の実行結果は実装依存である。 指定した文字列が有効な KeySym にマッチしない場合、 XStringToKeysymNoSymbol を返す。

返される文字列は静的領域に置かれるので変更してはならない。 この文字列のエンコーディングはホストポータブル文字エンコーディングであ る。 指定した KeySym が定義されていない場合、 XKeysymToString は NULL を返す。

関数 XKeycodeToKeysym は Xlib の内部テーブルを使い、指定した KeyCode と KeyCode ベクトルの要 素に対して定義された KeySym を返す。 シンボルが定義されていない場合、 XKeycodeToKeysymNoSymbol を返す。

指定した KeySym がどの KeyCode に対しても定義されていない場合には、 XKeysymToKeycode は 0 を返す。

KeySym が大文字・小文字の変換に従う場合、関数 XConvertCase は指定した KeySym を大文字および小文字の形式で返す。 そうでない場合には、指定した KeySym が lower_return と upper_return の 両方に返される。 Latin と Cyrillic 以外の KeySym の変換に対応しているかどうかは実装による。