Gamp v0.0.7-36-g24b1eb6
Gamp: Graphics, Audio, Multimedia and Processing
|
Windowing toolkit functionality. More...
Classes | |
class | gamp::wt::Capabilities |
Specifies a set of capabilities that a window's rendering context must support, such as color depth per channel. More... | |
class | gamp::wt::event::InputEvent |
class | gamp::wt::event::KeyboardTracker |
class | gamp::wt::event::KeyEvent |
More... | |
class | gamp::wt::event::KeyEventManager |
class | gamp::wt::event::KeyListener |
Listener for multiple KeyEvent. More... | |
class | gamp::wt::event::PointerEvent |
Pointer event of type PointerType. More... | |
class | gamp::wt::event::PointerEventManager |
class | gamp::wt::event::PointerListener |
Listener for PointerEvent. More... | |
class | gamp::wt::RenderListener |
class | gamp::wt::Surface |
class | gamp::wt::Window |
class | gamp::wt::event::WindowEvent |
class | gamp::wt::event::WindowEventManager |
class | gamp::wt::event::WindowListener |
Listener for multiple WindowEvent. More... | |
class | gamp::wt::event::WTEvent |
Typedefs | |
typedef std::unique_ptr< Capabilities > | gamp::wt::CapabilitiesPtr |
typedef std::shared_ptr< KeyListener > | gamp::wt::event::KeyListenerRef |
typedef std::shared_ptr< PointerListener > | gamp::wt::event::PointerListenerRef |
typedef std::shared_ptr< RenderListener > | gamp::wt::RenderListenerRef |
typedef std::shared_ptr< Surface > | gamp::wt::SurfaceRef |
typedef std::shared_ptr< WindowListener > | gamp::wt::event::WindowListenerRef |
typedef std::shared_ptr< Window > | gamp::wt::WindowRef |
Windowing toolkit functionality.
typedef std::unique_ptr<Capabilities> gamp::wt::CapabilitiesPtr |
Definition at line 27 of file Capabilities.hpp.
typedef std::shared_ptr<KeyListener> gamp::wt::event::KeyListenerRef |
Definition at line 909 of file KeyEvent.hpp.
typedef std::shared_ptr<PointerListener> gamp::wt::event::PointerListenerRef |
Definition at line 504 of file PointerEvent.hpp.
typedef std::shared_ptr<WindowListener> gamp::wt::event::WindowListenerRef |
Definition at line 113 of file WinEvent.hpp.
typedef std::shared_ptr< Surface > gamp::wt::SurfaceRef |
Definition at line 27 of file RenderContext.hpp.
typedef std::shared_ptr< Window > gamp::wt::WindowRef |
typedef std::shared_ptr<RenderListener> gamp::wt::RenderListenerRef |
Definition at line 122 of file Window.hpp.
|
strong |
|
strong |
Enumerator | |
---|---|
none | |
lshift | |
rshift | |
lctrl | |
rctrl | |
lalt | |
ralt | |
lmeta | |
rmeta | |
shift | |
ctrl | |
alt | |
meta | |
modifier | |
button1_bit | button property description, no actual bitmask value |
button1 | |
button2 | |
button3 | |
button4 | |
button5 | |
button6 | |
button7 | |
button8 | |
button9 | |
button10 | |
button11 | |
button12 | |
button13 | |
button14 | |
button15 | |
button16 | |
button_last | button property description, no actual bitmask value |
button_all | mask for all 16 buttons, see InputButton::button_count |
repeat | Event is caused by auto-repeat. |
confined | Pointer is confined, see |
invisible | Pointer is invisible, see |
|
strong |
Virtual key code following UTF16 specification.
Enumerator | |
---|---|
VK_UNDEFINED | This value, {@value}, is used to indicate that the keyCode is unknown. |
none | Alias for VK_UNDEFINED. |
VK_FREE01 | |
VK_HOME | Constant for the HOME function key. ASCII: Start Of Text. |
VK_END | Constant for the END function key. ASCII: End Of Text. |
VK_FINAL | Constant for the END function key. ASCII: End Of Transmission. |
VK_PRINTSCREEN | Constant for the PRINT function key. ASCII: Enquiry. |
VK_FREE06 | |
VK_FREE07 | |
VK_BACK_SPACE | Constant for the BACK SPACE key "\b"u, matching ASCII. Printable! |
VK_TAB | Constant for the HORIZ TAB key "\t"u, matching ASCII. Printable! |
VK_LINEFEED | LINE_FEED "\n"u, matching ASCIIu, n/a on keyboard. |
VK_PAGE_DOWN | Constant for the PAGE DOWN function key. ASCII: Vertical Tabulation. |
VK_CLEAR | Constant for the CLEAR keyu, i.e. FORM FEEDu, matching ASCII. |
VK_ENTER | Constant for the ENTER keyu, i.e. CARRIAGE RETURNu, matching ASCII. Printable! |
VK_FREE0E | |
VK_SHIFT | Constant for the SHIFT function key. ASCII: shift-in. |
VK_PAGE_UP | Constant for the PAGE UP function key. ASCII: Data Link Escape. |
VK_CONTROL | Constant for the CTRL function key. ASCII: device-ctrl-one. |
VK_ALT | Constant for the ALT function key. ASCII: device-ctrl-two. |
VK_FREE13 | |
VK_CAPS_LOCK | Constant for the CAPS LOCK function key. ASCII: device-ctrl-four. |
VK_FREE15 | |
VK_PAUSE | Constant for the PAUSE function key. ASCII: sync-idle. |
VK_SCROLL_LOCK | scroll lock key. ASCII: End Of Transmission Block. |
VK_CANCEL | Constant for the CANCEL function key. ASCII: Cancel. |
VK_FREE19 | |
VK_INSERT | Constant for the INSERT function key. ASCII: Substitute. |
VK_ESCAPE | Constant for the ESCAPE function key. ASCII: Escape. |
VK_CONVERT | Constant for the Convert function keyu, Japanese "henkan". ASCII: File Separator. |
VK_NONCONVERT | Constant for the Don't Convert function keyu, Japanese "muhenkan". ASCII: Group Separator. |
VK_ACCEPT | Constant for the Accept or Commit function keyu, Japanese "kakutei". ASCII: Record Separator. |
VK_MODECHANGE | Constant for the Mode Change (?). ASCII: Unit Separator. |
VK_SPACE | Constant for the SPACE function key. ASCII: SPACE. |
VK_EXCLAMATION_MARK | Constant for the "!" key. |
VK_QUOTEDBL | Constant for the """ key. |
VK_NUMBER_SIGN | Constant for the "#" key. |
VK_DOLLAR | Constant for the "$" key. |
VK_PERCENT | Constant for the "%" key. |
VK_AMPERSAND | Constant for the "&" key. |
VK_QUOTE | Constant for the "'" key. |
VK_LEFT_PARENTHESIS | Constant for the "(" key. |
VK_RIGHT_PARENTHESIS | Constant for the ")" key. |
VK_ASTERISK | Constant for the "*" key. |
VK_PLUS | Constant for the "+" key. |
VK_COMMA | Constant for the comma keyu, "u,". |
VK_MINUS | Constant for the minus keyu, "-". |
VK_PERIOD | Constant for the period keyu, ".". |
VK_SLASH | Constant for the forward slash keyu, "/". |
VK_0 | VK_0 thru VK_9 are the same as UTF16/ASCII '0' thru '9' [0x30 - 0x39]. |
VK_1 | See |
VK_2 | See |
VK_3 | See |
VK_4 | See |
VK_5 | See |
VK_6 | See |
VK_7 | See |
VK_8 | See |
VK_9 | See |
VK_COLON | Constant for the ":" key. |
VK_SEMICOLON | Constant for the semicolon keyu, "u,". |
VK_LESS | Constant for the equals keyu, "<". |
VK_EQUALS | Constant for the equals keyu, "=". |
VK_GREATER | Constant for the equals keyu, ">". |
VK_QUESTIONMARK | Constant for the equals keyu, "?". |
VK_AT | Constant for the equals keyu, "@". |
VK_A | VK_A thru VK_Z are the same as Capital UTF16/ASCII 'A' thru 'Z' (0x41 - 0x5A) |
VK_B | See |
VK_C | See |
VK_D | See |
VK_E | See |
VK_F | See |
VK_G | See |
VK_H | See |
VK_I | See |
VK_J | See |
VK_K | See |
VK_L | See |
VK_M | See |
VK_N | See |
VK_O | See |
VK_P | See |
VK_Q | See |
VK_R | See |
VK_S | See |
VK_T | See |
VK_U | See |
VK_V | See |
VK_W | See |
VK_X | See |
VK_Y | See |
VK_Z | See |
VK_OPEN_BRACKET | Constant for the open bracket keyu, "[". |
VK_BACK_SLASH | Constant for the back slash keyu, "\". |
VK_CLOSE_BRACKET | Constant for the close bracket keyu, "]". |
VK_CIRCUMFLEX | Constant for the "^" key. |
VK_UNDERSCORE | Constant for the "_" key. |
VK_BACK_QUOTE | Constant for the "`" key. |
VK_F1 | Small UTF/ASCII 'a' thru 'z' (0x61 - 0x7a) - Not used for keyCode / keySym. Constant for the Fn function keys. F1..F24u, i.e. Fnu, are mapped from on Warning: The Fn function keys do collide with unicode characters small 'a' thru 'x'! |
VK_F2 | Constant for the F2 function key. See |
VK_F3 | Constant for the F3 function key. See |
VK_F4 | Constant for the F4 function key. See |
VK_F5 | Constant for the F5 function key. See |
VK_F6 | Constant for the F6 function key. See |
VK_F7 | Constant for the F7 function key. See |
VK_F8 | Constant for the F8 function key. See |
VK_F9 | Constant for the F9 function key. See |
VK_F10 | Constant for the F11 function key. See |
VK_F11 | Constant for the F11 function key. See |
VK_F12 | Constant for the F12 function key. See |
VK_F13 | Constant for the F13 function key. See |
VK_F14 | Constant for the F14 function key. See |
VK_F15 | Constant for the F15 function key. See |
VK_F16 | Constant for the F16 function key. See |
VK_F17 | Constant for the F17 function key. See |
VK_F18 | Constant for the F18 function key. See |
VK_F19 | Constant for the F19 function key. See |
VK_F20 | Constant for the F20 function key. See |
VK_F21 | Constant for the F21 function key. See |
VK_F22 | Constant for the F22 function key. See |
VK_F23 | Constant for the F23 function key. See |
VK_F24 | Constant for the F24 function key. See |
VK_LEFT_BRACE | Constant for the "{" key. |
VK_PIPE | Constant for the "|" key. |
VK_RIGHT_BRACE | Constant for the "}" key. |
VK_TILDE | Constant for the "~" keyu, matching ASCII. |
VK_SEPARATOR | Numeric keypad decimal separator key. Non printable UTF control. |
VK_NUMPAD0 | Numeric keypad VK_NUMPAD0 thru VK_NUMPAD9 are mapped to UTF control (0x80 - 0x89). Non printable UTF control. |
VK_NUMPAD1 | See |
VK_NUMPAD2 | See |
VK_NUMPAD3 | See |
VK_NUMPAD4 | See |
VK_NUMPAD5 | See |
VK_NUMPAD6 | See |
VK_NUMPAD7 | See |
VK_NUMPAD8 | See |
VK_NUMPAD9 | See |
VK_DECIMAL | Numeric keypad decimal separator key. Non printable UTF control. |
VK_ADD | Numeric keypad add key. Non printable UTF control. |
VK_SUBTRACT | Numeric keypad subtract key. Non printable UTF control. |
VK_MULTIPLY | Numeric keypad multiply key. Non printable UTF control. |
VK_DIVIDE | Numeric keypad divide key. Non printable UTF control. |
VK_DELETE | Constant for the DEL keyu, matching ASCII. Non printable UTF control. |
VK_NUM_LOCK | Numeric keypad num lock key. Non printable UTF control. |
VK_LEFT | Constant for the cursor- or numerical-pad left arrow key. Non printable UTF control. |
VK_UP | Constant for the cursor- or numerical-pad up arrow key. Non printable UTF control. |
VK_RIGHT | Constant for the cursor- or numerical-pad right arrow key. Non printable UTF control. |
VK_DOWN | Constant for the cursor- or numerical pad down arrow key. Non printable UTF control. |
VK_CONTEXT_MENU | Constant for the Context Menu key. Non printable UTF control. |
VK_WINDOWS | Constant for the MS "Windows" function key. It is used for both the left and right version of the key. |
VK_META | Constant for the Meta function key. |
VK_HELP | Constant for the Help function key. |
VK_COMPOSE | Constant for the Compose function key. |
VK_BEGIN | Constant for the Begin function key. |
VK_STOP | Constant for the Stop function key. |
VK_INVERTED_EXCLAMATION_MARK | Constant for the inverted exclamation mark key. |
VK_EURO_SIGN | Constant for the Euro currency sign key. |
VK_CUT | |
VK_COPY | |
VK_PASTE | |
VK_UNDO | |
VK_AGAIN | |
VK_FIND | |
VK_PROPS | |
VK_INPUT_METHOD_ON_OFF | Constant for the input method on/off key. |
VK_CODE_INPUT | Constant for the Code Input function key. |
VK_ROMAN_CHARACTERS | Constant for the Roman Characters function key. |
VK_ALL_CANDIDATES | Constant for the All Candidates function key. |
VK_PREVIOUS_CANDIDATE | Constant for the Previous Candidate function key. |
VK_ALPHANUMERIC | Constant for the Alphanumeric function key. |
VK_KATAKANA | Constant for the Katakana function key. |
VK_HIRAGANA | Constant for the Hiragana function key. |
VK_FULL_WIDTH | Constant for the Full-Width Characters function key. |
VK_HALF_WIDTH | Constant for the Half-Width Characters function key. |
VK_JAPANESE_KATAKANA | Constant for the Japanese-Katakana function key. This key switches to a Japanese input method and selects its Katakana input mode. |
VK_JAPANESE_HIRAGANA | Constant for the Japanese-Hiragana function key. This key switches to a Japanese input method and selects its Hiragana input mode. |
VK_JAPANESE_ROMAN | Constant for the Japanese-Roman function key. This key switches to a Japanese input method and selects its Roman-Direct input mode. |
VK_KANA_LOCK | Constant for the locking Kana function key. This key locks the keyboard into a Kana layout. |
VK_KEYBOARD_INVISIBLE | Constant for Keyboard became invisible, e.g. Android's soft keyboard Back button hit while keyboard is visible. |
Definition at line 45 of file KeyEvent.hpp.
|
strong |
Class of pointer types.
Enumerator | |
---|---|
none | |
offscreen | Desktop compatibility profile. |
onscreen | Desktop core profile. |
Definition at line 53 of file PointerEvent.hpp.
|
strong |
Type of pointer devices.
Enumerator | |
---|---|
none | |
mouse | Mouse. |
touchpad | Touch pad, fingers off screen. |
touchscreen | Touch screen, fingers on screen. |
pen | Pen usually off-screen. |
Definition at line 63 of file PointerEvent.hpp.
|
strong |
Enumerator | |
---|---|
none | |
init | |
reshape |
Definition at line 43 of file Window.hpp.
|
strong |
Enumerator | |
---|---|
none | |
focused | |
visible |
Definition at line 124 of file Window.hpp.
|
inline |
gamp::wt::event::JAU_MAKE_ENUM_INFO | ( | InputButton | , |
button1 | , | ||
button2 | , | ||
button3 | , | ||
button4 | , | ||
button5 | , | ||
button6 | , | ||
button7 | , | ||
button8 | , | ||
button9 | , | ||
button10 | , | ||
button11 | , | ||
button12 | , | ||
button13 | , | ||
button14 | , | ||
button15 | , | ||
button16 | ) |
gamp::wt::event::JAU_MAKE_ENUM_STRING | ( | InputButton | , |
button1 | , | ||
button2 | , | ||
button3 | , | ||
button4 | , | ||
button5 | , | ||
button6 | , | ||
button7 | , | ||
button8 | , | ||
button9 | , | ||
button10 | , | ||
button11 | , | ||
button12 | , | ||
button13 | , | ||
button14 | , | ||
button15 | , | ||
button16 | ) |
gamp::wt::event::JAU_MAKE_BITFIELD_ENUM_STRING | ( | InputModifier | , |
lshift | , | ||
rshift | , | ||
lctrl | , | ||
rctrl | , | ||
lalt | , | ||
ralt | , | ||
lmeta | , | ||
rmeta | , | ||
button1 | , | ||
button2 | , | ||
button3 | , | ||
button4 | , | ||
button5 | , | ||
button6 | , | ||
button7 | , | ||
button8 | , | ||
button9 | , | ||
button10 | , | ||
button11 | , | ||
button12 | , | ||
button13 | , | ||
button14 | , | ||
button15 | , | ||
button16 | , | ||
repeat | , | ||
confined | , | ||
invisible | ) |
|
inline |
|
constexprnoexcept |
Definition at line 609 of file KeyEvent.hpp.
Definition at line 611 of file KeyEvent.hpp.
|
noexcept |
Returns true
if given uniChar
represents a printable character, i.e.
a value other than VKeyCode::VK_UNDEFINED and not a control or non-printable private code.
A printable character is neither a modifier key
, nor an action key
.
Otherwise returns false
.
Distinction of key character and virtual key code is made due to unicode collision.
uniChar | the UTF-16 unicode value, which maybe a virtual key code or key character. |
isKeyChar | true if uniChar is a key character, otherwise a virtual key code |
Definition at line 55 of file gamp_wt.cpp.
|
inlinenoexcept |
Returns true
if given uniCode
represents a printable character, i.e.
a value other than VKeyCode::VK_UNDEFINED and not a control or non-printable private code.
A printable character is neither a KeyEvent::isModifierKey(), nor an KeyEvent::isActionKey().
Otherwise returns false
.
uniChar | the UTF-16 VKeyCode unicode value. |
Definition at line 644 of file KeyEvent.hpp.
|
constexprnoexcept |
keyChar | UTF16 value to map. It is expected that the incoming keyChar value is unshifted and unmodified, however, lower case a-z is mapped to KeyEvent#VK_A - KeyEvent#VK_Z . |
KeyEvent
virtual key (VK) value. Definition at line 651 of file KeyEvent.hpp.
|
constexpr |
Returns true
if the given virtualKey
represents a modifier key, otherwise false
.
A modifier key is one of VKeyCode::VK_SHIFT, VKeyCode::VK_CONTROL, VKeyCode::VK_ALT, VKeyCode::VK_META.
Definition at line 664 of file KeyEvent.hpp.
|
inline |
Definition at line 874 of file KeyEvent.hpp.
gamp::wt::event::JAU_MAKE_ENUM_STRING | ( | PointerClass | , |
offscreen | , | ||
onscreen | ) |
gamp::wt::event::JAU_MAKE_ENUM_STRING | ( | PointerType | , |
mouse | , | ||
touchpad | , | ||
touchscreen | , | ||
pen | ) |
|
constexprnoexcept |
Definition at line 76 of file PointerEvent.hpp.
|
inline |
Definition at line 69 of file WinEvent.hpp.
gamp::wt::JAU_MAKE_ENUM_INFO | ( | RenderActions | , |
init | , | ||
reshape | ) |
gamp::wt::JAU_MAKE_BITFIELD_ENUM_STRING | ( | RenderActions | , |
init | , | ||
reshape | ) |
gamp::wt::JAU_MAKE_ENUM_INFO | ( | WindowState | , |
focused | , | ||
visible | ) |
gamp::wt::JAU_MAKE_BITFIELD_ENUM_STRING | ( | WindowState | , |
focused | , | ||
visible | ) |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
A key has been pressed, excluding auto-repeat
-modifier
keys.
|
inlinestaticconstexpr |
A key has been released, excluding auto-repeat
-modifier
keys.
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
Only generated for PointerType::mouse.
|
inlinestaticconstexpr |
Only generated for PointerType::mouse.
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |