diff options
author | crupest <crupest@outlook.com> | 2020-12-25 15:38:18 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-12-25 15:38:18 +0800 |
commit | da7ad0ff5c5b158be69c6cf9a2c8e9fc9ef2b3cb (patch) | |
tree | 9d58ba66119f5a1f6efa5a9b75c22e0453993a07 /include/cru/ui/controls/TextBox.hpp | |
parent | a14704fbd9b9fb377b7009a9fbe641a9b8d0fdfb (diff) | |
download | cru-da7ad0ff5c5b158be69c6cf9a2c8e9fc9ef2b3cb.tar.gz cru-da7ad0ff5c5b158be69c6cf9a2c8e9fc9ef2b3cb.tar.bz2 cru-da7ad0ff5c5b158be69c6cf9a2c8e9fc9ef2b3cb.zip |
...
Diffstat (limited to 'include/cru/ui/controls/TextBox.hpp')
-rw-r--r-- | include/cru/ui/controls/TextBox.hpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/include/cru/ui/controls/TextBox.hpp b/include/cru/ui/controls/TextBox.hpp index 75e7cb65..5693b315 100644 --- a/include/cru/ui/controls/TextBox.hpp +++ b/include/cru/ui/controls/TextBox.hpp @@ -1,6 +1,8 @@ #pragma once #include "NoChildControl.hpp" + #include "IBorderControl.hpp" +#include "TextHostControlService.hpp" #include <memory> @@ -8,7 +10,9 @@ namespace cru::ui::controls { template <typename TControl> class TextControlService; -class TextBox : public NoChildControl, public IBorderControl { +class TextBox : public NoChildControl, + public virtual IBorderControl, + public virtual ITextHostControl { public: static constexpr std::u16string_view control_type = u"TextBox"; @@ -27,8 +31,8 @@ class TextBox : public NoChildControl, public IBorderControl { render::RenderObject* GetRenderObject() const override; - gsl::not_null<render::TextRenderObject*> GetTextRenderObject(); - render::ScrollRenderObject* GetScrollRenderObject(); + gsl::not_null<render::TextRenderObject*> GetTextRenderObject() override; + render::ScrollRenderObject* GetScrollRenderObject() override; void ApplyBorderStyle(const style::ApplyBorderStyleInfo& style) override; @@ -37,6 +41,6 @@ class TextBox : public NoChildControl, public IBorderControl { std::unique_ptr<render::ScrollRenderObject> scroll_render_object_; std::unique_ptr<render::TextRenderObject> text_render_object_; - std::unique_ptr<TextControlService<TextBox>> service_; + std::unique_ptr<TextHostControlService> service_; }; } // namespace cru::ui::controls |