Added scrollbars for lists and text fields. Added saving to the path settings for configuration files and the current language. Various UI improvements

This commit is contained in:
Yury Shuvakin
2022-08-28 16:32:07 +03:00
parent 4a0f78c247
commit 545977a4b7
18 changed files with 607 additions and 415 deletions

View File

@@ -5,6 +5,13 @@
#include <QQmlEngine>
#include <QLocale>
#include <QTimer>
#include <QSettings>
namespace
{
const QString settingsKey = "translator/currentLanguage";
}
Translator::Translator(QQmlEngine *engine, QObject *parent) :
QObject(parent),
@@ -34,17 +41,26 @@ Translator::Translator(QQmlEngine *engine, QObject *parent) :
QCoreApplication::installTranslator(mCurrentTranslator);
if (QLocale::system().language() == QLocale::Russian)
QSettings settings;
if (!settings.contains(::settingsKey))
{
setCurrentLanguage(Language::Russian);
}
else if (QLocale::system().language() == QLocale::Italian)
{
setCurrentLanguage(Language::Italian);
if (QLocale::system().language() == QLocale::Russian)
{
setCurrentLanguage(Language::Russian);
}
else if (QLocale::system().language() == QLocale::Italian)
{
setCurrentLanguage(Language::Italian);
}
else
{
setCurrentLanguage(Language::English);
}
}
else
{
setCurrentLanguage(Language::English);
setCurrentLanguage(static_cast<Language>(settings.value(::settingsKey).toInt()));
}
}
@@ -74,6 +90,8 @@ void Translator::setCurrentLanguage(Language language)
emit currentLanguageChanged();
emit currentLanguageNameChanged();
emit currentLanguageIconChanged();
QSettings().setValue(::settingsKey, static_cast<int>(mCurrentLanguage));
}
QString Translator::currentLanguageName() const