summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFranklin Sobrinho <franklin_gs@hotmail.com>2015-11-28 13:05:39 -0300
committerFranklin Sobrinho <franklin_gs@hotmail.com>2015-11-28 13:05:39 -0300
commit43e1b879d02c53e2b4ef87fa6a42678dddca29b3 (patch)
tree0571e148221e75875ed30bfc4acd0e8c1385b7aa
parent274b17b63611ad678fc91ab06f264343914add39 (diff)
Add container automatic update when moving a child node
-rw-r--r--scene/gui/container.cpp8
-rw-r--r--scene/gui/container.h1
2 files changed, 9 insertions, 0 deletions
diff --git a/scene/gui/container.cpp b/scene/gui/container.cpp
index 6c74bc3977..8cdf4dd039 100644
--- a/scene/gui/container.cpp
+++ b/scene/gui/container.cpp
@@ -52,6 +52,14 @@ void Container::add_child_notify(Node *p_child) {
}
+void Container::move_child_notify(Node *p_child) {
+
+ if (!p_child->cast_to<Control>())
+ return;
+
+ queue_sort();
+}
+
void Container::remove_child_notify(Node *p_child) {
diff --git a/scene/gui/container.h b/scene/gui/container.h
index ba9bf2d60f..04d5d6ab36 100644
--- a/scene/gui/container.h
+++ b/scene/gui/container.h
@@ -42,6 +42,7 @@ protected:
void queue_sort();
virtual void add_child_notify(Node *p_child);
+ virtual void move_child_notify(Node *p_child);
virtual void remove_child_notify(Node *p_child);
void _notification(int p_what);