diff options
author | crupest <crupest@outlook.com> | 2019-03-24 19:06:17 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2019-03-24 19:06:17 +0800 |
commit | 79d1d76509dbf6cf9c79f8eb55968535982975aa (patch) | |
tree | 322ed87621506f2e56f4887c73370db769843a29 /src/ui/render/border_render_object.hpp | |
parent | e8be3841457853daefc26d0ca00256ad8c44f593 (diff) | |
download | cru-79d1d76509dbf6cf9c79f8eb55968535982975aa.tar.gz cru-79d1d76509dbf6cf9c79f8eb55968535982975aa.tar.bz2 cru-79d1d76509dbf6cf9c79f8eb55968535982975aa.zip |
...
Diffstat (limited to 'src/ui/render/border_render_object.hpp')
-rw-r--r-- | src/ui/render/border_render_object.hpp | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/ui/render/border_render_object.hpp b/src/ui/render/border_render_object.hpp index d6effc21..eccb1219 100644 --- a/src/ui/render/border_render_object.hpp +++ b/src/ui/render/border_render_object.hpp @@ -28,20 +28,18 @@ struct CornerRadius { class BorderRenderObject : public RenderObject { public: - explicit BorderRenderObject(Microsoft::WRL::ComPtr<ID2D1Brush> brush); + explicit BorderRenderObject(ID2D1Brush* brush); BorderRenderObject(const BorderRenderObject& other) = delete; BorderRenderObject(BorderRenderObject&& other) = delete; BorderRenderObject& operator=(const BorderRenderObject& other) = delete; BorderRenderObject& operator=(BorderRenderObject&& other) = delete; - ~BorderRenderObject() override = default; + ~BorderRenderObject() override; bool IsEnabled() const { return is_enabled_; } void SetEnabled(bool enabled) { is_enabled_ = enabled; } - Microsoft::WRL::ComPtr<ID2D1Brush> GetBrush() const { return border_brush_; } - void SetBrush(const Microsoft::WRL::ComPtr<ID2D1Brush> new_brush) { - border_brush_ = std::move(new_brush); - } + ID2D1Brush* GetBrush() const { return border_brush_; } + void SetBrush(ID2D1Brush* new_brush); Thickness GetBorderWidth() const { return border_thickness_; } void SetBorderWidth(const Thickness& thickness) { border_thickness_ = thickness; } @@ -51,11 +49,11 @@ class BorderRenderObject : public RenderObject { corner_radius_ = new_corner_radius; } - void RecreateGeometry(); // TODO + void RecreateGeometry(); - void Draw(ID2D1RenderTarget* render_target) override; // TODO + void Draw(ID2D1RenderTarget* render_target) override; - RenderObject* HitTest(const Point& point) override; // TODO + RenderObject* HitTest(const Point& point) override; protected: void OnAddChild(RenderObject* new_child, int position) override; @@ -73,11 +71,11 @@ class BorderRenderObject : public RenderObject { private: bool is_enabled_ = false; - Microsoft::WRL::ComPtr<ID2D1Brush> border_brush_; + ID2D1Brush* border_brush_ = nullptr; Thickness border_thickness_ = Thickness::Zero(); CornerRadius corner_radius_{}; - Microsoft::WRL::ComPtr<ID2D1Geometry> geometry_{nullptr}; - Microsoft::WRL::ComPtr<ID2D1Geometry> border_outer_geometry_{nullptr}; + ID2D1Geometry* geometry_ = nullptr; + ID2D1Geometry* border_outer_geometry_ = nullptr; }; } // namespace cru::ui::render |