You.i Engine
CYIKeyEvent Class Reference

Detailed Description

Class for key events.

#include <event/YiKeyEvent.h>

Inheritance diagram for CYIKeyEvent:

Public Types

enum  Location : uint8_t {
  Location::Standard,
  Location::Left,
  Location::Right,
  Location::NumPad,
  Location::Mobile,
  Location::Joystick
}
 
enum  KeyCode : uint8_t {
  KeyCode::Unidentified = 0,
  KeyCode::Attention,
  KeyCode::Application,
  KeyCode::Crsel,
  KeyCode::Exsel,
  KeyCode::F1,
  KeyCode::F2,
  KeyCode::F3,
  KeyCode::F4,
  KeyCode::F5,
  KeyCode::F6,
  KeyCode::F7,
  KeyCode::F8,
  KeyCode::F9,
  KeyCode::F10,
  KeyCode::F11,
  KeyCode::F12,
  KeyCode::F13,
  KeyCode::F14,
  KeyCode::F15,
  KeyCode::F16,
  KeyCode::F17,
  KeyCode::F18,
  KeyCode::F19,
  KeyCode::F20,
  KeyCode::F21,
  KeyCode::F22,
  KeyCode::F23,
  KeyCode::F24,
  KeyCode::LaunchApp1,
  KeyCode::LaunchApp2,
  KeyCode::LaunchMail,
  KeyCode::List,
  KeyCode::Props,
  KeyCode::Soft1,
  KeyCode::Soft2,
  KeyCode::Soft3,
  KeyCode::Soft4,
  KeyCode::Accept,
  KeyCode::Again,
  KeyCode::Enter,
  KeyCode::Find,
  KeyCode::Help,
  KeyCode::Info,
  KeyCode::Menu,
  KeyCode::Pause,
  KeyCode::Play,
  KeyCode::ScrollLock,
  KeyCode::Execute,
  KeyCode::Cancel,
  KeyCode::Escape,
  KeyCode::Zoom,
  KeyCode::Separator,
  KeyCode::Space,
  KeyCode::Add,
  KeyCode::Subtract,
  KeyCode::Multiply,
  KeyCode::Divide,
  KeyCode::Equal,
  KeyCode::Decimal,
  KeyCode::BrightnessDown,
  KeyCode::BrightnessUp,
  KeyCode::Camera,
  KeyCode::Eject,
  KeyCode::Power,
  KeyCode::PrintScreen,
  KeyCode::BrowserFavorites,
  KeyCode::BrowserHome,
  KeyCode::BrowserRefresh,
  KeyCode::BrowserSearch,
  KeyCode::BrowserStop,
  KeyCode::BrowserBack,
  KeyCode::BrowserForward,
  KeyCode::PageUp,
  KeyCode::PageDown,
  KeyCode::ArrowLeft,
  KeyCode::ArrowRight,
  KeyCode::ArrowUp,
  KeyCode::ArrowUpLeft,
  KeyCode::ArrowUpRight,
  KeyCode::ArrowDown,
  KeyCode::ArrowDownLeft,
  KeyCode::ArrowDownRight,
  KeyCode::Home,
  KeyCode::End,
  KeyCode::Select,
  KeyCode::Tab,
  KeyCode::Backspace,
  KeyCode::Clear,
  KeyCode::Copy,
  KeyCode::Cut,
  KeyCode::Delete,
  KeyCode::EraseEndOfField,
  KeyCode::Insert,
  KeyCode::Paste,
  KeyCode::Undo,
  KeyCode::DeadGrave,
  KeyCode::DeadAcute,
  KeyCode::DeadCircumflex,
  KeyCode::DeadTilde,
  KeyCode::DeadMacron,
  KeyCode::DeadBreve,
  KeyCode::DeadAboveDot,
  KeyCode::DeadUmlaut,
  KeyCode::DeadAboveRing,
  KeyCode::DeadDoubleAcute,
  KeyCode::DeadCaron,
  KeyCode::DeadCedilla,
  KeyCode::DeadOgonek,
  KeyCode::DeadIota,
  KeyCode::DeadVoicedSound,
  KeyCode::DeadSemiVoicedSound,
  KeyCode::Alphanumeric,
  KeyCode::Alt,
  KeyCode::AltGraph,
  KeyCode::CapsLock,
  KeyCode::Control,
  KeyCode::Function,
  KeyCode::Meta,
  KeyCode::Process,
  KeyCode::NumLock,
  KeyCode::Shift,
  KeyCode::SymbolLock,
  KeyCode::OperatingSystem,
  KeyCode::Compose,
  KeyCode::AllCandidates,
  KeyCode::NextCandidate,
  KeyCode::PreviousCandidate,
  KeyCode::CodeInput,
  KeyCode::Convert,
  KeyCode::NonConvert,
  KeyCode::FinalMode,
  KeyCode::FullWidth,
  KeyCode::HalfWidth,
  KeyCode::ModeChange,
  KeyCode::RomanCharacters,
  KeyCode::HangulMode,
  KeyCode::HanjaMode,
  KeyCode::JunjaMode,
  KeyCode::Hiragana,
  KeyCode::KanaMode,
  KeyCode::KanjiMode,
  KeyCode::Katakana,
  KeyCode::AudioFaderFront,
  KeyCode::AudioFaderRear,
  KeyCode::AudioBalanceLeft,
  KeyCode::AudioBalanceRight,
  KeyCode::AudioBaseBoostDown,
  KeyCode::AudioBaseBoostUp,
  KeyCode::VolumeMute,
  KeyCode::VolumeDown,
  KeyCode::VolumeUp,
  KeyCode::MediaPause,
  KeyCode::MediaPlay,
  KeyCode::MediaTrackEnd,
  KeyCode::MediaNextTrack,
  KeyCode::MediaFastForward,
  KeyCode::MediaRewind,
  KeyCode::MediaPlayPause,
  KeyCode::MediaPreviousTrack,
  KeyCode::MediaTrackSkip,
  KeyCode::MediaTrackStart,
  KeyCode::MediaStepForward,
  KeyCode::MediaStepBackward,
  KeyCode::MediaStop,
  KeyCode::MediaInstantReplay,
  KeyCode::SelectMedia,
  KeyCode::Blue,
  KeyCode::Brown,
  KeyCode::ChannelDown,
  KeyCode::ChannelUp,
  KeyCode::ClearFavorite0,
  KeyCode::ClearFavorite1,
  KeyCode::ClearFavorite2,
  KeyCode::ClearFavorite3,
  KeyCode::Dimmer,
  KeyCode::DisplaySwap,
  KeyCode::Green,
  KeyCode::Grey,
  KeyCode::Guide,
  KeyCode::MediaList,
  KeyCode::Link,
  KeyCode::Live,
  KeyCode::Lock,
  KeyCode::NextDay,
  KeyCode::NextFavoriteChannel,
  KeyCode::OnDemand,
  KeyCode::PictureInPictureDown,
  KeyCode::PictureInPictureMove,
  KeyCode::PictureInPictureToggle,
  KeyCode::PictureInPictureUp,
  KeyCode::PlaySpeedDown,
  KeyCode::PlaySpeedReset,
  KeyCode::PreviousDay,
  KeyCode::RandomToggle,
  KeyCode::RecallFavorite0,
  KeyCode::RecallFavorite1,
  KeyCode::RecallFavorite2,
  KeyCode::RecallFavorite3,
  KeyCode::MediaRecord,
  KeyCode::RecordSpeedNext,
  KeyCode::Red,
  KeyCode::RFBypass,
  KeyCode::ScanChannelsToggle,
  KeyCode::ScreenModeNext,
  KeyCode::Settings,
  KeyCode::SplitScreenToggle,
  KeyCode::StoreFavorite0,
  KeyCode::StoreFavorite1,
  KeyCode::StoreFavorite2,
  KeyCode::StoreFavorite3,
  KeyCode::Subtitle,
  KeyCode::AudioSurroundModeNext,
  KeyCode::Teletext,
  KeyCode::VideoModeNext,
  KeyCode::DisplayWide,
  KeyCode::Wink,
  KeyCode::Yellow,
  KeyCode::SystemHome,
  KeyCode::SystemBack,
  KeyCode::Gamepad0,
  KeyCode::Gamepad1,
  KeyCode::Gamepad2,
  KeyCode::Gamepad3,
  KeyCode::GamepadLeftBumper,
  KeyCode::GamepadRightBumper,
  KeyCode::GamepadLeftTrigger,
  KeyCode::GamepadRightTrigger,
  KeyCode::GamepadLeftStick,
  KeyCode::GamepadRightStick,
  KeyCode::GamepadSelect,
  KeyCode::GamepadStart,
  KeyCode::DVR,
  KeyCode::TV,
  KeyCode::Captions,
  KeyCode::Search,
  KeyCode::VoiceSearch,
  KeyCode::TV3DMode,
  KeyCode::MagicInput,
  KeyCode::SiriRemoteClickUp,
  KeyCode::SiriRemoteClickDown,
  KeyCode::SiriRemoteClickRight,
  KeyCode::SiriRemoteClickLeft,
  KeyCode::SiriRemoteClickCenter,
  KeyCode::KeyCodesCount
}
 Key code for CYIKeyEvent events. More...
 
