diff options
Diffstat (limited to 'scene/gui/container.cpp')
-rw-r--r-- | scene/gui/container.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/scene/gui/container.cpp b/scene/gui/container.cpp index c6e66c95c6..625964c5e3 100644 --- a/scene/gui/container.cpp +++ b/scene/gui/container.cpp @@ -86,10 +86,10 @@ void Container::_sort_children() { } notification(NOTIFICATION_PRE_SORT_CHILDREN); - emit_signal(SceneStringNames::get_singleton()->pre_sort_children); + emit_signal(SceneStringName(pre_sort_children)); notification(NOTIFICATION_SORT_CHILDREN); - emit_signal(SceneStringNames::get_singleton()->sort_children); + emit_signal(SceneStringName(sort_children)); pending_sort = false; } @@ -141,6 +141,14 @@ void Container::queue_sort() { pending_sort = true; } +Control *Container::as_sortable_control(Node *p_node) const { + Control *c = Object::cast_to<Control>(p_node); + if (!c || !c->is_visible_in_tree() || c->is_set_as_top_level()) { + return nullptr; + } + return c; +} + Vector<int> Container::get_allowed_size_flags_horizontal() const { Vector<int> flags; if (GDVIRTUAL_CALL(_get_allowed_size_flags_horizontal, flags)) { |