From f1da8e06253748887ae769845a6e605d56d5789b Mon Sep 17 00:00:00 2001 From: 杨宇千 Date: Mon, 16 Sep 2019 21:45:01 +0800 Subject: ... --- src/ui/render/render_object.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/ui/render/render_object.cpp') diff --git a/src/ui/render/render_object.cpp b/src/ui/render/render_object.cpp index a083403b..dcd2f0b9 100644 --- a/src/ui/render/render_object.cpp +++ b/src/ui/render/render_object.cpp @@ -7,6 +7,9 @@ namespace cru::ui::render { void RenderObject::AddChild(RenderObject* render_object, const int position) { + assert(child_mode_ == ChildMode::None); + assert(child_mode_ == ChildMode::Single && children_.size() > 0); + assert(render_object->GetParent() == nullptr); // Render object already has a parent. assert(position >= 0); // Position index is less than 0. @@ -41,9 +44,15 @@ void RenderObject::Layout(const Rect& rect) { void RenderObject::OnParentChanged(RenderObject* old_parent, RenderObject* new_parent) {} -void RenderObject::OnAddChild(RenderObject* new_child, int position) {} +void RenderObject::OnAddChild(RenderObject* new_child, int position) { + InvalidateLayout(); + InvalidatePaint(); +} -void RenderObject::OnRemoveChild(RenderObject* removed_child, int position) {} +void RenderObject::OnRemoveChild(RenderObject* removed_child, int position) { + InvalidateLayout(); + InvalidatePaint(); +} void RenderObject::OnSizeChanged(const Size& old_size, const Size& new_size) {} -- cgit v1.2.3