Наименование и аналогичные функции
XStringToKeysym, XKeysymToString, XKeycodeToKeysym, XKeysymToKeycode, XConvertCase - преобразование keysyms
Синтаксис
KeySym XStringToKeysym(char *string); char *XKeysymToString(KeySym keysym); KeySym XKeycodeToKeysym(Display *display, KeyCode keycode, int index); KeyCode XKeysymToKeycode(Display *display, KeySym keysym); void XConvertCase(KeySym keysym, KeySym *lower_return, KeySym *upper_return);
Аргументы
display // Указывает соединение с X Сервером index // Описывает элемент вектора KeyCode keycode // Описывает сам KeyCode. keysym // Описывает директиву KeySym, // которая будет найдена для преобразования lower_return // Возвращает строчное значение keysym, или keysym string // Описывает имя KeySym, которая будет преобразована upper_return // Возвращает keysym в верхнем регистре или сам keysym
Описание
Стандартные имена KeySym предоставляются из < X11/keysymdef.h > удалением префикса XK_ из каждого имени. KeySym, которые не являются частью стандартной библиотеки Xlib, также могут быть предоставлены данной функцией. Набор клавиш KeySym, которые доступны в данном виде и механизмы, с помощью которых Xlib получает их, зависит от реализации.
Если KeySym имени нет в Host Portable Character Encoding, то результат является зависимым от реализации. Если указанная строка не может быть сравнена с корректным KeySym, то XStringToKeySym вернёт NoSymbol.
Возвращённая строка является статической и не может быть изменена. Возвращённая строка является Host Portable Character Encoding. Если указанная KeySym не определена, то XKeysymToString вернёт NULL.
Функция XKeycodeToKeysym использует внутренние таблицы Xlib и возвращает KeySym определённую для указанного KeyCode и элемента вектора KeyCode. Если ни один символ не определён XKeycodeToKeysym вернёт NoSymbol . Функции XKeycodeToKeysym предшествует расширение XKB. Если вы хотите использовать XKB для поиска KeySym, то Вам следует использовать XkbKeycodeToKeysym .
Если указанная KeySym не определена для какого-либо KeyCode, то XKeysymToKeycode вернёт ноль.
Функция XConvertCase возвращает указанные KeySym в верхнем или нижнем регистре, если KeySym является объектом преобразования. Однако, указанная KeySym будет возвращена в обоих вариантах. Поддержка преобразования отличного от Latin и Cyrillic KeySym является зависящей от реализации.