From f75ab0bd662c73d15057d746347d09bf94a992a6 Mon Sep 17 00:00:00 2001 From: crupest Date: Wed, 16 Feb 2022 22:42:34 +0800 Subject: ... --- src/ui/render/RenderObject.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/ui/render/RenderObject.cpp') diff --git a/src/ui/render/RenderObject.cpp b/src/ui/render/RenderObject.cpp index 67bbae12..6c09ce99 100644 --- a/src/ui/render/RenderObject.cpp +++ b/src/ui/render/RenderObject.cpp @@ -6,6 +6,19 @@ #include "cru/ui/host/WindowHost.h" namespace cru::ui::render { + +void RenderObject::SetParent(RenderObject* new_parent) { +#ifdef CRU_DEBUG + // In case there is a cycle. + auto parent = new_parent; + while (parent) { + assert(parent != this); + parent = parent->GetParent(); + } +#endif + parent_ = new_parent; +} + void RenderObject::SetAttachedControl(controls::Control* new_control) { auto old_control = control_; control_ = new_control; -- cgit v1.2.3