diff --git a/doc/classes/EditorInterface.xml b/doc/classes/EditorInterface.xml index 4d0e11fb19e..a5328ce382e 100644 --- a/doc/classes/EditorInterface.xml +++ b/doc/classes/EditorInterface.xml @@ -10,6 +10,15 @@ + + + + + + + Edits the given [Node]. The node will be also selected if it's inside the scene tree. + + diff --git a/doc/classes/EditorSelection.xml b/doc/classes/EditorSelection.xml index 1ff9744b701..63e89750c37 100644 --- a/doc/classes/EditorSelection.xml +++ b/doc/classes/EditorSelection.xml @@ -17,6 +17,7 @@ Adds a node to the selection. + [b]Note:[/b] The newly selected node will not be automatically edited in the inspector. If you want to edit a node, use [method EditorInterface.edit_node]. diff --git a/editor/editor_plugin.cpp b/editor/editor_plugin.cpp index 064271fce84..eabcbacd9a9 100644 --- a/editor/editor_plugin.cpp +++ b/editor/editor_plugin.cpp @@ -160,6 +160,10 @@ void EditorInterface::edit_resource(const Ref &p_resource) { EditorNode::get_singleton()->edit_resource(p_resource); } +void EditorInterface::edit_node(Node *p_node) { + EditorNode::get_singleton()->edit_node(p_node); +} + void EditorInterface::open_scene_from_path(const String &scene_path) { if (EditorNode::get_singleton()->is_changing_scene()) { return; @@ -312,6 +316,7 @@ void EditorInterface::_bind_methods() { ClassDB::bind_method(D_METHOD("get_base_control"), &EditorInterface::get_base_control); ClassDB::bind_method(D_METHOD("get_editor_scale"), &EditorInterface::get_editor_scale); ClassDB::bind_method(D_METHOD("edit_resource", "resource"), &EditorInterface::edit_resource); + ClassDB::bind_method(D_METHOD("edit_node", "node"), &EditorInterface::edit_node); ClassDB::bind_method(D_METHOD("open_scene_from_path", "scene_filepath"), &EditorInterface::open_scene_from_path); ClassDB::bind_method(D_METHOD("reload_scene_from_path", "scene_filepath"), &EditorInterface::reload_scene_from_path); ClassDB::bind_method(D_METHOD("play_main_scene"), &EditorInterface::play_main_scene); diff --git a/editor/editor_plugin.h b/editor/editor_plugin.h index b0713c641b9..67b163eabf0 100644 --- a/editor/editor_plugin.h +++ b/editor/editor_plugin.h @@ -71,6 +71,7 @@ public: Control *get_editor_main_control(); void edit_resource(const Ref &p_resource); + void edit_node(Node *p_node); void open_scene_from_path(const String &scene_path); void reload_scene_from_path(const String &scene_path);