enum  ASCIICode : uint8_t {
  ASCIICode::Null,
  ASCIICode::SOH,
  ASCIICode::STX,
  ASCIICode::ETX,
  ASCIICode::EOT,
  ASCIICode::ENQ,
  ASCIICode::ACK,
  ASCIICode::Bell,
  ASCIICode::Backspace,
  ASCIICode::Tab,
  ASCIICode::LF,
  ASCIICode::VTab,
  ASCIICode::FF,
  ASCIICode::CR,
  ASCIICode::SO,
  ASCIICode::SI,
  ASCIICode::DLE,
  ASCIICode::DC1,
  ASCIICode::DC2,
  ASCIICode::DC3,
  ASCIICode::DC4,
  ASCIICode::NAK,
  ASCIICode::SYN,
  ASCIICode::ETB,
  ASCIICode::CAN,
  ASCIICode::EM,
  ASCIICode::SUB,
  ASCIICode::Escape,
  ASCIICode::FS,
  ASCIICode::GS,
  ASCIICode::RS,
  ASCIICode::US,
  ASCIICode::Space,
  ASCIICode::Exclamation,
  ASCIICode::QuotationMark,
  ASCIICode::NumberSign,
  ASCIICode::DollarSign,
  ASCIICode::PercentSign,
  ASCIICode::Ampersand,
  ASCIICode::Apostrophe,
  ASCIICode::LeftBracket,
  ASCIICode::RightBracket,
  ASCIICode::Asterisk,
  ASCIICode::Add,
  ASCIICode::Comma,
  ASCIICode::Subtract,
  ASCIICode::Dot,
  ASCIICode::ForwardSlash,
  ASCIICode::Zero,
  ASCIICode::One,
  ASCIICode::Two,
  ASCIICode::Three,
  ASCIICode::Four,
  ASCIICode::Five,
  ASCIICode::Six,
  ASCIICode::Seven,
  ASCIICode::Eight,
  ASCIICode::Nine,
  ASCIICode::Colon,
  ASCIICode::SemiColon,
  ASCIICode::LessThan,
  ASCIICode::Equals,
  ASCIICode::GreaterThan,
  ASCIICode::QuestionMark,
  ASCIICode::AtSign,
  ASCIICode::UpperCaseA,
  ASCIICode::UpperCaseB,
  ASCIICode::UpperCaseC,
  ASCIICode::UpperCaseD,
  ASCIICode::UpperCaseE,
  ASCIICode::UpperCaseF,
  ASCIICode::UpperCaseG,
  ASCIICode::UpperCaseH,
  ASCIICode::UpperCaseI,
  ASCIICode::UpperCaseJ,
  ASCIICode::UpperCaseK,
  ASCIICode::UpperCaseL,
  ASCIICode::UpperCaseM,
  ASCIICode::UpperCaseN,
  ASCIICode::UpperCaseO,
  ASCIICode::UpperCaseP,
  ASCIICode::UpperCaseQ,
  ASCIICode::UpperCaseR,
  ASCIICode::UpperCaseS,
  ASCIICode::UpperCaseT,
  ASCIICode::UpperCaseU,
  ASCIICode::UpperCaseV,
  ASCIICode::UpperCaseW,
  ASCIICode::UpperCaseX,
  ASCIICode::UpperCaseY,
  ASCIICode::UpperCaseZ,
  ASCIICode::LeftSquareBracket,
  ASCIICode::Backslash,
  ASCIICode::RightSquareBracket,
  ASCIICode::CircumflexAccent,
  ASCIICode::Underscore,
  ASCIICode::GraveAccent,
  ASCIICode::LowerCaseA,
  ASCIICode::LowerCaseB,
  ASCIICode::LowerCaseC,
  ASCIICode::LowerCaseD,
  ASCIICode::LowerCaseE,
  ASCIICode::LowerCaseF,
  ASCIICode::LowerCaseG,
  ASCIICode::LowerCaseH,
  ASCIICode::LowerCaseI,
  ASCIICode::LowerCaseJ,
  ASCIICode::LowerCaseK,
  ASCIICode::LowerCaseL,
  ASCIICode::LowerCaseM,
  ASCIICode::LowerCaseN,
  ASCIICode::LowerCaseO,
  ASCIICode::LowerCaseP,
  ASCIICode::LowerCaseQ,
  ASCIICode::LowerCaseR,
  ASCIICode::LowerCaseS,
  ASCIICode::LowerCaseT,
  ASCIICode::LowerCaseU,
  ASCIICode::LowerCaseV,
  ASCIICode::LowerCaseW,
  ASCIICode::LowerCaseX,
  ASCIICode::LowerCaseY,
  ASCIICode::LowerCaseZ,
  ASCIICode::LeftCurlyBracket,
  ASCIICode::VerticalBar,
  ASCIICode::RightCurlyBracket,
  ASCIICode::Tilde,
  ASCIICode::Delete,
  ASCIICode::CodesCount
}
 Ascii codes for key characters. More...
 
