Automatically open newly created script

This commit is contained in:
kobewi
2025-07-06 16:57:37 +02:00
parent eb3d6d8cd3
commit 19e3242eb0
4 changed files with 12 additions and 7 deletions

View File

@ -2746,6 +2746,10 @@ void FileSystemDock::_resource_created() {
EditorNode::get_singleton()->save_resource_as(Ref<Resource>(r), fpath);
}
void FileSystemDock::_script_or_shader_created(const Ref<Resource> &p_resource) {
EditorNode::get_singleton()->push_item(p_resource.ptr());
}
void FileSystemDock::_search_changed(const String &p_text, const Control *p_from) {
if (searched_tokens.is_empty()) {
// Register the uncollapsed paths before they change.
@ -4441,9 +4445,12 @@ FileSystemDock::FileSystemDock() {
make_script_dialog = memnew(ScriptCreateDialog);
make_script_dialog->set_title(TTRC("Create Script"));
add_child(make_script_dialog);
make_script_dialog->connect("script_created", callable_mp(this, &FileSystemDock::_script_or_shader_created));
make_shader_dialog = memnew(ShaderCreateDialog);
add_child(make_shader_dialog);
make_shader_dialog->connect("shader_created", callable_mp(this, &FileSystemDock::_script_or_shader_created));
make_shader_dialog->connect("shader_include_created", callable_mp(this, &FileSystemDock::_script_or_shader_created));
new_resource_dialog = memnew(CreateDialog);
add_child(new_resource_dialog);

View File

@ -313,6 +313,7 @@ private:
void _folder_removed(const String &p_folder);
void _resource_created();
void _script_or_shader_created(const Ref<Resource> &p_resource);
void _make_scene_confirm();
void _rename_operation_confirm();
void _duplicate_operation_confirm(const String &p_path);