Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
SDL.Input.Keyboard.Codes
Description
An enumeration of scancodes and keycodes, allowing you to pattern match on keyboard keys.
This module uses a relatively new GHC feature called PatternSynonyms
in order to provide pattern
matches over the underlying Scancode
or Keycode
. We do this so that you are also able to
work with vendor-specific or otherwise unknown codes.
- newtype Scancode = Scancode {}
- pattern ScancodeUnknown :: Scancode
- pattern ScancodeA :: Scancode
- pattern ScancodeB :: Scancode
- pattern ScancodeC :: Scancode
- pattern ScancodeD :: Scancode
- pattern ScancodeE :: Scancode
- pattern ScancodeF :: Scancode
- pattern ScancodeG :: Scancode
- pattern ScancodeH :: Scancode
- pattern ScancodeI :: Scancode
- pattern ScancodeJ :: Scancode
- pattern ScancodeK :: Scancode
- pattern ScancodeL :: Scancode
- pattern ScancodeM :: Scancode
- pattern ScancodeN :: Scancode
- pattern ScancodeO :: Scancode
- pattern ScancodeP :: Scancode
- pattern ScancodeQ :: Scancode
- pattern ScancodeR :: Scancode
- pattern ScancodeS :: Scancode
- pattern ScancodeT :: Scancode
- pattern ScancodeU :: Scancode
- pattern ScancodeV :: Scancode
- pattern ScancodeW :: Scancode
- pattern ScancodeX :: Scancode
- pattern ScancodeY :: Scancode
- pattern ScancodeZ :: Scancode
- pattern Scancode1 :: Scancode
- pattern Scancode2 :: Scancode
- pattern Scancode3 :: Scancode
- pattern Scancode4 :: Scancode
- pattern Scancode5 :: Scancode
- pattern Scancode6 :: Scancode
- pattern Scancode7 :: Scancode
- pattern Scancode8 :: Scancode
- pattern Scancode9 :: Scancode
- pattern Scancode0 :: Scancode
- pattern ScancodeReturn :: Scancode
- pattern ScancodeEscape :: Scancode
- pattern ScancodeBackspace :: Scancode
- pattern ScancodeTab :: Scancode
- pattern ScancodeSpace :: Scancode
- pattern ScancodeMinus :: Scancode
- pattern ScancodeEquals :: Scancode
- pattern ScancodeLeftBracket :: Scancode
- pattern ScancodeRightBracket :: Scancode
- pattern ScancodeBackslash :: Scancode
- pattern ScancodeNonUSHash :: Scancode
- pattern ScancodeSemicolon :: Scancode
- pattern ScancodeApostrophe :: Scancode
- pattern ScancodeGrave :: Scancode
- pattern ScancodeComma :: Scancode
- pattern ScancodePeriod :: Scancode
- pattern ScancodeSlash :: Scancode
- pattern ScancodeCapsLock :: Scancode
- pattern ScancodeF1 :: Scancode
- pattern ScancodeF2 :: Scancode
- pattern ScancodeF3 :: Scancode
- pattern ScancodeF4 :: Scancode
- pattern ScancodeF5 :: Scancode
- pattern ScancodeF6 :: Scancode
- pattern ScancodeF7 :: Scancode
- pattern ScancodeF8 :: Scancode
- pattern ScancodeF9 :: Scancode
- pattern ScancodeF10 :: Scancode
- pattern ScancodeF11 :: Scancode
- pattern ScancodeF12 :: Scancode
- pattern ScancodePrintScreen :: Scancode
- pattern ScancodeScrollLock :: Scancode
- pattern ScancodePause :: Scancode
- pattern ScancodeInsert :: Scancode
- pattern ScancodeHome :: Scancode
- pattern ScancodePageUp :: Scancode
- pattern ScancodeDelete :: Scancode
- pattern ScancodeEnd :: Scancode
- pattern ScancodePageDown :: Scancode
- pattern ScancodeRight :: Scancode
- pattern ScancodeLeft :: Scancode
- pattern ScancodeDown :: Scancode
- pattern ScancodeUp :: Scancode
- pattern ScancodeNumLockClear :: Scancode
- pattern ScancodeKPDivide :: Scancode
- pattern ScancodeKPMultiply :: Scancode
- pattern ScancodeKPMinus :: Scancode
- pattern ScancodeKPPlus :: Scancode
- pattern ScancodeKPEnter :: Scancode
- pattern ScancodeKP1 :: Scancode
- pattern ScancodeKP2 :: Scancode
- pattern ScancodeKP3 :: Scancode
- pattern ScancodeKP4 :: Scancode
- pattern ScancodeKP5 :: Scancode
- pattern ScancodeKP6 :: Scancode
- pattern ScancodeKP7 :: Scancode
- pattern ScancodeKP8 :: Scancode
- pattern ScancodeKP9 :: Scancode
- pattern ScancodeKP0 :: Scancode
- pattern ScancodeKPPeriod :: Scancode
- pattern ScancodeNonUSBackslash :: Scancode
- pattern ScancodeApplication :: Scancode
- pattern ScancodePower :: Scancode
- pattern ScancodeKPEquals :: Scancode
- pattern ScancodeF13 :: Scancode
- pattern ScancodeF14 :: Scancode
- pattern ScancodeF15 :: Scancode
- pattern ScancodeF16 :: Scancode
- pattern ScancodeF17 :: Scancode
- pattern ScancodeF18 :: Scancode
- pattern ScancodeF19 :: Scancode
- pattern ScancodeF20 :: Scancode
- pattern ScancodeF21 :: Scancode
- pattern ScancodeF22 :: Scancode
- pattern ScancodeF23 :: Scancode
- pattern ScancodeF24 :: Scancode
- pattern ScancodeExecute :: Scancode
- pattern ScancodeHelp :: Scancode
- pattern ScancodeMenu :: Scancode
- pattern ScancodeSelect :: Scancode
- pattern ScancodeStop :: Scancode
- pattern ScancodeAgain :: Scancode
- pattern ScancodeUndo :: Scancode
- pattern ScancodeCut :: Scancode
- pattern ScancodeCopy :: Scancode
- pattern ScancodePaste :: Scancode
- pattern ScancodeFind :: Scancode
- pattern ScancodeMute :: Scancode
- pattern ScancodeVolumeUp :: Scancode
- pattern ScancodeVolumeDown :: Scancode
- pattern ScancodeKPComma :: Scancode
- pattern ScancodeKPEqualsAS400 :: Scancode
- pattern ScancodeInternational1 :: Scancode
- pattern ScancodeInternational2 :: Scancode
- pattern ScancodeInternational3 :: Scancode
- pattern ScancodeInternational4 :: Scancode
- pattern ScancodeInternational5 :: Scancode
- pattern ScancodeInternational6 :: Scancode
- pattern ScancodeInternational7 :: Scancode
- pattern ScancodeInternational8 :: Scancode
- pattern ScancodeInternational9 :: Scancode
- pattern ScancodeLang1 :: Scancode
- pattern ScancodeLang2 :: Scancode
- pattern ScancodeLang3 :: Scancode
- pattern ScancodeLang4 :: Scancode
- pattern ScancodeLang5 :: Scancode
- pattern ScancodeLang6 :: Scancode
- pattern ScancodeLang7 :: Scancode
- pattern ScancodeLang8 :: Scancode
- pattern ScancodeLang9 :: Scancode
- pattern ScancodeAltErase :: Scancode
- pattern ScancodeSysReq :: Scancode
- pattern ScancodeCancel :: Scancode
- pattern ScancodeClear :: Scancode
- pattern ScancodePrior :: Scancode
- pattern ScancodeReturn2 :: Scancode
- pattern ScancodeSeparator :: Scancode
- pattern ScancodeOut :: Scancode
- pattern ScancodeOper :: Scancode
- pattern ScancodeClearAgain :: Scancode
- pattern ScancodeCrSel :: Scancode
- pattern ScancodeExSel :: Scancode
- pattern ScancodeKP00 :: Scancode
- pattern ScancodeKP000 :: Scancode
- pattern ScancodeThousandsSeparator :: Scancode
- pattern ScancodeDecimalSeparator :: Scancode
- pattern ScancodeCurrencyUnit :: Scancode
- pattern ScancodeCurrencySubunit :: Scancode
- pattern ScancodeLeftParen :: Scancode
- pattern ScancodeRightParen :: Scancode
- pattern ScancodeLeftBrace :: Scancode
- pattern ScancodeRightBrace :: Scancode
- pattern ScancodeKPTab :: Scancode
- pattern ScancodeKPBackspace :: Scancode
- pattern ScancodeKPA :: Scancode
- pattern ScancodeKPB :: Scancode
- pattern ScancodeKPC :: Scancode
- pattern ScancodeKPD :: Scancode
- pattern ScancodeKPE :: Scancode
- pattern ScancodeKPF :: Scancode
- pattern ScancodeKPXOR :: Scancode
- pattern ScancodeKPPower :: Scancode
- pattern ScancodeKPPercent :: Scancode
- pattern ScancodeKPLess :: Scancode
- pattern ScancodeKPGreater :: Scancode
- pattern ScancodeKPAmpersand :: Scancode
- pattern ScancodeKPDblAmpersand :: Scancode
- pattern ScancodeKPVerticalBar :: Scancode
- pattern ScancodeKPDblVerticalBar :: Scancode
- pattern ScancodeKPColon :: Scancode
- pattern ScancodeKPHash :: Scancode
- pattern ScancodeKPSpace :: Scancode
- pattern ScancodeKPAt :: Scancode
- pattern ScancodeKPExclam :: Scancode
- pattern ScancodeKPMemStore :: Scancode
- pattern ScancodeKPMemRecall :: Scancode
- pattern ScancodeKPMemClear :: Scancode
- pattern ScancodeKPMemAdd :: Scancode
- pattern ScancodeKPMemSubtract :: Scancode
- pattern ScancodeKPMemMultiply :: Scancode
- pattern ScancodeKPMemDivide :: Scancode
- pattern ScancodeKPPlusMinus :: Scancode
- pattern ScancodeKPClear :: Scancode
- pattern ScancodeKPClearEntry :: Scancode
- pattern ScancodeKPBinary :: Scancode
- pattern ScancodeKPOctal :: Scancode
- pattern ScancodeKPDecimal :: Scancode
- pattern ScancodeKPHexadecimal :: Scancode
- pattern ScancodeLCtrl :: Scancode
- pattern ScancodeLShift :: Scancode
- pattern ScancodeLAlt :: Scancode
- pattern ScancodeLGUI :: Scancode
- pattern ScancodeRCtrl :: Scancode
- pattern ScancodeRShift :: Scancode
- pattern ScancodeRAlt :: Scancode
- pattern ScancodeRGUI :: Scancode
- pattern ScancodeMode :: Scancode
- pattern ScancodeAudioNext :: Scancode
- pattern ScancodeAudioPrev :: Scancode
- pattern ScancodeAudioStop :: Scancode
- pattern ScancodeAudioPlay :: Scancode
- pattern ScancodeAudioMute :: Scancode
- pattern ScancodeMediaSelect :: Scancode
- pattern ScancodeWWW :: Scancode
- pattern ScancodeMail :: Scancode
- pattern ScancodeCalculator :: Scancode
- pattern ScancodeComputer :: Scancode
- pattern ScancodeACSearch :: Scancode
- pattern ScancodeACHome :: Scancode
- pattern ScancodeACBack :: Scancode
- pattern ScancodeACForward :: Scancode
- pattern ScancodeACStop :: Scancode
- pattern ScancodeACRefresh :: Scancode
- pattern ScancodeACBookmarks :: Scancode
- pattern ScancodeBrightnessDown :: Scancode
- pattern ScancodeBrightnessUp :: Scancode
- pattern ScancodeDisplaySwitch :: Scancode
- pattern ScancodeKBDIllumToggle :: Scancode
- pattern ScancodeKBDIllumDown :: Scancode
- pattern ScancodeKBDIllumUp :: Scancode
- pattern ScancodeEject :: Scancode
- pattern ScancodeSleep :: Scancode
- pattern ScancodeApp1 :: Scancode
- pattern ScancodeApp2 :: Scancode
- newtype Keycode = Keycode {}
- pattern KeycodeUnknown :: Keycode
- pattern KeycodeReturn :: Keycode
- pattern KeycodeEscape :: Keycode
- pattern KeycodeBackspace :: Keycode
- pattern KeycodeTab :: Keycode
- pattern KeycodeSpace :: Keycode
- pattern KeycodeExclaim :: Keycode
- pattern KeycodeQuoteDbl :: Keycode
- pattern KeycodeHash :: Keycode
- pattern KeycodePercent :: Keycode
- pattern KeycodeDollar :: Keycode
- pattern KeycodeAmpersand :: Keycode
- pattern KeycodeQuote :: Keycode
- pattern KeycodeLeftParen :: Keycode
- pattern KeycodeRightParen :: Keycode
- pattern KeycodeAsterisk :: Keycode
- pattern KeycodePlus :: Keycode
- pattern KeycodeComma :: Keycode
- pattern KeycodeMinus :: Keycode
- pattern KeycodePeriod :: Keycode
- pattern KeycodeSlash :: Keycode
- pattern Keycode0 :: Keycode
- pattern Keycode1 :: Keycode
- pattern Keycode2 :: Keycode
- pattern Keycode3 :: Keycode
- pattern Keycode4 :: Keycode
- pattern Keycode5 :: Keycode
- pattern Keycode6 :: Keycode
- pattern Keycode7 :: Keycode
- pattern Keycode8 :: Keycode
- pattern Keycode9 :: Keycode
- pattern KeycodeColon :: Keycode
- pattern KeycodeSemicolon :: Keycode
- pattern KeycodeLess :: Keycode
- pattern KeycodeEquals :: Keycode
- pattern KeycodeGreater :: Keycode
- pattern KeycodeQuestion :: Keycode
- pattern KeycodeAt :: Keycode
- pattern KeycodeLeftBracket :: Keycode
- pattern KeycodeBackslash :: Keycode
- pattern KeycodeRightBracket :: Keycode
- pattern KeycodeCaret :: Keycode
- pattern KeycodeUnderscore :: Keycode
- pattern KeycodeBackquote :: Keycode
- pattern KeycodeA :: Keycode
- pattern KeycodeB :: Keycode
- pattern KeycodeC :: Keycode
- pattern KeycodeD :: Keycode
- pattern KeycodeE :: Keycode
- pattern KeycodeF :: Keycode
- pattern KeycodeG :: Keycode
- pattern KeycodeH :: Keycode
- pattern KeycodeI :: Keycode
- pattern KeycodeJ :: Keycode
- pattern KeycodeK :: Keycode
- pattern KeycodeL :: Keycode
- pattern KeycodeM :: Keycode
- pattern KeycodeN :: Keycode
- pattern KeycodeO :: Keycode
- pattern KeycodeP :: Keycode
- pattern KeycodeQ :: Keycode
- pattern KeycodeR :: Keycode
- pattern KeycodeS :: Keycode
- pattern KeycodeT :: Keycode
- pattern KeycodeU :: Keycode
- pattern KeycodeV :: Keycode
- pattern KeycodeW :: Keycode
- pattern KeycodeX :: Keycode
- pattern KeycodeY :: Keycode
- pattern KeycodeZ :: Keycode
- pattern KeycodeCapsLock :: Keycode
- pattern KeycodeF1 :: Keycode
- pattern KeycodeF2 :: Keycode
- pattern KeycodeF3 :: Keycode
- pattern KeycodeF4 :: Keycode
- pattern KeycodeF5 :: Keycode
- pattern KeycodeF6 :: Keycode
- pattern KeycodeF7 :: Keycode
- pattern KeycodeF8 :: Keycode
- pattern KeycodeF9 :: Keycode
- pattern KeycodeF10 :: Keycode
- pattern KeycodeF11 :: Keycode
- pattern KeycodeF12 :: Keycode
- pattern KeycodePrintScreen :: Keycode
- pattern KeycodeScrollLock :: Keycode
- pattern KeycodePause :: Keycode
- pattern KeycodeInsert :: Keycode
- pattern KeycodeHome :: Keycode
- pattern KeycodePageUp :: Keycode
- pattern KeycodeDelete :: Keycode
- pattern KeycodeEnd :: Keycode
- pattern KeycodePageDown :: Keycode
- pattern KeycodeRight :: Keycode
- pattern KeycodeLeft :: Keycode
- pattern KeycodeDown :: Keycode
- pattern KeycodeUp :: Keycode
- pattern KeycodeNumLockClear :: Keycode
- pattern KeycodeKPDivide :: Keycode
- pattern KeycodeKPMultiply :: Keycode
- pattern KeycodeKPMinus :: Keycode
- pattern KeycodeKPPlus :: Keycode
- pattern KeycodeKPEnter :: Keycode
- pattern KeycodeKP1 :: Keycode
- pattern KeycodeKP2 :: Keycode
- pattern KeycodeKP3 :: Keycode
- pattern KeycodeKP4 :: Keycode
- pattern KeycodeKP5 :: Keycode
- pattern KeycodeKP6 :: Keycode
- pattern KeycodeKP7 :: Keycode
- pattern KeycodeKP8 :: Keycode
- pattern KeycodeKP9 :: Keycode
- pattern KeycodeKP0 :: Keycode
- pattern KeycodeKPPeriod :: Keycode
- pattern KeycodeApplication :: Keycode
- pattern KeycodePower :: Keycode
- pattern KeycodeKPEquals :: Keycode
- pattern KeycodeF13 :: Keycode
- pattern KeycodeF14 :: Keycode
- pattern KeycodeF15 :: Keycode
- pattern KeycodeF16 :: Keycode
- pattern KeycodeF17 :: Keycode
- pattern KeycodeF18 :: Keycode
- pattern KeycodeF19 :: Keycode
- pattern KeycodeF20 :: Keycode
- pattern KeycodeF21 :: Keycode
- pattern KeycodeF22 :: Keycode
- pattern KeycodeF23 :: Keycode
- pattern KeycodeF24 :: Keycode
- pattern KeycodeExecute :: Keycode
- pattern KeycodeHelp :: Keycode
- pattern KeycodeMenu :: Keycode
- pattern KeycodeSelect :: Keycode
- pattern KeycodeStop :: Keycode
- pattern KeycodeAgain :: Keycode
- pattern KeycodeUndo :: Keycode
- pattern KeycodeCut :: Keycode
- pattern KeycodeCopy :: Keycode
- pattern KeycodePaste :: Keycode
- pattern KeycodeFind :: Keycode
- pattern KeycodeMute :: Keycode
- pattern KeycodeVolumeUp :: Keycode
- pattern KeycodeVolumeDown :: Keycode
- pattern KeycodeKPComma :: Keycode
- pattern KeycodeKPEqualsAS400 :: Keycode
- pattern KeycodeAltErase :: Keycode
- pattern KeycodeSysReq :: Keycode
- pattern KeycodeCancel :: Keycode
- pattern KeycodeClear :: Keycode
- pattern KeycodePrior :: Keycode
- pattern KeycodeReturn2 :: Keycode
- pattern KeycodeSeparator :: Keycode
- pattern KeycodeOut :: Keycode
- pattern KeycodeOper :: Keycode
- pattern KeycodeClearAgain :: Keycode
- pattern KeycodeCrSel :: Keycode
- pattern KeycodeExSel :: Keycode
- pattern KeycodeKP00 :: Keycode
- pattern KeycodeKP000 :: Keycode
- pattern KeycodeThousandsSeparator :: Keycode
- pattern KeycodeDecimalSeparator :: Keycode
- pattern KeycodeCurrencyUnit :: Keycode
- pattern KeycodeCurrencySubunit :: Keycode
- pattern KeycodeKPLeftParen :: Keycode
- pattern KeycodeKPRightParen :: Keycode
- pattern KeycodeKPLeftBrace :: Keycode
- pattern KeycodeKPRightBrace :: Keycode
- pattern KeycodeKPTab :: Keycode
- pattern KeycodeKPBackspace :: Keycode
- pattern KeycodeKPA :: Keycode
- pattern KeycodeKPB :: Keycode
- pattern KeycodeKPC :: Keycode
- pattern KeycodeKPD :: Keycode
- pattern KeycodeKPE :: Keycode
- pattern KeycodeKPF :: Keycode
- pattern KeycodeKPXor :: Keycode
- pattern KeycodeKPPower :: Keycode
- pattern KeycodeKPPercent :: Keycode
- pattern KeycodeKPLess :: Keycode
- pattern KeycodeKPGreater :: Keycode
- pattern KeycodeKPAmpersand :: Keycode
- pattern KeycodeKPDblAmpersand :: Keycode
- pattern KeycodeKPVerticalBar :: Keycode
- pattern KeycodeKPDblVerticalBar :: Keycode
- pattern KeycodeKPColon :: Keycode
- pattern KeycodeKPHash :: Keycode
- pattern KeycodeKPSpace :: Keycode
- pattern KeycodeKPAt :: Keycode
- pattern KeycodeKPExclam :: Keycode
- pattern KeycodeKPMemStore :: Keycode
- pattern KeycodeKPMemRecall :: Keycode
- pattern KeycodeKPMemClear :: Keycode
- pattern KeycodeKPMemAdd :: Keycode
- pattern KeycodeKPMemSubtract :: Keycode
- pattern KeycodeKPMemMultiply :: Keycode
- pattern KeycodeKPMemDivide :: Keycode
- pattern KeycodeKPPlusMinus :: Keycode
- pattern KeycodeKPClear :: Keycode
- pattern KeycodeKPClearEntry :: Keycode
- pattern KeycodeKPBinary :: Keycode
- pattern KeycodeKPOctal :: Keycode
- pattern KeycodeKPDecimal :: Keycode
- pattern KeycodeKPHexadecimal :: Keycode
- pattern KeycodeLCtrl :: Keycode
- pattern KeycodeLShift :: Keycode
- pattern KeycodeLAlt :: Keycode
- pattern KeycodeLGUI :: Keycode
- pattern KeycodeRCtrl :: Keycode
- pattern KeycodeRShift :: Keycode
- pattern KeycodeRAlt :: Keycode
- pattern KeycodeRGUI :: Keycode
- pattern KeycodeMode :: Keycode
- pattern KeycodeAudioNext :: Keycode
- pattern KeycodeAudioPrev :: Keycode
- pattern KeycodeAudioStop :: Keycode
- pattern KeycodeAudioPlay :: Keycode
- pattern KeycodeAudioMute :: Keycode
- pattern KeycodeMediaSelect :: Keycode
- pattern KeycodeWWW :: Keycode
- pattern KeycodeMail :: Keycode
- pattern KeycodeCalculator :: Keycode
- pattern KeycodeComputer :: Keycode
- pattern KeycodeACSearch :: Keycode
- pattern KeycodeACHome :: Keycode
- pattern KeycodeACBack :: Keycode
- pattern KeycodeACForward :: Keycode
- pattern KeycodeACStop :: Keycode
- pattern KeycodeACRefresh :: Keycode
- pattern KeycodeACBookmarks :: Keycode
- pattern KeycodeBrightnessDown :: Keycode
- pattern KeycodeBrightnessUp :: Keycode
- pattern KeycodeDisplaySwitch :: Keycode
- pattern KeycodeKbdIllumToggle :: Keycode
- pattern KeycodeKbdIllumDown :: Keycode
- pattern KeycodeKbdIllumUp :: Keycode
- pattern KeycodeEject :: Keycode
- pattern KeycodeSleep :: Keycode
Scancodes
Scancodes are codes that correspond to the physical position of a key, independent of the current keyboard layout.
Scancodes are meant to be layout-independent. Think of this as "the user pressed the Q key as it would be on a US QWERTY keyboard" regardless of whether this is actually a European keyboard or a Dvorak keyboard or whatever. The scancode is always the same key position.
Scancode
makes sense when you want key presses based on their location on a keyboard - for example, the traditional "WASD" layout used in first-person shooters.
Constructors
Scancode | |
Fields |
pattern ScancodeUnknown :: Scancode #
pattern ScancodeReturn :: Scancode #
pattern ScancodeEscape :: Scancode #
pattern ScancodeBackspace :: Scancode #
pattern ScancodeTab :: Scancode #
pattern ScancodeSpace :: Scancode #
pattern ScancodeMinus :: Scancode #
pattern ScancodeEquals :: Scancode #
pattern ScancodeLeftBracket :: Scancode #
pattern ScancodeRightBracket :: Scancode #
pattern ScancodeBackslash :: Scancode #
pattern ScancodeNonUSHash :: Scancode #
pattern ScancodeSemicolon :: Scancode #
pattern ScancodeApostrophe :: Scancode #
pattern ScancodeGrave :: Scancode #
pattern ScancodeComma :: Scancode #
pattern ScancodePeriod :: Scancode #
pattern ScancodeSlash :: Scancode #
pattern ScancodeCapsLock :: Scancode #
pattern ScancodeF1 :: Scancode #
pattern ScancodeF2 :: Scancode #
pattern ScancodeF3 :: Scancode #
pattern ScancodeF4 :: Scancode #
pattern ScancodeF5 :: Scancode #
pattern ScancodeF6 :: Scancode #
pattern ScancodeF7 :: Scancode #
pattern ScancodeF8 :: Scancode #
pattern ScancodeF9 :: Scancode #
pattern ScancodeF10 :: Scancode #
pattern ScancodeF11 :: Scancode #
pattern ScancodeF12 :: Scancode #
pattern ScancodePrintScreen :: Scancode #
pattern ScancodeScrollLock :: Scancode #
pattern ScancodePause :: Scancode #
pattern ScancodeInsert :: Scancode #
pattern ScancodeHome :: Scancode #
pattern ScancodePageUp :: Scancode #
pattern ScancodeDelete :: Scancode #
pattern ScancodeEnd :: Scancode #
pattern ScancodePageDown :: Scancode #
pattern ScancodeRight :: Scancode #
pattern ScancodeLeft :: Scancode #
pattern ScancodeDown :: Scancode #
pattern ScancodeUp :: Scancode #
pattern ScancodeNumLockClear :: Scancode #
pattern ScancodeKPDivide :: Scancode #
pattern ScancodeKPMultiply :: Scancode #
pattern ScancodeKPMinus :: Scancode #
pattern ScancodeKPPlus :: Scancode #
pattern ScancodeKPEnter :: Scancode #
pattern ScancodeKP1 :: Scancode #
pattern ScancodeKP2 :: Scancode #
pattern ScancodeKP3 :: Scancode #
pattern ScancodeKP4 :: Scancode #
pattern ScancodeKP5 :: Scancode #
pattern ScancodeKP6 :: Scancode #
pattern ScancodeKP7 :: Scancode #
pattern ScancodeKP8 :: Scancode #
pattern ScancodeKP9 :: Scancode #
pattern ScancodeKP0 :: Scancode #
pattern ScancodeKPPeriod :: Scancode #
pattern ScancodeNonUSBackslash :: Scancode #
pattern ScancodeApplication :: Scancode #
pattern ScancodePower :: Scancode #
pattern ScancodeKPEquals :: Scancode #
pattern ScancodeF13 :: Scancode #
pattern ScancodeF14 :: Scancode #
pattern ScancodeF15 :: Scancode #
pattern ScancodeF16 :: Scancode #
pattern ScancodeF17 :: Scancode #
pattern ScancodeF18 :: Scancode #
pattern ScancodeF19 :: Scancode #
pattern ScancodeF20 :: Scancode #
pattern ScancodeF21 :: Scancode #
pattern ScancodeF22 :: Scancode #
pattern ScancodeF23 :: Scancode #
pattern ScancodeF24 :: Scancode #
pattern ScancodeExecute :: Scancode #
pattern ScancodeHelp :: Scancode #
pattern ScancodeMenu :: Scancode #
pattern ScancodeSelect :: Scancode #
pattern ScancodeStop :: Scancode #
pattern ScancodeAgain :: Scancode #
pattern ScancodeUndo :: Scancode #
pattern ScancodeCut :: Scancode #
pattern ScancodeCopy :: Scancode #
pattern ScancodePaste :: Scancode #
pattern ScancodeFind :: Scancode #
pattern ScancodeMute :: Scancode #
pattern ScancodeVolumeUp :: Scancode #
pattern ScancodeVolumeDown :: Scancode #
pattern ScancodeKPComma :: Scancode #
pattern ScancodeKPEqualsAS400 :: Scancode #
pattern ScancodeInternational1 :: Scancode #
pattern ScancodeInternational2 :: Scancode #
pattern ScancodeInternational3 :: Scancode #
pattern ScancodeInternational4 :: Scancode #
pattern ScancodeInternational5 :: Scancode #
pattern ScancodeInternational6 :: Scancode #
pattern ScancodeInternational7 :: Scancode #
pattern ScancodeInternational8 :: Scancode #
pattern ScancodeInternational9 :: Scancode #
pattern ScancodeLang1 :: Scancode #
pattern ScancodeLang2 :: Scancode #
pattern ScancodeLang3 :: Scancode #
pattern ScancodeLang4 :: Scancode #
pattern ScancodeLang5 :: Scancode #
pattern ScancodeLang6 :: Scancode #
pattern ScancodeLang7 :: Scancode #
pattern ScancodeLang8 :: Scancode #
pattern ScancodeLang9 :: Scancode #
pattern ScancodeAltErase :: Scancode #
pattern ScancodeSysReq :: Scancode #
pattern ScancodeCancel :: Scancode #
pattern ScancodeClear :: Scancode #
pattern ScancodePrior :: Scancode #
pattern ScancodeReturn2 :: Scancode #
pattern ScancodeSeparator :: Scancode #
pattern ScancodeOut :: Scancode #
pattern ScancodeOper :: Scancode #
pattern ScancodeClearAgain :: Scancode #
pattern ScancodeCrSel :: Scancode #
pattern ScancodeExSel :: Scancode #
pattern ScancodeKP00 :: Scancode #
pattern ScancodeKP000 :: Scancode #
pattern ScancodeThousandsSeparator :: Scancode #
pattern ScancodeDecimalSeparator :: Scancode #
pattern ScancodeCurrencyUnit :: Scancode #
pattern ScancodeCurrencySubunit :: Scancode #
pattern ScancodeLeftParen :: Scancode #
pattern ScancodeRightParen :: Scancode #
pattern ScancodeLeftBrace :: Scancode #
pattern ScancodeRightBrace :: Scancode #
pattern ScancodeKPTab :: Scancode #
pattern ScancodeKPBackspace :: Scancode #
pattern ScancodeKPA :: Scancode #
pattern ScancodeKPB :: Scancode #
pattern ScancodeKPC :: Scancode #
pattern ScancodeKPD :: Scancode #
pattern ScancodeKPE :: Scancode #
pattern ScancodeKPF :: Scancode #
pattern ScancodeKPXOR :: Scancode #
pattern ScancodeKPPower :: Scancode #
pattern ScancodeKPPercent :: Scancode #
pattern ScancodeKPLess :: Scancode #
pattern ScancodeKPGreater :: Scancode #
pattern ScancodeKPAmpersand :: Scancode #
pattern ScancodeKPDblAmpersand :: Scancode #
pattern ScancodeKPVerticalBar :: Scancode #
pattern ScancodeKPDblVerticalBar :: Scancode #
pattern ScancodeKPColon :: Scancode #
pattern ScancodeKPHash :: Scancode #
pattern ScancodeKPSpace :: Scancode #
pattern ScancodeKPAt :: Scancode #
pattern ScancodeKPExclam :: Scancode #
pattern ScancodeKPMemStore :: Scancode #
pattern ScancodeKPMemRecall :: Scancode #
pattern ScancodeKPMemClear :: Scancode #
pattern ScancodeKPMemAdd :: Scancode #
pattern ScancodeKPMemSubtract :: Scancode #
pattern ScancodeKPMemMultiply :: Scancode #
pattern ScancodeKPMemDivide :: Scancode #
pattern ScancodeKPPlusMinus :: Scancode #
pattern ScancodeKPClear :: Scancode #
pattern ScancodeKPClearEntry :: Scancode #
pattern ScancodeKPBinary :: Scancode #
pattern ScancodeKPOctal :: Scancode #
pattern ScancodeKPDecimal :: Scancode #
pattern ScancodeKPHexadecimal :: Scancode #
pattern ScancodeLCtrl :: Scancode #
pattern ScancodeLShift :: Scancode #
pattern ScancodeLAlt :: Scancode #
pattern ScancodeLGUI :: Scancode #
pattern ScancodeRCtrl :: Scancode #
pattern ScancodeRShift :: Scancode #
pattern ScancodeRAlt :: Scancode #
pattern ScancodeRGUI :: Scancode #
pattern ScancodeMode :: Scancode #
pattern ScancodeAudioNext :: Scancode #
pattern ScancodeAudioPrev :: Scancode #
pattern ScancodeAudioStop :: Scancode #
pattern ScancodeAudioPlay :: Scancode #
pattern ScancodeAudioMute :: Scancode #
pattern ScancodeMediaSelect :: Scancode #
pattern ScancodeWWW :: Scancode #
pattern ScancodeMail :: Scancode #
pattern ScancodeCalculator :: Scancode #
pattern ScancodeComputer :: Scancode #
pattern ScancodeACSearch :: Scancode #
pattern ScancodeACHome :: Scancode #
pattern ScancodeACBack :: Scancode #
pattern ScancodeACForward :: Scancode #
pattern ScancodeACStop :: Scancode #
pattern ScancodeACRefresh :: Scancode #
pattern ScancodeACBookmarks :: Scancode #
pattern ScancodeBrightnessDown :: Scancode #
pattern ScancodeBrightnessUp :: Scancode #
pattern ScancodeDisplaySwitch :: Scancode #
pattern ScancodeKBDIllumToggle :: Scancode #
pattern ScancodeKBDIllumDown :: Scancode #
pattern ScancodeKBDIllumUp :: Scancode #
pattern ScancodeEject :: Scancode #
pattern ScancodeSleep :: Scancode #
pattern ScancodeApp1 :: Scancode #
pattern ScancodeApp2 :: Scancode #
Keycode
Keycodes are layout-dependent codes, in that the code you receive can change for the same physical key depending on the users keyboard layout.
Think of this as "the user pressed the key that is labelled Q
on a specific keyboard."
Keycode
makes sense when you are anticipating the user to press either keys that match some mneumonic, or they are entering text.
Constructors
Keycode | |
Fields |
pattern KeycodeUnknown :: Keycode #
pattern KeycodeReturn :: Keycode #
pattern KeycodeEscape :: Keycode #
pattern KeycodeBackspace :: Keycode #
pattern KeycodeTab :: Keycode #
pattern KeycodeSpace :: Keycode #
pattern KeycodeExclaim :: Keycode #
pattern KeycodeQuoteDbl :: Keycode #
pattern KeycodeHash :: Keycode #
pattern KeycodePercent :: Keycode #
pattern KeycodeDollar :: Keycode #
pattern KeycodeAmpersand :: Keycode #
pattern KeycodeQuote :: Keycode #
pattern KeycodeLeftParen :: Keycode #
pattern KeycodeRightParen :: Keycode #
pattern KeycodeAsterisk :: Keycode #
pattern KeycodePlus :: Keycode #
pattern KeycodeComma :: Keycode #
pattern KeycodeMinus :: Keycode #
pattern KeycodePeriod :: Keycode #
pattern KeycodeSlash :: Keycode #
pattern KeycodeColon :: Keycode #
pattern KeycodeSemicolon :: Keycode #
pattern KeycodeLess :: Keycode #
pattern KeycodeEquals :: Keycode #
pattern KeycodeGreater :: Keycode #
pattern KeycodeQuestion :: Keycode #
pattern KeycodeLeftBracket :: Keycode #
pattern KeycodeBackslash :: Keycode #
pattern KeycodeRightBracket :: Keycode #
pattern KeycodeCaret :: Keycode #
pattern KeycodeUnderscore :: Keycode #
pattern KeycodeBackquote :: Keycode #
pattern KeycodeCapsLock :: Keycode #
pattern KeycodeF10 :: Keycode #
pattern KeycodeF11 :: Keycode #
pattern KeycodeF12 :: Keycode #
pattern KeycodePrintScreen :: Keycode #
pattern KeycodeScrollLock :: Keycode #
pattern KeycodePause :: Keycode #
pattern KeycodeInsert :: Keycode #
pattern KeycodeHome :: Keycode #
pattern KeycodePageUp :: Keycode #
pattern KeycodeDelete :: Keycode #
pattern KeycodeEnd :: Keycode #
pattern KeycodePageDown :: Keycode #
pattern KeycodeRight :: Keycode #
pattern KeycodeLeft :: Keycode #
pattern KeycodeDown :: Keycode #
pattern KeycodeNumLockClear :: Keycode #
pattern KeycodeKPDivide :: Keycode #
pattern KeycodeKPMultiply :: Keycode #
pattern KeycodeKPMinus :: Keycode #
pattern KeycodeKPPlus :: Keycode #
pattern KeycodeKPEnter :: Keycode #
pattern KeycodeKP1 :: Keycode #
pattern KeycodeKP2 :: Keycode #
pattern KeycodeKP3 :: Keycode #
pattern KeycodeKP4 :: Keycode #
pattern KeycodeKP5 :: Keycode #
pattern KeycodeKP6 :: Keycode #
pattern KeycodeKP7 :: Keycode #
pattern KeycodeKP8 :: Keycode #
pattern KeycodeKP9 :: Keycode #
pattern KeycodeKP0 :: Keycode #
pattern KeycodeKPPeriod :: Keycode #
pattern KeycodeApplication :: Keycode #
pattern KeycodePower :: Keycode #
pattern KeycodeKPEquals :: Keycode #
pattern KeycodeF13 :: Keycode #
pattern KeycodeF14 :: Keycode #
pattern KeycodeF15 :: Keycode #
pattern KeycodeF16 :: Keycode #
pattern KeycodeF17 :: Keycode #
pattern KeycodeF18 :: Keycode #
pattern KeycodeF19 :: Keycode #
pattern KeycodeF20 :: Keycode #
pattern KeycodeF21 :: Keycode #
pattern KeycodeF22 :: Keycode #
pattern KeycodeF23 :: Keycode #
pattern KeycodeF24 :: Keycode #
pattern KeycodeExecute :: Keycode #
pattern KeycodeHelp :: Keycode #
pattern KeycodeMenu :: Keycode #
pattern KeycodeSelect :: Keycode #
pattern KeycodeStop :: Keycode #
pattern KeycodeAgain :: Keycode #
pattern KeycodeUndo :: Keycode #
pattern KeycodeCut :: Keycode #
pattern KeycodeCopy :: Keycode #
pattern KeycodePaste :: Keycode #
pattern KeycodeFind :: Keycode #
pattern KeycodeMute :: Keycode #
pattern KeycodeVolumeUp :: Keycode #
pattern KeycodeVolumeDown :: Keycode #
pattern KeycodeKPComma :: Keycode #
pattern KeycodeKPEqualsAS400 :: Keycode #
pattern KeycodeAltErase :: Keycode #
pattern KeycodeSysReq :: Keycode #
pattern KeycodeCancel :: Keycode #
pattern KeycodeClear :: Keycode #
pattern KeycodePrior :: Keycode #
pattern KeycodeReturn2 :: Keycode #
pattern KeycodeSeparator :: Keycode #
pattern KeycodeOut :: Keycode #
pattern KeycodeOper :: Keycode #
pattern KeycodeClearAgain :: Keycode #
pattern KeycodeCrSel :: Keycode #
pattern KeycodeExSel :: Keycode #
pattern KeycodeKP00 :: Keycode #
pattern KeycodeKP000 :: Keycode #
pattern KeycodeThousandsSeparator :: Keycode #
pattern KeycodeDecimalSeparator :: Keycode #
pattern KeycodeCurrencyUnit :: Keycode #
pattern KeycodeCurrencySubunit :: Keycode #
pattern KeycodeKPLeftParen :: Keycode #
pattern KeycodeKPRightParen :: Keycode #
pattern KeycodeKPLeftBrace :: Keycode #
pattern KeycodeKPRightBrace :: Keycode #
pattern KeycodeKPTab :: Keycode #
pattern KeycodeKPBackspace :: Keycode #
pattern KeycodeKPA :: Keycode #
pattern KeycodeKPB :: Keycode #
pattern KeycodeKPC :: Keycode #
pattern KeycodeKPD :: Keycode #
pattern KeycodeKPE :: Keycode #
pattern KeycodeKPF :: Keycode #
pattern KeycodeKPXor :: Keycode #
pattern KeycodeKPPower :: Keycode #
pattern KeycodeKPPercent :: Keycode #
pattern KeycodeKPLess :: Keycode #
pattern KeycodeKPGreater :: Keycode #
pattern KeycodeKPAmpersand :: Keycode #
pattern KeycodeKPDblAmpersand :: Keycode #
pattern KeycodeKPVerticalBar :: Keycode #
pattern KeycodeKPDblVerticalBar :: Keycode #
pattern KeycodeKPColon :: Keycode #
pattern KeycodeKPHash :: Keycode #
pattern KeycodeKPSpace :: Keycode #
pattern KeycodeKPAt :: Keycode #
pattern KeycodeKPExclam :: Keycode #
pattern KeycodeKPMemStore :: Keycode #
pattern KeycodeKPMemRecall :: Keycode #
pattern KeycodeKPMemClear :: Keycode #
pattern KeycodeKPMemAdd :: Keycode #
pattern KeycodeKPMemSubtract :: Keycode #
pattern KeycodeKPMemMultiply :: Keycode #
pattern KeycodeKPMemDivide :: Keycode #
pattern KeycodeKPPlusMinus :: Keycode #
pattern KeycodeKPClear :: Keycode #
pattern KeycodeKPClearEntry :: Keycode #
pattern KeycodeKPBinary :: Keycode #
pattern KeycodeKPOctal :: Keycode #
pattern KeycodeKPDecimal :: Keycode #
pattern KeycodeKPHexadecimal :: Keycode #
pattern KeycodeLCtrl :: Keycode #
pattern KeycodeLShift :: Keycode #
pattern KeycodeLAlt :: Keycode #
pattern KeycodeLGUI :: Keycode #
pattern KeycodeRCtrl :: Keycode #
pattern KeycodeRShift :: Keycode #
pattern KeycodeRAlt :: Keycode #
pattern KeycodeRGUI :: Keycode #
pattern KeycodeMode :: Keycode #
pattern KeycodeAudioNext :: Keycode #
pattern KeycodeAudioPrev :: Keycode #
pattern KeycodeAudioStop :: Keycode #
pattern KeycodeAudioPlay :: Keycode #
pattern KeycodeAudioMute :: Keycode #
pattern KeycodeMediaSelect :: Keycode #
pattern KeycodeWWW :: Keycode #
pattern KeycodeMail :: Keycode #
pattern KeycodeCalculator :: Keycode #
pattern KeycodeComputer :: Keycode #
pattern KeycodeACSearch :: Keycode #
pattern KeycodeACHome :: Keycode #
pattern KeycodeACBack :: Keycode #
pattern KeycodeACForward :: Keycode #
pattern KeycodeACStop :: Keycode #
pattern KeycodeACRefresh :: Keycode #
pattern KeycodeACBookmarks :: Keycode #
pattern KeycodeBrightnessDown :: Keycode #
pattern KeycodeBrightnessUp :: Keycode #
pattern KeycodeDisplaySwitch :: Keycode #
pattern KeycodeKbdIllumToggle :: Keycode #
pattern KeycodeKbdIllumDown :: Keycode #
pattern KeycodeKbdIllumUp :: Keycode #
pattern KeycodeEject :: Keycode #
pattern KeycodeSleep :: Keycode #