mirror of
https://github.com/godotengine/godot.git
synced 2024-11-24 13:12:42 +00:00
Merge pull request #90047 from ajreckof/fix-editing-exported-nodes-in-array-as-text
Fix editing exported nodes in array as text.
This commit is contained in:
commit
cd3c86d604
@ -2648,7 +2648,7 @@ Variant EditorPropertyNodePath::_get_cache_value(const StringName &p_prop, bool
|
||||
return Variant();
|
||||
}
|
||||
|
||||
void EditorPropertyNodePath::_node_selected(const NodePath &p_path) {
|
||||
void EditorPropertyNodePath::_node_selected(const NodePath &p_path, bool p_absolute) {
|
||||
NodePath path = p_path;
|
||||
Node *base_node = get_base_node();
|
||||
|
||||
@ -2658,7 +2658,7 @@ void EditorPropertyNodePath::_node_selected(const NodePath &p_path) {
|
||||
path = get_tree()->get_edited_scene_root()->get_path_to(to_node);
|
||||
}
|
||||
|
||||
if (base_node) { // for AnimationTrackKeyEdit
|
||||
if (p_absolute && base_node) { // for AnimationTrackKeyEdit
|
||||
path = base_node->get_path().rel_path_to(p_path);
|
||||
}
|
||||
|
||||
@ -2680,7 +2680,7 @@ void EditorPropertyNodePath::_node_assign() {
|
||||
scene_tree->get_scene_tree()->set_show_enabled_subscene(true);
|
||||
scene_tree->set_valid_types(valid_types);
|
||||
add_child(scene_tree);
|
||||
scene_tree->connect("selected", callable_mp(this, &EditorPropertyNodePath::_node_selected));
|
||||
scene_tree->connect("selected", callable_mp(this, &EditorPropertyNodePath::_node_selected).bind(true));
|
||||
}
|
||||
|
||||
Variant val = get_edited_property_value();
|
||||
@ -2748,7 +2748,7 @@ void EditorPropertyNodePath::_accept_text() {
|
||||
|
||||
void EditorPropertyNodePath::_text_submitted(const String &p_text) {
|
||||
NodePath np = p_text;
|
||||
emit_changed(get_edited_property(), np);
|
||||
_node_selected(np, false);
|
||||
edit->hide();
|
||||
assign->show();
|
||||
menu->show();
|
||||
|
@ -628,7 +628,7 @@ class EditorPropertyNodePath : public EditorProperty {
|
||||
bool editing_node = false;
|
||||
|
||||
Vector<StringName> valid_types;
|
||||
void _node_selected(const NodePath &p_path);
|
||||
void _node_selected(const NodePath &p_path, bool p_absolute = true);
|
||||
void _node_assign();
|
||||
Node *get_base_node();
|
||||
void _update_menu();
|
||||
|
Loading…
Reference in New Issue
Block a user