diff --git a/companion/src/apppreferencesdialog.cpp b/companion/src/apppreferencesdialog.cpp index 724dd547b..362d84c9e 100644 --- a/companion/src/apppreferencesdialog.cpp +++ b/companion/src/apppreferencesdialog.cpp @@ -11,34 +11,22 @@ #include #include -appPreferencesDialog::appPreferencesDialog(QWidget *parent) : +AppPreferencesDialog::AppPreferencesDialog(QWidget *parent) : QDialog(parent), - ui(new Ui::appPreferencesDialog) + ui(new Ui::AppPreferencesDialog) { ui->setupUi(this); updateLock=false; setWindowIcon(CompanionIcon("apppreferences.png")); - QCheckBox * OptionCheckBox[]= { - ui->optionCheckBox_1, ui->optionCheckBox_2, ui->optionCheckBox_3, ui->optionCheckBox_4, ui->optionCheckBox_5, ui->optionCheckBox_6, ui->optionCheckBox_7, - ui->optionCheckBox_8, ui->optionCheckBox_9, ui->optionCheckBox_10, ui->optionCheckBox_11, ui->optionCheckBox_12, ui->optionCheckBox_13, ui->optionCheckBox_14, - ui->optionCheckBox_15,ui->optionCheckBox_16, ui->optionCheckBox_17, ui->optionCheckBox_18, ui->optionCheckBox_19, ui->optionCheckBox_20, ui->optionCheckBox_21, - ui->optionCheckBox_22, ui->optionCheckBox_23, ui->optionCheckBox_24, ui->optionCheckBox_25, ui->optionCheckBox_26, ui->optionCheckBox_27, ui->optionCheckBox_28, - ui->optionCheckBox_29, ui->optionCheckBox_30, ui->optionCheckBox_31, ui->optionCheckBox_32, ui->optionCheckBox_33, ui->optionCheckBox_34, ui->optionCheckBox_35, - ui->optionCheckBox_36, ui->optionCheckBox_37, ui->optionCheckBox_38, ui->optionCheckBox_39, ui->optionCheckBox_40, ui->optionCheckBox_41, ui->optionCheckBox_42, - NULL }; voice=NULL; connect(ui->langCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(firmwareLangChanged())); connect(ui->voiceCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(firmwareLangChanged())); - for (int i=0; OptionCheckBox[i]; i++) { - optionsCheckBoxes.push_back(OptionCheckBox[i]); - connect(OptionCheckBox[i], SIGNAL(toggled(bool)), this, SLOT(firmwareOptionChanged(bool))); - } - initSettings(); connect(ui->downloadVerCB, SIGNAL(currentIndexChanged(int)), this, SLOT(baseFirmwareChanged())); connect(this, SIGNAL(accepted()), this, SLOT(writeValues())); + #ifndef JOYSTICKS ui->joystickCB->hide(); ui->joystickCB->setDisabled(true); @@ -46,15 +34,16 @@ appPreferencesDialog::appPreferencesDialog(QWidget *parent) : ui->joystickChkB->hide(); ui->label_11->hide(); #endif + shrink(); } -appPreferencesDialog::~appPreferencesDialog() +AppPreferencesDialog::~AppPreferencesDialog() { delete ui; } -void appPreferencesDialog::writeValues() +void AppPreferencesDialog::writeValues() { g.autoCheckApp(ui->startupCheck_companion9x->isChecked()); g.autoCheckFw(ui->startupCheck_fw->isChecked()); @@ -92,15 +81,14 @@ void appPreferencesDialog::writeValues() // If a new fw type has been choosen, several things need to reset g.cpuId( ui->CPU_ID_LE->text() ); current_firmware_variant = getFirmwareVariant(); - if ( g.profile[g.id()].fwType() != current_firmware_variant.id) - { + if (g.profile[g.id()].fwType() != current_firmware_variant.id) { g.profile[g.id()].fwName(""); g.profile[g.id()].initFwVariables(); g.profile[g.id()].fwType( current_firmware_variant.id ); } } -void appPreferencesDialog::on_snapshotPathButton_clicked() +void AppPreferencesDialog::on_snapshotPathButton_clicked() { QString fileName = QFileDialog::getExistingDirectory(this,tr("Select your snapshot folder"), g.snapshotDir()); if (!fileName.isEmpty()) { @@ -110,7 +98,7 @@ void appPreferencesDialog::on_snapshotPathButton_clicked() } } -void appPreferencesDialog::initSettings() +void AppPreferencesDialog::initSettings() { ui->snapshotClipboardCKB->setChecked(g.snapToClpbrd()); ui->burnFirmware->setChecked(g.profile[g.id()].burnFirmware()); @@ -126,8 +114,10 @@ void appPreferencesDialog::initSettings() ui->showSplash->setChecked(g.showSplash()); ui->historySize->setValue(g.historySize()); ui->backLightColor->setCurrentIndex(g.backLight()); - if (getRadioType(g.profile[g.id()].fwType())==6) // TODO - NOT AT ALL OK. THERE SHOULD BE A COMMON RADIO DEFINITION. + + if (IS_TARANIS(GetCurrentFirmware()->getBoard())) ui->backLightColor->setEnabled(false); + ui->simuSW->setChecked(g.simuSW()); ui->modelWizard_CB->setChecked(g.useWizard()); ui->libraryPath->setText(g.libDir()); @@ -198,9 +188,9 @@ void appPreferencesDialog::initSettings() ui->CPU_ID_LE->setText(g.cpuId()); - FirmwareInfo * current_firmware = GetCurrentFirmware(); + FirmwareInterface * current_firmware = GetCurrentFirmware(); - foreach(FirmwareInfo * firmware, firmwares) { + foreach(FirmwareInterface * firmware, firmwares) { ui->downloadVerCB->addItem(firmware->name, firmware->id); if (current_firmware == firmware) { ui->downloadVerCB->setCurrentIndex(ui->downloadVerCB->count() - 1); @@ -211,8 +201,7 @@ void appPreferencesDialog::initSettings() firmwareChanged(); } - -void appPreferencesDialog::on_libraryPathButton_clicked() +void AppPreferencesDialog::on_libraryPathButton_clicked() { QString fileName = QFileDialog::getExistingDirectory(this,tr("Select your library folder"), g.libDir()); if (!fileName.isEmpty()) { @@ -221,13 +210,14 @@ void appPreferencesDialog::on_libraryPathButton_clicked() } } -void appPreferencesDialog::on_snapshotClipboardCKB_clicked() +void AppPreferencesDialog::on_snapshotClipboardCKB_clicked() { if (ui->snapshotClipboardCKB->isChecked()) { ui->snapshotPath->setDisabled(true); ui->snapshotPathButton->setDisabled(true); g.snapToClpbrd(true); - } else { + } + else { ui->snapshotPath->setEnabled(true); ui->snapshotPath->setReadOnly(true); ui->snapshotPathButton->setEnabled(true); @@ -235,7 +225,7 @@ void appPreferencesDialog::on_snapshotClipboardCKB_clicked() } } -void appPreferencesDialog::on_backupPathButton_clicked() +void AppPreferencesDialog::on_backupPathButton_clicked() { QString fileName = QFileDialog::getExistingDirectory(this,tr("Select your Models and Settings backup folder"), g.backupDir()); if (!fileName.isEmpty()) { @@ -245,7 +235,7 @@ void appPreferencesDialog::on_backupPathButton_clicked() ui->backupEnable->setEnabled(true); } -void appPreferencesDialog::on_ge_pathButton_clicked() +void AppPreferencesDialog::on_ge_pathButton_clicked() { QString fileName = QFileDialog::getOpenFileName(this, tr("Select Google Earth executable"),ui->ge_lineedit->text()); if (!fileName.isEmpty()) { @@ -254,7 +244,7 @@ void appPreferencesDialog::on_ge_pathButton_clicked() } #ifdef JOYSTICKS -void appPreferencesDialog::on_joystickChkB_clicked() { +void AppPreferencesDialog::on_joystickChkB_clicked() { if (ui->joystickChkB->isChecked()) { QStringList joystickNames; joystickNames << tr("No joysticks found"); @@ -280,7 +270,7 @@ void appPreferencesDialog::on_joystickChkB_clicked() { } } -void appPreferencesDialog::on_joystickcalButton_clicked() { +void AppPreferencesDialog::on_joystickcalButton_clicked() { joystickDialog * jd=new joystickDialog(this, ui->joystickCB->currentIndex()); jd->exec(); } @@ -288,7 +278,7 @@ void appPreferencesDialog::on_joystickcalButton_clicked() { // ******** Profile tab functions -void appPreferencesDialog::on_sdPathButton_clicked() +void AppPreferencesDialog::on_sdPathButton_clicked() { QString fileName = QFileDialog::getExistingDirectory(this,tr("Select the folder replicating your SD structure"), g.profile[g.id()].sdPath()); if (!fileName.isEmpty()) { @@ -296,12 +286,12 @@ void appPreferencesDialog::on_sdPathButton_clicked() } } -void appPreferencesDialog::on_removeProfileButton_clicked() +void AppPreferencesDialog::on_removeProfileButton_clicked() { - if ( g.id() == 0 ) + if ( g.id() == 0 ) { QMessageBox::information(this, tr("Not possible to remove profile"), tr("The default profile can not be removed.")); - else - { + } + else { g.profile[g.id()].remove(); g.id( 0 ); initSettings(); @@ -309,7 +299,7 @@ void appPreferencesDialog::on_removeProfileButton_clicked() } -bool appPreferencesDialog::displayImage( QString fileName ) +bool AppPreferencesDialog::displayImage( QString fileName ) { // Start by clearing the pixmap ui->imageLabel->setPixmap(QPixmap()); @@ -328,7 +318,7 @@ bool appPreferencesDialog::displayImage( QString fileName ) return true; } -void appPreferencesDialog::on_SplashSelect_clicked() +void AppPreferencesDialog::on_SplashSelect_clicked() { QString supportedImageFormats; for (int formatIndex = 0; formatIndex < QImageReader::supportedImageFormats().count(); formatIndex++) { @@ -346,13 +336,13 @@ void appPreferencesDialog::on_SplashSelect_clicked() } } -void appPreferencesDialog::on_clearImageButton_clicked() { +void AppPreferencesDialog::on_clearImageButton_clicked() { ui->imageLabel->clear(); ui->SplashFileName->clear(); } -void appPreferencesDialog::showVoice(bool show) +void AppPreferencesDialog::showVoice(bool show) { if (show) showVoice(); @@ -360,13 +350,13 @@ void appPreferencesDialog::showVoice(bool show) hideVoice(); } -void appPreferencesDialog::showVoice() +void AppPreferencesDialog::showVoice() { ui->voiceLabel->show(); ui->voiceCombo->show(); } -void appPreferencesDialog::hideVoice() +void AppPreferencesDialog::hideVoice() { ui->voiceLabel->hide(); ui->voiceCombo->hide(); @@ -374,11 +364,11 @@ void appPreferencesDialog::hideVoice() } -void appPreferencesDialog::baseFirmwareChanged() +void AppPreferencesDialog::baseFirmwareChanged() { QVariant selected_firmware = ui->downloadVerCB->itemData(ui->downloadVerCB->currentIndex()); voice=NULL; - foreach(FirmwareInfo * firmware, firmwares) { + foreach(FirmwareInterface * firmware, firmwares) { if (firmware->id == selected_firmware) { showVoice(firmware->voice); populateFirmwareOptions(firmware); @@ -388,11 +378,11 @@ void appPreferencesDialog::baseFirmwareChanged() firmwareChanged(); } -FirmwareVariant appPreferencesDialog::getFirmwareVariant() +FirmwareVariant AppPreferencesDialog::getFirmwareVariant() { QVariant selected_firmware = ui->downloadVerCB->itemData(ui->downloadVerCB->currentIndex()); bool voice=false; - foreach(FirmwareInfo * firmware, firmwares) { + foreach(FirmwareInterface * firmware, firmwares) { if (firmware->id == selected_firmware) { QString id = firmware->id; foreach(QCheckBox *cb, optionsCheckBoxes) { @@ -402,7 +392,7 @@ FirmwareVariant appPreferencesDialog::getFirmwareVariant() id += QString("-") + cb->text(); } } - if (! firmware->eepromInterface->getCapability(MultiLangVoice)) { + if (! firmware->getCapability(MultiLangVoice)) { if (ui->voiceCombo->count() && (voice || firmware->voice)) id += QString("-tts") + ui->voiceCombo->currentText(); } @@ -417,10 +407,10 @@ FirmwareVariant appPreferencesDialog::getFirmwareVariant() return default_firmware_variant; } -void appPreferencesDialog::firmwareOptionChanged(bool state) +void AppPreferencesDialog::firmwareOptionChanged(bool state) { QCheckBox *cb = qobject_cast(sender()); - FirmwareInfo * firmware=NULL; + FirmwareInterface * firmware=NULL; if (cb && state) { QVariant selected_firmware = ui->downloadVerCB->itemData(ui->downloadVerCB->currentIndex()); foreach(firmware, firmwares) { @@ -446,14 +436,16 @@ void appPreferencesDialog::firmwareOptionChanged(bool state) } } } - } else if (cb && !state) { + } + else if (cb && !state) { if (cb->text()=="voice") { hideVoice(); } } if (voice) { showVoice(voice->isChecked()); - } else if (firmware) { + } + else if (firmware) { if (firmware->voice) { showVoice(); } @@ -461,20 +453,20 @@ void appPreferencesDialog::firmwareOptionChanged(bool state) return firmwareChanged(); } -void appPreferencesDialog::firmwareLangChanged() +void AppPreferencesDialog::firmwareLangChanged() { firmwareChanged(); } -void appPreferencesDialog::firmwareChanged() +void AppPreferencesDialog::firmwareChanged() { if (updateLock) return; FirmwareVariant variant = getFirmwareVariant(); QString stamp; - stamp.append(variant.firmware->stamp); - QString url=variant.firmware->getUrl(variant.id); + stamp.append(variant.firmware->getStampUrl()); + QString url = variant.getFirmwareUrl(); // B-Plan if (false) { ui->CPU_ID_LE->show(); @@ -485,9 +477,9 @@ void appPreferencesDialog::firmwareChanged() } } -void appPreferencesDialog::populateFirmwareOptions(const FirmwareInfo * firmware) +void AppPreferencesDialog::populateFirmwareOptions(const FirmwareInterface * firmware) { - const FirmwareInfo * parent = firmware->parent ? firmware->parent : firmware; + const FirmwareInterface * parent = /*firmware->parent ? firmware->parent : */ firmware; updateLock = true; @@ -510,20 +502,22 @@ void appPreferencesDialog::populateFirmwareOptions(const FirmwareInfo * firmware foreach(QList