Difference between revisions of "Keyboard (Chili Framework)"
(→GetCode) |
|||
| Line 2: | Line 2: | ||
== Event == | == Event == | ||
| − | <code>class Keyboard::Event</code> | + | <code>class Keyboard::Event</code><br /> |
| − | 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. | + | |
| + | 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 === | === Members === | ||
Revision as of 19:57, 13 July 2016
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