diff --git a/settingsdialog/qtsettings.cpp b/settingsdialog/qtsettings.cpp index 5b6d487..2ca52d8 100644 --- a/settingsdialog/qtsettings.cpp +++ b/settingsdialog/qtsettings.cpp @@ -50,6 +50,7 @@ struct QtSettingsData { QString iconTheme; QString initialIconTheme; QLocale defaultLocale; + QLocale previousLocale; QString localeName; QString previousPluginDirectory; QString additionalPluginDirectory; @@ -319,6 +320,7 @@ void QtSettings::apply() } // apply locale + m_d->previousLocale = QLocale(); QLocale::setDefault(m_d->customLocale ? QLocale(m_d->localeName) : m_d->defaultLocale); } @@ -355,6 +357,14 @@ bool QtSettings::isPaletteDark() return m_d->isPaletteDark; } +/*! + * \brief Returns whether the last apply() call has changed the default locale. + */ +bool QtSettings::hasLocaleChanged() const +{ + return m_d->previousLocale != QLocale(); +} + /*! * \brief Returns a new OptionCatecory containing all Qt related option pages. * \remarks diff --git a/settingsdialog/qtsettings.h b/settingsdialog/qtsettings.h index 3946a33..71a0e35 100644 --- a/settingsdialog/qtsettings.h +++ b/settingsdialog/qtsettings.h @@ -53,6 +53,7 @@ public: void reevaluatePaletteAndDefaultIconTheme(); bool isPaletteDark(); bool hasCustomFont() const; + bool hasLocaleChanged() const; operator QtSettingsData &() const; OptionCategory *category();