- Public Types inherited from CYIEvent
enum  Type : uint8_t {
  Type::None = 0,
  Type::ActionMove,
  Type::ActionDown,
  Type::ActionDelayedDown,
  Type::ActionUp,
  Type::ActionWheel,
  Type::ActionWheelHorizontal,
  Type::ActionWheelVertical,
  Type::ActionClick,
  Type::ActionOut,
  Type::ActionIn,
  Type::ActionEnter,
  Type::ActionLeave,
  Type::ActionPick,
  Type::ActionLongPress,
  Type::ActionSuppressedMove,
  Type::KeyDown,
  Type::KeyUp,
  Type::KeyInput,
  Type::SignalEmit,
  Type::StateMachineWrapped,
  Type::StateMachineSignal,
  Type::GPUGenerateHandle,
  Type::GPULoadBuffer,
  Type::GPUUnloadBuffer,
  Type::GPUFreeHandle,
  Type::GPUInvalidateHandle,
  Type::FocusIn,
  Type::FocusOut,
  Type::TrackpadDown,
  Type::TrackpadMove,
  Type::TrackpadUp,
  Type::DeferredDeletion,
  Type::Task,
  Type::AccessibilityAnnounce,
  Type::AccessibilityFocusIn,
  Type::AccessibilityFocusOut,
  Type::AccessibilityFocusNext,
  Type::AccessibilityFocusPrevious,
  Type::GestureTap,
  Type::GestureDoubleTap,
  Type::GestureSwipe,
  Type::GestureDrag,
  Type::GestureScrub,
  Type::TypesCount
}
 The event type of the CYIEvent class instance. More...
 
