{-# LINE 1 "Graphics/UI/SDL/Keysym.hsc" #-}
{-# LINE 5 "Graphics/UI/SDL/Keysym.hsc" #-}
module Graphics.UI.SDL.Keysym where
import Foreign (Word16, Word32,
Storable(poke, sizeOf, alignment, peekByteOff, pokeByteOff, peek))
import Data.Char (chr, ord)
import Prelude hiding (Enum(..))
import Graphics.UI.SDL.Utilities (Enum(..), toBitmask, fromBitmask)
data Keysym
= Keysym
{ Keysym -> SDLKey
symKey :: SDLKey,
Keysym -> [Modifier]
symModifiers :: [Modifier],
Keysym -> Char
symUnicode :: Char}
deriving (Int -> Keysym -> ShowS
[Keysym] -> ShowS
Keysym -> String
(Int -> Keysym -> ShowS)
-> (Keysym -> String) -> ([Keysym] -> ShowS) -> Show Keysym
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Keysym -> ShowS
showsPrec :: Int -> Keysym -> ShowS
$cshow :: Keysym -> String
show :: Keysym -> String
$cshowList :: [Keysym] -> ShowS
showList :: [Keysym] -> ShowS
Show,Keysym -> Keysym -> Bool
(Keysym -> Keysym -> Bool)
-> (Keysym -> Keysym -> Bool) -> Eq Keysym
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Keysym -> Keysym -> Bool
== :: Keysym -> Keysym -> Bool
$c/= :: Keysym -> Keysym -> Bool
/= :: Keysym -> Keysym -> Bool
Eq)
instance Storable Keysym where
sizeOf :: Keysym -> Int
sizeOf = Int -> Keysym -> Int
forall a b. a -> b -> a
const (Int
16)
{-# LINE 34 "Graphics/UI/SDL/Keysym.hsc" #-}
alignment = const 4
poke :: Ptr Keysym -> Keysym -> IO ()
poke Ptr Keysym
ptr (Keysym SDLKey
key [Modifier]
mods Char
unicode)
= do (\Ptr Keysym
hsc_ptr -> Ptr Keysym -> Int -> Word32 -> IO ()
forall b. Ptr b -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr Keysym
hsc_ptr Int
4) Ptr Keysym
ptr (SDLKey -> Word32
forall a b. Enum a b => a -> b
fromEnum SDLKey
key)
{-# LINE 37 "Graphics/UI/SDL/Keysym.hsc" #-}
(\Ptr Keysym
hsc_ptr -> Ptr Keysym -> Int -> Word32 -> IO ()
forall b. Ptr b -> Int -> Word32 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr Keysym
hsc_ptr Int
8) Ptr Keysym
ptr ([Modifier] -> Word32
forall a b. (Enum a b, Bits b, Num b) => [a] -> b
toBitmask [Modifier]
mods)
{-# LINE 38 "Graphics/UI/SDL/Keysym.hsc" #-}
(\Ptr Keysym
hsc_ptr -> Ptr Keysym -> Int -> Word16 -> IO ()
forall b. Ptr b -> Int -> Word16 -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr Keysym
hsc_ptr Int
12) Ptr Keysym
ptr (Int -> Word16
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Char -> Int
ord Char
unicode) :: Word16)
{-# LINE 39 "Graphics/UI/SDL/Keysym.hsc" #-}
peek ptr
= do sym <- (\hsc_ptr -> peekByteOff hsc_ptr 4) ptr
{-# LINE 41 "Graphics/UI/SDL/Keysym.hsc" #-}
mods <- (\hsc_ptr -> peekByteOff hsc_ptr 8) ptr
{-# LINE 42 "Graphics/UI/SDL/Keysym.hsc" #-}
uni <- (\hsc_ptr -> peekByteOff hsc_ptr 12) ptr
{-# LINE 43 "Graphics/UI/SDL/Keysym.hsc" #-}
return $! Keysym (toEnum sym) (fromBitmask mods) (chr $ fromIntegral (uni::Word16))
data Modifier = KeyModNone
| KeyModLeftShift
| KeyModRightShift
| KeyModLeftCtrl
| KeyModRightCtrl
| KeyModLeftAlt
| KeyModRightAlt
| KeyModLeftMeta
| KeyModRightMeta
| KeyModNum
| KeyModCaps
| KeyModMode
| KeyModCtrl
| KeyModShift
| KeyModAlt
| KeyModMeta
deriving (Modifier -> Modifier -> Bool
(Modifier -> Modifier -> Bool)
-> (Modifier -> Modifier -> Bool) -> Eq Modifier
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Modifier -> Modifier -> Bool
== :: Modifier -> Modifier -> Bool
$c/= :: Modifier -> Modifier -> Bool
/= :: Modifier -> Modifier -> Bool
Eq, Eq Modifier
Eq Modifier
-> (Modifier -> Modifier -> Ordering)
-> (Modifier -> Modifier -> Bool)
-> (Modifier -> Modifier -> Bool)
-> (Modifier -> Modifier -> Bool)
-> (Modifier -> Modifier -> Bool)
-> (Modifier -> Modifier -> Modifier)
-> (Modifier -> Modifier -> Modifier)
-> Ord Modifier
Modifier -> Modifier -> Bool
Modifier -> Modifier -> Ordering
Modifier -> Modifier -> Modifier
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: Modifier -> Modifier -> Ordering
compare :: Modifier -> Modifier -> Ordering
$c< :: Modifier -> Modifier -> Bool
< :: Modifier -> Modifier -> Bool
$c<= :: Modifier -> Modifier -> Bool
<= :: Modifier -> Modifier -> Bool
$c> :: Modifier -> Modifier -> Bool
> :: Modifier -> Modifier -> Bool
$c>= :: Modifier -> Modifier -> Bool
>= :: Modifier -> Modifier -> Bool
$cmax :: Modifier -> Modifier -> Modifier
max :: Modifier -> Modifier -> Modifier
$cmin :: Modifier -> Modifier -> Modifier
min :: Modifier -> Modifier -> Modifier
Ord, Int -> Modifier -> ShowS
[Modifier] -> ShowS
Modifier -> String
(Int -> Modifier -> ShowS)
-> (Modifier -> String) -> ([Modifier] -> ShowS) -> Show Modifier
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Modifier -> ShowS
showsPrec :: Int -> Modifier -> ShowS
$cshow :: Modifier -> String
show :: Modifier -> String
$cshowList :: [Modifier] -> ShowS
showList :: [Modifier] -> ShowS
Show)
instance Bounded Modifier where
minBound :: Modifier
minBound = Modifier
KeyModNone
maxBound :: Modifier
maxBound = Modifier
KeyModMode
instance Enum Modifier Word32 where
{-# LINE 67 "Graphics/UI/SDL/Keysym.hsc" #-}
fromEnum KeyModNone = 0
fromEnum KeyModLeftShift = 1
fromEnum KeyModRightShift = 2
fromEnum KeyModLeftCtrl = 64
fromEnum KeyModRightCtrl = 128
fromEnum KeyModLeftAlt = 256
fromEnum KeyModRightAlt = 512
fromEnum KeyModLeftMeta = 1024
fromEnum KeyModRightMeta = 2048
fromEnum KeyModNum = 4096
fromEnum KeyModCaps = 8192
fromEnum KeyModMode = 16384
fromEnum KeyModCtrl = 192
fromEnum KeyModShift = 3
fromEnum KeyModAlt = 768
fromEnum KeyModMeta = 3072
toEnum :: Word32 -> Modifier
toEnum Word32
0 = Modifier
KeyModNone
toEnum Word32
1 = Modifier
KeyModLeftShift
toEnum Word32
2 = Modifier
KeyModRightShift
toEnum Word32
64 = Modifier
KeyModLeftCtrl
toEnum Word32
128 = Modifier
KeyModRightCtrl
toEnum Word32
256 = Modifier
KeyModLeftAlt
toEnum Word32
512 = Modifier
KeyModRightAlt
toEnum Word32
1024 = Modifier
KeyModLeftMeta
toEnum Word32
2048 = Modifier
KeyModRightMeta
toEnum Word32
4096 = Modifier
KeyModNum
toEnum Word32
8192 = Modifier
KeyModCaps
toEnum Word32
16384 = Modifier
KeyModMode
toEnum Word32
192 = Modifier
KeyModCtrl
toEnum Word32
3 = Modifier
KeyModShift
toEnum Word32
768 = Modifier
KeyModAlt
toEnum Word32
3072 = Modifier
KeyModMeta
toEnum Word32
_ = String -> Modifier
forall a. HasCallStack => String -> a
error String
"Graphics.UI.SDL.Keysym.toEnum: bad argument"
succ :: Modifier -> Modifier
succ Modifier
KeyModNone = Modifier
KeyModLeftShift
succ Modifier
KeyModLeftShift = Modifier
KeyModRightShift
succ Modifier
KeyModRightShift = Modifier
KeyModLeftCtrl
succ Modifier
KeyModLeftCtrl = Modifier
KeyModRightCtrl
succ Modifier
KeyModRightCtrl = Modifier
KeyModLeftAlt
succ Modifier
KeyModLeftAlt = Modifier
KeyModRightAlt
succ Modifier
KeyModRightAlt = Modifier
KeyModLeftMeta
succ Modifier
KeyModLeftMeta = Modifier
KeyModRightMeta
succ Modifier
KeyModRightMeta = Modifier
KeyModNum
succ Modifier
KeyModNum = Modifier
KeyModCaps
succ Modifier
KeyModCaps = Modifier
KeyModMode
succ Modifier
KeyModMode = Modifier
KeyModCtrl
succ Modifier
KeyModCtrl = Modifier
KeyModShift
succ Modifier
KeyModShift = Modifier
KeyModAlt
succ Modifier
KeyModAlt = Modifier
KeyModMeta
succ Modifier
_ = String -> Modifier
forall a. HasCallStack => String -> a
error String
"Graphics.UI.SDL.Keysym.succ: bad argument"
pred :: Modifier -> Modifier
pred Modifier
KeyModLeftShift = Modifier
KeyModNone
pred Modifier
KeyModRightShift = Modifier
KeyModLeftShift
pred Modifier
KeyModLeftCtrl = Modifier
KeyModRightShift
pred Modifier
KeyModRightCtrl = Modifier
KeyModLeftCtrl
pred Modifier
KeyModLeftAlt = Modifier
KeyModRightCtrl
pred Modifier
KeyModRightAlt = Modifier
KeyModLeftAlt
pred Modifier
KeyModLeftMeta = Modifier
KeyModRightAlt
pred Modifier
KeyModRightMeta = Modifier
KeyModLeftMeta
pred Modifier
KeyModNum = Modifier
KeyModRightMeta
pred Modifier
KeyModCaps = Modifier
KeyModNum
pred Modifier
KeyModMode = Modifier
KeyModCaps
pred Modifier
KeyModCtrl = Modifier
KeyModMode
pred Modifier
KeyModShift = Modifier
KeyModCtrl
pred Modifier
KeyModAlt = Modifier
KeyModShift
pred Modifier
KeyModMeta = Modifier
KeyModAlt
pred Modifier
_ = String -> Modifier
forall a. HasCallStack => String -> a
error String
"Graphics.UI.SDL.Keysym.pred: bad argument"
enumFromTo :: Modifier -> Modifier -> [Modifier]
enumFromTo Modifier
x Modifier
y | Modifier
x Modifier -> Modifier -> Bool
forall a. Ord a => a -> a -> Bool
> Modifier
y = []
| Modifier
x Modifier -> Modifier -> Bool
forall a. Eq a => a -> a -> Bool
== Modifier
y = [Modifier
y]
| Bool
True = Modifier
x Modifier -> [Modifier] -> [Modifier]
forall a. a -> [a] -> [a]
: Modifier -> Modifier -> [Modifier]
forall a b. Enum a b => a -> a -> [a]
enumFromTo (Modifier -> Modifier
forall a b. Enum a b => a -> a
succ Modifier
x) Modifier
y
data SDLKey = SDLK_UNKNOWN
| SDLK_FIRST
| SDLK_BACKSPACE
| SDLK_TAB
| SDLK_CLEAR
| SDLK_RETURN
| SDLK_PAUSE
| SDLK_ESCAPE
| SDLK_SPACE
| SDLK_EXCLAIM
| SDLK_QUOTEDBL
| SDLK_HASH
| SDLK_DOLLAR
| SDLK_AMPERSAND
| SDLK_QUOTE
| SDLK_LEFTPAREN
| SDLK_RIGHTPAREN
| SDLK_ASTERISK
| SDLK_PLUS
| SDLK_COMMA
| SDLK_MINUS
| SDLK_PERIOD
| SDLK_SLASH
| SDLK_0
| SDLK_1
| SDLK_2
| SDLK_3
| SDLK_4
| SDLK_5
| SDLK_6
| SDLK_7
| SDLK_8
| SDLK_9
| SDLK_COLON
| SDLK_SEMICOLON
| SDLK_LESS
| SDLK_EQUALS
| SDLK_GREATER
| SDLK_QUESTION
| SDLK_AT
| SDLK_LEFTBRACKET
| SDLK_BACKSLASH
| SDLK_RIGHTBRACKET
| SDLK_CARET
| SDLK_UNDERSCORE
| SDLK_BACKQUOTE
| SDLK_a
| SDLK_b
| SDLK_c
| SDLK_d
| SDLK_e
| SDLK_f
| SDLK_g
| SDLK_h
| SDLK_i
| SDLK_j
| SDLK_k
| SDLK_l
| SDLK_m
| SDLK_n
| SDLK_o
| SDLK_p
| SDLK_q
| SDLK_r
| SDLK_s
| SDLK_t
| SDLK_u
| SDLK_v
| SDLK_w
| SDLK_x
| SDLK_y
| SDLK_z
| SDLK_DELETE
| SDLK_WORLD_0
| SDLK_WORLD_1
| SDLK_WORLD_2
| SDLK_WORLD_3
| SDLK_WORLD_4
| SDLK_WORLD_5
| SDLK_WORLD_6
| SDLK_WORLD_7
| SDLK_WORLD_8
| SDLK_WORLD_9
| SDLK_WORLD_10
| SDLK_WORLD_11
| SDLK_WORLD_12
| SDLK_WORLD_13
| SDLK_WORLD_14
| SDLK_WORLD_15
| SDLK_WORLD_16
| SDLK_WORLD_17
| SDLK_WORLD_18
| SDLK_WORLD_19
| SDLK_WORLD_20
| SDLK_WORLD_21
| SDLK_WORLD_22
| SDLK_WORLD_23
| SDLK_WORLD_24
| SDLK_WORLD_25
| SDLK_WORLD_26
| SDLK_WORLD_27
| SDLK_WORLD_28
| SDLK_WORLD_29
| SDLK_WORLD_30
| SDLK_WORLD_31
| SDLK_WORLD_32
| SDLK_WORLD_33
| SDLK_WORLD_34
| SDLK_WORLD_35
| SDLK_WORLD_36
| SDLK_WORLD_37
| SDLK_WORLD_38
| SDLK_WORLD_39
| SDLK_WORLD_40
| SDLK_WORLD_41
| SDLK_WORLD_42
| SDLK_WORLD_43
| SDLK_WORLD_44
| SDLK_WORLD_45
| SDLK_WORLD_46
| SDLK_WORLD_47
| SDLK_WORLD_48
| SDLK_WORLD_49
| SDLK_WORLD_50
| SDLK_WORLD_51
| SDLK_WORLD_52
| SDLK_WORLD_53
| SDLK_WORLD_54
| SDLK_WORLD_55
| SDLK_WORLD_56
| SDLK_WORLD_57
| SDLK_WORLD_58
| SDLK_WORLD_59
| SDLK_WORLD_60
| SDLK_WORLD_61
| SDLK_WORLD_62
| SDLK_WORLD_63
| SDLK_WORLD_64
| SDLK_WORLD_65
| SDLK_WORLD_66
| SDLK_WORLD_67
| SDLK_WORLD_68
| SDLK_WORLD_69
| SDLK_WORLD_70
| SDLK_WORLD_71
| SDLK_WORLD_72
| SDLK_WORLD_73
| SDLK_WORLD_74
| SDLK_WORLD_75
| SDLK_WORLD_76
| SDLK_WORLD_77
| SDLK_WORLD_78
| SDLK_WORLD_79
| SDLK_WORLD_80
| SDLK_WORLD_81
| SDLK_WORLD_82
| SDLK_WORLD_83
| SDLK_WORLD_84
| SDLK_WORLD_85
| SDLK_WORLD_86
| SDLK_WORLD_87
| SDLK_WORLD_88
| SDLK_WORLD_89
| SDLK_WORLD_90
| SDLK_WORLD_91
| SDLK_WORLD_92
| SDLK_WORLD_93
| SDLK_WORLD_94
| SDLK_WORLD_95
| SDLK_KP0
| SDLK_KP1
| SDLK_KP2
| SDLK_KP3
| SDLK_KP4
| SDLK_KP5
| SDLK_KP6
| SDLK_KP7
| SDLK_KP8
| SDLK_KP9
| SDLK_KP_PERIOD
| SDLK_KP_DIVIDE
| SDLK_KP_MULTIPLY
| SDLK_KP_MINUS
| SDLK_KP_PLUS
| SDLK_KP_ENTER
| SDLK_KP_EQUALS
| SDLK_UP
| SDLK_DOWN
| SDLK_RIGHT
| SDLK_LEFT
| SDLK_INSERT
| SDLK_HOME
| SDLK_END
| SDLK_PAGEUP
| SDLK_PAGEDOWN
| SDLK_F1
| SDLK_F2
| SDLK_F3
| SDLK_F4
| SDLK_F5
| SDLK_F6
| SDLK_F7
| SDLK_F8
| SDLK_F9
| SDLK_F10
| SDLK_F11
| SDLK_F12
| SDLK_F13
| SDLK_F14
| SDLK_F15
| SDLK_NUMLOCK
| SDLK_CAPSLOCK
| SDLK_SCROLLOCK
| SDLK_RSHIFT
| SDLK_LSHIFT
| SDLK_RCTRL
| SDLK_LCTRL
| SDLK_RALT
| SDLK_LALT
| SDLK_RMETA
| SDLK_LMETA
| SDLK_LSUPER
| SDLK_RSUPER
| SDLK_MODE
| SDLK_COMPOSE
| SDLK_HELP
| SDLK_PRINT
| SDLK_SYSREQ
| SDLK_BREAK
|
| SDLK_POWER
| SDLK_EURO
| SDLK_UNDO
| SDLK_LAST
deriving (SDLKey -> SDLKey -> Bool
(SDLKey -> SDLKey -> Bool)
-> (SDLKey -> SDLKey -> Bool) -> Eq SDLKey
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SDLKey -> SDLKey -> Bool
== :: SDLKey -> SDLKey -> Bool
$c/= :: SDLKey -> SDLKey -> Bool
/= :: SDLKey -> SDLKey -> Bool
Eq, Eq SDLKey
Eq SDLKey
-> (SDLKey -> SDLKey -> Ordering)
-> (SDLKey -> SDLKey -> Bool)
-> (SDLKey -> SDLKey -> Bool)
-> (SDLKey -> SDLKey -> Bool)
-> (SDLKey -> SDLKey -> Bool)
-> (SDLKey -> SDLKey -> SDLKey)
-> (SDLKey -> SDLKey -> SDLKey)
-> Ord SDLKey
SDLKey -> SDLKey -> Bool
SDLKey -> SDLKey -> Ordering
SDLKey -> SDLKey -> SDLKey
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: SDLKey -> SDLKey -> Ordering
compare :: SDLKey -> SDLKey -> Ordering
$c< :: SDLKey -> SDLKey -> Bool
< :: SDLKey -> SDLKey -> Bool
$c<= :: SDLKey -> SDLKey -> Bool
<= :: SDLKey -> SDLKey -> Bool
$c> :: SDLKey -> SDLKey -> Bool
> :: SDLKey -> SDLKey -> Bool
$c>= :: SDLKey -> SDLKey -> Bool
>= :: SDLKey -> SDLKey -> Bool
$cmax :: SDLKey -> SDLKey -> SDLKey
max :: SDLKey -> SDLKey -> SDLKey
$cmin :: SDLKey -> SDLKey -> SDLKey
min :: SDLKey -> SDLKey -> SDLKey
Ord, Int -> SDLKey -> ShowS
[SDLKey] -> ShowS
SDLKey -> String
(Int -> SDLKey -> ShowS)
-> (SDLKey -> String) -> ([SDLKey] -> ShowS) -> Show SDLKey
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SDLKey -> ShowS
showsPrec :: Int -> SDLKey -> ShowS
$cshow :: SDLKey -> String
show :: SDLKey -> String
$cshowList :: [SDLKey] -> ShowS
showList :: [SDLKey] -> ShowS
Show)
instance Bounded SDLKey where
minBound :: SDLKey
minBound = SDLKey
SDLK_UNKNOWN
maxBound :: SDLKey
maxBound = SDLKey
SDLK_LAST
instance Enum SDLKey Word32 where
{-# LINE 375 "Graphics/UI/SDL/Keysym.hsc" #-}
fromEnum SDLK_UNKNOWN = 0
fromEnum SDLK_FIRST = 0
fromEnum SDLK_BACKSPACE = 8
fromEnum SDLK_TAB = 9
fromEnum SDLK_CLEAR = 12
fromEnum SDLK_RETURN = 13
fromEnum SDLK_PAUSE = 19
fromEnum SDLK_ESCAPE = 27
fromEnum SDLK_SPACE = 32
fromEnum SDLK_EXCLAIM = 33
fromEnum SDLK_QUOTEDBL = 34
fromEnum SDLK_HASH = 35
fromEnum SDLK_DOLLAR = 36
fromEnum SDLK_AMPERSAND = 38
fromEnum SDLK_QUOTE = 39
fromEnum SDLK_LEFTPAREN = 40
fromEnum SDLK_RIGHTPAREN = 41
fromEnum SDLK_ASTERISK = 42
fromEnum SDLK_PLUS = 43
fromEnum SDLK_COMMA = 44
fromEnum SDLK_MINUS = 45
fromEnum SDLK_PERIOD = 46
fromEnum SDLK_SLASH = 47
fromEnum SDLK_0 = 48
fromEnum SDLK_1 = 49
fromEnum SDLK_2 = 50
fromEnum SDLK_3 = 51
fromEnum SDLK_4 = 52
fromEnum SDLK_5 = 53
fromEnum SDLK_6 = 54
fromEnum SDLK_7 = 55
fromEnum SDLK_8 = 56
fromEnum SDLK_9 = 57
fromEnum SDLK_COLON = 58
fromEnum SDLK_SEMICOLON = 59
fromEnum SDLK_LESS = 60
fromEnum SDLK_EQUALS = 61
fromEnum SDLK_GREATER = 62
fromEnum SDLK_QUESTION = 63
fromEnum SDLK_AT = 64
fromEnum SDLK_LEFTBRACKET = 91
fromEnum SDLK_BACKSLASH = 92
fromEnum SDLK_RIGHTBRACKET = 93
fromEnum SDLK_CARET = 94
fromEnum SDLK_UNDERSCORE = 95
fromEnum SDLK_BACKQUOTE = 96
fromEnum SDLK_a = 97
fromEnum SDLK_b = 98
fromEnum SDLK_c = 99
fromEnum SDLK_d = 100
fromEnum SDLK_e = 101
fromEnum SDLK_f = 102
fromEnum SDLK_g = 103
fromEnum SDLK_h = 104
fromEnum SDLK_i = 105
fromEnum SDLK_j = 106
fromEnum SDLK_k = 107
fromEnum SDLK_l = 108
fromEnum SDLK_m = 109
fromEnum SDLK_n = 110
fromEnum SDLK_o = 111
fromEnum SDLK_p = 112
fromEnum SDLK_q = 113
fromEnum SDLK_r = 114
fromEnum SDLK_s = 115
fromEnum SDLK_t = 116
fromEnum SDLK_u = 117
fromEnum SDLK_v = 118
fromEnum SDLK_w = 119
fromEnum SDLK_x = 120
fromEnum SDLK_y = 121
fromEnum SDLK_z = 122
fromEnum SDLK_DELETE = 127
fromEnum SDLK_WORLD_0 = 160
fromEnum SDLK_WORLD_1 = 161
fromEnum SDLK_WORLD_2 = 162
fromEnum SDLK_WORLD_3 = 163
fromEnum SDLK_WORLD_4 = 164
fromEnum SDLK_WORLD_5 = 165
fromEnum SDLK_WORLD_6 = 166
fromEnum SDLK_WORLD_7 = 167
fromEnum SDLK_WORLD_8 = 168
fromEnum SDLK_WORLD_9 = 169
fromEnum SDLK_WORLD_10 = 170
fromEnum SDLK_WORLD_11 = 171
fromEnum SDLK_WORLD_12 = 172
fromEnum SDLK_WORLD_13 = 173
fromEnum SDLK_WORLD_14 = 174
fromEnum SDLK_WORLD_15 = 175
fromEnum SDLK_WORLD_16 = 176
fromEnum SDLK_WORLD_17 = 177
fromEnum SDLK_WORLD_18 = 178
fromEnum SDLK_WORLD_19 = 179
fromEnum SDLK_WORLD_20 = 180
fromEnum SDLK_WORLD_21 = 181
fromEnum SDLK_WORLD_22 = 182
fromEnum SDLK_WORLD_23 = 183
fromEnum SDLK_WORLD_24 = 184
fromEnum SDLK_WORLD_25 = 185
fromEnum SDLK_WORLD_26 = 186
fromEnum SDLK_WORLD_27 = 187
fromEnum SDLK_WORLD_28 = 188
fromEnum SDLK_WORLD_29 = 189
fromEnum SDLK_WORLD_30 = 190
fromEnum SDLK_WORLD_31 = 191
fromEnum SDLK_WORLD_32 = 192
fromEnum SDLK_WORLD_33 = 193
fromEnum SDLK_WORLD_34 = 194
fromEnum SDLK_WORLD_35 = 195
fromEnum SDLK_WORLD_36 = 196
fromEnum SDLK_WORLD_37 = 197
fromEnum SDLK_WORLD_38 = 198
fromEnum SDLK_WORLD_39 = 199
fromEnum SDLK_WORLD_40 = 200
fromEnum SDLK_WORLD_41 = 201
fromEnum SDLK_WORLD_42 = 202
fromEnum SDLK_WORLD_43 = 203
fromEnum SDLK_WORLD_44 = 204
fromEnum SDLK_WORLD_45 = 205
fromEnum SDLK_WORLD_46 = 206
fromEnum SDLK_WORLD_47 = 207
fromEnum SDLK_WORLD_48 = 208
fromEnum SDLK_WORLD_49 = 209
fromEnum SDLK_WORLD_50 = 210
fromEnum SDLK_WORLD_51 = 211
fromEnum SDLK_WORLD_52 = 212
fromEnum SDLK_WORLD_53 = 213
fromEnum SDLK_WORLD_54 = 214
fromEnum SDLK_WORLD_55 = 215
fromEnum SDLK_WORLD_56 = 216
fromEnum SDLK_WORLD_57 = 217
fromEnum SDLK_WORLD_58 = 218
fromEnum SDLK_WORLD_59 = 219
fromEnum SDLK_WORLD_60 = 220
fromEnum SDLK_WORLD_61 = 221
fromEnum SDLK_WORLD_62 = 222
fromEnum SDLK_WORLD_63 = 223
fromEnum SDLK_WORLD_64 = 224
fromEnum SDLK_WORLD_65 = 225
fromEnum SDLK_WORLD_66 = 226
fromEnum SDLK_WORLD_67 = 227
fromEnum SDLK_WORLD_68 = 228
fromEnum SDLK_WORLD_69 = 229
fromEnum SDLK_WORLD_70 = 230
fromEnum SDLK_WORLD_71 = 231
fromEnum SDLK_WORLD_72 = 232
fromEnum SDLK_WORLD_73 = 233
fromEnum SDLK_WORLD_74 = 234
fromEnum SDLK_WORLD_75 = 235
fromEnum SDLK_WORLD_76 = 236
fromEnum SDLK_WORLD_77 = 237
fromEnum SDLK_WORLD_78 = 238
fromEnum SDLK_WORLD_79 = 239
fromEnum SDLK_WORLD_80 = 240
fromEnum SDLK_WORLD_81 = 241
fromEnum SDLK_WORLD_82 = 242
fromEnum SDLK_WORLD_83 = 243
fromEnum SDLK_WORLD_84 = 244
fromEnum SDLK_WORLD_85 = 245
fromEnum SDLK_WORLD_86 = 246
fromEnum SDLK_WORLD_87 = 247
fromEnum SDLK_WORLD_88 = 248
fromEnum SDLK_WORLD_89 = 249
fromEnum SDLK_WORLD_90 = 250
fromEnum SDLK_WORLD_91 = 251
fromEnum SDLK_WORLD_92 = 252
fromEnum SDLK_WORLD_93 = 253
fromEnum SDLK_WORLD_94 = 254
fromEnum SDLK_WORLD_95 = 255
fromEnum SDLK_KP0 = 256
fromEnum SDLK_KP1 = 257
fromEnum SDLK_KP2 = 258
fromEnum SDLK_KP3 = 259
fromEnum SDLK_KP4 = 260
fromEnum SDLK_KP5 = 261
fromEnum SDLK_KP6 = 262
fromEnum SDLK_KP7 = 263
fromEnum SDLK_KP8 = 264
fromEnum SDLK_KP9 = 265
fromEnum SDLK_KP_PERIOD = 266
fromEnum SDLK_KP_DIVIDE = 267
fromEnum SDLK_KP_MULTIPLY = 268
fromEnum SDLK_KP_MINUS = 269
fromEnum SDLK_KP_PLUS = 270
fromEnum SDLK_KP_ENTER = 271
fromEnum SDLK_KP_EQUALS = 272
fromEnum SDLK_UP = 273
fromEnum SDLK_DOWN = 274
fromEnum SDLK_RIGHT = 275
fromEnum SDLK_LEFT = 276
fromEnum SDLK_INSERT = 277
fromEnum SDLK_HOME = 278
fromEnum SDLK_END = 279
fromEnum SDLK_PAGEUP = 280
fromEnum SDLK_PAGEDOWN = 281
fromEnum SDLK_F1 = 282
fromEnum SDLK_F2 = 283
fromEnum SDLK_F3 = 284
fromEnum SDLK_F4 = 285
fromEnum SDLK_F5 = 286
fromEnum SDLK_F6 = 287
fromEnum SDLK_F7 = 288
fromEnum SDLK_F8 = 289
fromEnum SDLK_F9 = 290
fromEnum SDLK_F10 = 291
fromEnum SDLK_F11 = 292
fromEnum SDLK_F12 = 293
fromEnum SDLK_F13 = 294
fromEnum SDLK_F14 = 295
fromEnum SDLK_F15 = 296
fromEnum SDLK_NUMLOCK = 300
fromEnum SDLK_CAPSLOCK = 301
fromEnum SDLK_SCROLLOCK = 302
fromEnum SDLK_RSHIFT = 303
fromEnum SDLK_LSHIFT = 304
fromEnum SDLK_RCTRL = 305
fromEnum SDLK_LCTRL = 306
fromEnum SDLK_RALT = 307
fromEnum SDLK_LALT = 308
fromEnum SDLK_RMETA = 309
fromEnum SDLK_LMETA = 310
fromEnum SDLK_LSUPER = 311
fromEnum SDLK_RSUPER = 312
fromEnum SDLK_MODE = 313
fromEnum SDLK_COMPOSE = 314
fromEnum SDLK_HELP = 315
fromEnum SDLK_PRINT = 316
fromEnum SDLK_SYSREQ = 317
fromEnum SDLK_BREAK = 318
fromEnum SDLK_MENU = 319
fromEnum SDLK_POWER = 320
fromEnum SDLK_EURO = 321
fromEnum SDLK_UNDO = 322
fromEnum SDLK_LAST = 323
toEnum :: Word32 -> SDLKey
toEnum Word32
0 = SDLKey
SDLK_UNKNOWN
toEnum Word32
8 = SDLKey
SDLK_BACKSPACE
toEnum Word32
9 = SDLKey
SDLK_TAB
toEnum Word32
12 = SDLKey
SDLK_CLEAR
toEnum Word32
13 = SDLKey
SDLK_RETURN
toEnum Word32
19 = SDLKey
SDLK_PAUSE
toEnum Word32
27 = SDLKey
SDLK_ESCAPE
toEnum Word32
32 = SDLKey
SDLK_SPACE
toEnum Word32
33 = SDLKey
SDLK_EXCLAIM
toEnum Word32
34 = SDLKey
SDLK_QUOTEDBL
toEnum Word32
35 = SDLKey
SDLK_HASH
toEnum Word32
36 = SDLKey
SDLK_DOLLAR
toEnum Word32
38 = SDLKey
SDLK_AMPERSAND
toEnum Word32
39 = SDLKey
SDLK_QUOTE
toEnum Word32
40 = SDLKey
SDLK_LEFTPAREN
toEnum Word32
41 = SDLKey
SDLK_RIGHTPAREN
toEnum Word32
42 = SDLKey
SDLK_ASTERISK
toEnum Word32
43 = SDLKey
SDLK_PLUS
toEnum Word32
44 = SDLKey
SDLK_COMMA
toEnum Word32
45 = SDLKey
SDLK_MINUS
toEnum Word32
46 = SDLKey
SDLK_PERIOD
toEnum Word32
47 = SDLKey
SDLK_SLASH
toEnum Word32
48 = SDLKey
SDLK_0
toEnum Word32
49 = SDLKey
SDLK_1
toEnum Word32
50 = SDLKey
SDLK_2
toEnum Word32
51 = SDLKey
SDLK_3
toEnum Word32
52 = SDLKey
SDLK_4
toEnum Word32
53 = SDLKey
SDLK_5
toEnum Word32
54 = SDLKey
SDLK_6
toEnum Word32
55 = SDLKey
SDLK_7
toEnum Word32
56 = SDLKey
SDLK_8
toEnum Word32
57 = SDLKey
SDLK_9
toEnum Word32
58 = SDLKey
SDLK_COLON
toEnum Word32
59 = SDLKey
SDLK_SEMICOLON
toEnum Word32
60 = SDLKey
SDLK_LESS
toEnum Word32
61 = SDLKey
SDLK_EQUALS
toEnum Word32
62 = SDLKey
SDLK_GREATER
toEnum Word32
63 = SDLKey
SDLK_QUESTION
toEnum Word32
64 = SDLKey
SDLK_AT
toEnum Word32
91 = SDLKey
SDLK_LEFTBRACKET
toEnum Word32
92 = SDLKey
SDLK_BACKSLASH
toEnum Word32
93 = SDLKey
SDLK_RIGHTBRACKET
toEnum Word32
94 = SDLKey
SDLK_CARET
toEnum Word32
95 = SDLKey
SDLK_UNDERSCORE
toEnum Word32
96 = SDLKey
SDLK_BACKQUOTE
toEnum Word32
97 = SDLKey
SDLK_a
toEnum Word32
98 = SDLKey
SDLK_b
toEnum Word32
99 = SDLKey
SDLK_c
toEnum Word32
100 = SDLKey
SDLK_d
toEnum Word32
101 = SDLKey
SDLK_e
toEnum Word32
102 = SDLKey
SDLK_f
toEnum Word32
103 = SDLKey
SDLK_g
toEnum Word32
104 = SDLKey
SDLK_h
toEnum Word32
105 = SDLKey
SDLK_i
toEnum Word32
106 = SDLKey
SDLK_j
toEnum Word32
107 = SDLKey
SDLK_k
toEnum Word32
108 = SDLKey
SDLK_l
toEnum Word32
109 = SDLKey
SDLK_m
toEnum Word32
110 = SDLKey
SDLK_n
toEnum Word32
111 = SDLKey
SDLK_o
toEnum Word32
112 = SDLKey
SDLK_p
toEnum Word32
113 = SDLKey
SDLK_q
toEnum Word32
114 = SDLKey
SDLK_r
toEnum Word32
115 = SDLKey
SDLK_s
toEnum Word32
116 = SDLKey
SDLK_t
toEnum Word32
117 = SDLKey
SDLK_u
toEnum Word32
118 = SDLKey
SDLK_v
toEnum Word32
119 = SDLKey
SDLK_w
toEnum Word32
120 = SDLKey
SDLK_x
toEnum Word32
121 = SDLKey
SDLK_y
toEnum Word32
122 = SDLKey
SDLK_z
toEnum Word32
127 = SDLKey
SDLK_DELETE
toEnum Word32
160 = SDLKey
SDLK_WORLD_0
toEnum Word32
161 = SDLKey
SDLK_WORLD_1
toEnum Word32
162 = SDLKey
SDLK_WORLD_2
toEnum Word32
163 = SDLKey
SDLK_WORLD_3
toEnum Word32
164 = SDLKey
SDLK_WORLD_4
toEnum Word32
165 = SDLKey
SDLK_WORLD_5
toEnum Word32
166 = SDLKey
SDLK_WORLD_6
toEnum Word32
167 = SDLKey
SDLK_WORLD_7
toEnum Word32
168 = SDLKey
SDLK_WORLD_8
toEnum Word32
169 = SDLKey
SDLK_WORLD_9
toEnum Word32
170 = SDLKey
SDLK_WORLD_10
toEnum Word32
171 = SDLKey
SDLK_WORLD_11
toEnum Word32
172 = SDLKey
SDLK_WORLD_12
toEnum Word32
173 = SDLKey
SDLK_WORLD_13
toEnum Word32
174 = SDLKey
SDLK_WORLD_14
toEnum Word32
175 = SDLKey
SDLK_WORLD_15
toEnum Word32
176 = SDLKey
SDLK_WORLD_16
toEnum Word32
177 = SDLKey
SDLK_WORLD_17
toEnum Word32
178 = SDLKey
SDLK_WORLD_18
toEnum Word32
179 = SDLKey
SDLK_WORLD_19
toEnum Word32
180 = SDLKey
SDLK_WORLD_20
toEnum Word32
181 = SDLKey
SDLK_WORLD_21
toEnum Word32
182 = SDLKey
SDLK_WORLD_22
toEnum Word32
183 = SDLKey
SDLK_WORLD_23
toEnum Word32
184 = SDLKey
SDLK_WORLD_24
toEnum Word32
185 = SDLKey
SDLK_WORLD_25
toEnum Word32
186 = SDLKey
SDLK_WORLD_26
toEnum Word32
187 = SDLKey
SDLK_WORLD_27
toEnum Word32
188 = SDLKey
SDLK_WORLD_28
toEnum Word32
189 = SDLKey
SDLK_WORLD_29
toEnum Word32
190 = SDLKey
SDLK_WORLD_30
toEnum Word32
191 = SDLKey
SDLK_WORLD_31
toEnum Word32
192 = SDLKey
SDLK_WORLD_32
toEnum Word32
193 = SDLKey
SDLK_WORLD_33
toEnum Word32
194 = SDLKey
SDLK_WORLD_34
toEnum Word32
195 = SDLKey
SDLK_WORLD_35
toEnum Word32
196 = SDLKey
SDLK_WORLD_36
toEnum Word32
197 = SDLKey
SDLK_WORLD_37
toEnum Word32
198 = SDLKey
SDLK_WORLD_38
toEnum Word32
199 = SDLKey
SDLK_WORLD_39
toEnum Word32
200 = SDLKey
SDLK_WORLD_40
toEnum Word32
201 = SDLKey
SDLK_WORLD_41
toEnum Word32
202 = SDLKey
SDLK_WORLD_42
toEnum Word32
203 = SDLKey
SDLK_WORLD_43
toEnum Word32
204 = SDLKey
SDLK_WORLD_44
toEnum Word32
205 = SDLKey
SDLK_WORLD_45
toEnum Word32
206 = SDLKey
SDLK_WORLD_46
toEnum Word32
207 = SDLKey
SDLK_WORLD_47
toEnum Word32
208 = SDLKey
SDLK_WORLD_48
toEnum Word32
209 = SDLKey
SDLK_WORLD_49
toEnum Word32
210 = SDLKey
SDLK_WORLD_50
toEnum Word32
211 = SDLKey
SDLK_WORLD_51
toEnum Word32
212 = SDLKey
SDLK_WORLD_52
toEnum Word32
213 = SDLKey
SDLK_WORLD_53
toEnum Word32
214 = SDLKey
SDLK_WORLD_54
toEnum Word32
215 = SDLKey
SDLK_WORLD_55
toEnum Word32
216 = SDLKey
SDLK_WORLD_56
toEnum Word32
217 = SDLKey
SDLK_WORLD_57
toEnum Word32
218 = SDLKey
SDLK_WORLD_58
toEnum Word32
219 = SDLKey
SDLK_WORLD_59
toEnum Word32
220 = SDLKey
SDLK_WORLD_60
toEnum Word32
221 = SDLKey
SDLK_WORLD_61
toEnum Word32
222 = SDLKey
SDLK_WORLD_62
toEnum Word32
223 = SDLKey
SDLK_WORLD_63
toEnum Word32
224 = SDLKey
SDLK_WORLD_64
toEnum Word32
225 = SDLKey
SDLK_WORLD_65
toEnum Word32
226 = SDLKey
SDLK_WORLD_66
toEnum Word32
227 = SDLKey
SDLK_WORLD_67
toEnum Word32
228 = SDLKey
SDLK_WORLD_68
toEnum Word32
229 = SDLKey
SDLK_WORLD_69
toEnum Word32
230 = SDLKey
SDLK_WORLD_70
toEnum Word32
231 = SDLKey
SDLK_WORLD_71
toEnum Word32
232 = SDLKey
SDLK_WORLD_72
toEnum Word32
233 = SDLKey
SDLK_WORLD_73
toEnum Word32
234 = SDLKey
SDLK_WORLD_74
toEnum Word32
235 = SDLKey
SDLK_WORLD_75
toEnum Word32
236 = SDLKey
SDLK_WORLD_76
toEnum Word32
237 = SDLKey
SDLK_WORLD_77
toEnum Word32
238 = SDLKey
SDLK_WORLD_78
toEnum Word32
239 = SDLKey
SDLK_WORLD_79
toEnum Word32
240 = SDLKey
SDLK_WORLD_80
toEnum Word32
241 = SDLKey
SDLK_WORLD_81
toEnum Word32
242 = SDLKey
SDLK_WORLD_82
toEnum Word32
243 = SDLKey
SDLK_WORLD_83
toEnum Word32
244 = SDLKey
SDLK_WORLD_84
toEnum Word32
245 = SDLKey
SDLK_WORLD_85
toEnum Word32
246 = SDLKey
SDLK_WORLD_86
toEnum Word32
247 = SDLKey
SDLK_WORLD_87
toEnum Word32
248 = SDLKey
SDLK_WORLD_88
toEnum Word32
249 = SDLKey
SDLK_WORLD_89
toEnum Word32
250 = SDLKey
SDLK_WORLD_90
toEnum Word32
251 = SDLKey
SDLK_WORLD_91
toEnum Word32
252 = SDLKey
SDLK_WORLD_92
toEnum Word32
253 = SDLKey
SDLK_WORLD_93
toEnum Word32
254 = SDLKey
SDLK_WORLD_94
toEnum Word32
255 = SDLKey
SDLK_WORLD_95
toEnum Word32
256 = SDLKey
SDLK_KP0
toEnum Word32
257 = SDLKey
SDLK_KP1
toEnum Word32
258 = SDLKey
SDLK_KP2
toEnum Word32
259 = SDLKey
SDLK_KP3
toEnum Word32
260 = SDLKey
SDLK_KP4
toEnum Word32
261 = SDLKey
SDLK_KP5
toEnum Word32
262 = SDLKey
SDLK_KP6
toEnum Word32
263 = SDLKey
SDLK_KP7
toEnum Word32
264 = SDLKey
SDLK_KP8
toEnum Word32
265 = SDLKey
SDLK_KP9
toEnum Word32
266 = SDLKey
SDLK_KP_PERIOD
toEnum Word32
267 = SDLKey
SDLK_KP_DIVIDE
toEnum Word32
268 = SDLKey
SDLK_KP_MULTIPLY
toEnum Word32
269 = SDLKey
SDLK_KP_MINUS
toEnum Word32
270 = SDLKey
SDLK_KP_PLUS
toEnum Word32
271 = SDLKey
SDLK_KP_ENTER
toEnum Word32
272 = SDLKey
SDLK_KP_EQUALS
toEnum Word32
273 = SDLKey
SDLK_UP
toEnum Word32
274 = SDLKey
SDLK_DOWN
toEnum Word32
275 = SDLKey
SDLK_RIGHT
toEnum Word32
276 = SDLKey
SDLK_LEFT
toEnum Word32
277 = SDLKey
SDLK_INSERT
toEnum Word32
278 = SDLKey
SDLK_HOME
toEnum Word32
279 = SDLKey
SDLK_END
toEnum Word32
280 = SDLKey
SDLK_PAGEUP
toEnum Word32
281 = SDLKey
SDLK_PAGEDOWN
toEnum Word32
282 = SDLKey
SDLK_F1
toEnum Word32
283 = SDLKey
SDLK_F2
toEnum Word32
284 = SDLKey
SDLK_F3
toEnum Word32
285 = SDLKey
SDLK_F4
toEnum Word32
286 = SDLKey
SDLK_F5
toEnum Word32
287 = SDLKey
SDLK_F6
toEnum Word32
288 = SDLKey
SDLK_F7
toEnum Word32
289 = SDLKey
SDLK_F8
toEnum Word32
290 = SDLKey
SDLK_F9
toEnum Word32
291 = SDLKey
SDLK_F10
toEnum Word32
292 = SDLKey
SDLK_F11
toEnum Word32
293 = SDLKey
SDLK_F12
toEnum Word32
294 = SDLKey
SDLK_F13
toEnum Word32
295 = SDLKey
SDLK_F14
toEnum Word32
296 = SDLKey
SDLK_F15
toEnum Word32
300 = SDLKey
SDLK_NUMLOCK
toEnum Word32
301 = SDLKey
SDLK_CAPSLOCK
toEnum Word32
302 = SDLKey
SDLK_SCROLLOCK
toEnum Word32
303 = SDLKey
SDLK_RSHIFT
toEnum Word32
304 = SDLKey
SDLK_LSHIFT
toEnum Word32
305 = SDLKey
SDLK_RCTRL
toEnum Word32
306 = SDLKey
SDLK_LCTRL
toEnum Word32
307 = SDLKey
SDLK_RALT
toEnum Word32
308 = SDLKey
SDLK_LALT
toEnum Word32
309 = SDLKey
SDLK_RMETA
toEnum Word32
310 = SDLKey
SDLK_LMETA
toEnum Word32
311 = SDLKey
SDLK_LSUPER
toEnum Word32
312 = SDLKey
SDLK_RSUPER
toEnum Word32
313 = SDLKey
SDLK_MODE
toEnum Word32
314 = SDLKey
SDLK_COMPOSE
toEnum Word32
315 = SDLKey
SDLK_HELP
toEnum Word32
316 = SDLKey
SDLK_PRINT
toEnum Word32
317 = SDLKey
SDLK_SYSREQ
toEnum Word32
318 = SDLKey
SDLK_BREAK
toEnum Word32
319 = SDLKey
SDLK_MENU
toEnum Word32
320 = SDLKey
SDLK_POWER
toEnum Word32
321 = SDLKey
SDLK_EURO
toEnum Word32
322 = SDLKey
SDLK_UNDO
toEnum Word32
323 = SDLKey
SDLK_LAST
toEnum Word32
_ = String -> SDLKey
forall a. HasCallStack => String -> a
error String
"Graphics.UI.SDL.Keysym.toEnum: bad argument"
succ :: SDLKey -> SDLKey
succ SDLKey
SDLK_UNKNOWN = SDLKey
SDLK_FIRST
succ SDLKey
SDLK_FIRST = SDLKey
SDLK_BACKSPACE
succ SDLKey
SDLK_BACKSPACE = SDLKey
SDLK_TAB
succ SDLKey
SDLK_TAB = SDLKey
SDLK_CLEAR
succ SDLKey
SDLK_CLEAR = SDLKey
SDLK_RETURN
succ SDLKey
SDLK_RETURN = SDLKey
SDLK_PAUSE
succ SDLKey
SDLK_PAUSE = SDLKey
SDLK_ESCAPE
succ SDLKey
SDLK_ESCAPE = SDLKey
SDLK_SPACE
succ SDLKey
SDLK_SPACE = SDLKey
SDLK_EXCLAIM
succ SDLKey
SDLK_EXCLAIM = SDLKey
SDLK_QUOTEDBL
succ SDLKey
SDLK_QUOTEDBL = SDLKey
SDLK_HASH
succ SDLKey
SDLK_HASH = SDLKey
SDLK_DOLLAR
succ SDLKey
SDLK_DOLLAR = SDLKey
SDLK_AMPERSAND
succ SDLKey
SDLK_AMPERSAND = SDLKey
SDLK_QUOTE
succ SDLKey
SDLK_QUOTE = SDLKey
SDLK_LEFTPAREN
succ SDLKey
SDLK_LEFTPAREN = SDLKey
SDLK_RIGHTPAREN
succ SDLKey
SDLK_RIGHTPAREN = SDLKey
SDLK_ASTERISK
succ SDLKey
SDLK_ASTERISK = SDLKey
SDLK_PLUS
succ SDLKey
SDLK_PLUS = SDLKey
SDLK_COMMA
succ SDLKey
SDLK_COMMA = SDLKey
SDLK_MINUS
succ SDLKey
SDLK_MINUS = SDLKey
SDLK_PERIOD
succ SDLKey
SDLK_PERIOD = SDLKey
SDLK_SLASH
succ SDLKey
SDLK_SLASH = SDLKey
SDLK_0
succ SDLKey
SDLK_0 = SDLKey
SDLK_1
succ SDLKey
SDLK_1 = SDLKey
SDLK_2
succ SDLKey
SDLK_2 = SDLKey
SDLK_3
succ SDLKey
SDLK_3 = SDLKey
SDLK_4
succ SDLKey
SDLK_4 = SDLKey
SDLK_5
succ SDLKey
SDLK_5 = SDLKey
SDLK_6
succ SDLKey
SDLK_6 = SDLKey
SDLK_7
succ SDLKey
SDLK_7 = SDLKey
SDLK_8
succ SDLKey
SDLK_8 = SDLKey
SDLK_9
succ SDLKey
SDLK_9 = SDLKey
SDLK_COLON
succ SDLKey
SDLK_COLON = SDLKey
SDLK_SEMICOLON
succ SDLKey
SDLK_SEMICOLON = SDLKey
SDLK_LESS
succ SDLKey
SDLK_LESS = SDLKey
SDLK_EQUALS
succ SDLKey
SDLK_EQUALS = SDLKey
SDLK_GREATER
succ SDLKey
SDLK_GREATER = SDLKey
SDLK_QUESTION
succ SDLKey
SDLK_QUESTION = SDLKey
SDLK_AT
succ SDLKey
SDLK_AT = SDLKey
SDLK_LEFTBRACKET
succ SDLKey
SDLK_LEFTBRACKET = SDLKey
SDLK_BACKSLASH
succ SDLKey
SDLK_BACKSLASH = SDLKey
SDLK_RIGHTBRACKET
succ SDLKey
SDLK_RIGHTBRACKET = SDLKey
SDLK_CARET
succ SDLKey
SDLK_CARET = SDLKey
SDLK_UNDERSCORE
succ SDLKey
SDLK_UNDERSCORE = SDLKey
SDLK_BACKQUOTE
succ SDLKey
SDLK_BACKQUOTE = SDLKey
SDLK_a
succ SDLKey
SDLK_a = SDLKey
SDLK_b
succ SDLKey
SDLK_b = SDLKey
SDLK_c
succ SDLKey
SDLK_c = SDLKey
SDLK_d
succ SDLKey
SDLK_d = SDLKey
SDLK_e
succ SDLKey
SDLK_e = SDLKey
SDLK_f
succ SDLKey
SDLK_f = SDLKey
SDLK_g
succ SDLKey
SDLK_g = SDLKey
SDLK_h
succ SDLKey
SDLK_h = SDLKey
SDLK_i
succ SDLKey
SDLK_i = SDLKey
SDLK_j
succ SDLKey
SDLK_j = SDLKey
SDLK_k
succ SDLKey
SDLK_k = SDLKey
SDLK_l
succ SDLKey
SDLK_l = SDLKey
SDLK_m
succ SDLKey
SDLK_m = SDLKey
SDLK_n
succ SDLKey
SDLK_n = SDLKey
SDLK_o
succ SDLKey
SDLK_o = SDLKey
SDLK_p
succ SDLKey
SDLK_p = SDLKey
SDLK_q
succ SDLKey
SDLK_q = SDLKey
SDLK_r
succ SDLKey
SDLK_r = SDLKey
SDLK_s
succ SDLKey
SDLK_s = SDLKey
SDLK_t
succ SDLKey
SDLK_t = SDLKey
SDLK_u
succ SDLKey
SDLK_u = SDLKey
SDLK_v
succ SDLKey
SDLK_v = SDLKey
SDLK_w
succ SDLKey
SDLK_w = SDLKey
SDLK_x
succ SDLKey
SDLK_x = SDLKey
SDLK_y
succ SDLKey
SDLK_y = SDLKey
SDLK_z
succ SDLKey
SDLK_z = SDLKey
SDLK_DELETE
succ SDLKey
SDLK_DELETE = SDLKey
SDLK_WORLD_0
succ SDLKey
SDLK_WORLD_0 = SDLKey
SDLK_WORLD_1
succ SDLKey
SDLK_WORLD_1 = SDLKey
SDLK_WORLD_2
succ SDLKey
SDLK_WORLD_2 = SDLKey
SDLK_WORLD_3
succ SDLKey
SDLK_WORLD_3 = SDLKey
SDLK_WORLD_4
succ SDLKey
SDLK_WORLD_4 = SDLKey
SDLK_WORLD_5
succ SDLKey
SDLK_WORLD_5 = SDLKey
SDLK_WORLD_6
succ SDLKey
SDLK_WORLD_6 = SDLKey
SDLK_WORLD_7
succ SDLKey
SDLK_WORLD_7 = SDLKey
SDLK_WORLD_8
succ SDLKey
SDLK_WORLD_8 = SDLKey
SDLK_WORLD_9
succ SDLKey
SDLK_WORLD_9 = SDLKey
SDLK_WORLD_10
succ SDLKey
SDLK_WORLD_10 = SDLKey
SDLK_WORLD_11
succ SDLKey
SDLK_WORLD_11 = SDLKey
SDLK_WORLD_12
succ SDLKey
SDLK_WORLD_12 = SDLKey
SDLK_WORLD_13
succ SDLKey
SDLK_WORLD_13 = SDLKey
SDLK_WORLD_14
succ SDLKey
SDLK_WORLD_14 = SDLKey
SDLK_WORLD_15
succ SDLKey
SDLK_WORLD_15 = SDLKey
SDLK_WORLD_16
succ SDLKey
SDLK_WORLD_16 = SDLKey
SDLK_WORLD_17
succ SDLKey
SDLK_WORLD_17 = SDLKey
SDLK_WORLD_18
succ SDLKey
SDLK_WORLD_18 = SDLKey
SDLK_WORLD_19
succ SDLKey
SDLK_WORLD_19 = SDLKey
SDLK_WORLD_20
succ SDLKey
SDLK_WORLD_20 = SDLKey
SDLK_WORLD_21
succ SDLKey
SDLK_WORLD_21 = SDLKey
SDLK_WORLD_22
succ SDLKey
SDLK_WORLD_22 = SDLKey
SDLK_WORLD_23
succ SDLKey
SDLK_WORLD_23 = SDLKey
SDLK_WORLD_24
succ SDLKey
SDLK_WORLD_24 = SDLKey
SDLK_WORLD_25
succ SDLKey
SDLK_WORLD_25 = SDLKey
SDLK_WORLD_26
succ SDLKey
SDLK_WORLD_26 = SDLKey
SDLK_WORLD_27
succ SDLKey
SDLK_WORLD_27 = SDLKey
SDLK_WORLD_28
succ SDLKey
SDLK_WORLD_28 = SDLKey
SDLK_WORLD_29
succ SDLKey
SDLK_WORLD_29 = SDLKey
SDLK_WORLD_30
succ SDLKey
SDLK_WORLD_30 = SDLKey
SDLK_WORLD_31
succ SDLKey
SDLK_WORLD_31 = SDLKey
SDLK_WORLD_32
succ SDLKey
SDLK_WORLD_32 = SDLKey
SDLK_WORLD_33
succ SDLKey
SDLK_WORLD_33 = SDLKey
SDLK_WORLD_34
succ SDLKey
SDLK_WORLD_34 = SDLKey
SDLK_WORLD_35
succ SDLKey
SDLK_WORLD_35 = SDLKey
SDLK_WORLD_36
succ SDLKey
SDLK_WORLD_36 = SDLKey
SDLK_WORLD_37
succ SDLKey
SDLK_WORLD_37 = SDLKey
SDLK_WORLD_38
succ SDLKey
SDLK_WORLD_38 = SDLKey
SDLK_WORLD_39
succ SDLKey
SDLK_WORLD_39 = SDLKey
SDLK_WORLD_40
succ SDLKey
SDLK_WORLD_40 = SDLKey
SDLK_WORLD_41
succ SDLKey
SDLK_WORLD_41 = SDLKey
SDLK_WORLD_42
succ SDLKey
SDLK_WORLD_42 = SDLKey
SDLK_WORLD_43
succ SDLKey
SDLK_WORLD_43 = SDLKey
SDLK_WORLD_44
succ SDLKey
SDLK_WORLD_44 = SDLKey
SDLK_WORLD_45
succ SDLKey
SDLK_WORLD_45 = SDLKey
SDLK_WORLD_46
succ SDLKey
SDLK_WORLD_46 = SDLKey
SDLK_WORLD_47
succ SDLKey
SDLK_WORLD_47 = SDLKey
SDLK_WORLD_48
succ SDLKey
SDLK_WORLD_48 = SDLKey
SDLK_WORLD_49
succ SDLKey
SDLK_WORLD_49 = SDLKey
SDLK_WORLD_50
succ SDLKey
SDLK_WORLD_50 = SDLKey
SDLK_WORLD_51
succ SDLKey
SDLK_WORLD_51 = SDLKey
SDLK_WORLD_52
succ SDLKey
SDLK_WORLD_52 = SDLKey
SDLK_WORLD_53
succ SDLKey
SDLK_WORLD_53 = SDLKey
SDLK_WORLD_54
succ SDLKey
SDLK_WORLD_54 = SDLKey
SDLK_WORLD_55
succ SDLKey
SDLK_WORLD_55 = SDLKey
SDLK_WORLD_56
succ SDLKey
SDLK_WORLD_56 = SDLKey
SDLK_WORLD_57
succ SDLKey
SDLK_WORLD_57 = SDLKey
SDLK_WORLD_58
succ SDLKey
SDLK_WORLD_58 = SDLKey
SDLK_WORLD_59
succ SDLKey
SDLK_WORLD_59 = SDLKey
SDLK_WORLD_60
succ SDLKey
SDLK_WORLD_60 = SDLKey
SDLK_WORLD_61
succ SDLKey
SDLK_WORLD_61 = SDLKey
SDLK_WORLD_62
succ SDLKey
SDLK_WORLD_62 = SDLKey
SDLK_WORLD_63
succ SDLKey
SDLK_WORLD_63 = SDLKey
SDLK_WORLD_64
succ SDLKey
SDLK_WORLD_64 = SDLKey
SDLK_WORLD_65
succ SDLKey
SDLK_WORLD_65 = SDLKey
SDLK_WORLD_66
succ SDLKey
SDLK_WORLD_66 = SDLKey
SDLK_WORLD_67
succ SDLKey
SDLK_WORLD_67 = SDLKey
SDLK_WORLD_68
succ SDLKey
SDLK_WORLD_68 = SDLKey
SDLK_WORLD_69
succ SDLKey
SDLK_WORLD_69 = SDLKey
SDLK_WORLD_70
succ SDLKey
SDLK_WORLD_70 = SDLKey
SDLK_WORLD_71
succ SDLKey
SDLK_WORLD_71 = SDLKey
SDLK_WORLD_72
succ SDLKey
SDLK_WORLD_72 = SDLKey
SDLK_WORLD_73
succ SDLKey
SDLK_WORLD_73 = SDLKey
SDLK_WORLD_74
succ SDLKey
SDLK_WORLD_74 = SDLKey
SDLK_WORLD_75
succ SDLKey
SDLK_WORLD_75 = SDLKey
SDLK_WORLD_76
succ SDLKey
SDLK_WORLD_76 = SDLKey
SDLK_WORLD_77
succ SDLKey
SDLK_WORLD_77 = SDLKey
SDLK_WORLD_78
succ SDLKey
SDLK_WORLD_78 = SDLKey
SDLK_WORLD_79
succ SDLKey
SDLK_WORLD_79 = SDLKey
SDLK_WORLD_80
succ SDLKey
SDLK_WORLD_80 = SDLKey
SDLK_WORLD_81
succ SDLKey
SDLK_WORLD_81 = SDLKey
SDLK_WORLD_82
succ SDLKey
SDLK_WORLD_82 = SDLKey
SDLK_WORLD_83
succ SDLKey
SDLK_WORLD_83 = SDLKey
SDLK_WORLD_84
succ SDLKey
SDLK_WORLD_84 = SDLKey
SDLK_WORLD_85
succ SDLKey
SDLK_WORLD_85 = SDLKey
SDLK_WORLD_86
succ SDLKey
SDLK_WORLD_86 = SDLKey
SDLK_WORLD_87
succ SDLKey
SDLK_WORLD_87 = SDLKey
SDLK_WORLD_88
succ SDLKey
SDLK_WORLD_88 = SDLKey
SDLK_WORLD_89
succ SDLKey
SDLK_WORLD_89 = SDLKey
SDLK_WORLD_90
succ SDLKey
SDLK_WORLD_90 = SDLKey
SDLK_WORLD_91
succ SDLKey
SDLK_WORLD_91 = SDLKey
SDLK_WORLD_92
succ SDLKey
SDLK_WORLD_92 = SDLKey
SDLK_WORLD_93
succ SDLKey
SDLK_WORLD_93 = SDLKey
SDLK_WORLD_94
succ SDLKey
SDLK_WORLD_94 = SDLKey
SDLK_WORLD_95
succ SDLKey
SDLK_WORLD_95 = SDLKey
SDLK_KP0
succ SDLKey
SDLK_KP0 = SDLKey
SDLK_KP1
succ SDLKey
SDLK_KP1 = SDLKey
SDLK_KP2
succ SDLKey
SDLK_KP2 = SDLKey
SDLK_KP3
succ SDLKey
SDLK_KP3 = SDLKey
SDLK_KP4
succ SDLKey
SDLK_KP4 = SDLKey
SDLK_KP5
succ SDLKey
SDLK_KP5 = SDLKey
SDLK_KP6
succ SDLKey
SDLK_KP6 = SDLKey
SDLK_KP7
succ SDLKey
SDLK_KP7 = SDLKey
SDLK_KP8
succ SDLKey
SDLK_KP8 = SDLKey
SDLK_KP9
succ SDLKey
SDLK_KP9 = SDLKey
SDLK_KP_PERIOD
succ SDLKey
SDLK_KP_PERIOD = SDLKey
SDLK_KP_DIVIDE
succ SDLKey
SDLK_KP_DIVIDE = SDLKey
SDLK_KP_MULTIPLY
succ SDLKey
SDLK_KP_MULTIPLY = SDLKey
SDLK_KP_MINUS
succ SDLKey
SDLK_KP_MINUS = SDLKey
SDLK_KP_PLUS
succ SDLKey
SDLK_KP_PLUS = SDLKey
SDLK_KP_ENTER
succ SDLKey
SDLK_KP_ENTER = SDLKey
SDLK_KP_EQUALS
succ SDLKey
SDLK_KP_EQUALS = SDLKey
SDLK_UP
succ SDLKey
SDLK_UP = SDLKey
SDLK_DOWN
succ SDLKey
SDLK_DOWN = SDLKey
SDLK_RIGHT
succ SDLKey
SDLK_RIGHT = SDLKey
SDLK_LEFT
succ SDLKey
SDLK_LEFT = SDLKey
SDLK_INSERT
succ SDLKey
SDLK_INSERT = SDLKey
SDLK_HOME
succ SDLKey
SDLK_HOME = SDLKey
SDLK_END
succ SDLKey
SDLK_END = SDLKey
SDLK_PAGEUP
succ SDLKey
SDLK_PAGEUP = SDLKey
SDLK_PAGEDOWN
succ SDLKey
SDLK_PAGEDOWN = SDLKey
SDLK_F1
succ SDLKey
SDLK_F1 = SDLKey
SDLK_F2
succ SDLKey
SDLK_F2 = SDLKey
SDLK_F3
succ SDLKey
SDLK_F3 = SDLKey
SDLK_F4
succ SDLKey
SDLK_F4 = SDLKey
SDLK_F5
succ SDLKey
SDLK_F5 = SDLKey
SDLK_F6
succ SDLKey
SDLK_F6 = SDLKey
SDLK_F7
succ SDLKey
SDLK_F7 = SDLKey
SDLK_F8
succ SDLKey
SDLK_F8 = SDLKey
SDLK_F9
succ SDLKey
SDLK_F9 = SDLKey
SDLK_F10
succ SDLKey
SDLK_F10 = SDLKey
SDLK_F11
succ SDLKey
SDLK_F11 = SDLKey
SDLK_F12
succ SDLKey
SDLK_F12 = SDLKey
SDLK_F13
succ SDLKey
SDLK_F13 = SDLKey
SDLK_F14
succ SDLKey
SDLK_F14 = SDLKey
SDLK_F15
succ SDLKey
SDLK_F15 = SDLKey
SDLK_NUMLOCK
succ SDLKey
SDLK_NUMLOCK = SDLKey
SDLK_CAPSLOCK
succ SDLKey
SDLK_CAPSLOCK = SDLKey
SDLK_SCROLLOCK
succ SDLKey
SDLK_SCROLLOCK = SDLKey
SDLK_RSHIFT
succ SDLKey
SDLK_RSHIFT = SDLKey
SDLK_LSHIFT
succ SDLKey
SDLK_LSHIFT = SDLKey
SDLK_RCTRL
succ SDLKey
SDLK_RCTRL = SDLKey
SDLK_LCTRL
succ SDLKey
SDLK_LCTRL = SDLKey
SDLK_RALT
succ SDLKey
SDLK_RALT = SDLKey
SDLK_LALT
succ SDLKey
SDLK_LALT = SDLKey
SDLK_RMETA
succ SDLKey
SDLK_RMETA = SDLKey
SDLK_LMETA
succ SDLKey
SDLK_LMETA = SDLKey
SDLK_LSUPER
succ SDLKey
SDLK_LSUPER = SDLKey
SDLK_RSUPER
succ SDLKey
SDLK_RSUPER = SDLKey
SDLK_MODE
succ SDLKey
SDLK_MODE = SDLKey
SDLK_COMPOSE
succ SDLKey
SDLK_COMPOSE = SDLKey
SDLK_HELP
succ SDLKey
SDLK_HELP = SDLKey
SDLK_PRINT
succ SDLKey
SDLK_PRINT = SDLKey
SDLK_SYSREQ
succ SDLKey
SDLK_SYSREQ = SDLKey
SDLK_BREAK
succ SDLKey
SDLK_BREAK = SDLKey
SDLK_MENU
succ SDLKey
SDLK_MENU = SDLKey
SDLK_POWER
succ SDLKey
SDLK_POWER = SDLKey
SDLK_EURO
succ SDLKey
SDLK_EURO = SDLKey
SDLK_UNDO
succ SDLKey
SDLK_UNDO = SDLKey
SDLK_LAST
succ SDLKey
_ = String -> SDLKey
forall a. HasCallStack => String -> a
error String
"Graphics.UI.SDL.Keysym.succ: bad argument"
pred :: SDLKey -> SDLKey
pred SDLKey
SDLK_FIRST = SDLKey
SDLK_UNKNOWN
pred SDLKey
SDLK_BACKSPACE = SDLKey
SDLK_FIRST
pred SDLKey
SDLK_TAB = SDLKey
SDLK_BACKSPACE
pred SDLKey
SDLK_CLEAR = SDLKey
SDLK_TAB
pred SDLKey
SDLK_RETURN = SDLKey
SDLK_CLEAR
pred SDLKey
SDLK_PAUSE = SDLKey
SDLK_RETURN
pred SDLKey
SDLK_ESCAPE = SDLKey
SDLK_PAUSE
pred SDLKey
SDLK_SPACE = SDLKey
SDLK_ESCAPE
pred SDLKey
SDLK_EXCLAIM = SDLKey
SDLK_SPACE
pred SDLKey
SDLK_QUOTEDBL = SDLKey
SDLK_EXCLAIM
pred SDLKey
SDLK_HASH = SDLKey
SDLK_QUOTEDBL
pred SDLKey
SDLK_DOLLAR = SDLKey
SDLK_HASH
pred SDLKey
SDLK_AMPERSAND = SDLKey
SDLK_DOLLAR
pred SDLKey
SDLK_QUOTE = SDLKey
SDLK_AMPERSAND
pred SDLKey
SDLK_LEFTPAREN = SDLKey
SDLK_QUOTE
pred SDLKey
SDLK_RIGHTPAREN = SDLKey
SDLK_LEFTPAREN
pred SDLKey
SDLK_ASTERISK = SDLKey
SDLK_RIGHTPAREN
pred SDLKey
SDLK_PLUS = SDLKey
SDLK_ASTERISK
pred SDLKey
SDLK_COMMA = SDLKey
SDLK_PLUS
pred SDLKey
SDLK_MINUS = SDLKey
SDLK_COMMA
pred SDLKey
SDLK_PERIOD = SDLKey
SDLK_MINUS
pred SDLKey
SDLK_SLASH = SDLKey
SDLK_PERIOD
pred SDLKey
SDLK_0 = SDLKey
SDLK_SLASH
pred SDLKey
SDLK_1 = SDLKey
SDLK_0
pred SDLKey
SDLK_2 = SDLKey
SDLK_1
pred SDLKey
SDLK_3 = SDLKey
SDLK_2
pred SDLKey
SDLK_4 = SDLKey
SDLK_3
pred SDLKey
SDLK_5 = SDLKey
SDLK_4
pred SDLKey
SDLK_6 = SDLKey
SDLK_5
pred SDLKey
SDLK_7 = SDLKey
SDLK_6
pred SDLKey
SDLK_8 = SDLKey
SDLK_7
pred SDLKey
SDLK_9 = SDLKey
SDLK_8
pred SDLKey
SDLK_COLON = SDLKey
SDLK_9
pred SDLKey
SDLK_SEMICOLON = SDLKey
SDLK_COLON
pred SDLKey
SDLK_LESS = SDLKey
SDLK_SEMICOLON
pred SDLKey
SDLK_EQUALS = SDLKey
SDLK_LESS
pred SDLKey
SDLK_GREATER = SDLKey
SDLK_EQUALS
pred SDLKey
SDLK_QUESTION = SDLKey
SDLK_GREATER
pred SDLKey
SDLK_AT = SDLKey
SDLK_QUESTION
pred SDLKey
SDLK_LEFTBRACKET = SDLKey
SDLK_AT
pred SDLKey
SDLK_BACKSLASH = SDLKey
SDLK_LEFTBRACKET
pred SDLKey
SDLK_RIGHTBRACKET = SDLKey
SDLK_BACKSLASH
pred SDLKey
SDLK_CARET = SDLKey
SDLK_RIGHTBRACKET
pred SDLKey
SDLK_UNDERSCORE = SDLKey
SDLK_CARET
pred SDLKey
SDLK_BACKQUOTE = SDLKey
SDLK_UNDERSCORE
pred SDLKey
SDLK_a = SDLKey
SDLK_BACKQUOTE
pred SDLKey
SDLK_b = SDLKey
SDLK_a
pred SDLKey
SDLK_c = SDLKey
SDLK_b
pred SDLKey
SDLK_d = SDLKey
SDLK_c
pred SDLKey
SDLK_e = SDLKey
SDLK_d
pred SDLKey
SDLK_f = SDLKey
SDLK_e
pred SDLKey
SDLK_g = SDLKey
SDLK_f
pred SDLKey
SDLK_h = SDLKey
SDLK_g
pred SDLKey
SDLK_i = SDLKey
SDLK_h
pred SDLKey
SDLK_j = SDLKey
SDLK_i
pred SDLKey
SDLK_k = SDLKey
SDLK_j
pred SDLKey
SDLK_l = SDLKey
SDLK_k
pred SDLKey
SDLK_m = SDLKey
SDLK_l
pred SDLKey
SDLK_n = SDLKey
SDLK_m
pred SDLKey
SDLK_o = SDLKey
SDLK_n
pred SDLKey
SDLK_p = SDLKey
SDLK_o
pred SDLKey
SDLK_q = SDLKey
SDLK_p
pred SDLKey
SDLK_r = SDLKey
SDLK_q
pred SDLKey
SDLK_s = SDLKey
SDLK_r
pred SDLKey
SDLK_t = SDLKey
SDLK_s
pred SDLKey
SDLK_u = SDLKey
SDLK_t
pred SDLKey
SDLK_v = SDLKey
SDLK_u
pred SDLKey
SDLK_w = SDLKey
SDLK_v
pred SDLKey
SDLK_x = SDLKey
SDLK_w
pred SDLKey
SDLK_y = SDLKey
SDLK_x
pred SDLKey
SDLK_z = SDLKey
SDLK_y
pred SDLKey
SDLK_DELETE = SDLKey
SDLK_z
pred SDLKey
SDLK_WORLD_0 = SDLKey
SDLK_DELETE
pred SDLKey
SDLK_WORLD_1 = SDLKey
SDLK_WORLD_0
pred SDLKey
SDLK_WORLD_2 = SDLKey
SDLK_WORLD_1
pred SDLKey
SDLK_WORLD_3 = SDLKey
SDLK_WORLD_2
pred SDLKey
SDLK_WORLD_4 = SDLKey
SDLK_WORLD_3
pred SDLKey
SDLK_WORLD_5 = SDLKey
SDLK_WORLD_4
pred SDLKey
SDLK_WORLD_6 = SDLKey
SDLK_WORLD_5
pred SDLKey
SDLK_WORLD_7 = SDLKey
SDLK_WORLD_6
pred SDLKey
SDLK_WORLD_8 = SDLKey
SDLK_WORLD_7
pred SDLKey
SDLK_WORLD_9 = SDLKey
SDLK_WORLD_8
pred SDLKey
SDLK_WORLD_10 = SDLKey
SDLK_WORLD_9
pred SDLKey
SDLK_WORLD_11 = SDLKey
SDLK_WORLD_10
pred SDLKey
SDLK_WORLD_12 = SDLKey
SDLK_WORLD_11
pred SDLKey
SDLK_WORLD_13 = SDLKey
SDLK_WORLD_12
pred SDLKey
SDLK_WORLD_14 = SDLKey
SDLK_WORLD_13
pred SDLKey
SDLK_WORLD_15 = SDLKey
SDLK_WORLD_14
pred SDLKey
SDLK_WORLD_16 = SDLKey
SDLK_WORLD_15
pred SDLKey
SDLK_WORLD_17 = SDLKey
SDLK_WORLD_16
pred SDLKey
SDLK_WORLD_18 = SDLKey
SDLK_WORLD_17
pred SDLKey
SDLK_WORLD_19 = SDLKey
SDLK_WORLD_18
pred SDLKey
SDLK_WORLD_20 = SDLKey
SDLK_WORLD_19
pred SDLKey
SDLK_WORLD_21 = SDLKey
SDLK_WORLD_20
pred SDLKey
SDLK_WORLD_22 = SDLKey
SDLK_WORLD_21
pred SDLKey
SDLK_WORLD_23 = SDLKey
SDLK_WORLD_22
pred SDLKey
SDLK_WORLD_24 = SDLKey
SDLK_WORLD_23
pred SDLKey
SDLK_WORLD_25 = SDLKey
SDLK_WORLD_24
pred SDLKey
SDLK_WORLD_26 = SDLKey
SDLK_WORLD_25
pred SDLKey
SDLK_WORLD_27 = SDLKey
SDLK_WORLD_26
pred SDLKey
SDLK_WORLD_28 = SDLKey
SDLK_WORLD_27
pred SDLKey
SDLK_WORLD_29 = SDLKey
SDLK_WORLD_28
pred SDLKey
SDLK_WORLD_30 = SDLKey
SDLK_WORLD_29
pred SDLKey
SDLK_WORLD_31 = SDLKey
SDLK_WORLD_30
pred SDLKey
SDLK_WORLD_32 = SDLKey
SDLK_WORLD_31
pred SDLKey
SDLK_WORLD_33 = SDLKey
SDLK_WORLD_32
pred SDLKey
SDLK_WORLD_34 = SDLKey
SDLK_WORLD_33
pred SDLKey
SDLK_WORLD_35 = SDLKey
SDLK_WORLD_34
pred SDLKey
SDLK_WORLD_36 = SDLKey
SDLK_WORLD_35
pred SDLKey
SDLK_WORLD_37 = SDLKey
SDLK_WORLD_36
pred SDLKey
SDLK_WORLD_38 = SDLKey
SDLK_WORLD_37
pred SDLKey
SDLK_WORLD_39 = SDLKey
SDLK_WORLD_38
pred SDLKey
SDLK_WORLD_40 = SDLKey
SDLK_WORLD_39
pred SDLKey
SDLK_WORLD_41 = SDLKey
SDLK_WORLD_40
pred SDLKey
SDLK_WORLD_42 = SDLKey
SDLK_WORLD_41
pred SDLKey
SDLK_WORLD_43 = SDLKey
SDLK_WORLD_42
pred SDLKey
SDLK_WORLD_44 = SDLKey
SDLK_WORLD_43
pred SDLKey
SDLK_WORLD_45 = SDLKey
SDLK_WORLD_44
pred SDLKey
SDLK_WORLD_46 = SDLKey
SDLK_WORLD_45
pred SDLKey
SDLK_WORLD_47 = SDLKey
SDLK_WORLD_46
pred SDLKey
SDLK_WORLD_48 = SDLKey
SDLK_WORLD_47
pred SDLKey
SDLK_WORLD_49 = SDLKey
SDLK_WORLD_48
pred SDLKey
SDLK_WORLD_50 = SDLKey
SDLK_WORLD_49
pred SDLKey
SDLK_WORLD_51 = SDLKey
SDLK_WORLD_50
pred SDLKey
SDLK_WORLD_52 = SDLKey
SDLK_WORLD_51
pred SDLKey
SDLK_WORLD_53 = SDLKey
SDLK_WORLD_52
pred SDLKey
SDLK_WORLD_54 = SDLKey
SDLK_WORLD_53
pred SDLKey
SDLK_WORLD_55 = SDLKey
SDLK_WORLD_54
pred SDLKey
SDLK_WORLD_56 = SDLKey
SDLK_WORLD_55
pred SDLKey
SDLK_WORLD_57 = SDLKey
SDLK_WORLD_56
pred SDLKey
SDLK_WORLD_58 = SDLKey
SDLK_WORLD_57
pred SDLKey
SDLK_WORLD_59 = SDLKey
SDLK_WORLD_58
pred SDLKey
SDLK_WORLD_60 = SDLKey
SDLK_WORLD_59
pred SDLKey
SDLK_WORLD_61 = SDLKey
SDLK_WORLD_60
pred SDLKey
SDLK_WORLD_62 = SDLKey
SDLK_WORLD_61
pred SDLKey
SDLK_WORLD_63 = SDLKey
SDLK_WORLD_62
pred SDLKey
SDLK_WORLD_64 = SDLKey
SDLK_WORLD_63
pred SDLKey
SDLK_WORLD_65 = SDLKey
SDLK_WORLD_64
pred SDLKey
SDLK_WORLD_66 = SDLKey
SDLK_WORLD_65
pred SDLKey
SDLK_WORLD_67 = SDLKey
SDLK_WORLD_66
pred SDLKey
SDLK_WORLD_68 = SDLKey
SDLK_WORLD_67
pred SDLKey
SDLK_WORLD_69 = SDLKey
SDLK_WORLD_68
pred SDLKey
SDLK_WORLD_70 = SDLKey
SDLK_WORLD_69
pred SDLKey
SDLK_WORLD_71 = SDLKey
SDLK_WORLD_70
pred SDLKey
SDLK_WORLD_72 = SDLKey
SDLK_WORLD_71
pred SDLKey
SDLK_WORLD_73 = SDLKey
SDLK_WORLD_72
pred SDLKey
SDLK_WORLD_74 = SDLKey
SDLK_WORLD_73
pred SDLKey
SDLK_WORLD_75 = SDLKey
SDLK_WORLD_74
pred SDLKey
SDLK_WORLD_76 = SDLKey
SDLK_WORLD_75
pred SDLKey
SDLK_WORLD_77 = SDLKey
SDLK_WORLD_76
pred SDLKey
SDLK_WORLD_78 = SDLKey
SDLK_WORLD_77
pred SDLKey
SDLK_WORLD_79 = SDLKey
SDLK_WORLD_78
pred SDLKey
SDLK_WORLD_80 = SDLKey
SDLK_WORLD_79
pred SDLKey
SDLK_WORLD_81 = SDLKey
SDLK_WORLD_80
pred SDLKey
SDLK_WORLD_82 = SDLKey
SDLK_WORLD_81
pred SDLKey
SDLK_WORLD_83 = SDLKey
SDLK_WORLD_82
pred SDLKey
SDLK_WORLD_84 = SDLKey
SDLK_WORLD_83
pred SDLKey
SDLK_WORLD_85 = SDLKey
SDLK_WORLD_84
pred SDLKey
SDLK_WORLD_86 = SDLKey
SDLK_WORLD_85
pred SDLKey
SDLK_WORLD_87 = SDLKey
SDLK_WORLD_86
pred SDLKey
SDLK_WORLD_88 = SDLKey
SDLK_WORLD_87
pred SDLKey
SDLK_WORLD_89 = SDLKey
SDLK_WORLD_88
pred SDLKey
SDLK_WORLD_90 = SDLKey
SDLK_WORLD_89
pred SDLKey
SDLK_WORLD_91 = SDLKey
SDLK_WORLD_90
pred SDLKey
SDLK_WORLD_92 = SDLKey
SDLK_WORLD_91
pred SDLKey
SDLK_WORLD_93 = SDLKey
SDLK_WORLD_92
pred SDLKey
SDLK_WORLD_94 = SDLKey
SDLK_WORLD_93
pred SDLKey
SDLK_WORLD_95 = SDLKey
SDLK_WORLD_94
pred SDLKey
SDLK_KP0 = SDLKey
SDLK_WORLD_95
pred SDLKey
SDLK_KP1 = SDLKey
SDLK_KP0
pred SDLKey
SDLK_KP2 = SDLKey
SDLK_KP1
pred SDLKey
SDLK_KP3 = SDLKey
SDLK_KP2
pred SDLKey
SDLK_KP4 = SDLKey
SDLK_KP3
pred SDLKey
SDLK_KP5 = SDLKey
SDLK_KP4
pred SDLKey
SDLK_KP6 = SDLKey
SDLK_KP5
pred SDLKey
SDLK_KP7 = SDLKey
SDLK_KP6
pred SDLKey
SDLK_KP8 = SDLKey
SDLK_KP7
pred SDLKey
SDLK_KP9 = SDLKey
SDLK_KP8
pred SDLKey
SDLK_KP_PERIOD = SDLKey
SDLK_KP9
pred SDLKey
SDLK_KP_DIVIDE = SDLKey
SDLK_KP_PERIOD
pred SDLKey
SDLK_KP_MULTIPLY = SDLKey
SDLK_KP_DIVIDE
pred SDLKey
SDLK_KP_MINUS = SDLKey
SDLK_KP_MULTIPLY
pred SDLKey
SDLK_KP_PLUS = SDLKey
SDLK_KP_MINUS
pred SDLKey
SDLK_KP_ENTER = SDLKey
SDLK_KP_PLUS
pred SDLKey
SDLK_KP_EQUALS = SDLKey
SDLK_KP_ENTER
pred SDLKey
SDLK_UP = SDLKey
SDLK_KP_EQUALS
pred SDLKey
SDLK_DOWN = SDLKey
SDLK_UP
pred SDLKey
SDLK_RIGHT = SDLKey
SDLK_DOWN
pred SDLKey
SDLK_LEFT = SDLKey
SDLK_RIGHT
pred SDLKey
SDLK_INSERT = SDLKey
SDLK_LEFT
pred SDLKey
SDLK_HOME = SDLKey
SDLK_INSERT
pred SDLKey
SDLK_END = SDLKey
SDLK_HOME
pred SDLKey
SDLK_PAGEUP = SDLKey
SDLK_END
pred SDLKey
SDLK_PAGEDOWN = SDLKey
SDLK_PAGEUP
pred SDLKey
SDLK_F1 = SDLKey
SDLK_PAGEDOWN
pred SDLKey
SDLK_F2 = SDLKey
SDLK_F1
pred SDLKey
SDLK_F3 = SDLKey
SDLK_F2
pred SDLKey
SDLK_F4 = SDLKey
SDLK_F3
pred SDLKey
SDLK_F5 = SDLKey
SDLK_F4
pred SDLKey
SDLK_F6 = SDLKey
SDLK_F5
pred SDLKey
SDLK_F7 = SDLKey
SDLK_F6
pred SDLKey
SDLK_F8 = SDLKey
SDLK_F7
pred SDLKey
SDLK_F9 = SDLKey
SDLK_F8
pred SDLKey
SDLK_F10 = SDLKey
SDLK_F9
pred SDLKey
SDLK_F11 = SDLKey
SDLK_F10
pred SDLKey
SDLK_F12 = SDLKey
SDLK_F11
pred SDLKey
SDLK_F13 = SDLKey
SDLK_F12
pred SDLKey
SDLK_F14 = SDLKey
SDLK_F13
pred SDLKey
SDLK_F15 = SDLKey
SDLK_F14
pred SDLKey
SDLK_NUMLOCK = SDLKey
SDLK_F15
pred SDLKey
SDLK_CAPSLOCK = SDLKey
SDLK_NUMLOCK
pred SDLKey
SDLK_SCROLLOCK = SDLKey
SDLK_CAPSLOCK
pred SDLKey
SDLK_RSHIFT = SDLKey
SDLK_SCROLLOCK
pred SDLKey
SDLK_LSHIFT = SDLKey
SDLK_RSHIFT
pred SDLKey
SDLK_RCTRL = SDLKey
SDLK_LSHIFT
pred SDLKey
SDLK_LCTRL = SDLKey
SDLK_RCTRL
pred SDLKey
SDLK_RALT = SDLKey
SDLK_LCTRL
pred SDLKey
SDLK_LALT = SDLKey
SDLK_RALT
pred SDLKey
SDLK_RMETA = SDLKey
SDLK_LALT
pred SDLKey
SDLK_LMETA = SDLKey
SDLK_RMETA
pred SDLKey
SDLK_LSUPER = SDLKey
SDLK_LMETA
pred SDLKey
SDLK_RSUPER = SDLKey
SDLK_LSUPER
pred SDLKey
SDLK_MODE = SDLKey
SDLK_RSUPER
pred SDLKey
SDLK_COMPOSE = SDLKey
SDLK_MODE
pred SDLKey
SDLK_HELP = SDLKey
SDLK_COMPOSE
pred SDLKey
SDLK_PRINT = SDLKey
SDLK_HELP
pred SDLKey
SDLK_SYSREQ = SDLKey
SDLK_PRINT
pred SDLKey
SDLK_BREAK = SDLKey
SDLK_SYSREQ
pred SDLKey
SDLK_MENU = SDLKey
SDLK_BREAK
pred SDLKey
SDLK_POWER = SDLKey
SDLK_MENU
pred SDLKey
SDLK_EURO = SDLKey
SDLK_POWER
pred SDLKey
SDLK_UNDO = SDLKey
SDLK_EURO
pred SDLKey
SDLK_LAST = SDLKey
SDLK_UNDO
pred SDLKey
_ = String -> SDLKey
forall a. HasCallStack => String -> a
error String
"Graphics.UI.SDL.Keysym.pred: bad argument"
enumFromTo :: SDLKey -> SDLKey -> [SDLKey]
enumFromTo SDLKey
x SDLKey
y | SDLKey
x SDLKey -> SDLKey -> Bool
forall a. Ord a => a -> a -> Bool
> SDLKey
y = []
| SDLKey
x SDLKey -> SDLKey -> Bool
forall a. Eq a => a -> a -> Bool
== SDLKey
y = [SDLKey
y]
| Bool
True = SDLKey
x SDLKey -> [SDLKey] -> [SDLKey]
forall a. a -> [a] -> [a]
: SDLKey -> SDLKey -> [SDLKey]
forall a b. Enum a b => a -> a -> [a]
enumFromTo (SDLKey -> SDLKey
forall a b. Enum a b => a -> a
succ SDLKey
x) SDLKey
y