55 KEY_ESCAPE=SPKEY | 0x01,
57 KEY_BACKTAB=SPKEY | 0x03,
58 KEY_BACKSPACE=SPKEY | 0x04,
59 KEY_RETURN=SPKEY | 0x05,
60 KEY_ENTER=SPKEY | 0x06,
61 KEY_INSERT=SPKEY | 0x07,
62 KEY_DELETE=SPKEY | 0x08,
63 KEY_PAUSE=SPKEY | 0x09,
64 KEY_PRINT=SPKEY | 0x0A,
65 KEY_SYSREQ=SPKEY | 0x0B,
66 KEY_CLEAR=SPKEY | 0x0C,
67 KEY_HOME=SPKEY | 0x0D,
69 KEY_LEFT=SPKEY | 0x0F,
71 KEY_RIGHT=SPKEY | 0x11,
72 KEY_DOWN=SPKEY | 0x12,
73 KEY_PAGEUP=SPKEY | 0x13,
74 KEY_PAGEDOWN=SPKEY | 0x14,
75 KEY_SHIFT=SPKEY | 0x15,
76 KEY_CONTROL=SPKEY | 0x16,
77 KEY_META=SPKEY | 0x17,
79 KEY_CAPSLOCK=SPKEY | 0x19,
80 KEY_NUMLOCK=SPKEY | 0x1A,
81 KEY_SCROLLLOCK=SPKEY | 0x1B,
98 KEY_KP_ENTER=SPKEY | 0x80,
99 KEY_KP_MULTIPLY=SPKEY | 0x81,
100 KEY_KP_DIVIDE=SPKEY | 0x82,
101 KEY_KP_SUBTRACT=SPKEY | 0x83,
102 KEY_KP_PERIOD=SPKEY | 0x84,
103 KEY_KP_ADD=SPKEY | 0x85,
104 KEY_KP_0=SPKEY | 0x86,
105 KEY_KP_1=SPKEY | 0x87,
106 KEY_KP_2=SPKEY | 0x88,
107 KEY_KP_3=SPKEY | 0x89,
108 KEY_KP_4=SPKEY | 0x8A,
109 KEY_KP_5=SPKEY | 0x8B,
110 KEY_KP_6=SPKEY | 0x8C,
111 KEY_KP_7=SPKEY | 0x8D,
112 KEY_KP_8=SPKEY | 0x8E,
113 KEY_KP_9=SPKEY | 0x8F,
114 KEY_SUPER_L=SPKEY | 0x2C,
115 KEY_SUPER_R=SPKEY | 0x2D,
116 KEY_MENU=SPKEY | 0x2E,
117 KEY_HYPER_L=SPKEY | 0x2F,
118 KEY_HYPER_R=SPKEY | 0x30,
119 KEY_HELP=SPKEY | 0x31,
120 KEY_DIRECTION_L=SPKEY | 0x32,
121 KEY_DIRECTION_R=SPKEY | 0x33,
122 KEY_BACK=SPKEY | 0x40,
123 KEY_FORWARD=SPKEY | 0x41,
124 KEY_STOP=SPKEY | 0x42,
125 KEY_REFRESH=SPKEY | 0x43,
126 KEY_VOLUMEDOWN=SPKEY | 0x44,
127 KEY_VOLUMEMUTE=SPKEY | 0x45,
128 KEY_VOLUMEUP=SPKEY | 0x46,
129 KEY_BASSBOOST=SPKEY | 0x47,
130 KEY_BASSUP=SPKEY | 0x48,
131 KEY_BASSDOWN=SPKEY | 0x49,
132 KEY_TREBLEUP=SPKEY | 0x4A,
133 KEY_TREBLEDOWN=SPKEY | 0x4B,
134 KEY_MEDIAPLAY=SPKEY | 0x4C,
135 KEY_MEDIASTOP=SPKEY | 0x4D,
136 KEY_MEDIAPREVIOUS=SPKEY | 0x4E,
137 KEY_MEDIANEXT=SPKEY | 0x4F,
138 KEY_MEDIARECORD= SPKEY | 0x50,
139 KEY_HOMEPAGE=SPKEY | 0x51,
140 KEY_FAVORITES=SPKEY | 0x52,
141 KEY_SEARCH=SPKEY | 0x53,
142 KEY_STANDBY=SPKEY | 0x54,
143 KEY_OPENURL=SPKEY | 0x55,
144 KEY_LAUNCHMAIL=SPKEY | 0x56,
145 KEY_LAUNCHMEDIA=SPKEY | 0x57,
146 KEY_LAUNCH0=SPKEY | 0x58,
147 KEY_LAUNCH1=SPKEY | 0x59,
148 KEY_LAUNCH2=SPKEY | 0x5A,
149 KEY_LAUNCH3=SPKEY | 0x5B,
150 KEY_LAUNCH4=SPKEY | 0x5C,
151 KEY_LAUNCH5=SPKEY | 0x5D,
152 KEY_LAUNCH6=SPKEY | 0x5E,
153 KEY_LAUNCH7=SPKEY | 0x5F,
154 KEY_LAUNCH8=SPKEY | 0x60,
155 KEY_LAUNCH9=SPKEY | 0x61,
156 KEY_LAUNCHA=SPKEY | 0x62,
157 KEY_LAUNCHB=SPKEY | 0x63,
158 KEY_LAUNCHC=SPKEY | 0x64,
159 KEY_LAUNCHD=SPKEY | 0x65,
160 KEY_LAUNCHE=SPKEY | 0x66,
161 KEY_LAUNCHF=SPKEY | 0x67,
163 KEY_UNKNOWN=SPKEY | 0xFFFFFF,
170 KEY_NUMBERSIGN=0x0023,
173 KEY_AMPERSAND=0x0026,
174 KEY_APOSTROPHE=0x0027,
175 KEY_PARENLEFT=0x0028,
176 KEY_PARENRIGHT=0x0029,
194 KEY_SEMICOLON=0x003B,
226 KEY_BRACKETLEFT=0x005B,
227 KEY_BACKSLASH=0x005C,
228 KEY_BRACKETRIGHT=0x005D,
229 KEY_ASCIICIRCUM=0x005E,
230 KEY_UNDERSCORE=0x005F,
231 KEY_QUOTELEFT=0x0060,
232 KEY_BRACELEFT=0x007B,
234 KEY_BRACERIGHT=0x007D,
235 KEY_ASCIITILDE=0x007E,
236 KEY_NOBREAKSPACE=0x00A0,
237 KEY_EXCLAMDOWN=0x00A1,
242 KEY_BROKENBAR=0x00A6,
244 KEY_DIAERESIS=0x00A8,
245 KEY_COPYRIGHT=0x00A9,
246 KEY_ORDFEMININE=0x00AA,
247 KEY_GUILLEMOTLEFT=0x00AB,
250 KEY_REGISTERED=0x00AE,
253 KEY_PLUSMINUS=0x00B1,
254 KEY_TWOSUPERIOR=0x00B2,
255 KEY_THREESUPERIOR=0x00B3,
258 KEY_PARAGRAPH=0x00B6,
259 KEY_PERIODCENTERED=0x00B7,
261 KEY_ONESUPERIOR=0x00B9,
262 KEY_MASCULINE=0x00BA,
263 KEY_GUILLEMOTRIGHT=0x00BB,
264 KEY_ONEQUARTER=0x00BC,
266 KEY_THREEQUARTERS=0x00BE,
267 KEY_QUESTIONDOWN=0x00BF,
270 KEY_ACIRCUMFLEX=0x00C2,
272 KEY_ADIAERESIS=0x00C4,
278 KEY_ECIRCUMFLEX=0x00CA,
279 KEY_EDIAERESIS=0x00CB,
282 KEY_ICIRCUMFLEX=0x00CE,
283 KEY_IDIAERESIS=0x00CF,
288 KEY_OCIRCUMFLEX=0x00D4,
290 KEY_ODIAERESIS=0x00D6,
295 KEY_UCIRCUMFLEX=0x00DB,
296 KEY_UDIAERESIS=0x00DC,
302 KEY_YDIAERESIS=0x00FF,
308 enum KeyModifierMask {
310 KEY_CODE_MASK=((1<<25)-1),
311 KEY_MODIFIER_MASK=(0xFF<<24),
312 KEY_MASK_SHIFT = (1<<25),
313 KEY_MASK_ALT = (1<<26),
314 KEY_MASK_META = (1<<27),
315 KEY_MASK_CTRL = (1<<28),
316 #ifdef APPLE_STYLE_KEYS
317 KEY_MASK_CMD = KEY_MASK_META,
319 KEY_MASK_CMD = KEY_MASK_CTRL,
322 KEY_MASK_KPAD = (1<<29),
323 KEY_MASK_GROUP_SWITCH = (1<<30)
328 String keycode_get_string(uint32_t p_code);
329 bool keycode_has_unicode(uint32_t p_unicode);
330 int find_keycode(
const String& p_code);
331 int latin_keyboard_keycode_convert(
int p_keycode);