From 24275a70b0f8f4ee1c1ff8abefa1445f25439f52 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Sun, 16 Nov 2025 14:21:01 +0100 Subject: [PATCH] Add explicit loading of language-specific resource bundles based on locale in app initialization, enhancing localization support for multiple languages. --- src/app.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/app.cpp b/src/app.cpp index fb21fb9..11def03 100644 --- a/src/app.cpp +++ b/src/app.cpp @@ -169,7 +169,33 @@ void App::initApp() { setTitle("YP Direct Chat"); setCssTheme(""); useStyleSheet("style.css"); + // Basis-Bundle (englisch) messageResourceBundle().use("../docroot/text"); + + // Sprachspezifische Bundles explizit nachladen, abhängig von der gesetzten Locale + auto locName = locale().name(); // z.B. "de_DE", "en_GB", "en_US", "ja_JP" + if (locName.rfind("de", 0) == 0) { + messageResourceBundle().use("../docroot/text_de_DE"); + } else if (locName == "en_US") { + messageResourceBundle().use("../docroot/text_en_US"); + } else if (locName.rfind("en", 0) == 0) { + messageResourceBundle().use("../docroot/text_en_GB"); + } else if (locName.rfind("fr", 0) == 0) { + messageResourceBundle().use("../docroot/text_fr_FR"); + } else if (locName.rfind("es", 0) == 0) { + messageResourceBundle().use("../docroot/text_es_ES"); + } else if (locName.rfind("it", 0) == 0) { + messageResourceBundle().use("../docroot/text_it_IT"); + } else if (locName.rfind("tl", 0) == 0 || locName.rfind("fil", 0) == 0) { + messageResourceBundle().use("../docroot/text_tl_PH"); + } else if (locName.rfind("ja", 0) == 0) { + messageResourceBundle().use("../docroot/text_ja_JP"); + } else if (locName.rfind("zh", 0) == 0) { + messageResourceBundle().use("../docroot/text_zh_CN"); + } else if (locName.rfind("th", 0) == 0) { + messageResourceBundle().use("../docroot/text_th_TH"); + } + internalPathChanged().connect(this, &App::onInternalPathChanged); }