PolyInputKeys.h 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. /*
  2. * PolyInputKeys.h
  3. * Poly
  4. *
  5. * Created by Ivan Safrin on 5/28/08.
  6. * Copyright 2008 __MyCompanyName__. All rights reserved.
  7. *
  8. */
  9. // @package Core
  10. #pragma once
  11. namespace Polycode {
  12. // copied from SDL for conveniece :)
  13. typedef enum {
  14. /* The keyboard syms have been cleverly chosen to map to ASCII */
  15. TAUK_UNKNOWN = 0,
  16. TAUK_FIRST = 0,
  17. TAUK_BACKSPACE = 8,
  18. TAUK_TAB = 9,
  19. TAUK_CLEAR = 12,
  20. TAUK_RETURN = 13,
  21. TAUK_PAUSE = 19,
  22. TAUK_ESCAPE = 27,
  23. TAUK_SPACE = 32,
  24. TAUK_EXCLAIM = 33,
  25. TAUK_QUOTEDBL = 34,
  26. TAUK_HASH = 35,
  27. TAUK_DOLLAR = 36,
  28. TAUK_AMPERSAND = 38,
  29. TAUK_QUOTE = 39,
  30. TAUK_LEFTPAREN = 40,
  31. TAUK_RIGHTPAREN = 41,
  32. TAUK_ASTERISK = 42,
  33. TAUK_PLUS = 43,
  34. TAUK_COMMA = 44,
  35. TAUK_MINUS = 45,
  36. TAUK_PERIOD = 46,
  37. TAUK_SLASH = 47,
  38. TAUK_0 = 48,
  39. TAUK_1 = 49,
  40. TAUK_2 = 50,
  41. TAUK_3 = 51,
  42. TAUK_4 = 52,
  43. TAUK_5 = 53,
  44. TAUK_6 = 54,
  45. TAUK_7 = 55,
  46. TAUK_8 = 56,
  47. TAUK_9 = 57,
  48. TAUK_COLON = 58,
  49. TAUK_SEMICOLON = 59,
  50. TAUK_LESS = 60,
  51. TAUK_EQUALS = 61,
  52. TAUK_GREATER = 62,
  53. TAUK_QUESTION = 63,
  54. TAUK_AT = 64,
  55. /*
  56. Skip uppercase letters
  57. */
  58. TAUK_LEFTBRACKET = 91,
  59. TAUK_BACKSLASH = 92,
  60. TAUK_RIGHTBRACKET = 93,
  61. TAUK_CARET = 94,
  62. TAUK_UNDERSCORE = 95,
  63. TAUK_BACKQUOTE = 96,
  64. TAUK_a = 97,
  65. TAUK_b = 98,
  66. TAUK_c = 99,
  67. TAUK_d = 100,
  68. TAUK_e = 101,
  69. TAUK_f = 102,
  70. TAUK_g = 103,
  71. TAUK_h = 104,
  72. TAUK_i = 105,
  73. TAUK_j = 106,
  74. TAUK_k = 107,
  75. TAUK_l = 108,
  76. TAUK_m = 109,
  77. TAUK_n = 110,
  78. TAUK_o = 111,
  79. TAUK_p = 112,
  80. TAUK_q = 113,
  81. TAUK_r = 114,
  82. TAUK_s = 115,
  83. TAUK_t = 116,
  84. TAUK_u = 117,
  85. TAUK_v = 118,
  86. TAUK_w = 119,
  87. TAUK_x = 120,
  88. TAUK_y = 121,
  89. TAUK_z = 122,
  90. TAUK_DELETE = 127,
  91. /* End of ASCII mapped keysyms */
  92. /* International keyboard syms */
  93. TAUK_WORLD_0 = 160, /* 0xA0 */
  94. TAUK_WORLD_1 = 161,
  95. TAUK_WORLD_2 = 162,
  96. TAUK_WORLD_3 = 163,
  97. TAUK_WORLD_4 = 164,
  98. TAUK_WORLD_5 = 165,
  99. TAUK_WORLD_6 = 166,
  100. TAUK_WORLD_7 = 167,
  101. TAUK_WORLD_8 = 168,
  102. TAUK_WORLD_9 = 169,
  103. TAUK_WORLD_10 = 170,
  104. TAUK_WORLD_11 = 171,
  105. TAUK_WORLD_12 = 172,
  106. TAUK_WORLD_13 = 173,
  107. TAUK_WORLD_14 = 174,
  108. TAUK_WORLD_15 = 175,
  109. TAUK_WORLD_16 = 176,
  110. TAUK_WORLD_17 = 177,
  111. TAUK_WORLD_18 = 178,
  112. TAUK_WORLD_19 = 179,
  113. TAUK_WORLD_20 = 180,
  114. TAUK_WORLD_21 = 181,
  115. TAUK_WORLD_22 = 182,
  116. TAUK_WORLD_23 = 183,
  117. TAUK_WORLD_24 = 184,
  118. TAUK_WORLD_25 = 185,
  119. TAUK_WORLD_26 = 186,
  120. TAUK_WORLD_27 = 187,
  121. TAUK_WORLD_28 = 188,
  122. TAUK_WORLD_29 = 189,
  123. TAUK_WORLD_30 = 190,
  124. TAUK_WORLD_31 = 191,
  125. TAUK_WORLD_32 = 192,
  126. TAUK_WORLD_33 = 193,
  127. TAUK_WORLD_34 = 194,
  128. TAUK_WORLD_35 = 195,
  129. TAUK_WORLD_36 = 196,
  130. TAUK_WORLD_37 = 197,
  131. TAUK_WORLD_38 = 198,
  132. TAUK_WORLD_39 = 199,
  133. TAUK_WORLD_40 = 200,
  134. TAUK_WORLD_41 = 201,
  135. TAUK_WORLD_42 = 202,
  136. TAUK_WORLD_43 = 203,
  137. TAUK_WORLD_44 = 204,
  138. TAUK_WORLD_45 = 205,
  139. TAUK_WORLD_46 = 206,
  140. TAUK_WORLD_47 = 207,
  141. TAUK_WORLD_48 = 208,
  142. TAUK_WORLD_49 = 209,
  143. TAUK_WORLD_50 = 210,
  144. TAUK_WORLD_51 = 211,
  145. TAUK_WORLD_52 = 212,
  146. TAUK_WORLD_53 = 213,
  147. TAUK_WORLD_54 = 214,
  148. TAUK_WORLD_55 = 215,
  149. TAUK_WORLD_56 = 216,
  150. TAUK_WORLD_57 = 217,
  151. TAUK_WORLD_58 = 218,
  152. TAUK_WORLD_59 = 219,
  153. TAUK_WORLD_60 = 220,
  154. TAUK_WORLD_61 = 221,
  155. TAUK_WORLD_62 = 222,
  156. TAUK_WORLD_63 = 223,
  157. TAUK_WORLD_64 = 224,
  158. TAUK_WORLD_65 = 225,
  159. TAUK_WORLD_66 = 226,
  160. TAUK_WORLD_67 = 227,
  161. TAUK_WORLD_68 = 228,
  162. TAUK_WORLD_69 = 229,
  163. TAUK_WORLD_70 = 230,
  164. TAUK_WORLD_71 = 231,
  165. TAUK_WORLD_72 = 232,
  166. TAUK_WORLD_73 = 233,
  167. TAUK_WORLD_74 = 234,
  168. TAUK_WORLD_75 = 235,
  169. TAUK_WORLD_76 = 236,
  170. TAUK_WORLD_77 = 237,
  171. TAUK_WORLD_78 = 238,
  172. TAUK_WORLD_79 = 239,
  173. TAUK_WORLD_80 = 240,
  174. TAUK_WORLD_81 = 241,
  175. TAUK_WORLD_82 = 242,
  176. TAUK_WORLD_83 = 243,
  177. TAUK_WORLD_84 = 244,
  178. TAUK_WORLD_85 = 245,
  179. TAUK_WORLD_86 = 246,
  180. TAUK_WORLD_87 = 247,
  181. TAUK_WORLD_88 = 248,
  182. TAUK_WORLD_89 = 249,
  183. TAUK_WORLD_90 = 250,
  184. TAUK_WORLD_91 = 251,
  185. TAUK_WORLD_92 = 252,
  186. TAUK_WORLD_93 = 253,
  187. TAUK_WORLD_94 = 254,
  188. TAUK_WORLD_95 = 255, /* 0xFF */
  189. /* Numeric keypad */
  190. TAUK_KP0 = 256,
  191. TAUK_KP1 = 257,
  192. TAUK_KP2 = 258,
  193. TAUK_KP3 = 259,
  194. TAUK_KP4 = 260,
  195. TAUK_KP5 = 261,
  196. TAUK_KP6 = 262,
  197. TAUK_KP7 = 263,
  198. TAUK_KP8 = 264,
  199. TAUK_KP9 = 265,
  200. TAUK_KP_PERIOD = 266,
  201. TAUK_KP_DIVIDE = 267,
  202. TAUK_KP_MULTIPLY = 268,
  203. TAUK_KP_MINUS = 269,
  204. TAUK_KP_PLUS = 270,
  205. TAUK_KP_ENTER = 271,
  206. TAUK_KP_EQUALS = 272,
  207. /* Arrows + Home/End pad */
  208. TAUK_UP = 273,
  209. TAUK_DOWN = 274,
  210. TAUK_RIGHT = 275,
  211. TAUK_LEFT = 276,
  212. TAUK_INSERT = 277,
  213. TAUK_HOME = 278,
  214. TAUK_END = 279,
  215. TAUK_PAGEUP = 280,
  216. TAUK_PAGEDOWN = 281,
  217. /* Function keys */
  218. TAUK_F1 = 282,
  219. TAUK_F2 = 283,
  220. TAUK_F3 = 284,
  221. TAUK_F4 = 285,
  222. TAUK_F5 = 286,
  223. TAUK_F6 = 287,
  224. TAUK_F7 = 288,
  225. TAUK_F8 = 289,
  226. TAUK_F9 = 290,
  227. TAUK_F10 = 291,
  228. TAUK_F11 = 292,
  229. TAUK_F12 = 293,
  230. TAUK_F13 = 294,
  231. TAUK_F14 = 295,
  232. TAUK_F15 = 296,
  233. /* Key state modifier keys */
  234. TAUK_NUMLOCK = 300,
  235. TAUK_CAPSLOCK = 301,
  236. TAUK_SCROLLOCK = 302,
  237. TAUK_RSHIFT = 303,
  238. TAUK_LSHIFT = 304,
  239. TAUK_RCTRL = 305,
  240. TAUK_LCTRL = 306,
  241. TAUK_RALT = 307,
  242. TAUK_LALT = 308,
  243. TAUK_RMETA = 309,
  244. TAUK_LMETA = 310,
  245. TAUK_LSUPER = 311, /* Left "Windows" key */
  246. TAUK_RSUPER = 312, /* Right "Windows" key */
  247. TAUK_MODE = 313, /* "Alt Gr" key */
  248. TAUK_COMPOSE = 314, /* Multi-key compose key */
  249. /* Miscellaneous function keys */
  250. TAUK_HELP = 315,
  251. TAUK_PRINT = 316,
  252. TAUK_SYSREQ = 317,
  253. TAUK_BREAK = 318,
  254. TAUK_MENU = 319,
  255. TAUK_POWER = 320, /* Power Macintosh power key */
  256. TAUK_EURO = 321, /* Some european keyboards */
  257. TAUK_UNDO = 322, /* Atari keyboard has Undo */
  258. /* Add any other keys here */
  259. TAUK_LAST
  260. } TAUKey;
  261. };