keycodes.h 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269
  1. #pragma once
  2. // copied from Linux kernel source code
  3. #define KEY_RESERVED 0
  4. #define KEY_ESC 1
  5. #define KEY_1 2
  6. #define KEY_2 3
  7. #define KEY_3 4
  8. #define KEY_4 5
  9. #define KEY_5 6
  10. #define KEY_6 7
  11. #define KEY_7 8
  12. #define KEY_8 9
  13. #define KEY_9 10
  14. #define KEY_0 11
  15. #define KEY_MINUS 12
  16. #define KEY_EQUAL 13
  17. #define KEY_BACKSPACE 14
  18. #define KEY_TAB 15
  19. #define KEY_Q 16
  20. #define KEY_W 17
  21. #define KEY_E 18
  22. #define KEY_R 19
  23. #define KEY_T 20
  24. #define KEY_Y 21
  25. #define KEY_U 22
  26. #define KEY_I 23
  27. #define KEY_O 24
  28. #define KEY_P 25
  29. #define KEY_LEFTBRACE 26
  30. #define KEY_RIGHTBRACE 27
  31. #define KEY_ENTER 28
  32. #define KEY_LEFTCTRL 29
  33. #define KEY_A 30
  34. #define KEY_S 31
  35. #define KEY_D 32
  36. #define KEY_F 33
  37. #define KEY_G 34
  38. #define KEY_H 35
  39. #define KEY_J 36
  40. #define KEY_K 37
  41. #define KEY_L 38
  42. #define KEY_SEMICOLON 39
  43. #define KEY_APOSTROPHE 40
  44. #define KEY_GRAVE 41
  45. #define KEY_LEFTSHIFT 42
  46. #define KEY_BACKSLASH 43
  47. #define KEY_Z 44
  48. #define KEY_X 45
  49. #define KEY_C 46
  50. #define KEY_V 47
  51. #define KEY_B 48
  52. #define KEY_N 49
  53. #define KEY_M 50
  54. #define KEY_COMMA 51
  55. #define KEY_DOT 52
  56. #define KEY_SLASH 53
  57. #define KEY_RIGHTSHIFT 54
  58. #define KEY_KPASTERISK 55
  59. #define KEY_LEFTALT 56
  60. #define KEY_SPACE 57
  61. #define KEY_CAPSLOCK 58
  62. #define KEY_F1 59
  63. #define KEY_F2 60
  64. #define KEY_F3 61
  65. #define KEY_F4 62
  66. #define KEY_F5 63
  67. #define KEY_F6 64
  68. #define KEY_F7 65
  69. #define KEY_F8 66
  70. #define KEY_F9 67
  71. #define KEY_F10 68
  72. #define KEY_NUMLOCK 69
  73. #define KEY_SCROLLLOCK 70
  74. #define KEY_KP7 71
  75. #define KEY_KP8 72
  76. #define KEY_KP9 73
  77. #define KEY_KPMINUS 74
  78. #define KEY_KP4 75
  79. #define KEY_KP5 76
  80. #define KEY_KP6 77
  81. #define KEY_KPPLUS 78
  82. #define KEY_KP1 79
  83. #define KEY_KP2 80
  84. #define KEY_KP3 81
  85. #define KEY_KP0 82
  86. #define KEY_KPDOT 83
  87. #define KEY_ZENKAKUHANKAKU 85
  88. #define KEY_102ND 86
  89. #define KEY_F11 87
  90. #define KEY_F12 88
  91. #define KEY_RO 89
  92. #define KEY_KATAKANA 90
  93. #define KEY_HIRAGANA 91
  94. #define KEY_HENKAN 92
  95. #define KEY_KATAKANAHIRAGANA 93
  96. #define KEY_MUHENKAN 94
  97. #define KEY_KPJPCOMMA 95
  98. #define KEY_KPENTER 96
  99. #define KEY_RIGHTCTRL 97
  100. #define KEY_KPSLASH 98
  101. #define KEY_SYSRQ 99
  102. #define KEY_RIGHTALT 100
  103. #define KEY_LINEFEED 101
  104. #define KEY_HOME 102
  105. #define KEY_UP 103
  106. #define KEY_PAGEUP 104
  107. #define KEY_LEFT 105
  108. #define KEY_RIGHT 106
  109. #define KEY_END 107
  110. #define KEY_DOWN 108
  111. #define KEY_PAGEDOWN 109
  112. #define KEY_INSERT 110
  113. #define KEY_DELETE 111
  114. #define KEY_MACRO 112
  115. #define KEY_MUTE 113
  116. #define KEY_VOLUMEDOWN 114
  117. #define KEY_VOLUMEUP 115
  118. #define KEY_POWER 116 /* SC System Power Down */
  119. #define KEY_KPEQUAL 117
  120. #define KEY_KPPLUSMINUS 118
  121. #define KEY_PAUSE 119
  122. #define KEY_SCALE 120 /* AL Compiz Scale (Expose) */
  123. #define KEY_KPCOMMA 121
  124. #define KEY_HANGEUL 122
  125. #define KEY_HANGUEL KEY_HANGEUL
  126. #define KEY_HANJA 123
  127. #define KEY_YEN 124
  128. #define KEY_LEFTMETA 125
  129. #define KEY_RIGHTMETA 126
  130. #define KEY_COMPOSE 127
  131. #define KEY_STOP 128 /* AC Stop */
  132. #define KEY_AGAIN 129
  133. #define KEY_PROPS 130 /* AC Properties */
  134. #define KEY_UNDO 131 /* AC Undo */
  135. #define KEY_FRONT 132
  136. #define KEY_COPY 133 /* AC Copy */
  137. #define KEY_OPEN 134 /* AC Open */
  138. #define KEY_PASTE 135 /* AC Paste */
  139. #define KEY_FIND 136 /* AC Search */
  140. #define KEY_CUT 137 /* AC Cut */
  141. #define KEY_HELP 138 /* AL Integrated Help Center */
  142. #define KEY_MENU 139 /* Menu (show menu) */
  143. #define KEY_CALC 140 /* AL Calculator */
  144. #define KEY_SETUP 141
  145. #define KEY_SLEEP 142 /* SC System Sleep */
  146. #define KEY_WAKEUP 143 /* System Wake Up */
  147. #define KEY_FILE 144 /* AL Local Machine Browser */
  148. #define KEY_SENDFILE 145
  149. #define KEY_DELETEFILE 146
  150. #define KEY_XFER 147
  151. #define KEY_PROG1 148
  152. #define KEY_PROG2 149
  153. #define KEY_WWW 150 /* AL Internet Browser */
  154. #define KEY_MSDOS 151
  155. #define KEY_COFFEE 152 /* AL Terminal Lock/Screensaver */
  156. #define KEY_SCREENLOCK KEY_COFFEE
  157. #define KEY_ROTATE_DISPLAY 153 /* Display orientation for e.g. tablets */
  158. #define KEY_DIRECTION KEY_ROTATE_DISPLAY
  159. #define KEY_CYCLEWINDOWS 154
  160. #define KEY_MAIL 155
  161. #define KEY_BOOKMARKS 156 /* AC Bookmarks */
  162. #define KEY_COMPUTER 157
  163. #define KEY_BACK 158 /* AC Back */
  164. #define KEY_FORWARD 159 /* AC Forward */
  165. #define KEY_CLOSECD 160
  166. #define KEY_EJECTCD 161
  167. #define KEY_EJECTCLOSECD 162
  168. #define KEY_NEXTSONG 163
  169. #define KEY_PLAYPAUSE 164
  170. #define KEY_PREVIOUSSONG 165
  171. #define KEY_STOPCD 166
  172. #define KEY_RECORD 167
  173. #define KEY_REWIND 168
  174. #define KEY_PHONE 169 /* Media Select Telephone */
  175. #define KEY_ISO 170
  176. #define KEY_CONFIG 171 /* AL Consumer Control Configuration */
  177. #define KEY_HOMEPAGE 172 /* AC Home */
  178. #define KEY_REFRESH 173 /* AC Refresh */
  179. #define KEY_EXIT 174 /* AC Exit */
  180. #define KEY_MOVE 175
  181. #define KEY_EDIT 176
  182. #define KEY_SCROLLUP 177
  183. #define KEY_SCROLLDOWN 178
  184. #define KEY_KPLEFTPAREN 179
  185. #define KEY_KPRIGHTPAREN 180
  186. #define KEY_NEW 181 /* AC New */
  187. #define KEY_REDO 182 /* AC Redo/Repeat */
  188. #define KEY_F13 183
  189. #define KEY_F14 184
  190. #define KEY_F15 185
  191. #define KEY_F16 186
  192. #define KEY_F17 187
  193. #define KEY_F18 188
  194. #define KEY_F19 189
  195. #define KEY_F20 190
  196. #define KEY_F21 191
  197. #define KEY_F22 192
  198. #define KEY_F23 193
  199. #define KEY_F24 194
  200. #define KEY_PLAYCD 200
  201. #define KEY_PAUSECD 201
  202. #define KEY_PROG3 202
  203. #define KEY_PROG4 203
  204. #define KEY_DASHBOARD 204 /* AL Dashboard */
  205. #define KEY_SUSPEND 205
  206. #define KEY_CLOSE 206 /* AC Close */
  207. #define KEY_PLAY 207
  208. #define KEY_FASTFORWARD 208
  209. #define KEY_BASSBOOST 209
  210. #define KEY_PRINT 210 /* AC Print */
  211. #define KEY_HP 211
  212. #define KEY_CAMERA 212
  213. #define KEY_SOUND 213
  214. #define KEY_QUESTION 214
  215. #define KEY_EMAIL 215
  216. #define KEY_CHAT 216
  217. #define KEY_SEARCH 217
  218. #define KEY_CONNECT 218
  219. #define KEY_FINANCE 219 /* AL Checkbook/Finance */
  220. #define KEY_SPORT 220
  221. #define KEY_SHOP 221
  222. #define KEY_ALTERASE 222
  223. #define KEY_CANCEL 223 /* AC Cancel */
  224. #define KEY_BRIGHTNESSDOWN 224
  225. #define KEY_BRIGHTNESSUP 225
  226. #define KEY_MEDIA 226
  227. #define KEY_SWITCHVIDEOMODE 227 /* Cycle between available video \
  228. outputs (Monitor/LCD/TV-out/etc) */
  229. #define KEY_KBDILLUMTOGGLE 228
  230. #define KEY_KBDILLUMDOWN 229
  231. #define KEY_KBDILLUMUP 230
  232. #define KEY_SEND 231 /* AC Send */
  233. #define KEY_REPLY 232 /* AC Reply */
  234. #define KEY_FORWARDMAIL 233 /* AC Forward Msg */
  235. #define KEY_SAVE 234 /* AC Save */
  236. #define KEY_DOCUMENTS 235
  237. #define KEY_BATTERY 236
  238. #define KEY_BLUETOOTH 237
  239. #define KEY_WLAN 238
  240. #define KEY_UWB 239
  241. #define KEY_UNKNOWN 240
  242. #define KEY_VIDEO_NEXT 241 /* drive next video source */
  243. #define KEY_VIDEO_PREV 242 /* drive previous video source */
  244. #define KEY_BRIGHTNESS_CYCLE 243 /* brightness up, after max is min */
  245. #define KEY_BRIGHTNESS_AUTO 244 /* Set Auto Brightness: manual \
  246. brightness control is off, \
  247. rely on ambient */
  248. #define KEY_BRIGHTNESS_ZERO KEY_BRIGHTNESS_AUTO
  249. #define KEY_DISPLAY_OFF 245 /* display device to off state */
  250. #define KEY_WWAN 246 /* Wireless WAN (LTE, UMTS, GSM, etc.) */
  251. #define KEY_WIMAX KEY_WWAN
  252. #define KEY_RFKILL 247 /* Key that controls all radios */
  253. #define KEY_MICMUTE 248 /* Mute / unmute the microphone */
  254. /* Code 255 is reserved for special needs of AT keyboard driver */