enum  Phase : uint8_t {
  Phase::None = 0,
  Phase::Capture,
  Phase::AtTarget,
  Phase::Bubble,
  Phase::Broadcast
}
 The current processing phase of the event. More...
 
enum  Priority {
  Priority::Highest = 2,
  Priority::High = 1,
  Priority::Normal = 0,
  Priority::Low = -1,
  Priority::Lowest = -2,
  Priority::Default = Normal
}
 Priority of the event in the event queue. More...
 

Public Member Functions

 CYIKeyEvent (CYIEvent::Type eventType)
 
 CYIKeyEvent (const CYIKeyEvent &rOther)=default
 
virtual ~CYIKeyEvent ()
 
virtual std::unique_ptr< CYIEventClone () const override
 
bool IsActivation () const
 
bool IsCancellation () const
 
- Public Member Functions inherited from CYIEvent
 CYIEvent (CYIEvent::Type eventType)
 
 CYIEvent (const CYIEvent &rOther)
 
virtual ~CYIEvent ()
 
const CYIStringGetName () const
 
CYIEvent::Type GetType () const
 
void SetType (CYIEvent::Type eventType)
 
bool IsActionEvent () const
 
std::unique_ptr< CYIActionEventCloneAsActionEvent () const
 
bool IsKeyEvent () const
 
std::unique_ptr< CYIKeyEventCloneAsKeyEvent () const
 
bool IsFocusEvent () const
 
std::unique_ptr< CYIFocusEventCloneAsFocusEvent () const
 
bool IsTrackpadEvent () const
 
std::unique_ptr< CYITrackpadEventCloneAsTrackpadEvent () const
 
bool IsAccessibilityEvent () const
 
std::unique_ptr< CYIAccessibilityEventCloneAsAccessibilityEvent () const
 
bool IsGestureEvent () const
 
std::unique_ptr< CYIGestureEventCloneAsGestureEvent () const
 
bool IsSwipeGestureEvent () const
 
bool IsScrubGestureEvent () const
 
std::unique_ptr< CYISwipeGestureEventCloneAsSwipeGestureEvent () const
 
