From 445c049612e6c38bf2c71144d88d3d153324be1f Mon Sep 17 00:00:00 2001 From: Fabian Greffrath Date: Mon, 3 Oct 2022 18:11:17 +0200 Subject: [PATCH] introduce and use M_IsMouseWheel() (#757) Thanks @kraflab --- src/am_map.c | 6 ++---- src/m_input.c | 8 +++++++- src/m_input.h | 2 ++ src/m_menu.c | 5 ++--- src/m_misc.c | 5 ++--- 5 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/am_map.c b/src/am_map.c index 91088ad4..c70fd3f3 100644 --- a/src/am_map.c +++ b/src/am_map.c @@ -859,8 +859,7 @@ boolean AM_Responder rc = false; else if (M_InputActivated(input_map_zoomout)) { - if (ev->type == ev_mouseb_down && - (ev->data1 == MOUSE_BUTTON_WHEELUP || ev->data1 == MOUSE_BUTTON_WHEELDOWN)) + if (ev->type == ev_mouseb_down && M_IsMouseWheel(ev->data1)) { mousewheelzoom = true; mtof_zoommul = m_zoomout_mouse; @@ -874,8 +873,7 @@ boolean AM_Responder } else if (M_InputActivated(input_map_zoomin)) { - if (ev->type == ev_mouseb_down && - (ev->data1 == MOUSE_BUTTON_WHEELUP || ev->data1 == MOUSE_BUTTON_WHEELDOWN)) + if (ev->type == ev_mouseb_down && M_IsMouseWheel(ev->data1)) { mousewheelzoom = true; mtof_zoommul = m_zoomin_mouse; diff --git a/src/m_input.c b/src/m_input.c index 5527db3b..d624117c 100644 --- a/src/m_input.c +++ b/src/m_input.c @@ -363,7 +363,7 @@ static const struct { MOUSE_BUTTON_WHEELUP, "wheelup" }, { MOUSE_BUTTON_WHEELDOWN, "wheeldown" }, { MOUSE_BUTTON_WHEELLEFT, "wheelleft" }, - { MOUSE_BUTTON_WHEELRIGHT, "wheelright" }, + { MOUSE_BUTTON_WHEELRIGHT,"wheelright" }, }; const char* M_GetNameForKey(int key) @@ -431,3 +431,9 @@ int M_GetMouseBForName(const char* name) } return -1; } + +boolean M_IsMouseWheel(int mouseb) +{ + return mouseb >= MOUSE_BUTTON_WHEELUP && + mouseb <= MOUSE_BUTTON_WHEELRIGHT; +} diff --git a/src/m_input.h b/src/m_input.h index d48583b9..412a9741 100644 --- a/src/m_input.h +++ b/src/m_input.h @@ -179,4 +179,6 @@ int M_GetJoyBForName(const char* name); const char* M_GetNameForMouseB(int joyb); int M_GetMouseBForName(const char* name); +boolean M_IsMouseWheel(int mouseb); + #endif diff --git a/src/m_menu.c b/src/m_menu.c index d76beded..eb243d29 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -5830,9 +5830,8 @@ boolean M_Responder (event_t* ev) // Don't bind movement and turning to mouse wheel. It needs to // be impossible to input a one-frame of movement automatically // in speedrunning. - if ((ch == MOUSE_BUTTON_WHEELUP || ch == MOUSE_BUTTON_WHEELDOWN || - ch == MOUSE_BUTTON_WHEELLEFT || ch == MOUSE_BUTTON_WHEELRIGHT) && - s_input >= input_forward && s_input <= input_straferight) + if (M_IsMouseWheel(ch) && + s_input >= input_forward && s_input <= input_straferight) return true; for (i = 0 ; keys_settings[i] && search ; i++) for (ptr2 = keys_settings[i] ; !(ptr2->m_flags & S_END) ; ptr2++) diff --git a/src/m_misc.c b/src/m_misc.c index 7e0504f5..3b69176f 100644 --- a/src/m_misc.c +++ b/src/m_misc.c @@ -2738,9 +2738,8 @@ boolean M_ParseOption(const char *p, boolean wad) // Don't bind movement and turning to mouse wheel. It needs to // be impossible to input a one-frame of movement // automatically in speedrunning. - if ((value == MOUSE_BUTTON_WHEELUP || value == MOUSE_BUTTON_WHEELDOWN || - value == MOUSE_BUTTON_WHEELLEFT || value == MOUSE_BUTTON_WHEELRIGHT) && - dp->ident >= input_forward && dp->ident <= input_straferight) + if (M_IsMouseWheel(value) && + dp->ident >= input_forward && dp->ident <= input_straferight) { } else if (!M_InputAddMouseB(dp->ident, value))