aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/translations.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2023-04-30 18:31:18 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2023-04-30 18:31:18 -0400
commit4de57f628bc74f00ba1885e91c84ea07c5405d8f (patch)
tree5d91900751e826d491ff1b2ebc571a787e84f864 /SQLiteStudio3/coreSQLiteStudio/translations.cpp
parent74d881cefa9097e58e129e37b9c44d680d8c7dfe (diff)
parent3565aad630864ecdbe53fdaa501ea708555b3c7c (diff)
Update upstream source from tag 'upstream/3.4.4+dfsg'
Update to upstream version '3.4.4+dfsg' with Debian dir 482614bd23f0ef52dabc9803477204ad88e917ed
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/translations.cpp')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/translations.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/translations.cpp b/SQLiteStudio3/coreSQLiteStudio/translations.cpp
index dc53395..72883b7 100644
--- a/SQLiteStudio3/coreSQLiteStudio/translations.cpp
+++ b/SQLiteStudio3/coreSQLiteStudio/translations.cpp
@@ -22,10 +22,10 @@ void loadTranslation(const QString& baseName)
QStringList filters = QStringList({baseName+"_"+lang+".qm"});
QDir dir;
- for (const QString& dirPath : SQLITESTUDIO_TRANSLATION_DIRS)
+ for (QString& dirPath : SQLITESTUDIO_TRANSLATION_DIRS)
{
dir.setPath(dirPath);
- for (const QString& f : dir.entryList(filters))
+ for (QString& f : dir.entryList(filters))
{
res = translator->load(f, dirPath);
if (res)
@@ -40,7 +40,10 @@ void loadTranslation(const QString& baseName)
}
if (!res)
+ {
+ delete translator;
return;
+ }
qApp->installTranslator(translator);
SQLITESTUDIO_TRANSLATIONS[baseName] = translator;
@@ -66,15 +69,15 @@ void loadTranslations(const QStringList& baseNames)
QStringList getAvailableTranslations()
{
+ static QRegularExpression re("[^\\_]+\\_(\\w+)\\.qm");
QSet<QString> locales;
- QRegularExpression re("[^\\_]+\\_(\\w+)\\.qm");
QRegularExpressionMatch match;
QDir dir;
QStringList filters = QStringList({"*_*.qm"});
- for (const QString& dirPath : SQLITESTUDIO_TRANSLATION_DIRS)
+ for (QString& dirPath : SQLITESTUDIO_TRANSLATION_DIRS)
{
dir.setPath(dirPath);
- for (const QString& f : dir.entryList(filters))
+ for (QString& f : dir.entryList(filters))
{
match = re.match(f);
if (!match.isValid())
@@ -85,6 +88,10 @@ QStringList getAvailableTranslations()
}
locales << "en";
+ // #4278 - the en_us translation as explicit qm file is unnecessary,
+ // but produced by CrowdIn. The "en" is default and used for American English.
+ locales.remove("en_us");
+
return locales.values();
}
@@ -114,5 +121,5 @@ void setDefaultLanguage(const QString& lang)
QString getConfigLanguageDefault()
{
- return CFG_CORE.General.Language.getDefultValue().toString();
+ return CFG_CORE.General.Language.getDefaultValue().toString();
}