aboutsummaryrefslogtreecommitdiff
path: root/include/cru/platform/gui
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/platform/gui')
-rw-r--r--include/cru/platform/gui/Input.h17
-rw-r--r--include/cru/platform/gui/Window.h9
2 files changed, 5 insertions, 21 deletions
diff --git a/include/cru/platform/gui/Input.h b/include/cru/platform/gui/Input.h
index a29a9bba..007ed408 100644
--- a/include/cru/platform/gui/Input.h
+++ b/include/cru/platform/gui/Input.h
@@ -6,12 +6,7 @@
#include <string>
namespace cru::platform::gui {
-namespace details {
-struct TagMouseButton {};
-} // namespace details
-
-using MouseButton = Bitmask<details::TagMouseButton>;
-struct MouseButtons {
+CRU_DEFINE_BITMASK(MouseButton) {
constexpr static MouseButton None = MouseButton::FromOffset(0);
constexpr static MouseButton Left = MouseButton::FromOffset(1);
constexpr static MouseButton Middle = MouseButton::FromOffset(2);
@@ -76,7 +71,7 @@ enum class KeyCode {
X,
Y,
Z,
- Grave, // TODO: fix this key mapping on Windows and Xorg.
+ Grave, // TODO: fix this key mapping on Windows and Xorg.
Tab,
CapsLock,
LeftShift,
@@ -127,13 +122,7 @@ enum class KeyCode {
Space
};
-namespace details {
-struct TagKeyModifier {};
-} // namespace details
-
-using KeyModifier = Bitmask<details::TagKeyModifier>;
-
-struct KeyModifiers {
+CRU_DEFINE_BITMASK(KeyModifier) {
static constexpr KeyModifier None = KeyModifier::FromOffset(0);
static constexpr KeyModifier Shift = KeyModifier::FromOffset(1);
static constexpr KeyModifier Ctrl = KeyModifier::FromOffset(2);
diff --git a/include/cru/platform/gui/Window.h b/include/cru/platform/gui/Window.h
index db03c528..1ef9e980 100644
--- a/include/cru/platform/gui/Window.h
+++ b/include/cru/platform/gui/Window.h
@@ -3,6 +3,7 @@
#include "Input.h"
+#include <cru/base/Bitmask.h>
#include <cru/base/Event.h>
#include <cru/platform/GraphicsBase.h>
#include <cru/platform/graphics/Painter.h>
@@ -11,13 +12,7 @@ namespace cru::platform::gui {
class ICursor;
class IInputMethodContext;
-namespace details {
-struct WindowStyleFlagTag;
-}
-
-using WindowStyleFlag = Bitmask<details::WindowStyleFlagTag>;
-
-struct WindowStyleFlags {
+CRU_DEFINE_BITMASK(WindowStyleFlag) {
static constexpr WindowStyleFlag NoCaptionAndBorder =
WindowStyleFlag::FromOffset(1);
};