Don't save unchanged script upon closing

(cherry picked from commit 12f5a5a701)
This commit is contained in:
kobewi 2021-03-04 01:04:31 +01:00 committed by Rémi Verschelde
parent aabb8d78ef
commit bc56681b0b
2 changed files with 7 additions and 8 deletions

View file

@ -639,9 +639,8 @@ void ScriptEditor::_close_tab(int p_idx, bool p_save, bool p_history_back) {
_save_layout();
}
void ScriptEditor::_close_current_tab() {
_close_tab(tab_container->get_current_tab());
void ScriptEditor::_close_current_tab(bool p_save) {
_close_tab(tab_container->get_current_tab(), p_save);
}
void ScriptEditor::_close_discard_current_tab(const String &p_str) {
@ -692,7 +691,7 @@ void ScriptEditor::_close_other_tabs() {
}
}
_close_current_tab();
_close_current_tab(false);
}
}
@ -713,7 +712,7 @@ void ScriptEditor::_close_all_tabs() {
}
}
_close_current_tab();
_close_current_tab(false);
}
}
@ -1260,7 +1259,7 @@ void ScriptEditor::_menu_option(int p_option) {
if (current->is_unsaved()) {
_ask_close_current_unsaved_tab(current);
} else {
_close_current_tab();
_close_current_tab(false);
}
} break;
case FILE_COPY_PATH: {
@ -3467,7 +3466,7 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) {
erase_tab_confirm = memnew(ConfirmationDialog);
erase_tab_confirm->get_ok()->set_text(TTR("Save"));
erase_tab_confirm->add_button(TTR("Discard"), OS::get_singleton()->get_swap_ok_cancel(), "discard");
erase_tab_confirm->connect("confirmed", this, "_close_current_tab");
erase_tab_confirm->connect("confirmed", this, "_close_current_tab", varray(true));
erase_tab_confirm->connect("custom_action", this, "_close_discard_current_tab");
add_child(erase_tab_confirm);

View file

@ -293,7 +293,7 @@ class ScriptEditor : public PanelContainer {
void _close_tab(int p_idx, bool p_save = true, bool p_history_back = true);
void _close_current_tab();
void _close_current_tab(bool p_save = true);
void _close_discard_current_tab(const String &p_str);
void _close_docs_tab();
void _close_other_tabs();