aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/controls
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/ui/controls')
-rw-r--r--include/cru/ui/controls/button.hpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/include/cru/ui/controls/button.hpp b/include/cru/ui/controls/button.hpp
index 648bb6bc..ca3dcae9 100644
--- a/include/cru/ui/controls/button.hpp
+++ b/include/cru/ui/controls/button.hpp
@@ -1,10 +1,10 @@
#pragma once
#include "../content_control.hpp"
+#include "../click_detector.hpp"
+#include "../render/border_render_object.hpp"
#include "cru/platform/graph/brush.hpp"
#include "cru/platform/native/basic_types.hpp"
-#include "cru/ui/base.hpp"
-#include "cru/ui/render/border_render_object.hpp"
#include <memory>
@@ -94,13 +94,11 @@ class Button : public ContentControl {
protected:
void OnChildChanged(Control* old_child, Control* new_child) override;
- void OnMouseClickBegin(platform::native::MouseButton button) override;
- void OnMouseClickEnd(platform::native::MouseButton button) override;
-
virtual void OnStateChange(ButtonState oldState, ButtonState newState);
private:
void SetState(ButtonState newState) {
+ if (state_ == newState) return;
const auto oldState = state_;
state_ = newState;
OnStateChange(oldState, newState);
@@ -114,5 +112,7 @@ class Button : public ContentControl {
MouseButton trigger_button_ = MouseButton::Left;
ButtonBorderStyle border_style_;
+
+ ClickDetector click_detector_;
};
} // namespace cru::ui::controls