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

Improve save handling for built-in scripts

This commit is contained in:
kobewi
2021-12-04 01:12:52 +01:00
parent ade0e700f1
commit f899b76747
6 changed files with 94 additions and 45 deletions

View File

@@ -150,15 +150,21 @@ void TextEditor::_load_theme_settings() {
String TextEditor::get_name() {
String name;
if (text_file->get_path().find("local://") == -1 && text_file->get_path().find("::") == -1) {
name = text_file->get_path().get_file();
if (is_unsaved()) {
name += "(*)";
name = text_file->get_path().get_file();
if (name.empty()) {
// This appears for newly created built-in text_files before saving the scene.
name = TTR("[unsaved]");
} else if (text_file->get_path().find("local://") == -1 && text_file->get_path().find("::") == -1) {
const String &text_file_name = text_file->get_name();
if (text_file_name != "") {
// If the built-in text_file has a custom resource name defined,
// display the built-in text_file name as follows: `ResourceName (scene_file.tscn)`
name = vformat("%s (%s)", text_file_name, name.get_slice("::", 0));
}
} else if (text_file->get_name() != "") {
name = text_file->get_name();
} else {
name = text_file->get_class() + "(" + itos(text_file->get_instance_id()) + ")";
}
if (is_unsaved()) {
name += "(*)";
}
return name;