Keyboard (Chili Framework)
With Keyboard
, you can get the current state of depressed keys, and you can pop key press and release events out of an Event
queue contained in Keyboard
. You can also turn autorepeat on/off. Whopee. (Note: the kbd
object lives in MainWindow
's belly.)
Contents
Event
class Keyboard::Event
Key press and release events are held in a buffer in the order they occurred. These events are modeled with they're own class because they're precious fucking little snowflakes. You pull them out of the buffer with Keyboard::ReadKey()
.
Members
Type
enum Keyboard::Event::Type
This represents the different types of events that can be recorded. The options are Press
, Release
, and Invalid
.
IsPress
bool Keyboard::IsPress() const
Returns true
if the event is a press event.
IsRelease
bool Keyboard::IsRelease() const
Returns true
if the event is a release event.
IsValid
bool Keyboard::IsValid() const
Returns true
if the event is a valid event (reading from an empty buffer will return an invalid event object).
GetCode
char Keyboard::GetCode()
Gets the virtual key code of the key associated with the Event object. The virtual key code for a standard alphanumeric key is just the char
literal (capital if alphabetic), e.g. 'A'
or '9'
. Virtual key codes for other keys are defined with #define
macros somewhere in Windows.h
(or more likely in one of the headers that it includes). Some common ones are:
-
VK_SPACE
-
VK_SHIFT
-
VK_ENTER
-
VK_ESCAPE
Members
See also
- The Chili Framework