CrystalSpace

Public API Reference

csutil/eventnames.h File Reference

Event naming and name relations. More...

#include "cssysdef.h"
#include "csextern.h"
#include "csutil/scf_implementation.h"
#include "iutil/eventnames.h"
#include "iutil/objreg.h"
#include "csutil/hash.h"
#include "csutil/strset.h"
#include "csutil/csstring.h"

Go to the source code of this file.

Classes

class  csEventNameRegistry
 The csEventNameRegistry transforms textual event names (e.g., "crystalspace.input.joystick.3.button") into easier-to-manage csEventIDs (which, in non-debug builds, are really just csStringIDs). More...
class  csHashComputer< const csEventID >

Common system events

These are the names of some of the most commonly-used system-generated events.

Third-party applications can define their own event names. You should avoid using the "crystalspace." prefix (which is reserved for internally-generated events).

#define CS_IS_INPUT_EVENT(reg, e)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevInput(reg))
 Check if an event is any input event.
#define CS_IS_JOYSTICK_BUTTON_EVENT(reg, e, n)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevJoystickButton((reg),n))
 Check if an event is a button event from mouse n (basis 0).
#define CS_IS_JOYSTICK_EVENT(reg, e)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevJoystickEvent(reg))
 Check if an event is a joystick event.
#define CS_IS_JOYSTICK_MOVE_EVENT(reg, e, n)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevJoystickMove((reg),n))
 Check if an event is a move event from mouse n (basis 0).
#define CS_IS_KEYBOARD_EVENT(reg, e)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevKeyboardEvent(reg))
 Check if an event is a keyboard event.
#define CS_IS_MOUSE_BUTTON_EVENT(reg, e, n)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevMouseButton((reg),n))
 Check if an event is a button event from mouse n (basis 0).
#define CS_IS_MOUSE_EVENT(reg, e)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevMouseEvent(reg))
 Check if an event is a mouse event.
#define CS_IS_MOUSE_MOVE_EVENT(reg, e, n)   csEventNameRegistry::IsKindOf((reg), ((e).Name), csevMouseMove((reg),n))
 Check if an event is a move event from mouse n (basis 0).
#define csevAllEvents(reg)   (csEventNameRegistry::GetID((reg), ""))
 Root event.
#define csevCanvasClose(reg, g2d)   csevCanvasOp((reg), (g2d), "close")
 This event is sent when a graphics context x is being destroyed (where x is an iGraphics2D pointer).
#define csevCanvasExposed(reg, g2d)   csevCanvasOp((reg), (g2d), "exposed")
 Broadcast indicating that the display canvas has just become visible, such as being uniconified (where x is an iGraphics2D pointer).
#define csevCanvasHidden(reg, g2d)   csevCanvasOp((reg), (g2d), "hidden")
 Broadcast indicating that the canvas x is not currently visible to the user, such as being iconified (where x is an iGraphics2D pointer).
#define csevCanvasResize(reg, g2d)   csevCanvasOp((reg), (g2d), "resize")
 This event is generated when user resizes the application window corresponding with context x (where x is an iGraphics2D pointer).
#define csevCommandLineHelp(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.application.commandlinehelp"))
 This event is broadcasted when system driver displays the help text for all supported command-line switches.
#define csevFocusChanged(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.application.focus"))
 Children of this event are generated whenever application (as a whole) receives or loses focus.
#define csevFocusGained(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.application.focus.gained"))
 This event is generated whenever user application (as a whole) receives system focus.
#define csevFocusLost(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.application.focus.lost"))
 This event is generated whenever user application (as a whole) loses system focus.
#define csevFrame(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.frame"))
 Frame event.
#define csevInput(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.input"))
 Generic input event.
#define csevJoystickButton(reg, x)   csevJoystickOp((reg),(x),"button")
 Generic joystick button event from joystick x.
#define csevJoystickDown(reg, x)   csevJoystickOp((reg),(x),"button.down")
 Button down event from joystick x. The first system joystick is 0.
#define csevJoystickEvent(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.input.joystick"))
 Generic joystick event.
#define csevJoystickMove(reg, x)   csevJoystickOp((reg),(x),"move")
 Move event from joystick x. The first system joystick is 0.
#define csevJoystickUp(reg, x)   csevJoystickOp((reg),(x),"button.up")
 Button up event from joystick x. The first system joystick is 0.
#define csevKeyboardDown(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.input.keyboard.down"))
 Keyboard key down event.
#define csevKeyboardEvent(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.input.keyboard"))
 Generic keyboard event.
