aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/render/BorderRenderObject.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/ui/render/BorderRenderObject.h')
-rw-r--r--include/cru/ui/render/BorderRenderObject.h24
1 files changed, 12 insertions, 12 deletions
diff --git a/include/cru/ui/render/BorderRenderObject.h b/include/cru/ui/render/BorderRenderObject.h
index d75a979f..1720d680 100644
--- a/include/cru/ui/render/BorderRenderObject.h
+++ b/include/cru/ui/render/BorderRenderObject.h
@@ -1,9 +1,7 @@
#pragma once
-#include <string_view>
-#include "../style/ApplyBorderStyleInfo.h"
#include "RenderObject.h"
-#include "cru/platform/GraphicsBase.h"
-#include "cru/ui/Base.h"
+
+#include "../style/ApplyBorderStyleInfo.h"
namespace cru::ui::render {
class CRU_UI_API BorderRenderObject : public RenderObject {
@@ -11,12 +9,13 @@ class CRU_UI_API BorderRenderObject : public RenderObject {
public:
BorderRenderObject();
- BorderRenderObject(const BorderRenderObject& other) = delete;
- BorderRenderObject(BorderRenderObject&& other) = delete;
- BorderRenderObject& operator=(const BorderRenderObject& other) = delete;
- BorderRenderObject& operator=(BorderRenderObject&& other) = delete;
+ CRU_DELETE_COPY(BorderRenderObject)
+ CRU_DELETE_MOVE(BorderRenderObject)
~BorderRenderObject() override;
+ RenderObject* GetChild() const { return child_; }
+ void SetChild(RenderObject* new_child);
+
bool IsBorderEnabled() const { return is_border_enabled_; }
void SetBorderEnabled(bool enabled) { is_border_enabled_ = enabled; }
@@ -69,26 +68,27 @@ class CRU_UI_API BorderRenderObject : public RenderObject {
void ApplyBorderStyle(const style::ApplyBorderStyleInfo& style);
RenderObject* HitTest(const Point& point) override;
+ void Draw(platform::graphics::IPainter* painter) override;
Thickness GetOuterSpaceThickness() const override;
Rect GetPaddingRect() const override;
Rect GetContentRect() const override;
- std::u16string_view GetName() const override { return u"BorderRenderObject"; }
+ String GetName() const override { return u"BorderRenderObject"; }
protected:
- void OnDrawCore(platform::graphics::IPainter* painter) override;
-
Size OnMeasureContent(const MeasureRequirement& requirement,
const MeasureSize& preferred_size) override;
void OnLayoutContent(const Rect& content_rect) override;
- void OnAfterLayout() override;
+ void OnResize(const Size& new_size) override;
private:
void RecreateGeometry();
private:
+ RenderObject* child_ = nullptr;
+
bool is_border_enabled_ = false;
std::shared_ptr<platform::graphics::IBrush> border_brush_;