GeneralView::GeneralView(const Data::GeneralSettings& settings, QWidget *parent) : QWidget(parent) { QString sss = translationDir(); bool result = m_translator.load(QString("wmui_" + settings.m_appLang), translationDir()); if(result) { QApplication::installTranslator(&m_translator); } m_state = 0; m_parent = parent; m_diskStatusGroup = new QGroupBox(tr("Disk")); m_diskStatusLayout = new QGridLayout; m_statusLabel = new QLabel(tr("Disk status:")); m_statusValue = new QLabel(tr("<font color=\"red\"><b>Unmounted</b></font>")); m_statusValue->setTextFormat(Qt::RichText); m_diskStatusLayout->addWidget(m_statusLabel, 0,0); m_diskStatusLayout->addWidget(m_statusValue, 0,1); m_diskStatusGroup->setLayout(m_diskStatusLayout); m_mountButton = createButton(tr("Mount Disk"), SLOT(mountClicked())); m_unmountButton = createButton(tr("Unmount Disk"), SLOT(unmountClicked())); m_diskStatusLayout->addWidget(m_mountButton, 1, 0); m_diskStatusLayout->addWidget(m_unmountButton, 1, 1); m_unmountButton->setEnabled(false); m_mainLayout = new QVBoxLayout; m_mainLayout->addWidget(m_diskStatusGroup); m_mainLayout->addSpacing(12); m_mainLayout->addStretch(1); setLayout(m_mainLayout); }
Settings::Settings(QWidget *parent) : QWidget(parent, Qt::Window), ui(new Ui::Settings) { ui->setupUi(this); // ---------------------------------------------- #if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0) language = DBHandler::getInstance()->queryString("SELECT `parameter1` FROM `settings` WHERE `setting`='language'", 0, 0); QDir translationDir(TRANSLATIONS_DIRECOTRY); QStringList filters; filters << "*.qm"; translationDir.setNameFilters(filters); QStringList translationFiles = translationDir.entryList(); QString translationName; ui->comboBoxLanguage->blockSignals(true); foreach(translationName, translationFiles) { translationName.chop(3); QLocale nativTranslation(translationName); ui->comboBoxLanguage->addItem(nativTranslation.nativeLanguageName(),translationName); }
QMap<QString, QString> MythTranslation::getLanguages(void) { QMap<QString, QString> langs; QDir translationDir(GetTranslationsDir()); translationDir.setNameFilters(QStringList("mythfrontend_*.qm")); translationDir.setFilter(QDir::Files); QFileInfoList translationFiles = translationDir.entryInfoList(); QFileInfoList::const_iterator it; for (it = translationFiles.constBegin(); it != translationFiles.constEnd(); ++it) { // We write the names incorrectly as all lowercase, so fix this before // sending to QLocale QString languageCode = (*it).baseName().section('_', 1, 1); QString countryCode = (*it).baseName().section('_', 2, 2); if (!countryCode.isEmpty()) languageCode = QString("%1_%2").arg(languageCode) .arg(countryCode.toUpper()); MythLocale locale(languageCode); QString language = locale.GetNativeLanguage(); if (language.isEmpty()) language = locale.GetLanguage(); // Fall back to English if (!countryCode.isEmpty()) { QString country = locale.GetNativeCountry(); if (country.isEmpty()) country = locale.GetCountry(); // Fall back to English language.append(QString(" (%1)").arg(country)); } langs[languageCode] = language; } return langs; }