diff options
author | Juan Linietsky <reduzio@gmail.com> | 2018-05-07 17:56:10 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-07 17:56:10 -0300 |
commit | 7b065a59fa1d413b4199bdd3e998cba717ebe90c (patch) | |
tree | 8bc3f9d886089ffee06ebdd76e6d32e63906234e | |
parent | 69a96ff4a627fabea2bc40ed27b973f202c44825 (diff) | |
parent | a826fb8d8b861efb0f7d14698148c5571687e082 (diff) |
Merge pull request #15911 from Zephilinox/ready_signal
Add ready signal to Node
-rw-r--r-- | doc/classes/Node.xml | 5 | ||||
-rw-r--r-- | scene/main/node.cpp | 3 | ||||
-rw-r--r-- | scene/scene_string_names.cpp | 1 | ||||
-rw-r--r-- | scene/scene_string_names.h | 1 |
4 files changed, 9 insertions, 1 deletions
diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml index 5d0f70bc59..d43885a9d9 100644 --- a/doc/classes/Node.xml +++ b/doc/classes/Node.xml @@ -780,6 +780,11 @@ </member> </members> <signals> + <signal name="ready"> + <description> + Emitted when the node is ready. + </description> + </signal> <signal name="renamed"> <description> Emitted when the node is renamed. diff --git a/scene/main/node.cpp b/scene/main/node.cpp index a1d79e7357..67ee246252 100644 --- a/scene/main/node.cpp +++ b/scene/main/node.cpp @@ -136,7 +136,6 @@ void Node::_notification(int p_notification) { get_script_instance()->call_multilevel_reversed(SceneStringNames::get_singleton()->_ready, NULL, 0); } - //emit_signal(SceneStringNames::get_singleton()->enter_tree); } break; case NOTIFICATION_POSTINITIALIZE: { @@ -180,6 +179,7 @@ void Node::_propagate_ready() { if (data.ready_first) { data.ready_first = false; notification(NOTIFICATION_READY); + emit_signal(SceneStringNames::get_singleton()->ready); } } @@ -2814,6 +2814,7 @@ void Node::_bind_methods() { BIND_ENUM_CONSTANT(DUPLICATE_SCRIPTS); BIND_ENUM_CONSTANT(DUPLICATE_USE_INSTANCING); + ADD_SIGNAL(MethodInfo("ready")); ADD_SIGNAL(MethodInfo("renamed")); ADD_SIGNAL(MethodInfo("tree_entered")); ADD_SIGNAL(MethodInfo("tree_exiting")); diff --git a/scene/scene_string_names.cpp b/scene/scene_string_names.cpp index fdce0eb2b6..2dc32b893d 100644 --- a/scene/scene_string_names.cpp +++ b/scene/scene_string_names.cpp @@ -51,6 +51,7 @@ SceneStringNames::SceneStringNames() { tree_entered = StaticCString::create("tree_entered"); tree_exiting = StaticCString::create("tree_exiting"); tree_exited = StaticCString::create("tree_exited"); + ready = StaticCString::create("ready"); item_rect_changed = StaticCString::create("item_rect_changed"); size_flags_changed = StaticCString::create("size_flags_changed"); minimum_size_changed = StaticCString::create("minimum_size_changed"); diff --git a/scene/scene_string_names.h b/scene/scene_string_names.h index 63a9a5db4d..2e6da26d68 100644 --- a/scene/scene_string_names.h +++ b/scene/scene_string_names.h @@ -71,6 +71,7 @@ public: StringName tree_entered; StringName tree_exiting; StringName tree_exited; + StringName ready; StringName size_flags_changed; StringName minimum_size_changed; StringName sleeping_state_changed; |