BRL-CAD
events.h File Reference

Go to the source code of this file.

Macros

#define BV_KEY_PRESS   0x001
 
#define BV_KEY_RELEASE   0x002
 
#define BV_LEFT_MOUSE_PRESS   0x004
 
#define BV_LEFT_MOUSE_RELEASE   0x008
 
#define BV_RIGHT_MOUSE_PRESS   0x010
 
#define BV_RIGHT_MOUSE_RELEASE   0x020
 
#define BV_MIDDLE_MOUSE_PRESS   0x040
 
#define BV_MIDDLE_MOUSE_RELEASE   0x080
 
#define BV_CTRL_MOD   0x100
 
#define BV_SHIFT_MOD   0x200
 
#define BV_ALT_MOD   0x400
 

Detailed Description

View objects may define their behaviors in response to events (key presses, mouse movements, etc.). Because such events are defined on a per-environment basis, we need to define a common language to express responses to those events in order to avoid dependence on that environment.

The calling code is responsible for translating the environment specific events into bv events.

TODO - eventually these should probably be augmented by common purpose specific options (i.e. define a BV_X_CONSTRAIN so the calling application can map either x or X to the enabling of that particular motion constraint during editing, for example...) However, I think we'll also need to pass the lower level info as there are too many purpose specific possibilities to encode them all up front.

Definition in file events.h.

Macro Definition Documentation

◆ BV_KEY_PRESS

#define BV_KEY_PRESS   0x001

Definition at line 39 of file events.h.

◆ BV_KEY_RELEASE

#define BV_KEY_RELEASE   0x002

Definition at line 40 of file events.h.

◆ BV_LEFT_MOUSE_PRESS

#define BV_LEFT_MOUSE_PRESS   0x004

Definition at line 41 of file events.h.

◆ BV_LEFT_MOUSE_RELEASE

#define BV_LEFT_MOUSE_RELEASE   0x008

Definition at line 42 of file events.h.

◆ BV_RIGHT_MOUSE_PRESS

#define BV_RIGHT_MOUSE_PRESS   0x010

Definition at line 43 of file events.h.

◆ BV_RIGHT_MOUSE_RELEASE

#define BV_RIGHT_MOUSE_RELEASE   0x020

Definition at line 44 of file events.h.

◆ BV_MIDDLE_MOUSE_PRESS

#define BV_MIDDLE_MOUSE_PRESS   0x040

Definition at line 45 of file events.h.

◆ BV_MIDDLE_MOUSE_RELEASE

#define BV_MIDDLE_MOUSE_RELEASE   0x080

Definition at line 46 of file events.h.

◆ BV_CTRL_MOD

#define BV_CTRL_MOD   0x100

Definition at line 47 of file events.h.

◆ BV_SHIFT_MOD

#define BV_SHIFT_MOD   0x200

Definition at line 48 of file events.h.

◆ BV_ALT_MOD

#define BV_ALT_MOD   0x400

Definition at line 49 of file events.h.