#define csevKeyboardUp(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.input.keyboard.up"))
 Keyboard key up event.
#define csevMouseButton(reg, x)   csevMouseOp ((reg), (x), "button")
 Generic button event from mouse x.
#define csevMouseClick(reg, x)   csevMouseOp ((reg), (x), "button.click")
 Click event from mouse x.
#define csevMouseDoubleClick(reg, x)   csevMouseOp((reg), (x), "button.doubleclick")
 Double-click event from mouse x.
#define csevMouseDown(reg, x)   csevMouseOp ((reg), (x), "button.down")
 Button down event from mouse x.
#define csevMouseEvent(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.input.mouse"))
 Generic mouse event. All actual mouse events are children of this one.
#define csevMouseMove(reg, x)   csevMouseOp((reg), (x), "move")
 Move event from mouse x.
#define csevMouseUp(reg, x)   csevMouseOp ((reg), (x), "button.up")
 Button up event from mouse x.
#define csevQuit(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.application.quit"))
 This event causes system driver to quit the event loop, even if the event loop has been entered multiple times.
#define csevSystemClose(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.application.close"))
 This event is broadcasted to all event listeners just before modules are about to be shutdown and unloaded (that is, the system is shutting down).
#define csevSystemOpen(reg)   (csEventNameRegistry::GetID((reg), "crystalspace.application.open"))
 This event is broadcasted to all event listeners just after all modules have been initialized.
static csEventID csevCanvasOp (iObjectRegistry *object_reg, const iGraphics2D *g2d, const csString &y)
 Check if an event is any input event.
csEventID csevCanvasOp (csRef< iEventNameRegistry > &reg, const iGraphics2D *g2d, const csString &y)
 Check if an event is any input event.
csEventID csevFinalProcess (iEventNameRegistry *reg)
 Check if an event is any input event.
csEventID csevFinalProcess (iObjectRegistry *reg)
 Broadcasted after csevPostProcess on every frame.
static csEventID csevJoystick (iObjectRegistry *object_reg, uint x)
 Check if an event is any input event.
static csEventID csevJoystick (iEventNameRegistry *name_reg, uint x)
 Check if an event is any input event.
static csEventID csevJoystickOp (iObjectRegistry *object_reg, uint x, const csString &y)
 Check if an event is any input event.
static csEventID csevJoystickOp (iEventNameRegistry *name_reg, uint x, const csString &y)
 Check if an event is any input event.
static csEventID csevMouse (iObjectRegistry *object_reg, uint x)
 Check if an event is any input event.
static csEventID csevMouse (iEventNameRegistry *name_reg, uint x)
 Check if an event is any input event.
static csEventID csevMouseOp (iObjectRegistry *object_reg, uint x, const csString &y)
 Check if an event is any input event.
static csEventID csevMouseOp (iEventNameRegistry *name_reg, uint x, const csString &y)
 Check if an event is any input event.
csEventID csevPostProcess (iEventNameRegistry *reg)
 Check if an event is any input event.
csEventID csevPostProcess (iObjectRegistry *reg)
 Broadcasted after csevProcess on every frame.
csEventID csevPreProcess (iEventNameRegistry *reg)
 Check if an event is any input event.
csEventID csevPreProcess (iObjectRegistry *reg)
 Broadcasted before csevProcess on every frame.
csEventID csevProcess (iEventNameRegistry *reg)
 Check if an event is any input event.
csEventID csevProcess (iObjectRegistry *reg)
 Broadcasted every frame.

Defines

#define CS_DECLARE_EVENT_SHORTCUTS
 Shortcut to declare class properties SystemOpen, SystemClose, Frame, PreProcess, Process, PostProcess, FinalProcess.
#define CS_DECLARE_FRAME_EVENT_SHORTCUTS
#define CS_DECLARE_INPUT_EVENT_SHORTCUTS
#define CS_DECLARE_SYSTEM_EVENT_SHORTCUTS
#define CS_INITIALIZE_EVENT_SHORTCUTS(object_reg)
 Shortcut to initialize the properties declared by CS_DECLARE_EVENT_SHORTCUTS.
#define CS_INITIALIZE_FRAME_EVENT_SHORTCUTS(object_reg)
#define CS_INITIALIZE_INPUT_EVENT_SHORTCUTS(object_reg)
#define CS_INITIALIZE_SYSTEM_EVENT_SHORTCUTS(object_reg)


Detailed Description

Event naming and name relations.

Definition in file eventnames.h.


Generated for Crystal Space 1.2.1 by doxygen 1.5.3