void SetTarget (CYIEventTarget *pTarget)
 
CYIEventTargetGetTarget () const
 
const std::shared_ptr< CYIEventTargetProxy > & GetTargetProxy () const
 
void SetCurrentTarget (CYIEventTarget *pTarget)
 
const CYIEventTargetGetCurrentTarget () const
 
CYIEventTargetGetCurrentTarget ()
 
const std::shared_ptr< CYIEventTargetProxy > & GetCurrentTargetProxy () const
 

Public Attributes

YI_RECT_REL m_screenRect
 
char32_t m_keyValue
 
KeyCode m_keyCode
 
Location m_keyLocation
 
bool m_repeat
 
bool m_shiftKey
 
bool m_controlKey
 
bool m_altKey
 
bool m_metaKey
 
- Public Attributes inherited from CYIEvent
uint64_t m_eventTimeMs
 
Phase m_phase
 
bool m_canCancel
 
bool m_canBubble
 
bool m_canCapture
 
bool m_stopPropagation
 
bool m_handled
 

Member Enumeration Documentation

◆ ASCIICode

enum CYIKeyEvent::ASCIICode : uint8_t
strong

Ascii codes for key characters.

Enumerator
Null 
SOH 
STX 
ETX 
EOT 
ENQ 
ACK 
Bell 
Backspace 
Tab 
LF 
VTab 
FF 
CR 
SO 
SI 
DLE 
DC1 
DC2 
DC3 
DC4 
NAK 
SYN 
ETB 
CAN 
EM 
SUB 
Escape 
FS 
GS 
RS 
US 
Space 
Exclamation 
QuotationMark 
NumberSign 
DollarSign 
PercentSign 
Ampersand 
Apostrophe 
LeftBracket 
RightBracket 
Asterisk 
Add 
Comma 
Subtract 
Dot 
ForwardSlash 
Zero 
One 
Two 
Three 
Four 
Five 
Six 
Seven 
Eight 
Nine 
Colon 
SemiColon 
LessThan 
Equals 
GreaterThan 
QuestionMark 
AtSign 
UpperCaseA 
UpperCaseB 
UpperCaseC 
UpperCaseD 
UpperCaseE 
UpperCaseF 
UpperCaseG 
UpperCaseH 
UpperCaseI 
UpperCaseJ 
UpperCaseK 
UpperCaseL 
UpperCaseM 
UpperCaseN 
UpperCaseO 
UpperCaseP 
UpperCaseQ 
UpperCaseR 
UpperCaseS 
UpperCaseT 
UpperCaseU 
UpperCaseV 
UpperCaseW 
UpperCaseX 
UpperCaseY 
UpperCaseZ 
LeftSquareBracket 
Backslash 
RightSquareBracket 
CircumflexAccent 
Underscore 
GraveAccent 
LowerCaseA 
LowerCaseB 
LowerCaseC 
LowerCaseD 
LowerCaseE 
LowerCaseF 
LowerCaseG 
LowerCaseH 
LowerCaseI 
LowerCaseJ 
LowerCaseK 
LowerCaseL 
LowerCaseM 
LowerCaseN 
LowerCaseO 
LowerCaseP 
LowerCaseQ 
LowerCaseR 
LowerCaseS 
LowerCaseT 
LowerCaseU 
LowerCaseV 
LowerCaseW 
LowerCaseX 
LowerCaseY 
LowerCaseZ 
LeftCurlyBracket 
VerticalBar 
RightCurlyBracket 
Tilde 
Delete 
CodesCount 

◆ KeyCode

enum CYIKeyEvent::KeyCode : uint8_t
strong

Key code for CYIKeyEvent events.

Enumerator
Unidentified 

Key code for unidentified keys.

Attention 

Secure attention key.

Application 

Application or menu key.

Crsel 

Crsel key.

Exsel 

Exsel key.

F1 

F1 key.

F2 

F2 key.

F3 

F3 key.

F4 

F4 key.

F5 

F5 key.

F6 

F6 key.

F7 

F7 key.

F8 

F8 key.

F9 

F9 key.

F10 

F10 key.

F11 

F11 key.

F12 

F12 key.

F13 

F13 key.

F14 

F14 key.

F15 

F15 key.

F16 

F16 key.

F17 

F17 key.

F18 

F18 key.

F19 

F19 key.

F20 

F20 key.

F21 

F21 key.

F22 

F22 key.

F23 

F23 key.

F24 

F24 key.

LaunchApp1 

Key for launching the first application.

LaunchApp2 

