keycode constants
This commit is contained in:
parent
5322668415
commit
5d0d9216de
@ -1,8 +1,8 @@
|
||||
import ctypes
|
||||
from .internal import _SDL
|
||||
from .enum import CEnum
|
||||
|
||||
# SDL_GetKeyboardFocus
|
||||
# have this return a Window() object
|
||||
# TODO: GetKeyboardFocus - have this return a Window() object
|
||||
|
||||
_SDL.SDL_GetKeyboardState.restype = ctypes.POINTER(ctypes.c_uint8)
|
||||
_keyboard_state = None
|
||||
@ -41,3 +41,505 @@ def stop_text_input():
|
||||
|
||||
def set_text_input_rect(rect):
|
||||
_SDL.SDL_SetTextInputRect(rect)
|
||||
|
||||
|
||||
class Keymod(CEnum):
|
||||
NONE = 0x0000
|
||||
LSHIFT = 0x0001
|
||||
RSHIFT = 0x0002
|
||||
SHIFT = 0x0001 | 0x0002
|
||||
LCTRL = 0x0040
|
||||
RCTRL = 0x0080
|
||||
CTRL = 0x0040 | 0x0080
|
||||
LALT = 0x0100
|
||||
RALT = 0x0200
|
||||
ALT = 0x0100 | 0x0200
|
||||
LGUI = 0x0400
|
||||
RGUI = 0x0800
|
||||
GUI = 0x0400 | 0x0800
|
||||
NUM = 0x1000
|
||||
CAPS = 0x2000
|
||||
MODE = 0x4000
|
||||
RESERVED = 0x8000
|
||||
|
||||
class Scancode(CEnum):
|
||||
UNKNOWN = 0x000
|
||||
A = 0x004
|
||||
B = 0x005
|
||||
C = 0x006
|
||||
D = 0x007
|
||||
E = 0x008
|
||||
F = 0x009
|
||||
G = 0x00A
|
||||
H = 0x00B
|
||||
I = 0x00C
|
||||
J = 0x00D
|
||||
K = 0x00E
|
||||
L = 0x00F
|
||||
M = 0x010
|
||||
N = 0x011
|
||||
O = 0x012
|
||||
P = 0x013
|
||||
Q = 0x014
|
||||
R = 0x015
|
||||
S = 0x016
|
||||
T = 0x017
|
||||
U = 0x018
|
||||
V = 0x019
|
||||
W = 0x01A
|
||||
X = 0x01B
|
||||
Y = 0x01C
|
||||
Z = 0x01D
|
||||
ONE = 0x01E
|
||||
TWO = 0x01F
|
||||
THREE = 0x020
|
||||
FOUR = 0x021
|
||||
FIVE = 0x022
|
||||
SIX = 0x023
|
||||
SEVEN = 0x024
|
||||
EIGHT = 0x025
|
||||
NINE = 0x026
|
||||
ZERO = 0x027
|
||||
RETURN = 0x028
|
||||
ESCAPE = 0x029
|
||||
BACKSPACE = 0x02A
|
||||
TAB = 0x02B
|
||||
SPACE = 0x02C
|
||||
MINUS = 0x02D
|
||||
EQUALS = 0x02E
|
||||
LEFTBRACKET = 0x02F
|
||||
RIGHTBRACKET = 0x030
|
||||
BACKSLASH = 0x031
|
||||
NONUSHASH = 0x032
|
||||
SEMICOLON = 0x033
|
||||
APOSTROPHE = 0x034
|
||||
GRAVE = 0x035
|
||||
COMMA = 0x036
|
||||
PERIOD = 0x037
|
||||
SLASH = 0x038
|
||||
CAPSLOCK = 0x039
|
||||
F1 = 0x03A
|
||||
F2 = 0x03B
|
||||
F3 = 0x03C
|
||||
F4 = 0x03D
|
||||
F5 = 0x03E
|
||||
F6 = 0x03F
|
||||
F7 = 0x040
|
||||
F8 = 0x041
|
||||
F9 = 0x042
|
||||
F10 = 0x043
|
||||
F11 = 0x044
|
||||
F12 = 0x045
|
||||
PRINTSCREEN = 0x046
|
||||
SCROLLLOCK = 0x047
|
||||
PAUSE = 0x048
|
||||
INSERT = 0x049
|
||||
HOME = 0x04A
|
||||
PAGEUP = 0x04B
|
||||
DELETE = 0x04C
|
||||
END = 0x04D
|
||||
PAGEDOWN = 0x04E
|
||||
RIGHT = 0x04F
|
||||
LEFT = 0x050
|
||||
DOWN = 0x051
|
||||
UP = 0x052
|
||||
NUMLOCKCLEAR = 0x053
|
||||
KP_DIVIDE = 0x054
|
||||
KP_MULTIPLY = 0x055
|
||||
KP_MINUS = 0x056
|
||||
KP_PLUS = 0x057
|
||||
KP_ENTER = 0x058
|
||||
KP_1 = 0x059
|
||||
KP_2 = 0x05A
|
||||
KP_3 = 0x05B
|
||||
KP_4 = 0x05C
|
||||
KP_5 = 0x05D
|
||||
KP_6 = 0x05E
|
||||
KP_7 = 0x05F
|
||||
KP_8 = 0x060
|
||||
KP_9 = 0x061
|
||||
KP_0 = 0x062
|
||||
KP_PERIOD = 0x063
|
||||
NONUSBACKSLASH = 0x064
|
||||
APPLICATION = 0x065
|
||||
POWER = 0x066
|
||||
KP_EQUALS = 0x067
|
||||
F13 = 0x068
|
||||
F14 = 0x069
|
||||
F15 = 0x06A
|
||||
F16 = 0x06B
|
||||
F17 = 0x06C
|
||||
F18 = 0x06D
|
||||
F19 = 0x06E
|
||||
F20 = 0x06F
|
||||
F21 = 0x070
|
||||
F22 = 0x071
|
||||
F23 = 0x072
|
||||
F24 = 0x073
|
||||
EXECUTE = 0x074
|
||||
HELP = 0x075
|
||||
MENU = 0x076
|
||||
SELECT = 0x077
|
||||
STOP = 0x078
|
||||
AGAIN = 0x079
|
||||
UNDO = 0x07A
|
||||
CUT = 0x07B
|
||||
COPY = 0x07C
|
||||
PASTE = 0x07D
|
||||
FIND = 0x07E
|
||||
MUTE = 0x07F
|
||||
VOLUMEUP = 0x080
|
||||
VOLUMEDOWN = 0x081
|
||||
LOCKINGCAPSLOCK = 0x082
|
||||
LOCKINGNUMLOCK = 0x083
|
||||
LOCKINGSCROLLLOCK = 0x084
|
||||
KP_COMMA = 0x085
|
||||
KP_EQUALSAS400 = 0x086
|
||||
INTERNATIONAL1 = 0x087
|
||||
INTERNATIONAL2 = 0x088
|
||||
INTERNATIONAL3 = 0x089
|
||||
INTERNATIONAL4 = 0x08A
|
||||
INTERNATIONAL5 = 0x08B
|
||||
INTERNATIONAL6 = 0x08C
|
||||
INTERNATIONAL7 = 0x08D
|
||||
INTERNATIONAL8 = 0x08E
|
||||
INTERNATIONAL9 = 0x08F
|
||||
LANG1 = 0x090
|
||||
LANG2 = 0x091
|
||||
LANG3 = 0x092
|
||||
LANG4 = 0x093
|
||||
LANG5 = 0x094
|
||||
LANG6 = 0x095
|
||||
LANG7 = 0x096
|
||||
LANG8 = 0x097
|
||||
LANG9 = 0x098
|
||||
ALTERASE = 0x099
|
||||
SYSREQ = 0x09A
|
||||
CANCEL = 0x09B
|
||||
CLEAR = 0x09C
|
||||
PRIOR = 0x09D
|
||||
RETURN2 = 0x09E
|
||||
SEPARATOR = 0x09F
|
||||
OUT = 0x0A0
|
||||
OPER = 0x0A1
|
||||
CLEARAGAIN = 0x0A2
|
||||
CRSEL = 0x0A3
|
||||
EXSEL = 0x0A4
|
||||
KP_00 = 0x0B0
|
||||
KP_000 = 0x0B1
|
||||
THOUSANDSSEPARATOR = 0x0B2
|
||||
DECIMALSEPARATOR = 0x0B3
|
||||
CURRENCYUNIT = 0x0B4
|
||||
CURRENCYSUBUNIT = 0x0B5
|
||||
KP_LEFTPAREN = 0x0B6
|
||||
KP_RIGHTPAREN = 0x0B7
|
||||
KP_LEFTBRACE = 0x0B8
|
||||
KP_RIGHTBRACE = 0x0B9
|
||||
KP_TAB = 0x0BA
|
||||
KP_BACKSPACE = 0x0BB
|
||||
KP_A = 0x0BC
|
||||
KP_B = 0x0BD
|
||||
KP_C = 0x0BE
|
||||
KP_D = 0x0BF
|
||||
KP_E = 0x0C0
|
||||
KP_F = 0x0C1
|
||||
KP_XOR = 0x0C2
|
||||
KP_POWER = 0x0C3
|
||||
KP_PERCENT = 0x0C4
|
||||
KP_LESS = 0x0C5
|
||||
KP_GREATER = 0x0C6
|
||||
KP_AMPERSAND = 0x0C7
|
||||
KP_DBLAMPERSAND = 0x0C8
|
||||
KP_VERTICALBAR = 0x0C9
|
||||
KP_DBLVERTICALBAR = 0x0CA
|
||||
KP_COLON = 0x0CB
|
||||
KP_HASH = 0x0CC
|
||||
KP_SPACE = 0x0CD
|
||||
KP_AT = 0x0CE
|
||||
KP_EXCLAM = 0x0CF
|
||||
KP_MEMSTORE = 0x0D0
|
||||
KP_MEMRECALL = 0x0D1
|
||||
KP_MEMCLEAR = 0x0D2
|
||||
KP_MEMADD = 0x0D3
|
||||
KP_MEMSUBTRACT = 0x0D4
|
||||
KP_MEMMULTIPLY = 0x0D5
|
||||
KP_MEMDIVIDE = 0x0D6
|
||||
KP_PLUSMINUS = 0x0D7
|
||||
KP_CLEAR = 0x0D8
|
||||
KP_CLEARENTRY = 0x0D9
|
||||
KP_BINARY = 0x0DA
|
||||
KP_OCTAL = 0x0DB
|
||||
KP_DECIMAL = 0x0DC
|
||||
KP_HEXADECIMAL = 0x0DD
|
||||
LCTRL = 0x0E0
|
||||
LSHIFT = 0x0E1
|
||||
LALT = 0x0E2
|
||||
LGUI = 0x0E3
|
||||
RCTRL = 0x0E4
|
||||
RSHIFT = 0x0E5
|
||||
RALT = 0x0E6
|
||||
RGUI = 0x0E7
|
||||
MODE = 0x101
|
||||
AUDIONEXT = 0x102
|
||||
AUDIOPREV = 0x103
|
||||
AUDIOSTOP = 0x104
|
||||
AUDIOPLAY = 0x105
|
||||
AUDIOMUTE = 0x106
|
||||
MEDIASELECT = 0x107
|
||||
WWW = 0x108
|
||||
MAIL = 0x109
|
||||
CALCULATOR = 0x10A
|
||||
COMPUTER = 0x10B
|
||||
AC_SEARCH = 0x10C
|
||||
AC_HOME = 0x10D
|
||||
AC_BACK = 0x10E
|
||||
AC_FORWARD = 0x10F
|
||||
AC_STOP = 0x110
|
||||
AC_REFRESH = 0x111
|
||||
AC_BOOKMARKS = 0x112
|
||||
BRIGHTNESSDOWN = 0x113
|
||||
BRIGHTNESSUP = 0x114
|
||||
DISPLAYSWITCH = 0x115
|
||||
KBDILLUMTOGGLE = 0x116
|
||||
KBDILLUMDOWN = 0x117
|
||||
KBDILLUMUP = 0x118
|
||||
EJECT = 0x119
|
||||
SLEEP = 0x11A
|
||||
|
||||
class Keycode(CEnum):
|
||||
UNKNOWN = 0x00
|
||||
BACKSPACE = 0x08
|
||||
TAB = 0x09
|
||||
RETURN = 0x0D
|
||||
ESCAPE = 0x1B
|
||||
SPACE = 0x20
|
||||
EXCLAIM = 0x21
|
||||
QUOTEDBL = 0x22
|
||||
HASH = 0x23
|
||||
DOLLAR = 0x24
|
||||
PERCENT = 0x25
|
||||
AMPERSAND = 0x26
|
||||
QUOTE = 0x27
|
||||
LEFTPAREN = 0x28
|
||||
RIGHTPAREN = 0x29
|
||||
ASTERISK = 0x2A
|
||||
PLUS = 0x2B
|
||||
COMMA = 0x2C
|
||||
MINUS = 0x2D
|
||||
PERIOD = 0x2E
|
||||
SLASH = 0x2F
|
||||
ZERO = 0x30
|
||||
ONE = 0x31
|
||||
TWO = 0x32
|
||||
THREE = 0x33
|
||||
FOUR = 0x34
|
||||
FIVE = 0x35
|
||||
SIX = 0x36
|
||||
SEVEN = 0x37
|
||||
EIGHT = 0x38
|
||||
NINE = 0x39
|
||||
COLON = 0x3A
|
||||
SEMICOLON = 0x3B
|
||||
LESS = 0x3C
|
||||
EQUALS = 0x3D
|
||||
GREATER = 0x3E
|
||||
QUESTION = 0x3F
|
||||
AT = 0x40
|
||||
LEFTBRACKET = 0x5B
|
||||
BACKSLASH = 0x5C
|
||||
RIGHTBRACKET = 0x5D
|
||||
CARET = 0x5E
|
||||
UNDERSCORE = 0x5F
|
||||
BACKQUOTE = 0x60
|
||||
a = 0x61
|
||||
b = 0x62
|
||||
c = 0x63
|
||||
d = 0x64
|
||||
e = 0x65
|
||||
f = 0x66
|
||||
g = 0x67
|
||||
h = 0x68
|
||||
i = 0x69
|
||||
j = 0x6A
|
||||
k = 0x6B
|
||||
l = 0x6C
|
||||
m = 0x6D
|
||||
n = 0x6E
|
||||
o = 0x6F
|
||||
p = 0x70
|
||||
q = 0x71
|
||||
r = 0x72
|
||||
s = 0x73
|
||||
t = 0x74
|
||||
u = 0x75
|
||||
v = 0x76
|
||||
w = 0x77
|
||||
x = 0x78
|
||||
y = 0x79
|
||||
z = 0x7A
|
||||
DELETE = 0xB1
|
||||
CAPSLOCK = 0x40000039
|
||||
F1 = 0x4000003A
|
||||
F2 = 0x4000003B
|
||||
F3 = 0x4000003C
|
||||
F4 = 0x4000003D
|
||||
F5 = 0x4000003E
|
||||
F6 = 0x4000003F
|
||||
F7 = 0x40000040
|
||||
F8 = 0x40000041
|
||||
F9 = 0x40000042
|
||||
F10 = 0x40000043
|
||||
F11 = 0x40000044
|
||||
F12 = 0x40000045
|
||||
PRINTSCREEN = 0x40000046
|
||||
SCROLLLOCK = 0x40000047
|
||||
PAUSE = 0x40000048
|
||||
INSERT = 0x40000049
|
||||
HOME = 0x4000004A
|
||||
PAGEUP = 0x4000004B
|
||||
END = 0x4000004D
|
||||
PAGEDOWN = 0x4000004E
|
||||
RIGHT = 0x4000004F
|
||||
LEFT = 0x40000050
|
||||
DOWN = 0x40000051
|
||||
UP = 0x40000052
|
||||
NUMLOCKCLEAR = 0x40000053
|
||||
KP_DIVIDE = 0x40000054
|
||||
KP_MULTIPLY = 0x40000055
|
||||
KP_MINUS = 0x40000056
|
||||
KP_PLUS = 0x40000057
|
||||
KP_ENTER = 0x40000058
|
||||
KP_1 = 0x40000059
|
||||
KP_2 = 0x4000005A
|
||||
KP_3 = 0x4000005B
|
||||
KP_4 = 0x4000005C
|
||||
KP_5 = 0x4000005D
|
||||
KP_6 = 0x4000005E
|
||||
KP_7 = 0x4000005F
|
||||
KP_8 = 0x40000060
|
||||
KP_9 = 0x40000061
|
||||
KP_0 = 0x40000062
|
||||
KP_PERIOD = 0x40000063
|
||||
APPLICATION = 0x40000065
|
||||
POWER = 0x40000066
|
||||
KP_EQUALS = 0x40000067
|
||||
F13 = 0x40000068
|
||||
F14 = 0x40000069
|
||||
F15 = 0x4000006A
|
||||
F16 = 0x4000006B
|
||||
F17 = 0x4000006C
|
||||
F18 = 0x4000006D
|
||||
F19 = 0x4000006E
|
||||
F20 = 0x4000006F
|
||||
F21 = 0x40000070
|
||||
F22 = 0x40000071
|
||||
F23 = 0x40000072
|
||||
F24 = 0x40000073
|
||||
EXECUTE = 0x40000074
|
||||
HELP = 0x40000075
|
||||
MENU = 0x40000076
|
||||
SELECT = 0x40000077
|
||||
STOP = 0x40000078
|
||||
AGAIN = 0x40000079
|
||||
UNDO = 0x4000007A
|
||||
CUT = 0x4000007B
|
||||
COPY = 0x4000007C
|
||||
PASTE = 0x4000007D
|
||||
FIND = 0x4000007E
|
||||
MUTE = 0x4000007F
|
||||
VOLUMEUP = 0x40000080
|
||||
VOLUMEDOWN = 0x40000081
|
||||
KP_COMMA = 0x40000085
|
||||
KP_EQUALSAS400 = 0x40000086
|
||||
ALTERASE = 0x40000099
|
||||
SYSREQ = 0x4000009A
|
||||
CANCEL = 0x4000009B
|
||||
CLEAR = 0x4000009C
|
||||
PRIOR = 0x4000009D
|
||||
RETURN2 = 0x4000009E
|
||||
SEPARATOR = 0x4000009F
|
||||
OUT = 0x400000A0
|
||||
OPER = 0x400000A1
|
||||
CLEARAGAIN = 0x400000A2
|
||||
CRSEL = 0x400000A3
|
||||
EXSEL = 0x400000A4
|
||||
KP_00 = 0x400000B0
|
||||
KP_000 = 0x400000B1
|
||||
THOUSANDSSEPARATOR = 0x400000B2
|
||||
DECIMALSEPARATOR = 0x400000B3
|
||||
CURRENCYUNIT = 0x400000B4
|
||||
CURRENCYSUBUNIT = 0x400000B5
|
||||
KP_LEFTPAREN = 0x400000B6
|
||||
KP_RIGHTPAREN = 0x400000B7
|
||||
KP_LEFTBRACE = 0x400000B8
|
||||
KP_RIGHTBRACE = 0x400000B9
|
||||
KP_TAB = 0x400000BA
|
||||
KP_BACKSPACE = 0x400000BB
|
||||
KP_A = 0x400000BC
|
||||
KP_B = 0x400000BD
|
||||
KP_C = 0x400000BE
|
||||
KP_D = 0x400000BF
|
||||
KP_E = 0x400000C0
|
||||
KP_F = 0x400000C1
|
||||
KP_XOR = 0x400000C2
|
||||
KP_POWER = 0x400000C3
|
||||
KP_PERCENT = 0x400000C4
|
||||
KP_LESS = 0x400000C5
|
||||
KP_GREATER = 0x400000C6
|
||||
KP_AMPERSAND = 0x400000C7
|
||||
KP_DBLAMPERSAND = 0x400000C8
|
||||
KP_VERTICALBAR = 0x400000C9
|
||||
KP_DBLVERTICALBAR = 0x400000CA
|
||||
KP_COLON = 0x400000CB
|
||||
KP_HASH = 0x400000CC
|
||||
KP_SPACE = 0x400000CD
|
||||
KP_AT = 0x400000CE
|
||||
KP_EXCLAM = 0x400000CF
|
||||
KP_MEMSTORE = 0x400000D0
|
||||
KP_MEMRECALL = 0x400000D1
|
||||
KP_MEMCLEAR = 0x400000D2
|
||||
KP_MEMADD = 0x400000D3
|
||||
KP_MEMSUBTRACT = 0x400000D4
|
||||
KP_MEMMULTIPLY = 0x400000D5
|
||||
KP_MEMDIVIDE = 0x400000D6
|
||||
KP_PLUSMINUS = 0x400000D7
|
||||
KP_CLEAR = 0x400000D8
|
||||
KP_CLEARENTRY = 0x400000D9
|
||||
KP_BINARY = 0x400000DA
|
||||
KP_OCTAL = 0x400000DB
|
||||
KP_DECIMAL = 0x400000DC
|
||||
KP_HEXADECIMAL = 0x400000DD
|
||||
LCTRL = 0x400000E0
|
||||
LSHIFT = 0x400000E1
|
||||
LALT = 0x400000E2
|
||||
LGUI = 0x400000E3
|
||||
RCTRL = 0x400000E4
|
||||
RSHIFT = 0x400000E5
|
||||
RALT = 0x400000E6
|
||||
RGUI = 0x400000E7
|
||||
MODE = 0x40000101
|
||||
AUDIONEXT = 0x40000102
|
||||
AUDIOPREV = 0x40000103
|
||||
AUDIOSTOP = 0x40000104
|
||||
AUDIOPLAY = 0x40000105
|
||||
AUDIOMUTE = 0x40000106
|
||||
MEDIASELECT = 0x40000107
|
||||
WWW = 0x40000108
|
||||
MAIL = 0x40000109
|
||||
CALCULATOR = 0x4000010A
|
||||
COMPUTER = 0x4000010B
|
||||
AC_SEARCH = 0x4000010C
|
||||
AC_HOME = 0x4000010D
|
||||
AC_BACK = 0x4000010E
|
||||
AC_FORWARD = 0x4000010F
|
||||
AC_STOP = 0x40000110
|
||||
AC_REFRESH = 0x40000111
|
||||
AC_BOOKMARKS = 0x40000112
|
||||
BRIGHTNESSDOWN = 0x40000113
|
||||
BRIGHTNESSUP = 0x40000114
|
||||
DISPLAYSWITCH = 0x40000115
|
||||
KBDILLUMTOGGLE = 0x40000116
|
||||
KBDILLUMDOWN = 0x40000117
|
||||
KBDILLUMUP = 0x40000118
|
||||
EJECT = 0x40000119
|
||||
SLEEP = 0x4000011A
|
||||
|
@ -1,14 +1,15 @@
|
||||
from .. import init, InitFlags
|
||||
from ..keyboard import (get_mod_state, set_mod_state, get_key_from_scancode,
|
||||
get_scancode_from_key, get_key_name, get_scancode_name)
|
||||
get_scancode_from_key, get_key_name, get_scancode_name,
|
||||
Scancode, Keycode)
|
||||
from nose.tools import with_setup
|
||||
|
||||
_keys = [
|
||||
# scancode, keycode, name
|
||||
(40, 13, 'Return'),
|
||||
(4, 97, 'A'),
|
||||
(87, 1073741911, 'Keypad +'),
|
||||
(225, 1073742049, 'Left Shift')
|
||||
(Scancode.RETURN, Keycode.RETURN, 'Return'),
|
||||
(Scancode.A, Keycode.a, 'A'),
|
||||
(Scancode.KP_PLUS, Keycode.KP_PLUS, 'Keypad +'),
|
||||
(Scancode.LSHIFT, Keycode.LSHIFT, 'Left Shift')
|
||||
]
|
||||
|
||||
def init_everything():
|
||||
|
Loading…
Reference in New Issue
Block a user