Repository: godotengine/godot
File: editor/scene_tree_dock.h (C/C++)

Code before:
		MODE_BIDI,
		MODE_DO,
		MODE_UNDO
	};

	void _node_replace_owner(Node *p_base, Node *p_node, Node *p_root, ReplaceOwnerMode p_mode = MODE_BIDI);
	void _node_strip_signal_inheritance(Node *p_node);
	void _load_request(const String &p_path);
	void _script_open_request(const Ref<Script> &p_script);
	void _push_item(Object *p_object);
	void _handle_select(Node *p_node);

	bool _cyclical_dependency_exists(const String &p_target_scene_path, Node *p_desired_node);
	bool _track_inherit(const String &p_target_scene_path, Node *p_desired_node);

	void _node_selected();
	void _node_renamed();
	void _script_created(Ref<Script> p_script);
	void _shader_created(Ref<Shader> p_shader);
	void _script_creation_closed();
	void _shader_creation_closed();

	void _delete_confirm(bool p_cut = false);
	void _delete_dialog_closed();

	void _toggle_editable_children_from_selection();
	void _toggle_editable_children(Node *p_node);

	void _toggle_placeholder_from_selection();

	void _node_prerenamed(Node *p_node, const String &p_new_name);

	void _nodes_drag_begin();
	virtual void input(const Ref<InputEvent> &p_event) override;
	virtual void shortcut_input(const Ref<InputEvent> &p_event) override;

	void _new_scene_from(String p_file);
	void _set_node_owner_recursive(Node *p_node, Node *p_owner, const HashMap<const Node *, Node *> &p_inverse_duplimap);

	bool _validate_no_foreign();
	bool _validate_no_instance();
	void _selection_changed();
	void _update_script_button();

	void _fill_path_renames(Vector<StringName> base_path, Vector<StringName> new_base_path, Node *p_node, HashMap<Node *, NodePath> *p_renames);
	bool _has_tracks_to_delete(Node *p_node, List<Node *> &p_to_delete) const;

	void _normalize_drop(Node *&to_node, int &to_pos, int p_type);

	void _nodes_dragged(Array p_nodes, NodePath p_to, int p_type);
	void _files_dropped(Vector<String> p_files, NodePath p_to, int p_type);

Review comment (suggestion):
```suggestion
	void _reparent_nodes_to_root(Node *p_root, const Array &p_nodes, Node *p_owner);
```

Code after:
		MODE_BIDI,
		MODE_DO,
		MODE_UNDO
	};

	void _node_replace_owner(Node *p_base, Node *p_node, Node *p_root, ReplaceOwnerMode p_mode = MODE_BIDI);
	void _node_strip_signal_inheritance(Node *p_node);
	void _load_request(const String &p_path);
	void _script_open_request(const Ref<Script> &p_script);
	void _push_item(Object *p_object);
	void _handle_select(Node *p_node);

	bool _cyclical_dependency_exists(const String &p_target_scene_path, Node *p_desired_node);
	bool _track_inherit(const String &p_target_scene_path, Node *p_desired_node);

	void _node_selected();
	void _node_renamed();
	void _script_created(Ref<Script> p_script);
	void _shader_created(Ref<Shader> p_shader);
	void _script_creation_closed();
	void _shader_creation_closed();

	void _delete_confirm(bool p_cut = false);
	void _delete_dialog_closed();

	void _toggle_editable_children_from_selection();

	void _reparent_nodes_to_root(Node *p_root, const Array &p_nodes, Node *p_owner);
	void _reparent_nodes_to_paths_with_transform_and_name(Node *p_root, const Array &p_nodes, const Array &p_paths, const Array &p_transforms, const Array &p_names, Node *p_owner);
	void _toggle_editable_children(Node *p_node);

	void _toggle_placeholder_from_selection();

	void _node_prerenamed(Node *p_node, const String &p_new_name);

	void _nodes_drag_begin();
	virtual void input(const Ref<InputEvent> &p_event) override;
	virtual void shortcut_input(const Ref<InputEvent> &p_event) override;

	void _new_scene_from(String p_file);
	void _set_node_owner_recursive(Node *p_node, Node *p_owner, const HashMap<const Node *, Node *> &p_inverse_duplimap);

	bool _validate_no_foreign();
	bool _validate_no_instance();
	void _selection_changed();
	void _update_script_button();

	void _fill_path_renames(Vector<StringName> base_path, Vector<StringName> new_base_path, Node *p_node, HashMap<Node *, NodePath> *p_renames);
	bool _has_tracks_to_delete(Node *p_node, List<Node *> &p_to_delete) const;

	void _normalize_drop(Node *&to_node, int &to_pos, int p_type);