Key for launching the second application.

LaunchMail 

Key for launching the mail application.

List 

List key.

Props 

Props key.

Soft1 

Soft1 key.

Soft2 

Soft2 key.

Soft3 

Soft3 key.

Soft4 

Soft4 key.

Accept 

Accept, Commit or OK key.

Again 

Again key.

Enter 

Enter key.

Find 

Find key.

Help 

Help key.

Info 

Info key.

Menu 

Menu key.

Pause 

Pause key.

Play 

Play key.

ScrollLock 

Scrolling Lock key.

Execute 

Execute key.

Cancel 

Cancel key.

Escape 

Escape key.

Zoom 

Zoom key.

Separator 

Separator key.

Space 

Space key.

Add 

Add key.

Subtract 

Subtract key.

Multiply 

Multiply key.

Divide 

Divide key.

Equal 

Equal key.

Decimal 

Decimal key.

BrightnessDown 

Key for decreasing the display brightness.

BrightnessUp 

Key for increasing the display brightness.

Camera 

Camera button.

Eject 

Eject button.

Power 

Power button.

PrintScreen 

Printscreen key.

BrowserFavorites 

Key for opening the favourites/bookmarks.

BrowserHome 

Key for returning to your Homepage.

BrowserRefresh 

Key to refresh the page.

BrowserSearch 

Key for searching the internet.

BrowserStop 

Key for stopping a page load.

BrowserBack 

Key to go to the previous loaded webpage in your history, if available.

BrowserForward 

Key to go to the next loaded webpage in your history, if available.

PageUp 

Page Up key.

PageDown 

Page Down key.

ArrowLeft 

Left Arrow key.

ArrowRight 

Right Arrow key.

ArrowUp 

Up Arrow key.

ArrowUpLeft 

Diagonal up-left arrow key.

ArrowUpRight 

Diagonal up-right arrow key.

ArrowDown 

Down Arrow key.

ArrowDownLeft 

Diagonal down-left arrow key.

ArrowDownRight 

Diagonal down-right arrow key.

Home 

Home key.

End 

End key.

Select 

Select key.

Tab 

Tab key.

Backspace 

Backspace key.

Clear 

Clear key.

Copy 

Copy key.

Cut 

Cut key.

Delete 

Delete key.

EraseEndOfField 

Erase to End of Field key. Deletes any characters from the current cursor position to the end of the current field.

Insert 

Insert key.

Paste 

Paste key.

Undo 

Undo key.

DeadGrave 

Combining Grave accent (Greek Varia, Dead Grave) key.

DeadAcute 

Combining Acute accent (Stress Mark, Greek Oxia, Tonos, Dead Eacute) key.

DeadCircumflex 

Combining Circumflex accent (Hat, Dead Circumflex) key.

DeadTilde 

Combinging Tilde (Dead Tilde) key.

DeadMacron 

Combining Macron (Long, Dead Macron) key.

DeadBreve 

Combining Breve (Short, Dead Breve) key.

DeadAboveDot 

Combining Dot Above (Derivative, Dead Above Dot) key.

DeadUmlaut 

Combining Diaeresis (Double Dot Abode, Umlaut, Greek Dialytika, Double Derivative, Dead Diaeresis) key.

DeadAboveRing 

Combining Ring Above (Dead Above Ring) key.

DeadDoubleAcute 

Combining Double Acute accent (Dead Doubleacute) key.

DeadCaron 

Combining Caron (Hacek, V Above, Dead Caron) key.

DeadCedilla 

Combining Cedilla (Dead Cedilla) key.

DeadOgonek 

Combining Ogonek (Nasal Hook, Dead Ogonek) key.

DeadIota 

Combining Greek Ypogegrammeni (Greek Non-Spacing Iota Below, Iota Subscript, Dead Iota) key.

DeadVoicedSound 

Combining Katakana-Hiragana Voiced Sound Mark (Dead Voiced Sound) key.

DeadSemiVoicedSound 

Combining Katakana-Hiragana Semi-Voiced Sound Mark (Dead Semivoiced Sound) key.

Alphanumeric 

Alphanumeric Keys (a-zA-Z0-9).

Alt 

Alt key.

AltGraph 

Alt-Graph or Right Alt key.

CapsLock 

Caps Lock key.

Control 

Control key.

Function 

Function key.

Meta 

Meta key.

Process 

Process key.

NumLock 

Number Lock key.

Shift 

Shift key.

SymbolLock 

Symbol Lock key.

OperatingSystem 

Windows key, or Command key on a Mac.

