refactor(input_codes): fixed casing, values & add to_string
This commit is contained in:
parent
789e1e186f
commit
6f1bb9198a
1 changed files with 270 additions and 154 deletions
|
|
@ -2,172 +2,288 @@ export module input.codes;
|
||||||
import std;
|
import std;
|
||||||
|
|
||||||
export enum class Key: std::uint16_t {
|
export enum class Key: std::uint16_t {
|
||||||
/* digits */
|
none = 0,
|
||||||
D0 = 48,
|
|
||||||
D1 = 49,
|
left_mouse_button,
|
||||||
D2 = 50,
|
right_mouse_button,
|
||||||
D3 = 51,
|
middle_mouse_button,
|
||||||
D4 = 52,
|
|
||||||
D5 = 53,
|
left_mouse = left_mouse_button,
|
||||||
D6 = 54,
|
right_mouse = right_mouse_button,
|
||||||
D7 = 55,
|
middle_mouse = middle_mouse_button,
|
||||||
D8 = 56,
|
|
||||||
D9 = 57,
|
l_mouse = left_mouse_button,
|
||||||
Semicolon = 59, // ;
|
r_mouse = right_mouse_button,
|
||||||
Equal = 61, // =
|
m_mouse = middle_mouse_button,
|
||||||
|
|
||||||
|
backspace,
|
||||||
|
tab,
|
||||||
|
capslock,
|
||||||
|
enter,
|
||||||
|
space,
|
||||||
|
delete_,
|
||||||
|
|
||||||
|
shift,
|
||||||
|
left_shit = shift,
|
||||||
|
l_shift = shift,
|
||||||
|
|
||||||
|
right_shift,
|
||||||
|
r_shift = right_shift,
|
||||||
|
|
||||||
|
control,
|
||||||
|
left_control = control,
|
||||||
|
l_control = control,
|
||||||
|
ctrl = control,
|
||||||
|
left_ctrl = control,
|
||||||
|
l_ctrl = control,
|
||||||
|
|
||||||
|
right_control,
|
||||||
|
r_control = right_control,
|
||||||
|
right_ctrl = right_control,
|
||||||
|
r_ctrl = right_control,
|
||||||
|
|
||||||
|
alt,
|
||||||
|
left_alt = alt,
|
||||||
|
l_alt = alt,
|
||||||
|
|
||||||
|
right_alt,
|
||||||
|
r_alt = right_alt,
|
||||||
|
|
||||||
|
pageup,
|
||||||
|
pagedown,
|
||||||
|
home,
|
||||||
|
end,
|
||||||
|
|
||||||
|
left_arrow,
|
||||||
|
l_arrow = left_arrow,
|
||||||
|
|
||||||
|
up_arrow,
|
||||||
|
u_arrow = up_arrow,
|
||||||
|
|
||||||
|
right_arrow,
|
||||||
|
r_arrow = right_arrow,
|
||||||
|
|
||||||
|
down_arrow,
|
||||||
|
d_arrow = down_arrow,
|
||||||
|
|
||||||
|
cancel,
|
||||||
|
pause,
|
||||||
|
select,
|
||||||
|
print,
|
||||||
|
snapshot, // aka. print-screen
|
||||||
|
insert,
|
||||||
|
help,
|
||||||
|
sleep,
|
||||||
|
eep = sleep,
|
||||||
|
|
||||||
|
digit_0,
|
||||||
|
digit_1,
|
||||||
|
digit_2,
|
||||||
|
digit_3,
|
||||||
|
digit_4,
|
||||||
|
digit_5,
|
||||||
|
digit_6,
|
||||||
|
digit_7,
|
||||||
|
digit_8,
|
||||||
|
digit_9,
|
||||||
|
|
||||||
/* letters */
|
/* letters */
|
||||||
A = 65,
|
a,
|
||||||
B = 66,
|
b,
|
||||||
C = 67,
|
c,
|
||||||
D = 68,
|
d,
|
||||||
E = 69,
|
e,
|
||||||
F = 70,
|
f,
|
||||||
G = 71,
|
g,
|
||||||
H = 72,
|
h,
|
||||||
I = 73,
|
i,
|
||||||
J = 74,
|
j,
|
||||||
K = 75,
|
k,
|
||||||
L = 76,
|
l,
|
||||||
M = 77,
|
m,
|
||||||
N = 78,
|
n,
|
||||||
O = 79,
|
o,
|
||||||
P = 80,
|
p,
|
||||||
Q = 81,
|
q,
|
||||||
R = 82,
|
r,
|
||||||
S = 83,
|
s,
|
||||||
t = 84,
|
t,
|
||||||
U = 85,
|
u,
|
||||||
V = 86,
|
v,
|
||||||
W = 87,
|
w,
|
||||||
X = 88,
|
x,
|
||||||
Y = 89,
|
y,
|
||||||
Z = 90,
|
z,
|
||||||
|
|
||||||
/* brackets */
|
super,
|
||||||
LeftBracket = 91, // [
|
left_super = super,
|
||||||
LBracket = LeftBracket, // [
|
l_super = super,
|
||||||
RightBracket = 93, // ]
|
|
||||||
RBracket = RightBracket, // ]
|
|
||||||
|
|
||||||
/* arrow */
|
right_super,
|
||||||
Right = 262,
|
r_super = right_super,
|
||||||
RightArrow = Right,
|
|
||||||
RArrow = Right,
|
|
||||||
Left = 263,
|
|
||||||
LeftArrow = Left,
|
|
||||||
LArrow = Left,
|
|
||||||
Down = 264,
|
|
||||||
DownArrow = Down,
|
|
||||||
DArrow = Down,
|
|
||||||
Up = 265,
|
|
||||||
UpArrow = Up,
|
|
||||||
UArrow = Up,
|
|
||||||
|
|
||||||
/* page */
|
kp_0,
|
||||||
PageUp = 266,
|
kp_1,
|
||||||
PageDown = 267,
|
kp_2,
|
||||||
|
kp_3,
|
||||||
/* home/end */
|
kp_4,
|
||||||
Home = 268,
|
kp_5,
|
||||||
end = 269,
|
kp_6,
|
||||||
|
kp_7,
|
||||||
/* toggles */
|
kp_8,
|
||||||
CapsLock = 280,
|
kp_9,
|
||||||
ScrollLock = 281,
|
kp_decimal,
|
||||||
NumLock = 282,
|
kp_divide,
|
||||||
NumberLock = NumLock,
|
kp_multiply,
|
||||||
|
kp_subtract,
|
||||||
|
kp_add,
|
||||||
|
kp_enter,
|
||||||
|
kp_equal,
|
||||||
|
|
||||||
/* function */
|
/* function */
|
||||||
F1 = 290,
|
f1,
|
||||||
F2 = 291,
|
f2,
|
||||||
F3 = 292,
|
f3,
|
||||||
F4 = 293,
|
f4,
|
||||||
F5 = 294,
|
f5,
|
||||||
F6 = 295,
|
f6,
|
||||||
F7 = 296,
|
f7,
|
||||||
F8 = 297,
|
f8,
|
||||||
F9 = 298,
|
f9,
|
||||||
F10 = 299,
|
f10,
|
||||||
F11 = 300,
|
f11,
|
||||||
F12 = 301,
|
f12,
|
||||||
F13 = 302,
|
|
||||||
F14 = 303,
|
|
||||||
F15 = 304,
|
|
||||||
F16 = 305,
|
|
||||||
F17 = 306,
|
|
||||||
F18 = 307,
|
|
||||||
F19 = 308,
|
|
||||||
F20 = 309,
|
|
||||||
F21 = 310,
|
|
||||||
F22 = 311,
|
|
||||||
F23 = 312,
|
|
||||||
F24 = 313,
|
|
||||||
F25 = 314,
|
|
||||||
|
|
||||||
/* keypad */
|
unknown,
|
||||||
Kp0 = 320,
|
};
|
||||||
Kp1 = 321,
|
|
||||||
Kp2 = 322,
|
export [[nodiscard]] constexpr auto to_string(Key key) -> std::string
|
||||||
Kp3 = 323,
|
{
|
||||||
Kp4 = 324,
|
using enum Key;
|
||||||
Kp5 = 325,
|
switch (key)
|
||||||
Kp6 = 326,
|
{
|
||||||
Kp7 = 327,
|
case none: return "<none>";
|
||||||
Kp8 = 328,
|
|
||||||
Kp9 = 329,
|
/* mouse */
|
||||||
KpDecimal = 330,
|
case left_mouse_button: return "left_mouse_button";
|
||||||
KpDivide = 331,
|
case right_mouse_button: return "right_mouse_button";
|
||||||
KpMultiply = 332,
|
case middle_mouse_button: return "middle_mouse_button";
|
||||||
KpSubstract = 333,
|
|
||||||
KpAdd = 334,
|
/* editing / control */
|
||||||
KpEnter = 335,
|
case backspace: return "backspace";
|
||||||
KpEqual = 336,
|
case tab: return "tab";
|
||||||
|
case capslock: return "capslock";
|
||||||
|
case enter: return "enter";
|
||||||
|
case space: return "space";
|
||||||
|
case delete_: return "delete";
|
||||||
|
|
||||||
/* modifiers */
|
/* modifiers */
|
||||||
LeftShift = 340,
|
case shift: return "shift";
|
||||||
LShift = LeftShift,
|
case control: return "control";
|
||||||
LeftControl = 341,
|
case right_control: return "right_control";
|
||||||
LControl = LeftControl,
|
case alt: return "alt";
|
||||||
LeftAlt = 342,
|
case right_alt: return "right_alt";
|
||||||
LAlt = LeftAlt,
|
|
||||||
LeftSuper = 343,
|
|
||||||
LSuper = LeftSuper,
|
|
||||||
RightShift = 344,
|
|
||||||
RShift = 344,
|
|
||||||
RightControl = 345,
|
|
||||||
RControl = 345,
|
|
||||||
RightAlt = 346,
|
|
||||||
RAlt = 346,
|
|
||||||
RightSuper = 347,
|
|
||||||
RSuper = 347,
|
|
||||||
|
|
||||||
/* misc */
|
/* navigation */
|
||||||
Space = 32,
|
case pageup: return "pageup";
|
||||||
Apostrophe = 39, // '
|
case pagedown: return "pagedown";
|
||||||
Quote = Apostrophe,
|
case home: return "home";
|
||||||
|
case end: return "end";
|
||||||
|
|
||||||
Comma = 44, // ,
|
case left_arrow: return "left_arrow";
|
||||||
Minus = 45, // -
|
case up_arrow: return "up_arrow";
|
||||||
Period = 46, // .
|
case right_arrow: return "right_arrow";
|
||||||
Slash = 47, // /
|
case down_arrow: return "down_arrow";
|
||||||
ForwardSlash = Slash, // /
|
|
||||||
BackSlash = 92, // \
|
|
||||||
|
|
||||||
GraveAccent = 96, // `
|
/* system */
|
||||||
Console = GraveAccent,
|
case cancel: return "cancel";
|
||||||
World1 = 161, // non-US #1
|
case pause: return "pause";
|
||||||
World2 = 162, // non-US #2
|
case select: return "select";
|
||||||
Escape = 256,
|
case print: return "print";
|
||||||
Esc = Escape,
|
case snapshot: return "snapshot";
|
||||||
Enter = 257,
|
case insert: return "insert";
|
||||||
Tab = 258,
|
case help: return "help";
|
||||||
BackSpace = 259,
|
case sleep: return "sleep";
|
||||||
Insert = 260,
|
|
||||||
Delete = 261,
|
|
||||||
|
|
||||||
PrintScreen = 283,
|
/* digits */
|
||||||
Pause = 284,
|
case digit_0: return "0";
|
||||||
|
case digit_1: return "1";
|
||||||
|
case digit_2: return "2";
|
||||||
|
case digit_3: return "3";
|
||||||
|
case digit_4: return "4";
|
||||||
|
case digit_5: return "5";
|
||||||
|
case digit_6: return "6";
|
||||||
|
case digit_7: return "7";
|
||||||
|
case digit_8: return "8";
|
||||||
|
case digit_9: return "9";
|
||||||
|
|
||||||
Menu = 348,
|
/* letters */
|
||||||
};
|
case a: return "a";
|
||||||
|
case b: return "b";
|
||||||
|
case c: return "c";
|
||||||
|
case d: return "d";
|
||||||
|
case e: return "e";
|
||||||
|
case f: return "f";
|
||||||
|
case g: return "g";
|
||||||
|
case h: return "h";
|
||||||
|
case i: return "i";
|
||||||
|
case j: return "j";
|
||||||
|
case k: return "k";
|
||||||
|
case l: return "l";
|
||||||
|
case m: return "m";
|
||||||
|
case n: return "n";
|
||||||
|
case o: return "o";
|
||||||
|
case p: return "p";
|
||||||
|
case q: return "q";
|
||||||
|
case r: return "r";
|
||||||
|
case s: return "s";
|
||||||
|
case t: return "t";
|
||||||
|
case u: return "u";
|
||||||
|
case v: return "v";
|
||||||
|
case w: return "w";
|
||||||
|
case x: return "x";
|
||||||
|
case y: return "y";
|
||||||
|
case z: return "z";
|
||||||
|
|
||||||
|
/* super / meta */
|
||||||
|
case super: return "super";
|
||||||
|
case right_super: return "right_super";
|
||||||
|
|
||||||
|
/* keypad */
|
||||||
|
case kp_0: return "kp_0";
|
||||||
|
case kp_1: return "kp_1";
|
||||||
|
case kp_2: return "kp_2";
|
||||||
|
case kp_3: return "kp_3";
|
||||||
|
case kp_4: return "kp_4";
|
||||||
|
case kp_5: return "kp_5";
|
||||||
|
case kp_6: return "kp_6";
|
||||||
|
case kp_7: return "kp_7";
|
||||||
|
case kp_8: return "kp_8";
|
||||||
|
case kp_9: return "kp_9";
|
||||||
|
case kp_decimal: return "kp_decimal";
|
||||||
|
case kp_divide: return "kp_divide";
|
||||||
|
case kp_multiply: return "kp_multiply";
|
||||||
|
case kp_subtract: return "kp_subtract";
|
||||||
|
case kp_add: return "kp_add";
|
||||||
|
case kp_enter: return "kp_enter";
|
||||||
|
case kp_equal: return "kp_equal";
|
||||||
|
|
||||||
|
/* function keys */
|
||||||
|
case f1: return "f1";
|
||||||
|
case f2: return "f2";
|
||||||
|
case f3: return "f3";
|
||||||
|
case f4: return "f4";
|
||||||
|
case f5: return "f5";
|
||||||
|
case f6: return "f6";
|
||||||
|
case f7: return "f7";
|
||||||
|
case f8: return "f8";
|
||||||
|
case f9: return "f9";
|
||||||
|
case f10: return "f10";
|
||||||
|
case f11: return "f11";
|
||||||
|
case f12: return "f12";
|
||||||
|
|
||||||
|
case unknown: return "<unknown>";
|
||||||
|
}
|
||||||
|
|
||||||
|
return "<invalid>";
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue