Найменування та аналогічні функції
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 залежить від реалізації.