KeyCode.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274
  1. // Copyright (C) 2009-2015, Panagiotis Christopoulos Charitos.
  2. // All rights reserved.
  3. // Code licensed under the BSD License.
  4. // http://www.anki3d.org/LICENSE
  5. #pragma once
  6. namespace anki {
  7. /// Keyboard scancodes taken from SDL
  8. enum class KeyCode
  9. {
  10. UNKNOWN = 0,
  11. RETURN,
  12. ESCAPE,
  13. BACKSPACE,
  14. TAB,
  15. SPACE,
  16. EXCLAIM,
  17. QUOTEDBL,
  18. HASH,
  19. PERCENT,
  20. DOLLAR,
  21. AMPERSAND,
  22. QUOTE,
  23. LEFTPAREN,
  24. RIGHTPAREN,
  25. ASTERISK,
  26. PLUS,
  27. COMMA,
  28. MINUS,
  29. PERIOD,
  30. SLASH,
  31. _0,
  32. _1,
  33. _2,
  34. _3,
  35. _4,
  36. _5,
  37. _6,
  38. _7,
  39. _8,
  40. _9,
  41. COLON,
  42. SEMICOLON,
  43. LESS,
  44. EQUALS,
  45. GREATER,
  46. QUESTION,
  47. AT,
  48. LEFTBRACKET,
  49. BACKSLASH,
  50. RIGHTBRACKET,
  51. CARET,
  52. UNDERSCORE,
  53. BACKQUOTE,
  54. A,
  55. B,
  56. C,
  57. D,
  58. E,
  59. F,
  60. G,
  61. H,
  62. I,
  63. J,
  64. K,
  65. L,
  66. M,
  67. N,
  68. O,
  69. P,
  70. Q,
  71. R,
  72. S,
  73. T,
  74. U,
  75. V,
  76. W,
  77. X,
  78. Y,
  79. Z,
  80. CAPSLOCK,
  81. F1,
  82. F2,
  83. F3,
  84. F4,
  85. F5,
  86. F6,
  87. F7,
  88. F8,
  89. F9,
  90. F10,
  91. F11,
  92. F12,
  93. PRINTSCREEN,
  94. SCROLLLOCK,
  95. PAUSE,
  96. INSERT,
  97. HOME,
  98. PAGEUP,
  99. DELETE,
  100. END,
  101. PAGEDOWN,
  102. RIGHT,
  103. LEFT,
  104. DOWN,
  105. UP,
  106. NUMLOCKCLEAR,
  107. KP_DIVIDE,
  108. KP_MULTIPLY,
  109. KP_MINUS,
  110. KP_PLUS,
  111. KP_ENTER,
  112. KP_1,
  113. KP_2,
  114. KP_3,
  115. KP_4,
  116. KP_5,
  117. KP_6,
  118. KP_7,
  119. KP_8,
  120. KP_9,
  121. KP_0,
  122. KP_PERIOD,
  123. APPLICATION,
  124. POWER,
  125. KP_EQUALS,
  126. F13,
  127. F14,
  128. F15,
  129. F16,
  130. F17,
  131. F18,
  132. F19,
  133. F20,
  134. F21,
  135. F22,
  136. F23,
  137. F24,
  138. EXECUTE,
  139. HELP,
  140. MENU,
  141. SELECT,
  142. STOP,
  143. AGAIN,
  144. UNDO,
  145. CUT,
  146. COPY,
  147. PASTE,
  148. FIND,
  149. MUTE,
  150. VOLUMEUP,
  151. VOLUMEDOWN,
  152. KP_COMMA,
  153. KP_EQUALSAS400,
  154. ALTERASE,
  155. SYSREQ,
  156. CANCEL,
  157. CLEAR,
  158. PRIOR,
  159. RETURN2,
  160. SEPARATOR,
  161. OUT,
  162. OPER,
  163. CLEARAGAIN,
  164. CRSEL,
  165. EXSEL,
  166. KP_00,
  167. KP_000,
  168. THOUSANDSSEPARATOR,
  169. DECIMALSEPARATOR,
  170. CURRENCYUNIT,
  171. CURRENCYSUBUNIT,
  172. KP_LEFTPAREN,
  173. KP_RIGHTPAREN,
  174. KP_LEFTBRACE,
  175. KP_RIGHTBRACE,
  176. KP_TAB,
  177. KP_BACKSPACE,
  178. KP_A,
  179. KP_B,
  180. KP_C,
  181. KP_D,
  182. KP_E,
  183. KP_F,
  184. KP_XOR,
  185. KP_POWER,
  186. KP_PERCENT,
  187. KP_LESS,
  188. KP_GREATER,
  189. KP_AMPERSAND,
  190. KP_DBLAMPERSAND,
  191. KP_VERTICALBAR,
  192. KP_DBLVERTICALBAR,
  193. KP_COLON,
  194. KP_HASH,
  195. KP_SPACE,
  196. KP_AT,
  197. KP_EXCLAM,
  198. KP_MEMSTORE,
  199. KP_MEMRECALL,
  200. KP_MEMCLEAR,
  201. KP_MEMADD,
  202. KP_MEMSUBTRACT,
  203. KP_MEMMULTIPLY,
  204. KP_MEMDIVIDE,
  205. KP_PLUSMINUS,
  206. KP_CLEAR,
  207. KP_CLEARENTRY,
  208. KP_BINARY,
  209. KP_OCTAL,
  210. KP_DECIMAL,
  211. KP_HEXADECIMAL,
  212. LCTRL,
  213. LSHIFT,
  214. LALT,
  215. LGUI,
  216. RCTRL,
  217. RSHIFT,
  218. RALT,
  219. RGUI,
  220. MODE,
  221. AUDIONEXT,
  222. AUDIOPREV,
  223. AUDIOSTOP,
  224. AUDIOPLAY,
  225. AUDIOMUTE,
  226. MEDIASELECT,
  227. WWW,
  228. MAIL,
  229. CALCULATOR,
  230. COMPUTER,
  231. AC_SEARCH,
  232. AC_HOME,
  233. AC_BACK,
  234. AC_FORWARD,
  235. AC_STOP,
  236. AC_REFRESH,
  237. AC_BOOKMARKS,
  238. BRIGHTNESSDOWN,
  239. BRIGHTNESSUP,
  240. DISPLAYSWITCH,
  241. KBDILLUMTOGGLE,
  242. KBDILLUMDOWN,
  243. KBDILLUMUP,
  244. EJECT,
  245. SLEEP,
  246. COUNT
  247. };
  248. enum class MouseButton
  249. {
  250. LEFT,
  251. MIDDLE,
  252. RIGHT
  253. };
  254. } // end namespace anki