#include "designersettingmanager.h" #include DesignerSettingManager::DesignerSettingManager(QObject *parent) : QObject(parent) { m_setting = new QSettings("LimeReport",QCoreApplication::applicationName()); } DesignerSettingManager::~DesignerSettingManager() { delete m_setting; } void DesignerSettingManager::getAvailableLanguages(QList* languages) { languages->append(QLocale::Russian); languages->append(QLocale::English); // languages->append(QLocale::Arabic); languages->append(QLocale::French); languages->append(QLocale::Chinese); languages->append(QLocale::Spanish); languages->append(QLocale::Polish); } QLocale::Language DesignerSettingManager::getCurrentDefaultLanguage() { m_setting->beginGroup("ReportDesigner"); QVariant v = m_setting->value("DesignerLanguage"); m_setting->endGroup(); if (v.isValid()){ return static_cast(v.toInt()) ; } else { return QLocale::system().language(); } } void DesignerSettingManager::currentDefaultLanguageChanged(QLocale::Language language) { QMessageBox::information(0, tr("Warning") , tr("The language will change after the application is restarted")); m_setting->beginGroup("ReportDesigner"); m_setting->setValue("DesignerLanguage", (int)language); m_setting->endGroup(); }