diff options
author | crupest <crupest@outlook.com> | 2021-12-13 20:58:42 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2021-12-13 20:58:42 +0800 |
commit | 21fccf43ec049569f690674840ca1a10420a40da (patch) | |
tree | 33341a51f41bc9d783221ad363e33ffeb177886b /include/cru/ui/events/MouseButtonEventArgs.hpp | |
parent | c850d817cc0d8c2c80728f373f89dce91650023a (diff) | |
download | cru-21fccf43ec049569f690674840ca1a10420a40da.tar.gz cru-21fccf43ec049569f690674840ca1a10420a40da.tar.bz2 cru-21fccf43ec049569f690674840ca1a10420a40da.zip |
...
Diffstat (limited to 'include/cru/ui/events/MouseButtonEventArgs.hpp')
-rw-r--r-- | include/cru/ui/events/MouseButtonEventArgs.hpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/include/cru/ui/events/MouseButtonEventArgs.hpp b/include/cru/ui/events/MouseButtonEventArgs.hpp new file mode 100644 index 00000000..179ce8c8 --- /dev/null +++ b/include/cru/ui/events/MouseButtonEventArgs.hpp @@ -0,0 +1,35 @@ +#pragma once +#include "MouseEventArgs.hpp" + +#include "cru/platform/gui/Keyboard.hpp" + +namespace cru::ui::events { + +class MouseButtonEventArgs : public MouseEventArgs { + public: + MouseButtonEventArgs(Object* sender, Object* original_sender, + const Point& point, const MouseButton button, + platform::gui::KeyModifier key_modifier) + : MouseEventArgs(sender, original_sender, point), + button_(button), + key_modifier_(key_modifier) {} + MouseButtonEventArgs(Object* sender, Object* original_sender, + const MouseButton button, + platform::gui::KeyModifier key_modifier) + : MouseEventArgs(sender, original_sender), + button_(button), + key_modifier_(key_modifier) {} + MouseButtonEventArgs(const MouseButtonEventArgs& other) = default; + MouseButtonEventArgs(MouseButtonEventArgs&& other) = default; + MouseButtonEventArgs& operator=(const MouseButtonEventArgs& other) = default; + MouseButtonEventArgs& operator=(MouseButtonEventArgs&& other) = default; + ~MouseButtonEventArgs() override = default; + + MouseButton GetButton() const { return button_; } + platform::gui::KeyModifier GetKeyModifier() const { return key_modifier_; } + + private: + MouseButton button_; + platform::gui::KeyModifier key_modifier_; +}; +} // namespace cru::ui::event |