You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
Merge pull request #103764 from kleonc/multi_node_edit_update_on_property_list_changed
Update `MultiNodeEdit` property list on edited nodes' property list changed
This commit is contained in:
@@ -219,8 +219,29 @@ bool MultiNodeEdit::_property_get_revert(const StringName &p_name, Variant &r_pr
|
||||
return false;
|
||||
}
|
||||
|
||||
void MultiNodeEdit::_queue_notify_property_list_changed() {
|
||||
if (notify_property_list_changed_pending) {
|
||||
return;
|
||||
}
|
||||
notify_property_list_changed_pending = true;
|
||||
callable_mp(this, &MultiNodeEdit::_notify_property_list_changed).call_deferred();
|
||||
}
|
||||
|
||||
void MultiNodeEdit::_notify_property_list_changed() {
|
||||
notify_property_list_changed_pending = false;
|
||||
notify_property_list_changed();
|
||||
}
|
||||
|
||||
void MultiNodeEdit::add_node(const NodePath &p_node) {
|
||||
nodes.push_back(p_node);
|
||||
|
||||
Node *es = EditorNode::get_singleton()->get_edited_scene();
|
||||
if (es) {
|
||||
Node *node = es->get_node_or_null(p_node);
|
||||
if (node) {
|
||||
node->connect(CoreStringName(property_list_changed), callable_mp(this, &MultiNodeEdit::_queue_notify_property_list_changed));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int MultiNodeEdit::get_node_count() const {
|
||||
|
||||
Reference in New Issue
Block a user