include/SDL_scancode.h
author Steven M. Vascellaro <svascellaro@gmail.com>
Mon, 22 Oct 2018 10:55:18 -0400
changeset 12379 5dc13016cf34
parent 11811 5d94cb6b24d3
child 12451 572bb959fdc5
permissions -rw-r--r--
joystick: Add Linux mappings for "Xbox One Wireless Controller (Model 1708)"

Adds controller bindings to support the "Xbox One Wireless Controller
(Model 1708)" on Linux. The Model 1708 was released in 2016 alongside the
Xbox One S. It is the current model being sold by Microsoft as of writing.
(October 22, 2018)
slouken@2303
     1
/*
slouken@5535
     2
  Simple DirectMedia Layer
slouken@11811
     3
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
slouken@2303
     4
slouken@5535
     5
  This software is provided 'as-is', without any express or implied
slouken@5535
     6
  warranty.  In no event will the authors be held liable for any damages
slouken@5535
     7
  arising from the use of this software.
slouken@2303
     8
slouken@5535
     9
  Permission is granted to anyone to use this software for any purpose,
slouken@5535
    10
  including commercial applications, and to alter it and redistribute it
slouken@5535
    11
  freely, subject to the following restrictions:
slouken@2303
    12
slouken@5535
    13
  1. The origin of this software must not be misrepresented; you must not
slouken@5535
    14
     claim that you wrote the original software. If you use this software
slouken@5535
    15
     in a product, an acknowledgment in the product documentation would be
slouken@5535
    16
     appreciated but is not required.
slouken@5535
    17
  2. Altered source versions must be plainly marked as such, and must not be
slouken@5535
    18
     misrepresented as being the original software.
slouken@5535
    19
  3. This notice may not be removed or altered from any source distribution.
slouken@2303
    20
*/
slouken@2303
    21
slouken@2303
    22
/**
slouken@3407
    23
 *  \file SDL_scancode.h
slouken@7191
    24
 *
slouken@3407
    25
 *  Defines keyboard scancodes.
slouken@2303
    26
 */
slouken@2303
    27
slouken@10638
    28
#ifndef SDL_scancode_h_
slouken@10638
    29
#define SDL_scancode_h_
slouken@2303
    30
slouken@2303
    31
#include "SDL_stdinc.h"
slouken@2303
    32
slouken@2303
    33
/**
slouken@3407
    34
 *  \brief The SDL keyboard scancode representation.
slouken@7191
    35
 *
slouken@3407
    36
 *  Values of this type are used to represent keyboard keys, among other places
slouken@5218
    37
 *  in the \link SDL_Keysym::scancode key.keysym.scancode \endlink field of the
slouken@3407
    38
 *  SDL_Event structure.
slouken@7191
    39
 *
slouken@3407
    40
 *  The values in this enumeration are based on the USB usage page standard:
slouken@11149
    41
 *  http://www.usb.org/developers/hidpage/Hut1_12v2.pdf
slouken@2303
    42
 */
slouken@2303
    43