Compose 

Compose key.

AllCandidates 

All candidates key.

NextCandidate 

Next candidate key.

PreviousCandidate 

Previous candidate key.

CodeInput 

Code input key.

Convert 

Convert key.

NonConvert 

Non-convert key.

FinalMode 

Final Mode (Final) key used on some asian keyboards.

FullWidth 

Full-Width Characters key.

HalfWidth 

Half-Width Characters key.

ModeChange 

Mode Change key.

RomanCharacters 

Roman Characters function key.

HangulMode 

Hangul (Korean characters) Mode key.

HanjaMode 

Hanja (Korean characters) Mode key.

JunjaMode 

Junja Mode key.

Hiragana 

Hiragana (Japanese Kana characters) key.

KanaMode 

Kana Mode (Kana Lock) key.

KanjiMode 

Kanji (Japanese ideographic characters) Mode key.

Katakana 

Katakana (Japanese Kana characters) key.

AudioFaderFront 

Audio fader front key.

AudioFaderRear 

Audio fader rear key.

AudioBalanceLeft 

Audio balance left key.

AudioBalanceRight 

Audio balance right key.

AudioBaseBoostDown 

Audio base boost down key.

AudioBaseBoostUp 

Audio base boost up key.

VolumeMute 

Mute audio key.

VolumeDown 

Key for decreasing the volume of the audio.

VolumeUp 

Key for increasing the volume of the audio.

MediaPause 

Key for pausing media.

MediaPlay 

Key for playing media.

MediaTrackEnd 

Key for jumping to the end of the current media.

MediaNextTrack 

Key for going to the next playable media.

MediaFastForward 

Key for fast-forwarding through the current media.

MediaRewind 

Key for rewinding through the current media.

MediaPlayPause 

Key that toggles between playing or pausing the current media.

MediaPreviousTrack 

Key for going the previous playable media.

MediaTrackSkip 

Key for going to the next playable media.

MediaTrackStart 

Key for jumping to the beginning of the current media.

MediaStepForward 

Key for seeking forward through the current media.

MediaStepBackward 

Key for seeking backwards through the current media.

MediaStop 

Key for stopping media playback.

MediaInstantReplay 

Instant replay key.

SelectMedia 

Select media key.

Blue 

The blue key found on a generic TV remote. Also sometimes labelled as D.

Brown 

The brown key found on a generic TV remote.

ChannelDown 

Key for going to the next channel.

ChannelUp 

Key for going to the previous channel.

ClearFavorite0 

First clear favourite key.

ClearFavorite1 

Second clear favourite key.

ClearFavorite2 

Third clear favourite key.

ClearFavorite3 

Fourth clear favourite key.

Dimmer 

Dimmer key.

DisplaySwap 

Display swap key.

Green 

The green key found on a generic TV remote. Also sometimes labelled as B.

Grey 

The grey key found on a generic TV remote.

Guide 

Guide key.

MediaList 

List media key.

Link 

Link key.

Live 

Live key.

Lock 

Lock key.

NextDay 

Next day key.

NextFavoriteChannel 

Next favourite channel key.

OnDemand 

On demand key.

PictureInPictureDown 

Picture in Picture down key.

PictureInPictureMove 

Picture in Picture move key.

PictureInPictureToggle 

Picture in Picture toggle key.

PictureInPictureUp 

Picture in Picture up key.

PlaySpeedDown 

Play speed down key.

PlaySpeedReset 

Play speed reset key.

PreviousDay 

Previous day key.

RandomToggle 

Random toggle key.

RecallFavorite0 

First recall favourite key.

RecallFavorite1 

Second recall favourite key.

RecallFavorite2 

Third recall favourite key.

RecallFavorite3 

Fourth recall favourite key.

MediaRecord 

Record media key.

RecordSpeedNext 

Next record speed key.

Red 

The red key found on a generic TV remote. Also sometimes labelled as A.

RFBypass 

Key for switching between IR and RF mode.

ScanChannelsToggle 

Scan channels toggle key.

ScreenModeNext 

Next screen mode key.

Settings 

Settings key.

SplitScreenToggle 

Split screen toggle key.

StoreFavorite0 

First store favourite key.

StoreFavorite1 

Second store favourite key.

StoreFavorite2 

Third store favourite key.

StoreFavorite3 

Fourth store favourite key.

Subtitle 

Subtitle key.

AudioSurroundModeNext 

Next audio surriund sound mode key.

Teletext 

Teletext key.

VideoModeNext 

Next video mode key.

DisplayWide 

