Index: sources/storage/Settings.h =================================================================== diff -u -ra75bc5b80ad4ebde50f028b550cd534e589bd059 -ra522e6aa7a36ac696a9a956200e89d838f319e25 --- sources/storage/Settings.h (.../Settings.h) (revision a75bc5b80ad4ebde50f028b550cd534e589bd059) +++ sources/storage/Settings.h (.../Settings.h) (revision a522e6aa7a36ac696a9a956200e89d838f319e25) @@ -18,6 +18,7 @@ #include #include #include +#include // Project #include "main.h" // Doxygen : do not remove @@ -39,6 +40,7 @@ class Settings { +private: // Settings const char *_config_attribute_tag = "#--"; const char *_duplicate_key_on = "duplicate_key_on"; @@ -47,6 +49,8 @@ const char *_settingsFormat = "%1/%2.%3"; const char *_settingsLocalSeparator = "_"; + QTranslator _translator; + struct Detail { QString category; QString location; @@ -69,6 +73,7 @@ eError_No_SettingsFolder , eError_No_SettingsFile , eError_SettingNotExists , + eError_No_SettingsLocale , }; private: const QHash settingsError_Message { // no translation for the error. My experience shows the error messages if translated is not useful for serviceability and debugging. @@ -84,6 +89,7 @@ { eError_No_SettingsFolder , "No settings folder in the %1 path found." }, { eError_No_SettingsFile , "No settings file in the %1 folder found." }, { eError_SettingNotExists , "The setting file %1 doesn't exists." }, + { eError_No_SettingsLocale , "The system locale no defined." }, }; public: const QString errorMessage(int vErr, QString vArg1 = "", QString vArg2 = "") { @@ -108,6 +114,7 @@ bool parse(const Detail &vDetail); + public: Settings() {} @@ -139,6 +146,7 @@ int saveSystem (const QString &vGroup, const QString &vKey, const QString &vValue); int configurationsMove (QString *vMessage = nullptr, bool vIsUpdate = false); int configurationsPOST (Location_Enum vLoc = Location_Enum::eSecured) { Q_UNUSED(vLoc); return true; } + int loadTranslation (); static QString category(Category_Enum vCategory) { switch (vCategory) { // NOTE: don't use default case