1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-05 12:10:55 +00:00

Remember state of built-in script/shader checkbox

This commit is contained in:
kobewi
2024-12-13 20:43:10 +01:00
parent 45fc515ae3
commit ad9b66100e
2 changed files with 17 additions and 0 deletions

View File

@@ -204,6 +204,11 @@ void ScriptCreateDialog::config(const String &p_base_name, const String &p_base_
load_enabled = p_load_enabled; load_enabled = p_load_enabled;
_language_changed(language_menu->get_selected()); _language_changed(language_menu->get_selected());
if (_can_be_built_in()) {
built_in->set_pressed(EditorSettings::get_singleton()->get_project_metadata("script_setup", "create_built_in_script", false));
_built_in_pressed();
}
} }
void ScriptCreateDialog::set_inheritance_base_type(const String &p_base) { void ScriptCreateDialog::set_inheritance_base_type(const String &p_base) {
@@ -344,6 +349,10 @@ void ScriptCreateDialog::_template_changed(int p_template) {
void ScriptCreateDialog::ok_pressed() { void ScriptCreateDialog::ok_pressed() {
if (is_new_script_created) { if (is_new_script_created) {
_create_new(); _create_new();
if (_can_be_built_in()) {
// Only save state of built-in checkbox if it's enabled.
EditorSettings::get_singleton()->set_project_metadata("script_setup", "create_built_in_script", built_in->is_pressed());
}
} else { } else {
_load_exist(); _load_exist();
} }

View File

@@ -130,6 +130,10 @@ void ShaderCreateDialog::_template_changed(int p_template) {
void ShaderCreateDialog::ok_pressed() { void ShaderCreateDialog::ok_pressed() {
if (is_new_shader_created) { if (is_new_shader_created) {
_create_new(); _create_new();
if (built_in_enabled) {
// Only save state of built-in checkbox if it's enabled.
EditorSettings::get_singleton()->set_project_metadata("shader_setup", "create_built_in_shader", internal->is_pressed());
}
} else { } else {
_load_exist(); _load_exist();
} }
@@ -409,6 +413,10 @@ void ShaderCreateDialog::config(const String &p_base_path, bool p_built_in_enabl
built_in_enabled = p_built_in_enabled; built_in_enabled = p_built_in_enabled;
load_enabled = p_load_enabled; load_enabled = p_load_enabled;
if (built_in_enabled) {
internal->set_pressed(EditorSettings::get_singleton()->get_project_metadata("shader_setup", "create_built_in_shader", false));
}
if (p_preferred_type > -1) { if (p_preferred_type > -1) {
type_menu->select(p_preferred_type); type_menu->select(p_preferred_type);
_type_changed(p_preferred_type); _type_changed(p_preferred_type);