aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/controls/Button.hpp
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-02-08 16:53:51 +0800
committercrupest <crupest@outlook.com>2022-02-08 16:53:51 +0800
commit74bb9cd27242b9320f99ff4d2b50c3051576cc14 (patch)
tree744bac5799c593d1d6f81e7b09581bea626f2cde /include/cru/ui/controls/Button.hpp
parentb90c398de829d1ba5329651d75bae82f5e4085fe (diff)
downloadcru-74bb9cd27242b9320f99ff4d2b50c3051576cc14.tar.gz
cru-74bb9cd27242b9320f99ff4d2b50c3051576cc14.tar.bz2
cru-74bb9cd27242b9320f99ff4d2b50c3051576cc14.zip
...
Diffstat (limited to 'include/cru/ui/controls/Button.hpp')
-rw-r--r--include/cru/ui/controls/Button.hpp53
1 files changed, 0 insertions, 53 deletions
diff --git a/include/cru/ui/controls/Button.hpp b/include/cru/ui/controls/Button.hpp
deleted file mode 100644
index 77e0989c..00000000
--- a/include/cru/ui/controls/Button.hpp
+++ /dev/null
@@ -1,53 +0,0 @@
-#pragma once
-#include "ContentControl.hpp"
-
-#include "../helper/ClickDetector.hpp"
-#include "IBorderControl.hpp"
-#include "IClickableControl.hpp"
-#include "cru/common/Event.hpp"
-#include "cru/ui/style/ApplyBorderStyleInfo.hpp"
-
-namespace cru::ui::controls {
-class CRU_UI_API Button : public ContentControl,
- public virtual IClickableControl,
- public virtual IBorderControl {
- public:
- static constexpr StringView control_type = u"Button";
-
- static Button* Create() { return new Button(); }
-
- protected:
- Button();
-
- public:
- Button(const Button& other) = delete;
- Button(Button&& other) = delete;
- Button& operator=(const Button& other) = delete;
- Button& operator=(Button&& other) = delete;
- ~Button() override;
-
- String GetControlType() const final { return control_type.ToString(); }
-
- render::RenderObject* GetRenderObject() const override;
-
- public:
- helper::ClickState GetClickState() override {
- return click_detector_.GetState();
- }
-
- IEvent<helper::ClickState>* ClickStateChangeEvent() override {
- return click_detector_.StateChangeEvent();
- }
-
- IEvent<helper::ClickEventArgs>* ClickEvent() {
- return click_detector_.ClickEvent();
- }
-
- void ApplyBorderStyle(const style::ApplyBorderStyleInfo& style) override;
-
- private:
- std::unique_ptr<render::BorderRenderObject> render_object_{};
-
- helper::ClickDetector click_detector_;
-};
-} // namespace cru::ui::controls