typedef enum
slouken@2303
    44
{
slouken@2303
    45
    SDL_SCANCODE_UNKNOWN = 0,
slouken@2303
    46
slouken@7191
    47
    /**
slouken@3407
    48
     *  \name Usage page 0x07
slouken@7191
    49
     *
slouken@3407
    50
     *  These values are from usage page 0x07 (USB keyboard page).
slouken@3407
    51
     */
gabomdq@7678
    52
    /* @{ */
slouken@2303
    53
slouken@2303
    54
    SDL_SCANCODE_A = 4,
slouken@2303
    55
    SDL_SCANCODE_B = 5,
slouken@2303
    56
    SDL_SCANCODE_C = 6,
slouken@2303
    57
    SDL_SCANCODE_D = 7,
slouken@2303
    58
    SDL_SCANCODE_E = 8,
slouken@2303
    59
    SDL_SCANCODE_F = 9,
slouken@2303
    60
    SDL_SCANCODE_G = 10,
slouken@2303
    61
    SDL_SCANCODE_H = 11,
slouken@2303
    62
    SDL_SCANCODE_I = 12,
slouken@2303
    63
    SDL_SCANCODE_J = 13,
slouken@2303
    64
    SDL_SCANCODE_K = 14,
slouken@2303
    65
    SDL_SCANCODE_L = 15,
slouken@2303
    66
    SDL_SCANCODE_M = 16,
slouken@2303
    67
    SDL_SCANCODE_N = 17,
slouken@2303
    68
    SDL_SCANCODE_O = 18,
slouken@2303
    69
    SDL_SCANCODE_P = 19,
slouken@2303
    70
    SDL_SCANCODE_Q = 20,
slouken@2303
    71
    SDL_SCANCODE_R = 21,
slouken@2303
    72
    SDL_SCANCODE_S = 22,
slouken@2303
    73
    SDL_SCANCODE_T = 23,
slouken@2303
    74
    SDL_SCANCODE_U = 24,
slouken@2303
    75
    SDL_SCANCODE_V = 25,
slouken@2303
    76
    SDL_SCANCODE_W = 26,
slouken@2303
    77
    SDL_SCANCODE_X = 27,
slouken@2303
    78
    SDL_SCANCODE_Y = 28,
slouken@2303
    79
    SDL_SCANCODE_Z = 29,
slouken@2303
    80
slouken@2303
    81
    SDL_SCANCODE_1 = 30,
slouken@2303
    82
    SDL_SCANCODE_2 = 31,
slouken@2303
    83
    SDL_SCANCODE_3 = 32,
slouken@2303
    84
    SDL_SCANCODE_4 = 33,
slouken@2303
    85
    SDL_SCANCODE_5 = 34,
slouken@2303
    86
    SDL_SCANCODE_6 = 35,
slouken@2303
    87
    SDL_SCANCODE_7 = 36,
slouken@2303
    88
    SDL_SCANCODE_8 = 37,
slouken@2303
    89
    SDL_SCANCODE_9 = 38,
slouken@2303
    90
    SDL_SCANCODE_0 = 39,
slouken@2303
    91
slouken@2303
    92
    SDL_SCANCODE_RETURN = 40,
slouken@2303
    93
    SDL_SCANCODE_ESCAPE = 41,
slouken@2303
    94
    SDL_SCANCODE_BACKSPACE = 42,
slouken@2303
    95
    SDL_SCANCODE_TAB = 43,
slouken@2303
    96
    SDL_SCANCODE_SPACE = 44,
slouken@2303
    97
slouken@2305
    98
    SDL_SCANCODE_MINUS = 45,
slouken@2303
    99
    SDL_SCANCODE_EQUALS = 46,
slouken@2303
   100
    SDL_SCANCODE_LEFTBRACKET = 47,
slouken@2303
   101
    SDL_SCANCODE_RIGHTBRACKET = 48,
slouken@7191
   102
    SDL_SCANCODE_BACKSLASH = 49, /**< Located at the lower left of the return
slouken@7191
   103
                                  *   key on ISO keyboards and at the right end
slouken@7191
   104
                                  *   of the QWERTY row on ANSI keyboards.
slouken@7191
   105
                                  *   Produces REVERSE SOLIDUS (backslash) and
slouken@7191
   106
                                  *   VERTICAL LINE in a US layout, REVERSE
slouken@7191
   107
                                  *   SOLIDUS and VERTICAL LINE in a UK Mac
slouken@7191
   108
                                  *   layout, NUMBER SIGN and TILDE in a UK
slouken@3407
   109
                                  *   Windows layout, DOLLAR SIGN and POUND SIGN
slouken@7191
   110
                                  *   in a Swiss German layout, NUMBER SIGN and
slouken@7191
   111
                                  *   APOSTROPHE in a German layout, GRAVE
slouken@7191
   112
                                  *   ACCENT and POUND SIGN in a French Mac
slouken@7191
   113
                                  *   layout, and ASTERISK and MICRO SIGN in a
slouken@3407
   114
                                  *   French Windows layout.
slouken@3407
   115
                                  */
slouken@7191
   116
    SDL_SCANCODE_NONUSHASH = 50, /**< ISO USB keyboards actually use this code
slouken@7191
   117
                                  *   instead of 49 for the same key, but all
slouken@7191
   118
                                  *   OSes I've seen treat the two codes
slouken@3407
   119
                                  *   identically. So, as an implementor, unless
slouken@7191
   120
                                  *   your keyboard generates both of those
slouken@3407
   121
                                  *   codes and your OS treats them differently,
slouken@3407
   122
                                  *   you should generate SDL_SCANCODE_BACKSLASH
slouken@7191
   123
                                  *   instead of this code. As a user, you
slouken@7191
   124
                                  *   should not rely on this code because SDL
slouken@7191
   125
                                  *   will never generate it with most (all?)
slouken@7191
   126
                                  *   keyboards.
slouken@3407
   127
                                  */
slouken@2303
   128
    SDL_SCANCODE_SEMICOLON = 51,
slouken@2303
   129
    SDL_SCANCODE_APOSTROPHE = 52,
slouken@7191
   130
    SDL_SCANCODE_GRAVE = 53, /**< Located in the top left corner (on both ANSI
slouken@7191
   131
                              *   and ISO keyboards). Produces GRAVE ACCENT and
slouken@7191
   132
                              *   TILDE in a US Windows layout and in US and UK
slouken@7191
   133
                              *   Mac layouts on ANSI keyboards, GRAVE ACCENT
slouken@7191
   134
                              *   and NOT SIGN in a UK Windows layout, SECTION
slouken@7191
   135
                              *   SIGN and PLUS-MINUS SIGN in US and UK Mac
slouken@7191
   136
                              *   layouts on ISO keyboards, SECTION SIGN and
slouken@7191
   137
                              *   DEGREE SIGN in a Swiss German layout (Mac:
slouken@7191
   138
                              *   only on ISO keyboards), CIRCUMFLEX ACCENT and
slouken@7191
   139
                              *   DEGREE SIGN in a German layout (Mac: only on
slouken@3407
   140
                              *   ISO keyboards), SUPERSCRIPT TWO and TILDE in a
slouken@7191
   141
                              *   French Windows layout, COMMERCIAL AT and
slouken@7191
   142
                              *   NUMBER SIGN in a French Mac layout on ISO
slouken@3407
   143
                              *   keyboards, and LESS-THAN SIGN and GREATER-THAN
slouken@7191
   144
                              *   SIGN in a Swiss German, German, or French Mac
slouken@3407
   145
                              *   layout on ANSI keyboards.
slouken@3407
   146
                              */
slouken@2303
   147
    SDL_SCANCODE_COMMA = 54,
slouken@2303
   148
    SDL_SCANCODE_PERIOD = 55,
slouken@2303
   149
    SDL_SCANCODE_SLASH = 56,
slouken@2303
   150
slouken@2303
   151
    SDL_SCANCODE_CAPSLOCK = 57,
slouken@2303
   152
slouken@2303
   153
    SDL_SCANCODE_F1 = 58,
slouken@2303
   154
    SDL_SCANCODE_F2 = 59,
slouken@2303
   155
    SDL_SCANCODE_F3 = 60,
slouken@2303
   156
    SDL_SCANCODE_F4 = 61,
slouken@2303
   157
    SDL_SCANCODE_F5 = 62,
slouken@2303
   158
    SDL_SCANCODE_F6 = 63,
slouken@2303
   159
    SDL_SCANCODE_F7 = 64,
slouken@2303
   160
    SDL_SCANCODE_F8 = 65,
slouken@2303
   161
    SDL_SCANCODE_F9 = 66,
slouken@2303
   162
    SDL_SCANCODE_F10 = 67,
slouken@2303
   163
    SDL_SCANCODE_F11 = 68,
slouken@2303
   164
    SDL_SCANCODE_F12 = 69,
slouken@2303
   165
slouken@2303
   166
    SDL_SCANCODE_PRINTSCREEN = 70,
slouken@2303
   167
    SDL_SCANCODE_SCROLLLOCK = 71,
slouken@2303
   168
    SDL_SCANCODE_PAUSE = 72,
slouken@3407
   169
    SDL_SCANCODE_INSERT = 73, /**< insert on PC, help on some Mac keyboards (but
slouken@3407
   170
                                   does send code 73, not 117) */
slouken@2303
   171
    SDL_SCANCODE_HOME = 74,
slouken@2303
   172
    SDL_SCANCODE_PAGEUP = 75,
slouken@2303
   173
    SDL_SCANCODE_DELETE = 76,
slouken@2303
   174
    SDL_SCANCODE_END = 77,
slouken@2303
   175
    SDL_SCANCODE_PAGEDOWN = 78,
slouken@2303
   176
    SDL_SCANCODE_RIGHT = 79,
slouken@2303
   177
    SDL_SCANCODE_LEFT = 80,
slouken@2303
   178
    SDL_SCANCODE_DOWN = 81,
slouken@2303
   179
    SDL_SCANCODE_UP = 82,
slouken@2303
   180
slouken@7191
   181
    SDL_SCANCODE_NUMLOCKCLEAR = 83, /**< num lock on PC, clear on Mac keyboards
slouken@3407
   182
                                     */
slouken@2303
   183
    SDL_SCANCODE_KP_DIVIDE = 84,
slouken@2303
   184
    SDL_SCANCODE_KP_MULTIPLY = 85,
slouken@2303
   185
    SDL_SCANCODE_KP_MINUS = 86,
slouken@2303
   186
    SDL_SCANCODE_KP_PLUS = 87,
slouken@2303
   187
    SDL_SCANCODE_KP_ENTER = 88,
slouken@2303
   188
    SDL_SCANCODE_KP_1 = 89,
slouken@2303
   189
    SDL_SCANCODE_KP_2 = 90,
slouken@2303
   190
    SDL_SCANCODE_KP_3 = 91,
slouken@2303
   191
    SDL_SCANCODE_KP_4 = 92,
slouken@2303
   192
    SDL_SCANCODE_KP_5 = 93,
slouken@2303
   193
    SDL_SCANCODE_KP_6 = 94,
slouken@2303
   194
    SDL_SCANCODE_KP_7 = 95,
slouken@2303
   195
    SDL_SCANCODE_KP_8 = 96,
slouken@2303
   196
    SDL_SCANCODE_KP_9 = 97,
slouken@2303
   197
    SDL_SCANCODE_KP_0 = 98,
slouken@2303
   198
    SDL_SCANCODE_KP_PERIOD = 99,
slouken@2303
   199
slouken@7191
   200
    SDL_SCANCODE_NONUSBACKSLASH = 100, /**< This is the additional key that ISO
slouken@7191
   201
                                        *   keyboards have over ANSI ones,
slouken@7191
   202
                                        *   located between left shift and Y.
slouken@3407
   203
                                        *   Produces GRAVE ACCENT and TILDE in a
slouken@3407
   204
                                        *   US or UK Mac layout, REVERSE SOLIDUS
slouken@7191
   205
                                        *   (backslash) and VERTICAL LINE in a
slouken@7191
   206
                                        *   US or UK Windows layout, and
slouken@3407
   207
                                        *   LESS-THAN SIGN and GREATER-THAN SIGN
slouken@3407
   208
                                        *   in a Swiss German, German, or French
slouken@3407
   209
                                        *   layout. */
slouken@2303
   210
    SDL_SCANCODE_APPLICATION = 101, /**< windows contextual menu, compose */
slouken@7191
   211
    SDL_SCANCODE_POWER = 102, /**< The USB document says this is a status flag,
slouken@7191
   212
                               *   not a physical key - but some Mac keyboards
slouken@3407
   213
                               *   do have a power key. */
slouken@2303
   214
    SDL_SCANCODE_KP_EQUALS = 103,
slouken@2303
   215
    SDL_SCANCODE_F13 = 104,
slouken@2303
   216
    SDL_SCANCODE_F14 = 105,
slouken@2303
   217
    SDL_SCANCODE_F15 = 106,
slouken@2303
   218
    SDL_SCANCODE_F16 = 107,
slouken@2303
   219
    SDL_SCANCODE_F17 = 108,
slouken@2303
   220
    SDL_SCANCODE_F18 = 109,
slouken@2303
   221
    SDL_SCANCODE_F19 = 110,
slouken@2303
   222
    SDL_SCANCODE_F20 = 111,
slouken@2303
   223
    SDL_SCANCODE_F21 = 112,
slouken@2303
   224
    SDL_SCANCODE_F22 = 113,
slouken@2303
   225
    SDL_SCANCODE_F23 = 114,
slouken@2303
   226
    SDL_SCANCODE_F24 = 115,
slouken@2303
   227
    SDL_SCANCODE_EXECUTE = 116,
slouken@2303
   228
    SDL_SCANCODE_HELP = 117,
slouken@2303
   229
    SDL_SCANCODE_MENU = 118,
slouken@2303
   230
    SDL_SCANCODE_SELECT = 119,
slouken@2303
   231
    SDL_SCANCODE_STOP = 120,
slouken@3407
   232
    SDL_SCANCODE_AGAIN = 121,   /**< redo */
slouken@2303
   233
    SDL_SCANCODE_UNDO = 122,
slouken@2303
   234
    SDL_SCANCODE_CUT = 123,
slouken@2303
   235
    SDL_SCANCODE_COPY = 124,
slouken@2303
   236
    SDL_SCANCODE_PASTE = 125,
slouken@2303
   237
    SDL_SCANCODE_FIND = 126,
slouken@2303
   238
    SDL_SCANCODE_MUTE = 127,
slouken@2303
   239
    SDL_SCANCODE_VOLUMEUP = 128,
slouken@2303
   240
    SDL_SCANCODE_VOLUMEDOWN = 129,
slouken@2303
   241
/* not sure whether there's a reason to enable these */
slouken@2303
   242
/*     SDL_SCANCODE_LOCKINGCAPSLOCK = 130,  */
slouken@2303
   243
/*     SDL_SCANCODE_LOCKINGNUMLOCK = 131, */
slouken@2303
   244
/*     SDL_SCANCODE_LOCKINGSCROLLLOCK = 132, */
slouken@2303
   245
    SDL_SCANCODE_KP_COMMA = 133,
slouken@2303
   246
    SDL_SCANCODE_KP_EQUALSAS400 = 134,
slouken@2303
   247
slouken@7191
   248
    SDL_SCANCODE_INTERNATIONAL1 = 135, /**< used on Asian keyboards, see
slouken@3407
   249
                                            footnotes in USB doc */
slouken@2303
   250
    SDL_SCANCODE_INTERNATIONAL2 = 136,
slouken@2303
   251
    SDL_SCANCODE_INTERNATIONAL3 = 137, /**< Yen */
slouken@2303
   252
    SDL_SCANCODE_INTERNATIONAL4 = 138,
slouken@2303
   253
    SDL_SCANCODE_INTERNATIONAL5 = 139,
slouken@2303
   254
    SDL_SCANCODE_INTERNATIONAL6 = 140,
slouken@2303
   255
    SDL_SCANCODE_INTERNATIONAL7 = 141,
slouken@2303
   256
    SDL_SCANCODE_INTERNATIONAL8 = 142,
slouken@2303
   257
    SDL_SCANCODE_INTERNATIONAL9 = 143,
slouken@2303
   258
    SDL_SCANCODE_LANG1 = 144, /**< Hangul/English toggle */
slouken@2303
   259
    SDL_SCANCODE_LANG2 = 145, /**< Hanja conversion */
slouken@2303
   260
    SDL_SCANCODE_LANG3 = 146, /**< Katakana */
slouken@2303
   261
    SDL_SCANCODE_LANG4 = 147, /**< Hiragana */
slouken@2303
   262
    SDL_SCANCODE_LANG5 = 148, /**< Zenkaku/Hankaku */
slouken@2303
   263
    SDL_SCANCODE_LANG6 = 149, /**< reserved */
slouken@2303
   264
    SDL_SCANCODE_LANG7 = 150, /**< reserved */
slouken@2303
   265
    SDL_SCANCODE_LANG8 = 151, /**< reserved */
slouken@2303
   266
    SDL_SCANCODE_LANG9 = 152, /**< reserved */
slouken@2303
   267
slouken@2303
   268
    SDL_SCANCODE_ALTERASE = 153, /**< Erase-Eaze */
slouken@2303
   269
    SDL_SCANCODE_SYSREQ = 154,
slouken@2303
   270
    SDL_SCANCODE_CANCEL = 155,
slouken@2303
   271
    SDL_SCANCODE_CLEAR = 156,
slouken@2303
   272
    SDL_SCANCODE_PRIOR = 157,
slouken@2303
   273
    SDL_SCANCODE_RETURN2 = 158,
slouken@2303
   274
    SDL_SCANCODE_SEPARATOR = 159,
slouken@2303
   275
    SDL_SCANCODE_OUT = 160,
slouken@2303
   276
    SDL_SCANCODE_OPER = 161,
slouken@2303
   277
    SDL_SCANCODE_CLEARAGAIN = 162,
slouken@2303
   278
    SDL_SCANCODE_CRSEL = 163,
slouken@2303
   279
    SDL_SCANCODE_EXSEL = 164,
slouken@2303
   280
slouken@2303
   281
    SDL_SCANCODE_KP_00 = 176,
slouken@2303
   282
    SDL_SCANCODE_KP_000 = 177,
slouken@2303
   283
    SDL_SCANCODE_THOUSANDSSEPARATOR = 178,
slouken@2303
   284
    SDL_SCANCODE_DECIMALSEPARATOR = 179,
slouken@2303
   285
    SDL_SCANCODE_CURRENCYUNIT = 180,
slouken@2303
   286
    SDL_SCANCODE_CURRENCYSUBUNIT = 181,
slouken@2303
   287
    SDL_SCANCODE_KP_LEFTPAREN = 182,
slouken@2303
   288
    SDL_SCANCODE_KP_RIGHTPAREN = 183,
slouken@2303
   289
    SDL_SCANCODE_KP_LEFTBRACE = 184,
slouken@2303
   290
    SDL_SCANCODE_KP_RIGHTBRACE = 185,
slouken@2303
   291
    SDL_SCANCODE_KP_TAB = 186,
slouken@2303
   292
    SDL_SCANCODE_KP_BACKSPACE = 187,
slouken@2303
   293
    SDL_SCANCODE_KP_A = 188,
slouken@2303
   294
    SDL_SCANCODE_KP_B = 189,
slouken@2303
   295
    SDL_SCANCODE_KP_C = 190,
slouken@2303
   296
    SDL_SCANCODE_KP_D = 191,
slouken@2303
   297
    SDL_SCANCODE_KP_E = 192,
slouken@2303
   298
    SDL_SCANCODE_KP_F = 193,
slouken@2303
   299
    SDL_SCANCODE_KP_XOR = 194,
slouken@2303
   300
    SDL_SCANCODE_KP_POWER = 195,
slouken@2303
   301
    SDL_SCANCODE_KP_PERCENT = 196,
slouken@2303
   302
    SDL_SCANCODE_KP_LESS = 197,
slouken@2303
   303
    SDL_SCANCODE_KP_GREATER = 198,
slouken@2303
   304
    SDL_SCANCODE_KP_AMPERSAND = 199,
slouken@2303
   305
    SDL_SCANCODE_KP_DBLAMPERSAND = 200,
slouken@2303
   306
    SDL_SCANCODE_KP_VERTICALBAR = 201,
slouken@2303
   307
    SDL_SCANCODE_KP_DBLVERTICALBAR = 202,
slouken@2303
   308
    SDL_SCANCODE_KP_COLON = 203,
slouken@2303
   309
    SDL_SCANCODE_KP_HASH = 204,
slouken@2303
   310
    SDL_SCANCODE_KP_SPACE = 205,
slouken@2303
   311
    SDL_SCANCODE_KP_AT = 206,
slouken@2303
   312
    SDL_SCANCODE_KP_EXCLAM = 207,
slouken@2303
   313
    SDL_SCANCODE_KP_MEMSTORE = 208,
slouken@2303
   314
    SDL_SCANCODE_KP_MEMRECALL = 209,
slouken@2303
   315
    SDL_SCANCODE_KP_MEMCLEAR = 210,
slouken@2303
   316
    SDL_SCANCODE_KP_MEMADD = 211,
slouken@2303
   317
    SDL_SCANCODE_KP_MEMSUBTRACT = 212,
slouken@2303
   318
    SDL_SCANCODE_KP_MEMMULTIPLY = 213,
slouken@2303
   319
    SDL_SCANCODE_KP_MEMDIVIDE = 214,
slouken@2303
   320
    SDL_SCANCODE_KP_PLUSMINUS = 215,
slouken@2303
   321
    SDL_SCANCODE_KP_CLEAR = 216,
slouken@2303
   322
    SDL_SCANCODE_KP_CLEARENTRY = 217,
slouken@2303
   323
    SDL_SCANCODE_KP_BINARY = 218,
slouken@2303
   324
    SDL_SCANCODE_KP_OCTAL = 219,
slouken@2303
   325
    SDL_SCANCODE_KP_DECIMAL = 220,
slouken@2303
   326
    SDL_SCANCODE_KP_HEXADECIMAL = 221,
slouken@2303
   327
slouken@2303
   328
    SDL_SCANCODE_LCTRL = 224,
slouken@2303
   329
    SDL_SCANCODE_LSHIFT = 225,
slouken@2303
   330
    SDL_SCANCODE_LALT = 226, /**< alt, option */
slouken@2303
   331
    SDL_SCANCODE_LGUI = 227, /**< windows, command (apple), meta */
slouken@2303
   332
    SDL_SCANCODE_RCTRL = 228,
slouken@2303
   333
    SDL_SCANCODE_RSHIFT = 229,
slouken@2303
   334
    SDL_SCANCODE_RALT = 230, /**< alt gr, option */
slouken@2303
   335
    SDL_SCANCODE_RGUI = 231, /**< windows, command (apple), meta */
slouken@2303
   336
slouken@7191
   337
    SDL_SCANCODE_MODE = 257,    /**< I'm not sure if this is really not covered
slouken@7191
   338
                                 *   by any of the above, but since there's a
slouken@3407
   339
                                 *   special KMOD_MODE for it I'm adding it here
slouken@3407
   340
                                 */
slouken@7191
   341
gabomdq@7678
   342
    /* @} *//* Usage page 0x07 */
slouken@2303
   343
slouken@3407
   344
    /**
slouken@3407
   345
     *  \name Usage page 0x0C
slouken@7191
   346
     *
slouken@3407
   347
     *  These values are mapped from usage page 0x0C (USB consumer page).
slouken@3407
   348
     */
gabomdq@7678
   349
    /* @{ */
slouken@2303
   350
slouken@2303
   351
    SDL_SCANCODE_AUDIONEXT = 258,
slouken@2303
   352
    SDL_SCANCODE_AUDIOPREV = 259,
slouken@2303
   353
    SDL_SCANCODE_AUDIOSTOP = 260,
slouken@2303
   354
    SDL_SCANCODE_AUDIOPLAY = 261,
slouken@2303
   355
    SDL_SCANCODE_AUDIOMUTE = 262,
slouken@2303
   356
    SDL_SCANCODE_MEDIASELECT = 263,
slouken@2305
   357
    SDL_SCANCODE_WWW = 264,
slouken@2305
   358
    SDL_SCANCODE_MAIL = 265,
slouken@2305
   359
    SDL_SCANCODE_CALCULATOR = 266,
slouken@2305
   360
    SDL_SCANCODE_COMPUTER = 267,
slouken@2305
   361
    SDL_SCANCODE_AC_SEARCH = 268,
slouken@2305
   362
    SDL_SCANCODE_AC_HOME = 269,
slouken@2305
   363
    SDL_SCANCODE_AC_BACK = 270,
slouken@2305
   364
    SDL_SCANCODE_AC_FORWARD = 271,
slouken@2305
   365
    SDL_SCANCODE_AC_STOP = 272,
slouken@2305
   366
    SDL_SCANCODE_AC_REFRESH = 273,
slouken@2305
   367
    SDL_SCANCODE_AC_BOOKMARKS = 274,
slouken@7191
   368
gabomdq@7678
   369
    /* @} *//* Usage page 0x0C */
slouken@2303
   370
slouken@3407
   371
    /**
slouken@3407
   372
     *  \name Walther keys
slouken@7191
   373
     *
slouken@3407
   374
     *  These are values that Christian Walther added (for mac keyboard?).
slouken@3407
   375
     */
gabomdq@7678
   376
    /* @{ */
slouken@2303
   377
slouken@2305
   378
    SDL_SCANCODE_BRIGHTNESSDOWN = 275,
slouken@2305
   379
    SDL_SCANCODE_BRIGHTNESSUP = 276,
slouken@7191
   380
    SDL_SCANCODE_DISPLAYSWITCH = 277, /**< display mirroring/dual display
slouken@3407
   381
                                           switch, video mode switch */
slouken@2305
   382
    SDL_SCANCODE_KBDILLUMTOGGLE = 278,
slouken@2305
   383
    SDL_SCANCODE_KBDILLUMDOWN = 279,
slouken@2305
   384
    SDL_SCANCODE_KBDILLUMUP = 280,
slouken@2305
   385
    SDL_SCANCODE_EJECT = 281,
slouken@2305
   386
    SDL_SCANCODE_SLEEP = 282,
slouken@7191
   387
slouken@7191
   388
    SDL_SCANCODE_APP1 = 283,
slouken@7191
   389
    SDL_SCANCODE_APP2 = 284,
jorgen@6922
   390
gabomdq@7678
   391
    /* @} *//* Walther keys */
slouken@2303
   392
slouken@11149
   393
    /**
slouken@11149
   394
     *  \name Usage page 0x0C (additional media keys)
slouken@11149
   395
     *
slouken@11149
   396
     *  These values are mapped from usage page 0x0C (USB consumer page).
slouken@11149
   397
     */
slouken@11149
   398
    /* @{ */
slouken@11149
   399
slouken@11149
   400
    SDL_SCANCODE_AUDIOREWIND = 285,
slouken@11149
   401
    SDL_SCANCODE_AUDIOFASTFORWARD = 286,
slouken@11149
   402
slouken@11149
   403
    /* @} *//* Usage page 0x0C (additional media keys) */
slouken@11149
   404
slouken@3407
   405
    /* Add any other keys here. */
slouken@2303
   406
slouken@7191
   407
    SDL_NUM_SCANCODES = 512 /**< not a key, just marks the number of scancodes
slouken@3407
   408
                                 for array bounds */
slouken@5218
   409
} SDL_Scancode;
slouken@2303
   410
slouken@10638
   411
#endif /* SDL_scancode_h_ */
slouken@2303
   412
slouken@2303
   413
/* vi: set ts=4 sw=4 expandtab: */