| 394 | } |
| 395 | |
| 396 | void frmOptions::readConfig(const QNapiConfig &config) { |
| 397 | #ifdef Q_OS_MAC |
| 398 | ui.cbShowDockIcon->setChecked(InfoPlistDockIcon::readShowDockIcon()); |
| 399 | #endif |
| 400 | |
| 401 | QString systemLang = QLocale::languageToString(QLocale::system().language()); |
| 402 | QString localizedSystemLang = QCoreApplication::translate( |
| 403 | "frmOptions", systemLang.toStdString().data()); |
| 404 | ui.cbUiLanguage->setItemText(0, |
| 405 | tr("Auto-detected based on system language (%1)") |
| 406 | .arg(localizedSystemLang)); |
| 407 | ui.cbUiLanguage->setCurrentIndex(ui.cbUiLanguage->findData( |
| 408 | config.generalConfig().uiLanguage(), Qt::UserRole, Qt::MatchStartsWith)); |
| 409 | |
| 410 | connect( |
| 411 | ui.cbUiLanguage, |
| 412 | static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), |
| 413 | [=]() { ui.lbUiLangChangeNotice->setVisible(true); }); |
| 414 | |
| 415 | ui.le7zPath->setText(config.generalConfig().p7zipPath()); |
| 416 | ui.leTmpPath->setText(config.generalConfig().tmpPath()); |
| 417 | ui.cbLang->setCurrentIndex(ui.cbLang->findData( |
| 418 | SubtitleLanguage(config.generalConfig().language()).toTwoLetter())); |
| 419 | ui.cbLangBackup->setCurrentIndex(ui.cbLangBackup->findData( |
| 420 | SubtitleLanguage(config.generalConfig().backupLanguage()).toTwoLetter())); |
| 421 | ui.cbNoBackup->setChecked(config.generalConfig().noBackup()); |
| 422 | ui.cbQuietBatch->setChecked(config.generalConfig().quietBatch()); |
| 423 | |
| 424 | ui.twEngines->clear(); |
| 425 | |
| 426 | QList<QPair<QString, bool> > engines = config.enabledEngines(); |
| 427 | ui.twEngines->setColumnCount(1); |
| 428 | ui.twEngines->setRowCount(engines.size()); |
| 429 | |
| 430 | for (int i = 0; i < engines.size(); ++i) { |
| 431 | QPair<QString, bool> e = engines.at(i); |
| 432 | QIcon engineIcon = |
| 433 | QIcon(QPixmap(enginesRegistry->enginePixmapData(e.first))); |
| 434 | QTableWidgetItem *item = new QTableWidgetItem(engineIcon, e.first); |
| 435 | item->setCheckState(e.second ? Qt::Checked : Qt::Unchecked); |
| 436 | ui.twEngines->setItem(i, 0, item); |
| 437 | } |
| 438 | |
| 439 | ui.twEngines->horizontalHeader()->hide(); |
| 440 | ui.twEngines->verticalHeader()->hide(); |
| 441 | ui.twEngines->verticalHeader()->setDefaultSectionSize(20); |
| 442 | ui.twEngines->verticalHeader()->setSectionResizeMode(QHeaderView::Fixed); |
| 443 | ui.twEngines->setColumnWidth(0, 300); |
| 444 | |
| 445 | ui.cbSearchPolicy->setCurrentIndex(config.generalConfig().searchPolicy()); |
| 446 | ui.cbDownloadPolicy->setCurrentIndex(config.generalConfig().downloadPolicy()); |
| 447 | |
| 448 | ui.cbEncodingMethod->setCurrentIndex( |
| 449 | config.postProcessingConfig().encodingChangeMethod()); |
| 450 | ui.cbAutoDetectEncoding->setChecked( |
| 451 | config.postProcessingConfig().encodingAutoDetectFrom()); |
| 452 | ui.cbEncFrom->setCurrentIndex( |
| 453 | ui.cbEncFrom->findText(config.postProcessingConfig().encodingFrom())); |
no test coverage detected