Keyboard¶
Enums
-
enum sfKeyCode¶
Key codes.
The enumerators refer to the “localized” key; i.e. depending on the layout set by the operating system, a key can be mapped to
Y
orZ
.Values:
-
enumerator sfKeyUnknown¶
Unhandled key.
-
enumerator sfKeyA¶
The A key.
-
enumerator sfKeyB¶
The B key.
-
enumerator sfKeyC¶
The C key.
-
enumerator sfKeyD¶
The D key.
-
enumerator sfKeyE¶
The E key.
-
enumerator sfKeyF¶
The F key.
-
enumerator sfKeyG¶
The G key.
-
enumerator sfKeyH¶
The H key.
-
enumerator sfKeyI¶
The I key.
-
enumerator sfKeyJ¶
The J key.
-
enumerator sfKeyK¶
The K key.
-
enumerator sfKeyL¶
The L key.
-
enumerator sfKeyM¶
The M key.
-
enumerator sfKeyN¶
The N key.
-
enumerator sfKeyO¶
The O key.
-
enumerator sfKeyP¶
The P key.
-
enumerator sfKeyQ¶
The Q key.
-
enumerator sfKeyR¶
The R key.
-
enumerator sfKeyS¶
The S key.
-
enumerator sfKeyT¶
The T key.
-
enumerator sfKeyU¶
The U key.
-
enumerator sfKeyV¶
The V key.
-
enumerator sfKeyW¶
The W key.
-
enumerator sfKeyX¶
The X key.
-
enumerator sfKeyY¶
The Y key.
-
enumerator sfKeyZ¶
The Z key.
-
enumerator sfKeyNum0¶
The 0 key.
-
enumerator sfKeyNum1¶
The 1 key.
-
enumerator sfKeyNum2¶
The 2 key.
-
enumerator sfKeyNum3¶
The 3 key.
-
enumerator sfKeyNum4¶
The 4 key.
-
enumerator sfKeyNum5¶
The 5 key.
-
enumerator sfKeyNum6¶
The 6 key.
-
enumerator sfKeyNum7¶
The 7 key.
-
enumerator sfKeyNum8¶
The 8 key.
-
enumerator sfKeyNum9¶
The 9 key.
-
enumerator sfKeyEscape¶
The Escape key.
-
enumerator sfKeyLControl¶
The left Control key.
-
enumerator sfKeyLShift¶
The left Shift key.
-
enumerator sfKeyLAlt¶
The left Alt key.
-
enumerator sfKeyLSystem¶
The left OS specific key: window (Windows and Linux), apple (macOS), …
-
enumerator sfKeyRControl¶
The right Control key.
-
enumerator sfKeyRShift¶
The right Shift key.
-
enumerator sfKeyRAlt¶
The right Alt key.
-
enumerator sfKeyRSystem¶
The right OS specific key: window (Windows and Linux), apple (macOS), …
-
enumerator sfKeyMenu¶
The Menu key.
-
enumerator sfKeyLBracket¶
The [ key.
-
enumerator sfKeyRBracket¶
The ] key.
-
enumerator sfKeySemicolon¶
The ; key.
-
enumerator sfKeyComma¶
The , key.
-
enumerator sfKeyPeriod¶
The . key.
-
enumerator sfKeyApostrophe¶
The ‘ key.
-
enumerator sfKeySlash¶
The / key.
-
enumerator sfKeyBackslash¶
The \ key.
-
enumerator sfKeyGrave¶
The ` key.
-
enumerator sfKeyEqual¶
The = key.
-
enumerator sfKeyHyphen¶
The - key (hyphen)
-
enumerator sfKeySpace¶
The Space key.
-
enumerator sfKeyEnter¶
The Enter/Return key.
-
enumerator sfKeyBackspace¶
The Backspace key.
-
enumerator sfKeyTab¶
The Tabulation key.
-
enumerator sfKeyPageUp¶
The Page up key.
-
enumerator sfKeyPageDown¶
The Page down key.
-
enumerator sfKeyEnd¶
The End key.
-
enumerator sfKeyHome¶
The Home key.
-
enumerator sfKeyInsert¶
The Insert key.
-
enumerator sfKeyDelete¶
The Delete key.
-
enumerator sfKeyAdd¶
The + key.
-
enumerator sfKeySubtract¶
The - key (minus, usually from numpad)
-
enumerator sfKeyMultiply¶
The * key.
-
enumerator sfKeyDivide¶
The / key.
-
enumerator sfKeyLeft¶
Left arrow.
-
enumerator sfKeyRight¶
Right arrow.
-
enumerator sfKeyUp¶
Up arrow.
-
enumerator sfKeyDown¶
Down arrow.
-
enumerator sfKeyNumpad0¶
The numpad 0 key.
-
enumerator sfKeyNumpad1¶
The numpad 1 key.
-
enumerator sfKeyNumpad2¶
The numpad 2 key.
-
enumerator sfKeyNumpad3¶
The numpad 3 key.
-
enumerator sfKeyNumpad4¶
The numpad 4 key.
-
enumerator sfKeyNumpad5¶
The numpad 5 key.
-
enumerator sfKeyNumpad6¶
The numpad 6 key.
-
enumerator sfKeyNumpad7¶
The numpad 7 key.
-
enumerator sfKeyNumpad8¶
The numpad 8 key.
-
enumerator sfKeyNumpad9¶
The numpad 9 key.
-
enumerator sfKeyF1¶
The F1 key.
-
enumerator sfKeyF2¶
The F2 key.
-
enumerator sfKeyF3¶
The F3 key.
-
enumerator sfKeyF4¶
The F4 key.
-
enumerator sfKeyF5¶
The F5 key.
-
enumerator sfKeyF6¶
The F6 key.
-
enumerator sfKeyF7¶
The F7 key.
-
enumerator sfKeyF8¶
The F8 key.
-
enumerator sfKeyF9¶
The F8 key.
-
enumerator sfKeyF10¶
The F10 key.
-
enumerator sfKeyF11¶
The F11 key.
-
enumerator sfKeyF12¶
The F12 key.
-
enumerator sfKeyF13¶
The F13 key.
-
enumerator sfKeyF14¶
The F14 key.
-
enumerator sfKeyF15¶
The F15 key.
-
enumerator sfKeyPause¶
The Pause key.
-
enumerator sfKeyUnknown¶
Values:
-
enumerator sfKeyCount¶
The total number of keyboard keys.
-
enumerator sfKeyCount¶
-
enum sfScancode¶
Scancodes.
The enumerators are bound to a physical key and do not depend on the keyboard layout used by the operating system. Usually, the AT-101 keyboard can be used as reference for the physical position of the keys.
Values:
-
enumerator sfScanUnknown¶
Represents any scancode not present in this enum.
-
enumerator sfScanA¶
Keyboard a and A key.
-
enumerator sfScanB¶
Keyboard b and B key.
-
enumerator sfScanC¶
Keyboard c and C key.
-
enumerator sfScanD¶
Keyboard d and D key.
-
enumerator sfScanE¶
Keyboard e and E key.
-
enumerator sfScanF¶
Keyboard f and F key.
-
enumerator sfScanG¶
Keyboard g and G key.
-
enumerator sfScanH¶
Keyboard h and H key.
-
enumerator sfScanI¶
Keyboard i and I key.
-
enumerator sfScanJ¶
Keyboard j and J key.
-
enumerator sfScanK¶
Keyboard k and K key.
-
enumerator sfScanL¶
Keyboard l and L key.
-
enumerator sfScanM¶
Keyboard m and M key.
-
enumerator sfScanN¶
Keyboard n and N key.
-
enumerator sfScanO¶
Keyboard o and O key.
-
enumerator sfScanP¶
Keyboard p and P key.
-
enumerator sfScanQ¶
Keyboard q and Q key.
-
enumerator sfScanR¶
Keyboard r and R key.
-
enumerator sfScanS¶
Keyboard s and S key.
-
enumerator sfScanT¶
Keyboard t and T key.
-
enumerator sfScanU¶
Keyboard u and U key.
-
enumerator sfScanV¶
Keyboard v and V key.
-
enumerator sfScanW¶
Keyboard w and W key.
-
enumerator sfScanX¶
Keyboard x and X key.
-
enumerator sfScanY¶
Keyboard y and Y key.
-
enumerator sfScanZ¶
Keyboard z and Z key.
-
enumerator sfScanNum1¶
Keyboard 1 and ! key.
-
enumerator sfScanNum2¶
Keyboard 2 and @ key.
-
enumerator sfScanNum3¶
Keyboard 3 and # key.
-
enumerator sfScanNum4¶
Keyboard 4 and $ key.
-
enumerator sfScanNum5¶
Keyboard 5 and % key.
-
enumerator sfScanNum6¶
Keyboard 6 and ^ key.
-
enumerator sfScanNum7¶
Keyboard 7 and & key.
-
enumerator sfScanNum8¶
Keyboard 8 and * key.
-
enumerator sfScanNum9¶
Keyboard 9 and ) key.
-
enumerator sfScanNum0¶
Keyboard 0 and ) key.
-
enumerator sfScanEnter¶
Keyboard Enter/Return key.
-
enumerator sfScanEscape¶
Keyboard Escape key.
-
enumerator sfScanBackspace¶
Keyboard Backspace key.
-
enumerator sfScanTab¶
Keyboard Tab key.
-
enumerator sfScanSpace¶
Keyboard Space key.
-
enumerator sfScanHyphen¶
Keyboard - and _ key.
-
enumerator sfScanEqual¶
Keyboard = and +.
-
enumerator sfScanLBracket¶
Keyboard [ and { key.
-
enumerator sfScanRBracket¶
Keyboard ] and } key.
-
enumerator sfScanBackslash¶
Keyboard \ and | key OR various keys for Non-US keyboards.
-
enumerator sfScanSemicolon¶
Keyboard ; and : key.
-
enumerator sfScanApostrophe¶
Keyboard ‘ and “ key.
-
enumerator sfScanGrave¶
Keyboard ` and ~ key.
-
enumerator sfScanComma¶
Keyboard , and < key.
-
enumerator sfScanPeriod¶
Keyboard . and > key.
-
enumerator sfScanSlash¶
Keyboard / and ? key.
-
enumerator sfScanF1¶
Keyboard F1 key.
-
enumerator sfScanF2¶
Keyboard F2 key.
-
enumerator sfScanF3¶
Keyboard F3 key.
-
enumerator sfScanF4¶
Keyboard F4 key.
-
enumerator sfScanF5¶
Keyboard F5 key.
-
enumerator sfScanF6¶
Keyboard F6 key.
-
enumerator sfScanF7¶
Keyboard F7 key.
-
enumerator sfScanF8¶
Keyboard F8 key.
-
enumerator sfScanF9¶
Keyboard F9 key.
-
enumerator sfScanF10¶
Keyboard F10 key.
-
enumerator sfScanF11¶
Keyboard F11 key.
-
enumerator sfScanF12¶
Keyboard F12 key.
-
enumerator sfScanF13¶
Keyboard F13 key.
-
enumerator sfScanF14¶
Keyboard F14 key.
-
enumerator sfScanF15¶
Keyboard F15 key.
-
enumerator sfScanF16¶
Keyboard F16 key.
-
enumerator sfScanF17¶
Keyboard F17 key.
-
enumerator sfScanF18¶
Keyboard F18 key.
-
enumerator sfScanF19¶
Keyboard F19 key.
-
enumerator sfScanF20¶
Keyboard F20 key.
-
enumerator sfScanF21¶
Keyboard F21 key.
-
enumerator sfScanF22¶
Keyboard F22 key.
-
enumerator sfScanF23¶
Keyboard F23 key.
-
enumerator sfScanF24¶
Keyboard F24 key.
-
enumerator sfScanCapsLock¶
Keyboard Caps Lock key.
-
enumerator sfScanPrintScreen¶
Keyboard Print Screen key.
-
enumerator sfScanScrollLock¶
Keyboard Scroll Lock key.
-
enumerator sfScanPause¶
Keyboard Pause key.
-
enumerator sfScanInsert¶
Keyboard Insert key.
-
enumerator sfScanHome¶
Keyboard Home key.
-
enumerator sfScanPageUp¶
Keyboard Page Up key.
-
enumerator sfScanDelete¶
Keyboard Delete Forward key.
-
enumerator sfScanEnd¶
Keyboard End key.
-
enumerator sfScanPageDown¶
Keyboard Page Down key.
-
enumerator sfScanRight¶
Keyboard Right Arrow key.
-
enumerator sfScanLeft¶
Keyboard Left Arrow key.
-
enumerator sfScanDown¶
Keyboard Down Arrow key.
-
enumerator sfScanUp¶
Keyboard Up Arrow key.
-
enumerator sfScanNumLock¶
Keypad Num Lock and Clear key.
-
enumerator sfScanNumpadDivide¶
Keypad / key.
-
enumerator sfScanNumpadMultiply¶
Keypad * key.
-
enumerator sfScanNumpadMinus¶
Keypad - key.
-
enumerator sfScanNumpadPlus¶
Keypad + key.
-
enumerator sfScanNumpadEqual¶
keypad = key
-
enumerator sfScanNumpadEnter¶
Keypad Enter/Return key.
-
enumerator sfScanNumpadDecimal¶
Keypad . and Delete key.
-
enumerator sfScanNumpad1¶
Keypad 1 and End key.
-
enumerator sfScanNumpad2¶
Keypad 2 and Down Arrow key.
-
enumerator sfScanNumpad3¶
Keypad 3 and Page Down key.
-
enumerator sfScanNumpad4¶
Keypad 4 and Left Arrow key.
-
enumerator sfScanNumpad5¶
Keypad 5 key.
-
enumerator sfScanNumpad6¶
Keypad 6 and Right Arrow key.
-
enumerator sfScanNumpad7¶
Keypad 7 and Home key.
-
enumerator sfScanNumpad8¶
Keypad 8 and Up Arrow key.
-
enumerator sfScanNumpad9¶
Keypad 9 and Page Up key.
-
enumerator sfScanNumpad0¶
Keypad 0 and Insert key.
-
enumerator sfScanNonUsBackslash¶
Keyboard Non-US \ and | key.
-
enumerator sfScanApplication¶
Keyboard Application key.
-
enumerator sfScanExecute¶
Keyboard Execute key.
-
enumerator sfScanModeChange¶
Keyboard Mode Change key.
-
enumerator sfScanHelp¶
Keyboard Help key.
-
enumerator sfScanMenu¶
Keyboard Menu key.
-
enumerator sfScanSelect¶
Keyboard Select key.
-
enumerator sfScanRedo¶
Keyboard Redo key.
-
enumerator sfScanUndo¶
Keyboard Undo key.
-
enumerator sfScanCut¶
Keyboard Cut key.
-
enumerator sfScanCopy¶
Keyboard Copy key.
-
enumerator sfScanPaste¶
Keyboard Paste key.
-
enumerator sfScanVolumeMute¶
Keyboard Volume Mute key.
-
enumerator sfScanVolumeUp¶
Keyboard Volume Up key.
-
enumerator sfScanVolumeDown¶
Keyboard Volume Down key.
-
enumerator sfScanMediaPlayPause¶
Keyboard Media Play Pause key.
-
enumerator sfScanMediaStop¶
Keyboard Media Stop key.
-
enumerator sfScanMediaNextTrack¶
Keyboard Media Next Track key.
-
enumerator sfScanMediaPreviousTrack¶
Keyboard Media Previous Track key.
-
enumerator sfScanLControl¶
Keyboard Left Control key.
-
enumerator sfScanLShift¶
Keyboard Left Shift key.
-
enumerator sfScanLAlt¶
Keyboard Left Alt key.
-
enumerator sfScanLSystem¶
Keyboard Left System key.
-
enumerator sfScanRControl¶
Keyboard Right Control key.
-
enumerator sfScanRShift¶
Keyboard Right Shift key.
-
enumerator sfScanRAlt¶
Keyboard Right Alt key.
-
enumerator sfScanRSystem¶
Keyboard Right System key.
-
enumerator sfScanBack¶
Keyboard Back key.
-
enumerator sfScanForward¶
Keyboard Forward key.
-
enumerator sfScanRefresh¶
Keyboard Refresh key.
-
enumerator sfScanStop¶
Keyboard Stop key.
-
enumerator sfScanSearch¶
Keyboard Search key.
-
enumerator sfScanFavorites¶
Keyboard Favorites key.
-
enumerator sfScanHomePage¶
Keyboard Home Page key.
-
enumerator sfScanLaunchApplication1¶
Keyboard Launch Application 1 key.
-
enumerator sfScanLaunchApplication2¶
Keyboard Launch Application 2 key.
-
enumerator sfScanLaunchMail¶
Keyboard Launch Mail key.
-
enumerator sfScanLaunchMediaSelect¶
Keyboard Launch Media Select key.
-
enumerator sfScanUnknown¶
Values:
-
enumerator sfScancodeCount¶
The total number of scancodes.
-
enumerator sfScancodeCount¶
Functions
-
bool sfKeyboard_isKeyPressed(sfKeyCode key)¶
Check if a key is pressed.
See also
sfKeyboard_isScancodePressed
- Parameters:
key – Key to check
- Returns:
true if the key is pressed, false otherwise
-
bool sfKeyboard_isScancodePressed(sfScancode code)¶
Check if a key is pressed.
See also
sfKeyboard_isKeyPressed
- Parameters:
code – Scancode to check
- Returns:
true if the physical key is pressed, false otherwise
-
sfKeyCode sfKeyboard_localize(sfScancode code)¶
Localize a physical key to a logical one.
See also
sfKeyboard_delocalize
- Parameters:
code – Scancode to localize
- Returns:
The key corresponding to the scancode under the current keyboard layout used by the operating system, or sfKeyUnknown when the scancode cannot be mapped to a Key.
-
sfScancode sfKeyboard_delocalize(sfKeyCode key)¶
Identify the physical key corresponding to a logical one.
See also
sfKeyboard_localize
- Parameters:
key – Key to “delocalize”
- Returns:
The scancode corresponding to the key under the current keyboard layout used by the operating system, or sfScanUnknown when the key cannot be mapped to a sfScancode.
-
const char *sfKeyboard_getDescription(sfScancode code)¶
Provide a string representation for a given scancode.
The returned string is a short, non-technical description of the key represented with the given scancode. Most effectively used in user interfaces, as the description for the key takes the users keyboard layout into consideration.
The current keyboard layout set by the operating system is used to interpret the scancode: for example, sfKeySemicolon is mapped to “;” for layout and to “é” for others.
The returned const char* owns the string and must be freed to avoid memory leaks.
Warning
The result is OS-dependent: for example, sfScanLSystem is “Left Meta” on Linux, “Left Windows” on Windows and “Left Command” on macOS.
- Parameters:
code – Scancode to describe
- Returns:
The localized description of the code
-
void sfKeyboard_setVirtualKeyboardVisible(bool visible)¶
Show or hide the virtual keyboard.
If the virtual keyboard is not available, this function does nothing.
Warning
The virtual keyboard is not supported on all systems. It will typically be implemented on mobile OSes (Android, iOS) but not on desktop OSes (Windows, Linux, …).
- Parameters:
visible – True to show, false to hide