You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

15 lines
718 B

/* Выбор языка интерфейса независимо от регионального формата дат и чисел. */
#pragma once
#include <QString>
#include <QStringList>
#include <QLocale>
inline QString resolveGuiLanguage(const QString& preference, const QStringList& systemLanguages = QLocale::system().uiLanguages()) {
if (preference == QStringLiteral("en") || preference == QStringLiteral("ru")) return preference;
for (const QString& language : systemLanguages) {
const QString code = language.section('-', 0, 0).section('_', 0, 0).toLower();
if (code == QStringLiteral("en") || code == QStringLiteral("ru")) return code;
}
return QStringLiteral("en");
}