Wide display key.

Wink 

Wink key.

Yellow 

The yellow key found on a generic TV remote. Also sometimes labelled as C.

SystemHome 

System Home button.

SystemBack 

Back button.

Gamepad0 

X Button on a Playstation controller, A button on an XBox controller

Gamepad1 

○ Button on a Playstation controller, B button on an XBox controller

Gamepad2 

□ Button on a Playstation controller, X button on an XBox controller

Gamepad3 

△ Button on a Playstation controller, Y button on an XBox controller

GamepadLeftBumper 

The left bumper on a controller (i.e LB on a PS4 controller)

GamepadRightBumper 

The right bumper on a controller (i.e RB on a PS4 controller)

GamepadLeftTrigger 

The left trigger on a controller (i.e LT on a PS4 controller)

GamepadRightTrigger 

The right trigger on a controller (i.e RT on a PS4 controller)

GamepadLeftStick 

The left analog button on a controller (i.e. L3 on a PS4 controller)

GamepadRightStick 

The right analog button on a controller (i.e. R3 on a PS4 controller)

GamepadSelect 

The select button on a controller

GamepadStart 

The start button on a controller

DVR 

DVR key.

TV 

TV key.

Captions 

Captions key.

Search 

Search key on remotes. */.

VoiceSearch 

Voice search key on remotes. */.

TV3DMode 

Magic Remote 3D TV mode key. */.

MagicInput 

Magic Remote input key. */.

SiriRemoteClickUp 

A click near the top edge of the Siri remote's trackpad.

SiriRemoteClickDown 

A click near the bottom edge of the Siri remote's trackpad.

SiriRemoteClickRight 

A click near the right edge of the Siri remote's trackpad.

SiriRemoteClickLeft 

A click near the left edge of the Siri remote's trackpad.

SiriRemoteClickCenter 

A click near the center of the Siri remote's trackpad.

KeyCodesCount 

◆ Location

enum CYIKeyEvent::Location : uint8_t
strong

Enum which indicates where the key is originating from.

Enumerator
Standard 

For keys that are not Left or Right and not from the Number pad.

Left 

For keys that have a left and right key, when the left key is pressed.

Right 

For keys that have a left and right key, when the right key is pressed.

NumPad 

For keys on the number pad.

Mobile 

For keys on a mobile or televion device either from a physical or virtual keyboard.

Joystick 

For keys originating on a game controller or joystick.

Constructor & Destructor Documentation

◆ CYIKeyEvent() [1/2]

CYIKeyEvent::CYIKeyEvent ( CYIEvent::Type  eventType)

◆ CYIKeyEvent() [2/2]

CYIKeyEvent::CYIKeyEvent ( const CYIKeyEvent rOther)
default

◆ ~CYIKeyEvent()

virtual CYIKeyEvent::~CYIKeyEvent ( )
virtual

Member Function Documentation

◆ Clone()

virtual std::unique_ptr<CYIEvent> CYIKeyEvent::Clone ( ) const
overridevirtual

Reimplemented from CYIEvent.

◆ IsActivation()

bool CYIKeyEvent::IsActivation ( ) const

Returns true if the key event should be used in an activation context and false otherwise.

An example activation context would be displaying the keyboard for a CYITextEditView.

◆ IsCancellation()

bool CYIKeyEvent::IsCancellation ( ) const

Returns true if the key event should be used in a cancellation context and false otherwise.

An example cancellation context would be hiding the keyboard for a CYITextEditView.

Member Data Documentation

◆ m_altKey

bool CYIKeyEvent::m_altKey

True when Alt or Option key is pressed.

◆ m_controlKey

bool CYIKeyEvent::m_controlKey

True when Control key is pressed.

◆ m_keyCode

KeyCode CYIKeyEvent::m_keyCode

The key code of the key pressed.

◆ m_keyLocation

Location CYIKeyEvent::m_keyLocation

Location of the key pressed.

◆ m_keyValue

char32_t CYIKeyEvent::m_keyValue

The character value of the key pressed.

◆ m_metaKey

bool CYIKeyEvent::m_metaKey

True when Meta key (Command key on Mac) is pressed.

◆ m_repeat

bool CYIKeyEvent::m_repeat

True when a key is pressed and held resulting in multiple events.

◆ m_screenRect

YI_RECT_REL CYIKeyEvent::m_screenRect

If a soft keyboard, keys have a location and size.

◆ m_shiftKey

bool CYIKeyEvent::m_shiftKey

True when Shift key is pressed.


The documentation for this class was generated from the following file: