Make editor use translation domains

How editor plugins use this feature:
1. Pick a unique translation domain name.
2. `_enter_tree()`: load translations into that translation domain.
3. Call `set_translation_domain()` for its root UI node.
4. `_exit_tree()`: remove that translation domain.

Plugins can also set the translation domain to `godot.editor` for
nested nodes that should use editor translations. `EditorFileDialog`
automatically does this.
This commit is contained in:
Haoyu Qiu
2024-08-16 22:19:14 +08:00
parent c5d147b9b5
commit 818acb4290
10 changed files with 38 additions and 125 deletions

View File

@@ -1210,6 +1210,8 @@ fail:
void EditorSettings::setup_language() {
String lang = get("interface/editor/editor_language");
TranslationServer::get_singleton()->set_locale(lang);
if (lang == "en") {
return; // Default, nothing to do.
}