diff options
author | crupest <crupest@outlook.com> | 2020-01-01 22:52:01 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-01-01 22:52:01 +0800 |
commit | 36708e88596364e81dc9ba2fd3cbddbcaedeedc0 (patch) | |
tree | 0c7990b9e64c6ea1e9df7c01f3521c4fbf7ea2a0 /include/cru/platform | |
parent | ae6f797561cdfa438ebef1fbbf94d784d315e655 (diff) | |
download | cru-36708e88596364e81dc9ba2fd3cbddbcaedeedc0.tar.gz cru-36708e88596364e81dc9ba2fd3cbddbcaedeedc0.tar.bz2 cru-36708e88596364e81dc9ba2fd3cbddbcaedeedc0.zip |
...
Diffstat (limited to 'include/cru/platform')
-rw-r--r-- | include/cru/platform/native/basic_types.hpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/include/cru/platform/native/basic_types.hpp b/include/cru/platform/native/basic_types.hpp index 247df06d..84cc61d1 100644 --- a/include/cru/platform/native/basic_types.hpp +++ b/include/cru/platform/native/basic_types.hpp @@ -1,5 +1,6 @@ #pragma once #include "cru/common/base.hpp" +#include "cru/common/bitmask.hpp" namespace cru::platform::native { struct Dpi { @@ -7,7 +8,16 @@ struct Dpi { float y; }; -enum class MouseButton : unsigned { Left = 0b1, Right = 0b10, Middle = 0b100 }; -} // namespace cru::platform::native +namespace details { +struct TagMouseButton {}; +} // namespace details + +using MouseButton = Bitmask<details::TagMouseButton>; -CRU_ENABLE_BITMASK_OPERATORS(::cru::platform::native::MouseButton) +namespace mouse_buttons { +constexpr MouseButton left{0b1}; +constexpr MouseButton middle{0b10}; +constexpr MouseButton right{0b100}; +} // namespace mouse_buttons + +} // namespace cru::platform::native |