diff options
author | Campbell Barton <campbell@blender.org> | 2022-03-08 05:48:34 +0300 |
---|---|---|
committer | Campbell Barton <campbell@blender.org> | 2022-03-08 05:48:34 +0300 |
commit | f052fb564605a788378d361e161a3447d30814a6 (patch) | |
tree | 7da1e1fe181e35f571261328a72976c72734e29a /source/blender/windowmanager/wm_event_types.h | |
parent | 08d8eee006f7e2a7ac05ef691bbaee230cbfbe5a (diff) |
Event System: add ISKEYBOARD_OR_BUTTON macro
This simplifies checking for event types that support press & release.
Diffstat (limited to 'source/blender/windowmanager/wm_event_types.h')
-rw-r--r-- | source/blender/windowmanager/wm_event_types.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/windowmanager/wm_event_types.h b/source/blender/windowmanager/wm_event_types.h index 578663b6fe8..fd0760d1d1c 100644 --- a/source/blender/windowmanager/wm_event_types.h +++ b/source/blender/windowmanager/wm_event_types.h @@ -363,6 +363,16 @@ enum { (((event_type) >= _EVT_KEYBOARD_MIN && (event_type) <= _EVT_KEYBOARD_MAX) || \ ((event_type) >= EVT_F1KEY && (event_type) <= EVT_F24KEY)) +/** + * Test whether the event is a key on the keyboard + * or any other kind of button that supports press & release + * (use for click & click-drag detection). + * + * \note Mouse wheel events are excluded from this macro, while they do generate press events it + * doesn't make sense to have click & click-drag events for a mouse-wheel as it can't be held down. + */ +#define ISKEYBOARD_OR_BUTTON(event_type) (ISMOUSE_BUTTON(event_type) || ISKEYBOARD(event_type)) + /** Test whether the event is a modifier key. */ #define ISKEYMODIFIER(event_type) \ (((event_type) >= EVT_LEFTCTRLKEY && (event_type) <= EVT_LEFTSHIFTKEY) || \ |