CGVIS Utils
Loading...
Searching...
No Matches
GLAppKeyTranslation.h
Go to the documentation of this file.
1#pragma once
2 }
15* if (button == GLENV_MOUSE_BUTTON_LEFT) { /* ... */ }
16* if (mods & GLENV_MOD_CONTROL) { /* ... */ }
17* @endcode
18*
19* The mapping is chosen at compile time via the `__EMSCRIPTEN__` define.
20*/
21
22#ifdef __EMSCRIPTEN__
23
24// ===== Emscripten / HTML5 =====
27#define GLENV_RELEASE EMSCRIPTEN_EVENT_KEYUP
28#define GLENV_PRESS EMSCRIPTEN_EVENT_KEYDOWN
30
33#define GLENV_MOUSE_RELEASE 0
34#define GLENV_MOUSE_PRESS 1
36
39#define GLENV_KEY_SPACE 32
40#define GLENV_KEY_APOSTROPHE 39
41#define GLENV_KEY_COMMA 44
42#define GLENV_KEY_MINUS 45
43#define GLENV_KEY_PERIOD 46
44#define GLENV_KEY_SLASH 47
45#define GLENV_KEY_0 48
46#define GLENV_KEY_1 49
47#define GLENV_KEY_2 50
48#define GLENV_KEY_3 51
49#define GLENV_KEY_4 52
50#define GLENV_KEY_5 53
51#define GLENV_KEY_6 54
52#define GLENV_KEY_7 55
53#define GLENV_KEY_8 56
54#define GLENV_KEY_9 57
55#define GLENV_KEY_SEMICOLON 59
56#define GLENV_KEY_EQUAL 61
57#define GLENV_KEY_A 97
58#define GLENV_KEY_B 98
59#define GLENV_KEY_C 99
60#define GLENV_KEY_D 100
61#define GLENV_KEY_E 101
62#define GLENV_KEY_F 102
63#define GLENV_KEY_G 103
64#define GLENV_KEY_H 104
65#define GLENV_KEY_I 105
66#define GLENV_KEY_J 106
67#define GLENV_KEY_K 107
68#define GLENV_KEY_L 108
69#define GLENV_KEY_M 109
70#define GLENV_KEY_N 110
71#define GLENV_KEY_O 111
72#define GLENV_KEY_P 112
73#define GLENV_KEY_Q 113
74#define GLENV_KEY_R 114
75#define GLENV_KEY_S 115
76#define GLENV_KEY_T 116
77#define GLENV_KEY_U 117
78#define GLENV_KEY_V 118
79#define GLENV_KEY_W 119
80#define GLENV_KEY_X 120
81#define GLENV_KEY_Y 121
82#define GLENV_KEY_Z 122
83#define GLENV_KEY_LEFT_BRACKET 91
84#define GLENV_KEY_BACKSLASH 92
85#define GLENV_KEY_RIGHT_BRACKET 93
86#define GLENV_KEY_GRAVE_ACCENT 96
88
91#define GLENV_KEY_ESCAPE 27
92#define GLENV_KEY_ENTER 13
93#define GLENV_KEY_TAB 9
94#define GLENV_KEY_BACKSPACE 8
95#define GLENV_KEY_INSERT 45
96#define GLENV_KEY_DELETE 46
97#define GLENV_KEY_RIGHT 39
98#define GLENV_KEY_LEFT 37
99#define GLENV_KEY_DOWN 40
100#define GLENV_KEY_UP 38
101#define GLENV_KEY_PAGE_UP 33
102#define GLENV_KEY_PAGE_DOWN 34
103#define GLENV_KEY_HOME 36
104#define GLENV_KEY_END 35
105#define GLENV_KEY_CAPS_LOCK 20
106#define GLENV_KEY_SCROLL_LOCK 145
107#define GLENV_KEY_NUM_LOCK 144
108#define GLENV_KEY_PRINT_SCREEN 44
109#define GLENV_KEY_PAUSE 19
111
114#define GLENV_KEY_F1 112
115#define GLENV_KEY_F2 113
116#define GLENV_KEY_F3 114
117#define GLENV_KEY_F4 115
118#define GLENV_KEY_F5 116
119#define GLENV_KEY_F6 117
120#define GLENV_KEY_F7 118
121#define GLENV_KEY_F8 119
122#define GLENV_KEY_F9 120
123#define GLENV_KEY_F10 121
124#define GLENV_KEY_F11 122
125#define GLENV_KEY_F12 123
127
130#define GLENV_KEY_KP_0 96
131#define GLENV_KEY_KP_1 97
132#define GLENV_KEY_KP_2 98
133#define GLENV_KEY_KP_3 99
134#define GLENV_KEY_KP_4 100
135#define GLENV_KEY_KP_5 101
136#define GLENV_KEY_KP_6 102
137#define GLENV_KEY_KP_7 103
138#define GLENV_KEY_KP_8 104
139#define GLENV_KEY_KP_9 105
140#define GLENV_KEY_KP_DECIMAL 110
141#define GLENV_KEY_KP_DIVIDE 111
142#define GLENV_KEY_KP_MULTIPLY 106
143#define GLENV_KEY_KP_SUBTRACT 109
144#define GLENV_KEY_KP_ADD 107
145#define GLENV_KEY_KP_ENTER 13
147
150#define GLENV_KEY_LEFT_SHIFT 16
151#define GLENV_KEY_LEFT_CONTROL 17
152#define GLENV_KEY_LEFT_ALT 18
153#define GLENV_KEY_RIGHT_SHIFT 16
154#define GLENV_KEY_RIGHT_CONTROL 17
155#define GLENV_KEY_RIGHT_ALT 18
156#define GLENV_KEY_MENU 93
158
161#define GLENV_MOUSE_BUTTON_LEFT 0
162#define GLENV_MOUSE_BUTTON_RIGHT 2
163#define GLENV_MOUSE_BUTTON_MIDDLE 1
165
168#define GLENV_MOD_SHIFT 1
169#define GLENV_MOD_CONTROL 2
170#define GLENV_MOD_ALT 4
172
173#else // ===== GLFW / Desktop =====
174
177#define GLENV_RELEASE GLFW_RELEASE
178#define GLENV_PRESS GLFW_PRESS
180
183#define GLENV_MOUSE_RELEASE GLFW_RELEASE
184#define GLENV_MOUSE_PRESS GLFW_PRESS
186
189#define GLENV_KEY_SPACE GLFW_KEY_SPACE
190#define GLENV_KEY_APOSTROPHE GLFW_KEY_APOSTROPHE
191#define GLENV_KEY_COMMA GLFW_KEY_COMMA
192#define GLENV_KEY_MINUS GLFW_KEY_MINUS
193#define GLENV_KEY_PERIOD GLFW_KEY_PERIOD
194#define GLENV_KEY_SLASH GLFW_KEY_SLASH
195#define GLENV_KEY_0 GLFW_KEY_0
196#define GLENV_KEY_1 GLFW_KEY_1
197#define GLENV_KEY_2 GLFW_KEY_2
198#define GLENV_KEY_3 GLFW_KEY_3
199#define GLENV_KEY_4 GLFW_KEY_4
200#define GLENV_KEY_5 GLFW_KEY_5
201#define GLENV_KEY_6 GLFW_KEY_6
202#define GLENV_KEY_7 GLFW_KEY_7
203#define GLENV_KEY_8 GLFW_KEY_8
204#define GLENV_KEY_9 GLFW_KEY_9
205#define GLENV_KEY_SEMICOLON GLFW_KEY_SEMICOLON
206#define GLENV_KEY_EQUAL GLFW_KEY_EQUAL
207#define GLENV_KEY_A GLFW_KEY_A
208#define GLENV_KEY_B GLFW_KEY_B
209#define GLENV_KEY_C GLFW_KEY_C
210#define GLENV_KEY_D GLFW_KEY_D
211#define GLENV_KEY_E GLFW_KEY_E
212#define GLENV_KEY_F GLFW_KEY_F
213#define GLENV_KEY_G GLFW_KEY_G
214#define GLENV_KEY_H GLFW_KEY_H
215#define GLENV_KEY_I GLFW_KEY_I
216#define GLENV_KEY_J GLFW_KEY_J
217#define GLENV_KEY_K GLFW_KEY_K
218#define GLENV_KEY_L GLFW_KEY_L
219#define GLENV_KEY_M GLFW_KEY_M
220#define GLENV_KEY_N GLFW_KEY_N
221#define GLENV_KEY_O GLFW_KEY_O
222#define GLENV_KEY_P GLFW_KEY_P
223#define GLENV_KEY_Q GLFW_KEY_Q
224#define GLENV_KEY_R GLFW_KEY_R
225#define GLENV_KEY_S GLFW_KEY_S
226#define GLENV_KEY_T GLFW_KEY_T
227#define GLENV_KEY_U GLFW_KEY_U
228#define GLENV_KEY_V GLFW_KEY_V
229#define GLENV_KEY_W GLFW_KEY_W
230#define GLENV_KEY_X GLFW_KEY_X
231#define GLENV_KEY_Y GLFW_KEY_Y
232#define GLENV_KEY_Z GLFW_KEY_Z
233#define GLENV_KEY_LEFT_BRACKET GLFW_KEY_LEFT_BRACKET
234#define GLENV_KEY_BACKSLASH GLFW_KEY_BACKSLASH
235#define GLENV_KEY_RIGHT_BRACKET GLFW_KEY_RIGHT_BRACKET
236#define GLENV_KEY_GRAVE_ACCENT GLFW_KEY_GRAVE_ACCENT
237#define GLENV_KEY_WORLD_1 GLFW_KEY_WORLD_1
238#define GLENV_KEY_WORLD_2 GLFW_KEY_WORLD_2
240
243#define GLENV_KEY_ESCAPE GLFW_KEY_ESCAPE
244#define GLENV_KEY_ENTER GLFW_KEY_ENTER
245#define GLENV_KEY_TAB GLFW_KEY_TAB
246#define GLENV_KEY_BACKSPACE GLFW_KEY_BACKSPACE
247#define GLENV_KEY_INSERT GLFW_KEY_INSERT
248#define GLENV_KEY_DELETE GLFW_KEY_DELETE
249#define GLENV_KEY_RIGHT GLFW_KEY_RIGHT
250#define GLENV_KEY_LEFT GLFW_KEY_LEFT
251#define GLENV_KEY_DOWN GLFW_KEY_DOWN
252#define GLENV_KEY_UP GLFW_KEY_UP
253#define GLENV_KEY_PAGE_UP GLFW_KEY_PAGE_UP
254#define GLENV_KEY_PAGE_DOWN GLFW_KEY_PAGE_DOWN
255#define GLENV_KEY_HOME GLFW_KEY_HOME
256#define GLENV_KEY_END GLFW_KEY_END
257#define GLENV_KEY_CAPS_LOCK GLFW_KEY_CAPS_LOCK
258#define GLENV_KEY_SCROLL_LOCK GLFW_KEY_SCROLL_LOCK
259#define GLENV_KEY_NUM_LOCK GLFW_KEY_NUM_LOCK
260#define GLENV_KEY_PRINT_SCREEN GLFW_KEY_PRINT_SCREEN
261#define GLENV_KEY_PAUSE GLFW_KEY_PAUSE
263
266#define GLENV_KEY_F1 GLFW_KEY_F1
267#define GLENV_KEY_F2 GLFW_KEY_F2
268#define GLENV_KEY_F3 GLFW_KEY_F3
269#define GLENV_KEY_F4 GLFW_KEY_F4
270#define GLENV_KEY_F5 GLFW_KEY_F5
271#define GLENV_KEY_F6 GLFW_KEY_F6
272#define GLENV_KEY_F7 GLFW_KEY_F7
273#define GLENV_KEY_F8 GLFW_KEY_F8
274#define GLENV_KEY_F9 GLFW_KEY_F9
275#define GLENV_KEY_F10 GLFW_KEY_F10
276#define GLENV_KEY_F11 GLFW_KEY_F11
277#define GLENV_KEY_F12 GLFW_KEY_F12
278#define GLENV_KEY_F13 GLFW_KEY_F13
279#define GLENV_KEY_F14 GLFW_KEY_F14
280#define GLENV_KEY_F15 GLFW_KEY_F15
281#define GLENV_KEY_F16 GLFW_KEY_F16
282#define GLENV_KEY_F17 GLFW_KEY_F17
283#define GLENV_KEY_F18 GLFW_KEY_F18
284#define GLENV_KEY_F19 GLFW_KEY_F19
285#define GLENV_KEY_F20 GLFW_KEY_F20
286#define GLENV_KEY_F21 GLFW_KEY_F21
287#define GLENV_KEY_F22 GLFW_KEY_F22
288#define GLENV_KEY_F23 GLFW_KEY_F23
289#define GLENV_KEY_F24 GLFW_KEY_F24
290#define GLENV_KEY_F25 GLFW_KEY_F25
292
295#define GLENV_KEY_KP_0 GLFW_KEY_KP_0
296#define GLENV_KEY_KP_1 GLFW_KEY_KP_1
297#define GLENV_KEY_KP_2 GLFW_KEY_KP_2
298#define GLENV_KEY_KP_3 GLFW_KEY_KP_3
299#define GLENV_KEY_KP_4 GLFW_KEY_KP_4
300#define GLENV_KEY_KP_5 GLFW_KEY_KP_5
301#define GLENV_KEY_KP_6 GLFW_KEY_KP_6
302#define GLENV_KEY_KP_7 GLFW_KEY_KP_7
303#define GLENV_KEY_KP_8 GLFW_KEY_KP_8
304#define GLENV_KEY_KP_9 GLFW_KEY_KP_9
305#define GLENV_KEY_KP_DECIMAL GLFW_KEY_KP_DECIMAL
306#define GLENV_KEY_KP_DIVIDE GLFW_KEY_KP_DIVIDE
307#define GLENV_KEY_KP_MULTIPLY GLFW_KEY_KP_MULTIPLY
308#define GLENV_KEY_KP_SUBTRACT GLFW_KEY_KP_SUBTRACT
309#define GLENV_KEY_KP_ADD GLFW_KEY_KP_ADD
310#define GLENV_KEY_KP_ENTER GLFW_KEY_KP_ENTER
311#define GLENV_KEY_KP_EQUAL GLFW_KEY_KP_EQUAL
313
316#define GLENV_KEY_LEFT_SHIFT GLFW_KEY_LEFT_SHIFT
317#define GLENV_KEY_LEFT_CONTROL GLFW_KEY_LEFT_CONTROL
318#define GLENV_KEY_LEFT_ALT GLFW_KEY_LEFT_ALT
319#define GLENV_KEY_LEFT_SUPER GLFW_KEY_LEFT_SUPER
320#define GLENV_KEY_RIGHT_SHIFT GLFW_KEY_RIGHT_SHIFT
321#define GLENV_KEY_RIGHT_CONTROL GLFW_KEY_RIGHT_CONTROL
322#define GLENV_KEY_RIGHT_ALT GLFW_KEY_RIGHT_ALT
323#define GLENV_KEY_RIGHT_SUPER GLFW_KEY_RIGHT_SUPER
324#define GLENV_KEY_MENU GLFW_KEY_MENU
326
329#define GLENV_MOUSE_BUTTON_LEFT GLFW_MOUSE_BUTTON_LEFT
330#define GLENV_MOUSE_BUTTON_RIGHT GLFW_MOUSE_BUTTON_RIGHT
331#define GLENV_MOUSE_BUTTON_MIDDLE GLFW_MOUSE_BUTTON_MIDDLE
333
336#define GLENV_MOD_SHIFT GLFW_MOD_SHIFT
337#define GLENV_MOD_CONTROL GLFW_MOD_CONTROL
338#define GLENV_MOD_ALT GLFW_MOD_ALT
340
341#endif // __EMSCRIPTEN__
#define GLENV_MOD_CONTROL
Definition GLAppKeyTranslation.h:337
#define GLENV_MOUSE_BUTTON_LEFT
Definition GLAppKeyTranslation.h:329