Enigma
3.2.2
A Simple, Reliable and Efficient Encryption Tool
Loading...
Searching...
No Matches
KeyCodes.hpp
Go to the documentation of this file.
1
#pragma once
2
#ifndef ENIGMA_KEY_CODES_H
3
#define ENIGMA_KEY_CODES_H
4
5
#include <
Core/Core.hpp
>
6
#include <GLFW/glfw3.h>
7
8
NS_ENIGMA_BEGIN
9
11
typedef
enum class
KeyCode
: std::uint16_t {
12
Space
= GLFW_KEY_SPACE,
13
Apostrophe
= GLFW_KEY_APOSTROPHE,
/* ' */
14
Comma
= GLFW_KEY_COMMA,
/* , */
15
Minus
= GLFW_KEY_MINUS,
/* - */
16
Period
= GLFW_KEY_PERIOD,
/* . */
17
Slash
= GLFW_KEY_SLASH,
/* / */
18
19
D0
= GLFW_KEY_0,
/* 0 */
20
D1
= GLFW_KEY_1,
/* 1 */
21
D2
= GLFW_KEY_2,
/* 2 */
22
D3
= GLFW_KEY_3,
/* 3 */
23
D4
= GLFW_KEY_4,
/* 4 */
24
D5
= GLFW_KEY_5,
/* 5 */
25
D6
= GLFW_KEY_6,
/* 6 */
26
D7
= GLFW_KEY_7,
/* 7 */
27
D8
= GLFW_KEY_8,
/* 8 */
28
D9
= GLFW_KEY_9,
/* 9 */
29
30
Semicolon
= GLFW_KEY_SEMICOLON,
/* ; */
31
Equal
= GLFW_KEY_EQUAL,
/* = */
32
33
A
= GLFW_KEY_A,
34
B
= GLFW_KEY_B,
35
C
= GLFW_KEY_C,
36
D
= GLFW_KEY_D,
37
E
= GLFW_KEY_E,
38
F
= GLFW_KEY_F,
39
G
= GLFW_KEY_G,
40
H
= GLFW_KEY_H,
41
I
= GLFW_KEY_I,
42
J
= GLFW_KEY_J,
43
K
= GLFW_KEY_K,
44
L
= GLFW_KEY_L,
45
M
= GLFW_KEY_M,
46
N
= GLFW_KEY_N,
47
O
= GLFW_KEY_O,
48
P
= GLFW_KEY_P,
49
Q
= GLFW_KEY_Q,
50
R
= GLFW_KEY_R,
51
S
= GLFW_KEY_S,
52
T
= GLFW_KEY_T,
53
U
= GLFW_KEY_U,
54
V
= GLFW_KEY_V,
55
W
= GLFW_KEY_W,
56
X
= GLFW_KEY_X,
57
Y
= GLFW_KEY_Y,
58
Z
= GLFW_KEY_Z,
59
60
LeftBracket
= GLFW_KEY_LEFT_BRACKET,
/* [ */
61
Backslash
= GLFW_KEY_BACKSLASH,
/* \ */
62
RightBracket
= GLFW_KEY_RIGHT_BRACKET,
/* ] */
63
GraveAccent
= GLFW_KEY_GRAVE_ACCENT,
/* ` */
64
65
World1
= GLFW_KEY_WORLD_1,
/* non-US #1 */
66
World2
= GLFW_KEY_WORLD_2,
/* non-US #2 */
67
68
/* Function keys */
69
Escape
= GLFW_KEY_ESCAPE,
70
Enter
= GLFW_KEY_ENTER,
// OR RETURN
71
Tab
= GLFW_KEY_TAB,
72
Backspace
= GLFW_KEY_BACKSPACE,
73
Insert
= GLFW_KEY_INSERT,
74
Delete
= GLFW_KEY_DELETE,
75
Right
= GLFW_KEY_RIGHT,
76
Left
= GLFW_KEY_LEFT,
77
Down
= GLFW_KEY_DOWN,
78
Up
= GLFW_KEY_UP,
79
PageUp
= GLFW_KEY_PAGE_UP,
80
PageDown
= GLFW_KEY_PAGE_DOWN,
81
Home
= GLFW_KEY_HOME,
82
End
= GLFW_KEY_END,
83
CapsLock
= GLFW_KEY_CAPS_LOCK,
84
ScrollLock
= GLFW_KEY_SCROLL_LOCK,
85
NumLock
= GLFW_KEY_NUM_LOCK,
86
PrintScreen
= GLFW_KEY_PRINT_SCREEN,
87
Pause
= GLFW_KEY_PAUSE,
88
F1
= GLFW_KEY_F1,
89
F2
= GLFW_KEY_F2,
90
F3
= GLFW_KEY_F3,
91
F4
= GLFW_KEY_F4,
92
F5
= GLFW_KEY_F5,
93
F6
= GLFW_KEY_F6,
94
F7
= GLFW_KEY_F7,
95
F8
= GLFW_KEY_F8,
96
F9
= GLFW_KEY_F9,
97
F10
= GLFW_KEY_F10,
98
F11
= GLFW_KEY_F11,
99
F12
= GLFW_KEY_F12,
100
F13
= GLFW_KEY_F13,
101
F14
= GLFW_KEY_F14,
102
F15
= GLFW_KEY_F15,
103
F16
= GLFW_KEY_F16,
104
F17
= GLFW_KEY_F17,
105
F18
= GLFW_KEY_F18,
106
F19
= GLFW_KEY_F19,
107
F20
= GLFW_KEY_F20,
108
F21
= GLFW_KEY_F21,
109
F22
= GLFW_KEY_F22,
110
F23
= GLFW_KEY_F23,
111
F24
= GLFW_KEY_F24,
112
F25
= GLFW_KEY_F25,
113
114
/* Keypad */
115
KP0
= GLFW_KEY_KP_0,
116
KP1
= GLFW_KEY_KP_1,
117
KP2
= GLFW_KEY_KP_2,
118
KP3
= GLFW_KEY_KP_3,
119
KP4
= GLFW_KEY_KP_4,
120
KP5
= GLFW_KEY_KP_5,
121
KP6
= GLFW_KEY_KP_6,
122
KP7
= GLFW_KEY_KP_7,
123
KP8
= GLFW_KEY_KP_8,
124
KP9
= GLFW_KEY_KP_9,
125
KPDecimal
= GLFW_KEY_KP_DECIMAL,
126
KPDivide
= GLFW_KEY_KP_DIVIDE,
127
KPMultiply
= GLFW_KEY_KP_MULTIPLY,
128
KPSubtract
= GLFW_KEY_KP_SUBTRACT,
129
KPAdd
= GLFW_KEY_KP_ADD,
130
KPEnter
= GLFW_KEY_KP_ENTER,
131
KPEqual
= GLFW_KEY_KP_EQUAL,
132
133
LeftShift
= GLFW_KEY_LEFT_SHIFT,
134
LeftControl
= GLFW_KEY_LEFT_CONTROL,
135
LeftAlt
= GLFW_KEY_LEFT_ALT,
136
LeftSuper
= GLFW_KEY_LEFT_SUPER,
137
RightShift
= GLFW_KEY_RIGHT_SHIFT,
138
RightControl
= GLFW_KEY_RIGHT_CONTROL,
139
RightAlt
= GLFW_KEY_RIGHT_ALT,
140
RightSuper
= GLFW_KEY_RIGHT_SUPER,
141
Menu
= GLFW_KEY_MENU
142
}
Key
;
143
144
145
inline
std::ostream&
operator<<
(std::ostream& os,
const
KeyCode
& keyCode) {
146
return
os << static_cast<std::uint16_t>(keyCode);
147
}
148
149
150
#define ENIGMA_KEY_SPACE ::Enigma::Key::Space
151
#define ENIGMA_KEY_APOSTROPHE ::Enigma::Key::Apostrophe
/* ' */
152
#define ENIGMA_KEY_COMMA ::Enigma::Key::Comma
/* , */
153
#define ENIGMA_KEY_MINUS ::Enigma::Key::Minus
/* - */
154
#define ENIGMA_KEY_PERIOD ::Enigma::Key::Period
/* . */
155
#define ENIGMA_KEY_SLASH ::Enigma::Key::Slash
/* / */
156
#define ENIGMA_KEY_0 ::Enigma::Key::D0
157
#define ENIGMA_KEY_1 ::Enigma::Key::D1
158
#define ENIGMA_KEY_2 ::Enigma::Key::D2
159
#define ENIGMA_KEY_3 ::Enigma::Key::D3
160
#define ENIGMA_KEY_4 ::Enigma::Key::D4
161
#define ENIGMA_KEY_5 ::Enigma::Key::D5
162
#define ENIGMA_KEY_6 ::Enigma::Key::D6
163
#define ENIGMA_KEY_7 ::Enigma::Key::D7
164
#define ENIGMA_KEY_8 ::Enigma::Key::D8
165
#define ENIGMA_KEY_9 ::Enigma::Key::D9
166
#define ENIGMA_KEY_SEMICOLON ::Enigma::Key::Semicolon
/* ; */
167
#define ENIGMA_KEY_EQUAL ::Enigma::Key::Equal
/* = */
168
#define ENIGMA_KEY_A ::Enigma::Key::A
169
#define ENIGMA_KEY_B ::Enigma::Key::B
170
#define ENIGMA_KEY_C ::Enigma::Key::C
171
#define ENIGMA_KEY_D ::Enigma::Key::D
172
#define ENIGMA_KEY_E ::Enigma::Key::E
173
#define ENIGMA_KEY_F ::Enigma::Key::F
174
#define ENIGMA_KEY_G ::Enigma::Key::G
175
#define ENIGMA_KEY_H ::Enigma::Key::H
176
#define ENIGMA_KEY_I ::Enigma::Key::I
177
#define ENIGMA_KEY_J ::Enigma::Key::J
178
#define ENIGMA_KEY_K ::Enigma::Key::K
179
#define ENIGMA_KEY_L ::Enigma::Key::L
180
#define ENIGMA_KEY_M ::Enigma::Key::M
181
#define ENIGMA_KEY_N ::Enigma::Key::N
182
#define ENIGMA_KEY_O ::Enigma::Key::O
183
#define ENIGMA_KEY_P ::Enigma::Key::P
184
#define ENIGMA_KEY_Q ::Enigma::Key::Q
185
#define ENIGMA_KEY_R ::Enigma::Key::R
186
#define ENIGMA_KEY_S ::Enigma::Key::S
187
#define ENIGMA_KEY_T ::Enigma::Key::T
188
#define ENIGMA_KEY_U ::Enigma::Key::U
189
#define ENIGMA_KEY_V ::Enigma::Key::V
190
#define ENIGMA_KEY_W ::Enigma::Key::W
191
#define ENIGMA_KEY_X ::Enigma::Key::X
192
#define ENIGMA_KEY_Y ::Enigma::Key::Y
193
#define ENIGMA_KEY_Z ::Enigma::Key::Z
194
#define ENIGMA_KEY_LEFT_BRACKET ::Enigma::Key::LeftBracket
/* [ */
195
#define ENIGMA_KEY_BACKSLASH ::Enigma::Key::Backslash
/* \ */
196
#define ENIGMA_KEY_RIGHT_BRACKET ::Enigma::Key::RightBracket
/* ] */
197
#define ENIGMA_KEY_GRAVE_ACCENT ::Enigma::Key::GraveAccent
/* ` */
198
#define ENIGMA_KEY_WORLD_1 ::Enigma::Key::World1
/* non-US #1 */
199
#define ENIGMA_KEY_WORLD_2 ::Enigma::Key::World2
/* non-US #2 */
200
201
/* Function keys */
202
#define ENIGMA_KEY_ESCAPE ::Enigma::Key::Escape
203
#define ENIGMA_KEY_ENTER ::Enigma::Key::Enter
204
#define ENIGMA_KEY_TAB ::Enigma::Key::Tab
205
#define ENIGMA_KEY_BACKSPACE ::Enigma::Key::Backspace
206
#define ENIGMA_KEY_INSERT ::Enigma::Key::Insert
207
#define ENIGMA_KEY_DELETE ::Enigma::Key::Delete
208
#define ENIGMA_KEY_RIGHT ::Enigma::Key::Right
209
#define ENIGMA_KEY_LEFT ::Enigma::Key::Left
210
#define ENIGMA_KEY_DOWN ::Enigma::Key::Down
211
#define ENIGMA_KEY_UP ::Enigma::Key::Up
212
#define ENIGMA_KEY_PAGE_UP ::Enigma::Key::PageUp
213
#define ENIGMA_KEY_PAGE_DOWN ::Enigma::Key::PageDown
214
#define ENIGMA_KEY_HOME ::Enigma::Key::Home
215
#define ENIGMA_KEY_END ::Enigma::Key::End
216
#define ENIGMA_KEY_CAPS_LOCK ::Enigma::Key::CapsLock
217
#define ENIGMA_KEY_SCROLL_LOCK ::Enigma::Key::ScrollLock
218
#define ENIGMA_KEY_NUM_LOCK ::Enigma::Key::NumLock
219
#define ENIGMA_KEY_PRINT_SCREEN ::Enigma::Key::PrintScreen
220
#define ENIGMA_KEY_PAUSE ::Enigma::Key::Pause
221
#define ENIGMA_KEY_F1 ::Enigma::Key::F1
222
#define ENIGMA_KEY_F2 ::Enigma::Key::F2
223
#define ENIGMA_KEY_F3 ::Enigma::Key::F3
224
#define ENIGMA_KEY_F4 ::Enigma::Key::F4
225
#define ENIGMA_KEY_F5 ::Enigma::Key::F5
226
#define ENIGMA_KEY_F6 ::Enigma::Key::F6
227
#define ENIGMA_KEY_F7 ::Enigma::Key::F7
228
#define ENIGMA_KEY_F8 ::Enigma::Key::F8
229
#define ENIGMA_KEY_F9 ::Enigma::Key::F9
230
#define ENIGMA_KEY_F10 ::Enigma::Key::F10
231
#define ENIGMA_KEY_F11 ::Enigma::Key::F11
232
#define ENIGMA_KEY_F12 ::Enigma::Key::F12
233
#define ENIGMA_KEY_F13 ::Enigma::Key::F13
234
#define ENIGMA_KEY_F14 ::Enigma::Key::F14
235
#define ENIGMA_KEY_F15 ::Enigma::Key::F15
236
#define ENIGMA_KEY_F16 ::Enigma::Key::F16
237
#define ENIGMA_KEY_F17 ::Enigma::Key::F17
238
#define ENIGMA_KEY_F18 ::Enigma::Key::F18
239
#define ENIGMA_KEY_F19 ::Enigma::Key::F19
240
#define ENIGMA_KEY_F20 ::Enigma::Key::F20
241
#define ENIGMA_KEY_F21 ::Enigma::Key::F21
242
#define ENIGMA_KEY_F22 ::Enigma::Key::F22
243
#define ENIGMA_KEY_F23 ::Enigma::Key::F23
244
#define ENIGMA_KEY_F24 ::Enigma::Key::F24
245
#define ENIGMA_KEY_F25 ::Enigma::Key::F25
246
247
/* Keypad */
248
#define ENIGMA_KEY_KP_0 ::Enigma::Key::KP0
249
#define ENIGMA_KEY_KP_1 ::Enigma::Key::KP1
250
#define ENIGMA_KEY_KP_2 ::Enigma::Key::KP2
251
#define ENIGMA_KEY_KP_3 ::Enigma::Key::KP3
252
#define ENIGMA_KEY_KP_4 ::Enigma::Key::KP4
253
#define ENIGMA_KEY_KP_5 ::Enigma::Key::KP5
254
#define ENIGMA_KEY_KP_6 ::Enigma::Key::KP6
255
#define ENIGMA_KEY_KP_7 ::Enigma::Key::KP7
256
#define ENIGMA_KEY_KP_8 ::Enigma::Key::KP8
257
#define ENIGMA_KEY_KP_9 ::Enigma::Key::KP9
258
#define ENIGMA_KEY_KP_DECIMAL ::Enigma::Key::KPDecimal
259
#define ENIGMA_KEY_KP_DIVIDE ::Enigma::Key::KPDivide
260
#define ENIGMA_KEY_KP_MULTIPLY ::Enigma::Key::KPMultiply
261
#define ENIGMA_KEY_KP_SUBTRACT ::Enigma::Key::KPSubtract
262
#define ENIGMA_KEY_KP_ADD ::Enigma::Key::KPAdd
263
#define ENIGMA_KEY_KP_ENTER ::Enigma::Key::KPEnter
264
#define ENIGMA_KEY_KP_EQUAL ::Enigma::Key::KPEqual
265
266
#define ENIGMA_KEY_LEFT_SHIFT ::Enigma::Key::LeftShift
267
#define ENIGMA_KEY_LEFT_CONTROL ::Enigma::Key::LeftControl
268
#define ENIGMA_KEY_LEFT_ALT ::Enigma::Key::LeftAlt
269
#define ENIGMA_KEY_LEFT_SUPER ::Enigma::Key::LeftSuper
270
#define ENIGMA_KEY_RIGHT_SHIFT ::Enigma::Key::RightShift
271
#define ENIGMA_KEY_RIGHT_CONTROL ::Enigma::Key::RightControl
272
#define ENIGMA_KEY_RIGHT_ALT ::Enigma::Key::RightAlt
273
#define ENIGMA_KEY_RIGHT_SUPER ::Enigma::Key::RightSuper
274
#define ENIGMA_KEY_MENU ::Enigma::Key::Menu
275
276
277
NS_ENIGMA_END
278
279
#endif
// !ENIGMA_KEY_CODES_H
Core.hpp
KeyCode
KeyCode
Definition
KeyCodes.hpp:11
KeyCode::Escape
@ Escape
KeyCode::X
@ X
KeyCode::Down
@ Down
KeyCode::RightSuper
@ RightSuper
KeyCode::C
@ C
KeyCode::D0
@ D0
KeyCode::Pause
@ Pause
KeyCode::Period
@ Period
KeyCode::F6
@ F6
KeyCode::Z
@ Z
KeyCode::F14
@ F14
KeyCode::D4
@ D4
KeyCode::Up
@ Up
KeyCode::KPAdd
@ KPAdd
KeyCode::KP7
@ KP7
KeyCode::RightShift
@ RightShift
KeyCode::KP3
@ KP3
KeyCode::Slash
@ Slash
KeyCode::F5
@ F5
KeyCode::E
@ E
KeyCode::KP2
@ KP2
KeyCode::P
@ P
KeyCode::Minus
@ Minus
KeyCode::GraveAccent
@ GraveAccent
KeyCode::RightBracket
@ RightBracket
KeyCode::KPDivide
@ KPDivide
KeyCode::F7
@ F7
KeyCode::F8
@ F8
KeyCode::LeftBracket
@ LeftBracket
KeyCode::D1
@ D1
KeyCode::F3
@ F3
KeyCode::LeftSuper
@ LeftSuper
KeyCode::U
@ U
KeyCode::KP4
@ KP4
KeyCode::V
@ V
KeyCode::KP9
@ KP9
KeyCode::F16
@ F16
KeyCode::Y
@ Y
KeyCode::Comma
@ Comma
KeyCode::Tab
@ Tab
KeyCode::S
@ S
KeyCode::W
@ W
KeyCode::LeftControl
@ LeftControl
KeyCode::F11
@ F11
KeyCode::KPMultiply
@ KPMultiply
KeyCode::M
@ M
KeyCode::KP1
@ KP1
KeyCode::World1
@ World1
KeyCode::KPDecimal
@ KPDecimal
KeyCode::KPEqual
@ KPEqual
KeyCode::F21
@ F21
KeyCode::ScrollLock
@ ScrollLock
KeyCode::F22
@ F22
KeyCode::A
@ A
KeyCode::F
@ F
KeyCode::F18
@ F18
KeyCode::RightControl
@ RightControl
KeyCode::KP0
@ KP0
KeyCode::End
@ End
KeyCode::F23
@ F23
KeyCode::F9
@ F9
KeyCode::World2
@ World2
KeyCode::Home
@ Home
KeyCode::CapsLock
@ CapsLock
KeyCode::N
@ N
KeyCode::KP8
@ KP8
KeyCode::Right
@ Right
KeyCode::Left
@ Left
KeyCode::D7
@ D7
KeyCode::KP5
@ KP5
KeyCode::F13
@ F13
KeyCode::LeftAlt
@ LeftAlt
KeyCode::Semicolon
@ Semicolon
KeyCode::LeftShift
@ LeftShift
KeyCode::PageUp
@ PageUp
KeyCode::B
@ B
KeyCode::D3
@ D3
KeyCode::Insert
@ Insert
KeyCode::K
@ K
KeyCode::F25
@ F25
KeyCode::D9
@ D9
KeyCode::D8
@ D8
KeyCode::F10
@ F10
KeyCode::Menu
@ Menu
KeyCode::Apostrophe
@ Apostrophe
KeyCode::T
@ T
KeyCode::PrintScreen
@ PrintScreen
KeyCode::H
@ H
KeyCode::D2
@ D2
KeyCode::KPSubtract
@ KPSubtract
KeyCode::KPEnter
@ KPEnter
KeyCode::F19
@ F19
KeyCode::Backspace
@ Backspace
KeyCode::NumLock
@ NumLock
KeyCode::L
@ L
KeyCode::Space
@ Space
KeyCode::RightAlt
@ RightAlt
KeyCode::I
@ I
KeyCode::G
@ G
KeyCode::D6
@ D6
KeyCode::F1
@ F1
KeyCode::R
@ R
KeyCode::F15
@ F15
KeyCode::F4
@ F4
KeyCode::F12
@ F12
KeyCode::D5
@ D5
KeyCode::F24
@ F24
KeyCode::PageDown
@ PageDown
KeyCode::Q
@ Q
KeyCode::Enter
@ Enter
KeyCode::O
@ O
KeyCode::Delete
@ Delete
KeyCode::KP6
@ KP6
KeyCode::Equal
@ Equal
KeyCode::D
@ D
KeyCode::Backslash
@ Backslash
KeyCode::F20
@ F20
KeyCode::F2
@ F2
KeyCode::J
@ J
KeyCode::F17
@ F17
Key
NS_ENIGMA_BEGIN enum KeyCode Key
operator<<
std::ostream & operator<<(std::ostream &os, const KeyCode &keyCode)
Definition
KeyCodes.hpp:145
NS_ENIGMA_BEGIN
#define NS_ENIGMA_BEGIN
Enable/Disable Assertions.
Definition
Macros.hpp:13
NS_ENIGMA_END
#define NS_ENIGMA_END
Definition
Macros.hpp:14
src
Input
Keyboard
KeyCodes.hpp
Generated on Sat Apr 12 2025 16:55:01 for Enigma by
1.9.8