aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/KeyCodes.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/api/KeyCodes.h')
-rw-r--r--src/crepe/api/KeyCodes.h233
1 files changed, 233 insertions, 0 deletions
diff --git a/src/crepe/api/KeyCodes.h b/src/crepe/api/KeyCodes.h
new file mode 100644
index 0000000..16c2108
--- /dev/null
+++ b/src/crepe/api/KeyCodes.h
@@ -0,0 +1,233 @@
+#pragma once
+
+//! Enumeration for mouse button inputs, including standard and extended buttons.
+enum class MouseButton {
+ //! No mouse button input.
+ NONE = 0,
+ //! Left mouse button.
+ LEFT_MOUSE = 1,
+ //! Right mouse button.
+ RIGHT_MOUSE = 2,
+ //! Middle mouse button (scroll wheel press).
+ MIDDLE_MOUSE = 3,
+ //! First extended mouse button.
+ X1_MOUSE = 4,
+ //! Second extended mouse button.
+ X2_MOUSE = 5,
+ //! Scroll wheel upward movement.
+ SCROLL_UP = 6,
+ //! Scroll wheel downward movement.
+ SCROLL_DOWN = 7,
+};
+
+//! Enumeration for keyboard key inputs, including printable characters, function keys, and keypad keys.
+enum class Keycode {
+ //! No key input.
+ NONE = 0,
+ //! Spacebar.
+ SPACE = 32,
+ //! Apostrophe (').
+ APOSTROPHE = 39,
+ //! Comma (,).
+ COMMA = 44,
+ //! Minus (-).
+ MINUS = 45,
+ //! Period (.).
+ PERIOD = 46,
+ //! Slash (/).
+ SLASH = 47,
+ //! Digit 0.
+ D0 = 48,
+ //! Digit 1.
+ D1 = 49,
+ //! Digit 2.
+ D2 = 50,
+ //! Digit 3.
+ D3 = 51,
+ //! Digit 4.
+ D4 = 52,
+ //! Digit 5.
+ D5 = 53,
+ //! Digit 6.
+ D6 = 54,
+ //! Digit 7.
+ D7 = 55,
+ //! Digit 8.
+ D8 = 56,
+ //! Digit 9.
+ D9 = 57,
+ //! Semicolon (;).
+ SEMICOLON = 59,
+ //! Equal sign (=).
+ EQUAL = 61,
+ //! Key 'A'.
+ A = 65,
+ //! Key 'B'.
+ B = 66,
+ //! Key 'C'.
+ C = 67,
+ //! Key 'D'.
+ D = 68,
+ //! Key 'E'.
+ E = 69,
+ //! Key 'F'.
+ F = 70,
+ //! Key 'G'.
+ G = 71,
+ //! Key 'H'.
+ H = 72,
+ //! Key 'I'.
+ I = 73,
+ //! Key 'J'.
+ J = 74,
+ //! Key 'K'.
+ K = 75,
+ //! Key 'L'.
+ L = 76,
+ //! Key 'M'.
+ M = 77,
+ //! Key 'N'.
+ N = 78,
+ //! Key 'O'.
+ O = 79,
+ //! Key 'P'.
+ P = 80,
+ //! Key 'Q'.
+ Q = 81,
+ //! Key 'R'.
+ R = 82,
+ //! Key 'S'.
+ S = 83,
+ //! Key 'T'.
+ T = 84,
+ //! Key 'U'.
+ U = 85,
+ //! Key 'V'.
+ V = 86,
+ //! Key 'W'.
+ W = 87,
+ //! Key 'X'.
+ X = 88,
+ //! Key 'Y'.
+ Y = 89,
+ //! Key 'Z'.
+ Z = 90,
+ //! Left bracket ([).
+ LEFT_BRACKET = 91,
+ //! Backslash (\).
+ BACKSLASH = 92,
+ //! Right bracket (]).
+ RIGHT_BRACKET = 93,
+ //! Grave accent (`).
+ GRAVE_ACCENT = 96,
+ //! Non-US key #1.
+ WORLD1 = 161,
+ //! Non-US key #2.
+ WORLD2 = 162,
+ //! Escape key.
+ ESCAPE = 256,
+ //! Enter key.
+ ENTER = 257,
+ //! Tab key.
+ TAB = 258,
+ //! Backspace key.
+ BACKSPACE = 259,
+ //! Insert key.
+ INSERT = 260,
+ //! Delete key.
+ DELETE = 261,
+ //! Right arrow key.
+ RIGHT = 262,
+ //! Left arrow key.
+ LEFT = 263,
+ //! Down arrow key.
+ DOWN = 264,
+ //! Up arrow key.
+ UP = 265,
+ //! Page Up key.
+ PAGE_UP = 266,
+ //! Page Down key.
+ PAGE_DOWN = 267,
+ //! Home key.
+ HOME = 268,
+ //! End key.
+ END = 269,
+ //! Caps Lock key.
+ CAPS_LOCK = 280,
+ //! Scroll Lock key.
+ SCROLL_LOCK = 281,
+ //! Num Lock key.
+ NUM_LOCK = 282,
+ //! Print Screen key.
+ PRINT_SCREEN = 283,
+ //! Pause key.
+ PAUSE = 284,
+ /**
+ * \name Function keys (F1-F25).
+ * \{
+ */
+ F1 = 290,
+ F2 = 291,
+ F3 = 292,
+ F4 = 293,
+ F5 = 294,
+ F6 = 295,
+ F7 = 296,
+ F8 = 297,
+ F9 = 298,
+ F10 = 299,
+ F11 = 300,
+ F12 = 301,
+ 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,
+ /// \}
+ /**
+ * \name Keypad digits and operators.
+ * \{
+ */
+ KP0 = 320,
+ KP1 = 321,
+ KP2 = 322,
+ KP3 = 323,
+ KP4 = 324,
+ KP5 = 325,
+ KP6 = 326,
+ KP7 = 327,
+ KP8 = 328,
+ KP9 = 329,
+ KP_DECIMAL = 330,
+ KP_DIVIDE = 331,
+ KP_MULTIPLY = 332,
+ KP_SUBTRACT = 333,
+ KP_ADD = 334,
+ KP_ENTER = 335,
+ KP_EQUAL = 336,
+ /// \}
+ /**
+ * \name Modifier keys.
+ * \{
+ */
+ //! Modifier keys.
+ LEFT_SHIFT = 340,
+ LEFT_CONTROL = 341,
+ LEFT_ALT = 342,
+ LEFT_SUPER = 343,
+ RIGHT_SHIFT = 344,
+ RIGHT_CONTROL = 345,
+ RIGHT_ALT = 346,
+ RIGHT_SUPER = 347,
+ /// \}
+ //! Menu key.
+ MENU = 348,
+};