diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2023-10-21 16:58:00 +0200 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2023-10-21 16:58:00 +0200 |
commit | 466f49ac5702c02352617481f0beaeef7ddc604b (patch) | |
tree | c123e8ee3e5060524070f64514b2993a2ff42d34 /editor | |
parent | 809668a3d816e560616ea33e9477959f7c518ccf (diff) |
fix mouse button mask formula
Diffstat (limited to 'editor')
-rw-r--r-- | editor/events.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/editor/events.cpp b/editor/events.cpp index b0a9f590..94a8f94f 100644 --- a/editor/events.cpp +++ b/editor/events.cpp @@ -71,26 +71,22 @@ void app::on_mouse_up_down(const mouse_button_event& event, bool is_down) noexce if (!(event.position >= Vector2i() && event.position < M->window_size())) return; - enum class Button_ : std::underlying_type_t<mouse_button> { - Left = mouse_button_left, - Right = mouse_button_right, - Middle = mouse_button_middle, - }; - - const auto button = uint8_t(1 << (event.button-1)); - struct ev { - using Button = Button_; + enum class Button : std::underlying_type_t<mouse_button> { + Left = mouse_button_left, + Right = mouse_button_right, + Middle = mouse_button_middle, + }; accessor(Vector2i, position) accessor(Button, button) - } e = {event.position, Button_(button)}; + } e = {event.position, ev::Button(event.button)}; if ((cursor.in_imgui = is_down ? _imgui.handleMousePressEvent(e) : _imgui.handleMouseReleaseEvent(e))) void(); else if (_editor.mode() == editor_mode::tests && tests_handle_mouse_click(event, is_down)) void(); else - do_mouse_up_down(button, is_down, fixup_mods(event.mods)); + do_mouse_up_down(event.button, is_down, fixup_mods(event.mods)); } void app::on_mouse_scroll(const mouse_scroll_event& event) noexcept |