![]() |
Public API Reference |
Go to the source code of this file.
Event masks | |
The event masks can be used by plugins to tell an event queue, via iEventQueue::RegisterListener, which kinds of events they want to receive at their HandleEvent() entry.
If a plugin registers to receive CSMASK_Nothing events it is always called once per frame, so that plugin can do some per-frame processing. | |
#define | CSMASK_Nothing (1 << csevNothing) |
Event mask: Empty event. More... | |
#define | CSMASK_FrameProcess CSMASK_Nothing |
The plugin will be called at the start of every frame and at the end of every frame with an csevBroadcast event with the Event.Command.Code equal to cscmdPreProcess, csProcess, cscmdPostProcess, or cscmdFinalProcess. More... | |
#define | CSMASK_KeyDown (1 << csevKeyDown) |
Key down events. More... | |
#define | CSMASK_KeyUp (1 << csevKeyUp) |
Key up events. More... | |
#define | CSMASK_MouseMove (1 << csevMouseMove) |
Mouse move events. More... | |
#define | CSMASK_MouseDown (1 << csevMouseDown) |
Mouse down events. More... | |
#define | CSMASK_MouseUp (1 << csevMouseUp) |
Mouse up events. More... | |
#define | CSMASK_MouseClick (1 << csevMouseClick) |
Mouse click events. More... | |
#define | CSMASK_MouseDoubleClick (1 << csevMouseDoubleClick) |
Mouse double click events. More... | |
#define | CSMASK_JoystickMove (1 << csevJoystickMove) |
Joystick movement events. More... | |
#define | CSMASK_JoystickDown (1 << csevJoystickDown) |
Joystick button down events. More... | |
#define | CSMASK_JoystickUp (1 << csevJoystickUp) |
Joystick button up events. More... | |
#define | CSMASK_Command (1 << csevCommand) |
Command message events. More... | |
#define | CSMASK_Broadcast (1 << csevBroadcast) |
Broadcast message events. More... | |
#define | CSMASK_Network (1 << csevNetwork) |
Network message events. More... | |
#define | CSMASK_Keyboard (CSMASK_KeyDown | CSMASK_KeyUp) |
This mask identifies any keyboard event. More... | |
#define | CSMASK_Mouse |
This mask identifies any mouse event. More... | |
#define | CSMASK_Joystick (CSMASK_JoystickMove | CSMASK_JoystickDown | CSMASK_JoystickUp) |
This mask identifies any joystick event. More... | |
#define | CSMASK_Input (CSMASK_Keyboard | CSMASK_Mouse | CSMASK_Joystick) |
This mask identifies any input evemt. More... | |
#define | CS_IS_KEYBOARD_EVENT(e) ((1 << (e).Type) & CSMASK_Keyboard) |
Check if a event is a keyboard event. More... | |
#define | CS_IS_MOUSE_EVENT(e) ((1 << (e).Type) & CSMASK_Mouse) |
Check if a event is a mouse event. More... | |
#define | CS_IS_JOYSTICK_EVENT(e) ((1 << (e).Type) & CSMASK_Joystick) |
Check if a event is a joystick event. More... | |
#define | CS_IS_INPUT_EVENT(e) ((1 << (e).Type) & CSMASK_Input) |
Check if a event is any input event. More... | |
#define | CS_IS_NETWORK_EVENT(e) ((1 << (e).Type) & CSMASK_Network) |
Check if the event is a network event. More... | |
Event flags masks | |
Every event has a `flags' field which describes miscelaneous aspects of the event.
The following constants describes every used bit of the `flags' field. | |
#define | CSEF_BROADCAST 0x00000001 |
Event flag: Ignore `true' returned from HandleEvent which says that event has been processed and should not be processed anymore. More... | |
Modifier key masks | |
Every input event (keyboard, mouse and joystick) contains a Modifiers field which is a bitfield consisting of any combination of the masks below.
Having one in one of the bits means that the corresponding modifier was pressed at the time when event happened. | |
#define | CSMASK_SHIFT 0x00000001 |
"Shift" key mask. More... | |
#define | CSMASK_CTRL 0x00000002 |
"Ctrl" key mask. More... | |
#define | CSMASK_ALT 0x00000004 |
"Alt" key mask. More... | |
#define | CSMASK_ALLSHIFTS (CSMASK_SHIFT | CSMASK_CTRL | CSMASK_ALT) |
All shift keys. More... | |
#define | CSMASK_FIRST 0x80000000 |
Key is pressed for first time or it is an autorepeat? More... | |
Control key codes | |
Not every existing key on any existing platform is supported by Crystal Space.
Instead, we tried to list here all the keys that are common among all platforms on which Crystal Space runs. | |
#define | CSKEY_ESC 27 |
ESCape key. More... | |
#define | CSKEY_ENTER '\n' |
Enter key. More... | |
#define | CSKEY_TAB '\t' |
Tab key. More... | |
#define | CSKEY_BACKSPACE '\b' |
Back-space key. More... | |
#define | CSKEY_SPACE ' ' |
Space key. More... | |
#define | CSKEY_UP 1000 |
Up arrow key. More... | |
#define | CSKEY_DOWN 1001 |
Down arrow key. More... | |
#define | CSKEY_LEFT 1002 |
Left arrow key. More... | |
#define | CSKEY_RIGHT 1003 |
Right arrow key. More... | |
#define | CSKEY_PGUP 1004 |
PageUp key. More... | |
#define | CSKEY_PGDN 1005 |
PageDown key. More... | |
#define | CSKEY_HOME 1006 |
Home key. More... | |
#define | CSKEY_END 1007 |
End key. More... | |
#define | CSKEY_INS 1008 |
Insert key. More... | |
#define | CSKEY_DEL 1009 |
Delete key. More... | |
#define | CSKEY_CTRL 1010 |
Control key. More... | |
#define | CSKEY_ALT 1011 |
Alternative shift key. More... | |
#define | CSKEY_SHIFT 1012 |
Shift key. More... | |
#define | CSKEY_F1 1013 |
Function key F1. More... | |
#define | CSKEY_F2 1014 |
Function key F2. More... | |
#define | CSKEY_F3 1015 |
Function key F3. More... | |
#define | CSKEY_F4 1016 |
Function key F4. More... | |
#define | CSKEY_F5 1017 |
Function key F5. More... | |
#define | CSKEY_F6 1018 |
Function key F6. More... | |
#define | CSKEY_F7 1019 |
Function key F7. More... | |
#define | CSKEY_F8 1020 |
Function key F8. More... | |
#define | CSKEY_F9 1021 |
Function key F9. More... | |
#define | CSKEY_F10 1022 |
Function key F10. More... | |
#define | CSKEY_F11 1023 |
Function key F11. More... | |
#define | CSKEY_F12 1024 |
Function key F12. More... | |
#define | CSKEY_CENTER 1025 |
The "center" key ("5" on numeric keypad). More... | |
#define | CSKEY_PADPLUS 1026 |
Numeric keypad '+'. More... | |
#define | CSKEY_PADMINUS 1027 |
Numeric keypad '-'. More... | |
#define | CSKEY_PADMULT 1028 |
Numeric keypad '*'. More... | |
#define | CSKEY_PADDIV 1029 |
Numeric keypad '/'. More... | |
#define | CSKEY_FIRST 1000 |
First control key code. More... | |
#define | CSKEY_LAST 1029 |
Last control key code. More... | |
Event class masks | |
Every event plug should provide information about which event types that may conflict with other event plugs it is able to generate.
The system driver checks it and if several event plugs generates conflicting types events, one of them (the one with lower priority) is disabled. | |
#define | CSEVTYPE_Keyboard 0x00000001 |
Keyboard events. More... | |
#define | CSEVTYPE_Mouse 0x00000002 |
Mouse events. More... | |
#define | CSEVTYPE_Joystick 0x00000004 |
Joystick events. More... | |
Enumerations | |
enum | { csevNothing = 0, csevKeyDown, csevKeyUp, csevMouseMove, csevMouseDown, csevMouseUp, csevMouseClick, csevMouseDoubleClick, csevJoystickMove, csevJoystickDown, csevJoystickUp, csevCommand, csevBroadcast, csevNetwork, csevMouseEnter, csevMouseExit, csevLostFocus, csevGainFocus, csevGroupOff, csevFrameStart } |
System Events. More... | |
enum | { cscmdNothing = 0, cscmdQuit, cscmdFocusChanged, cscmdSystemOpen, cscmdSystemClose, cscmdContextResize, cscmdContextClose, cscmdCommandLineHelp, cscmdPreProcess, cscmdProcess, cscmdPostProcess, cscmdFinalProcess, cscmdCanvasHidden, cscmdCanvasExposed } |
General Command Codes. More... |
Definition in file evdefs.h.