Sparkle 0.0.1
Loading...
Searching...
No Matches
spk_keyboard_event.hpp
1#pragma once
2
3#include "structure/system/event/spk_ievent.hpp"
4
5#include "structure/system/device/spk_keyboard.hpp"
6
7namespace spk
8{
13 struct KeyPressEvent : public IEvent
14 {
17
20 };
21
25 struct KeyReleaseEvent : public IEvent
26 {
29
32 };
33
37 struct GlyphEvent : public IEvent
38 {
40 wchar_t glyph;
41
44 };
45
49 using KeyboardEvent = std::variant<KeyPressEvent, KeyReleaseEvent, GlyphEvent>;
50}
Character input event.
Definition spk_keyboard_event.hpp:38
wchar_t glyph
UTF-16 glyph produced by the input method.
Definition spk_keyboard_event.hpp:40
const Keyboard & keyboard
Snapshot of keyboard state at input time.
Definition spk_keyboard_event.hpp:43
Base event metadata shared by all system events.
Definition spk_ievent.hpp:13
Keyboard key press event.
Definition spk_keyboard_event.hpp:14
const Keyboard & keyboard
Snapshot of keyboard state at press time.
Definition spk_keyboard_event.hpp:19
Keyboard::Key key
Key pressed by the user.
Definition spk_keyboard_event.hpp:16
Keyboard key release event.
Definition spk_keyboard_event.hpp:26
const Keyboard & keyboard
Snapshot of keyboard state at release time.
Definition spk_keyboard_event.hpp:31
Keyboard::Key key
Key released by the user.
Definition spk_keyboard_event.hpp:28
Captures keyboard state and key definitions.
Definition spk_keyboard.hpp:16
Key
Enumeration of supported keyboard keys using platform scan codes.
Definition spk_keyboard.hpp:21