Merge pull request #54653 from KoBeWi/built_in_scripts_deserved_that

Improve save handling for built-in scripts
This commit is contained in:
Rémi Verschelde 2021-11-09 21:46:58 +01:00 committed by GitHub
commit e3f3fc517a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 93 additions and 54 deletions

View file

@ -2587,18 +2587,21 @@ void VisualScriptEditor::reload_text() {
String VisualScriptEditor::get_name() {
String name;
if (!script->is_built_in()) {
name = script->get_path().get_file();
if (is_unsaved()) {
if (script->get_path().is_empty()) {
name = TTR("[unsaved]");
}
name += "(*)";
name = script->get_path().get_file();
if (name.is_empty()) {
// This appears for newly created built-in scripts before saving the scene.
name = TTR("[unsaved]");
} else if (script->is_built_in()) {
const String &script_name = script->get_name();
if (script_name != "") {
// If the built-in script has a custom resource name defined,
// display the built-in script name as follows: `ResourceName (scene_file.tscn)`
name = vformat("%s (%s)", script_name, name.get_slice("::", 0));
}
} else if (script->get_name() != "") {
name = script->get_name();
} else {
name = script->get_class() + "(" + itos(script->get_instance_id()) + ")";
}
if (is_unsaved()) {
name += "(*)";
}
return name;