Merge pull request #124 from sophiekovalevsky/prevent-update-preferences

app: prevent update preferences in none active and destroyed modes
This commit is contained in:
jankae 2022-07-09 15:46:19 +02:00 committed by GitHub
commit ef000d276c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -271,24 +271,47 @@ AppWindow::AppWindow(QWidget *parent)
} }
} }
auto active = Mode::getActiveMode();
active->updateGraphColors();
// averaging mode may have changed, update for all relevant modes // averaging mode may have changed, update for all relevant modes
if(p.Acquisition.useMedianAveraging) { for (auto m : Mode::getModes())
spectrumAnalyzer->setAveragingMode(Averaging::Mode::Median); {
vna->setAveragingMode(Averaging::Mode::Median); switch (m->getType())
} else { {
spectrumAnalyzer->setAveragingMode(Averaging::Mode::Mean); case Mode::Type::VNA:
vna->setAveragingMode(Averaging::Mode::Mean); if(p.Acquisition.useMedianAveraging) {
static_cast<VNA*>(m)->setAveragingMode(Averaging::Mode::Median);
}
else {
static_cast<VNA*>(m)->setAveragingMode(Averaging::Mode::Mean);
}
break;
case Mode::Type::SA:
if(p.Acquisition.useMedianAveraging) {
static_cast<SpectrumAnalyzer*>(m)->setAveragingMode(Averaging::Mode::Median);
}
else {
static_cast<SpectrumAnalyzer*>(m)->setAveragingMode(Averaging::Mode::Mean);
}
break;
case Mode::Type::SG:
case Mode::Type::Last:
default:
break;
}
} }
// acquisition frequencies may have changed, update // acquisition frequencies may have changed, update
UpdateAcquisitionFrequencies(); UpdateAcquisitionFrequencies();
if(device) { auto active = Mode::getActiveMode();
active->initializeDevice(); if (active)
{
active->updateGraphColors();
if(device) {
active->initializeDevice();
}
} }
}); });
connect(ui->actionAbout, &QAction::triggered, [=](){ connect(ui->actionAbout, &QAction::triggered, [=](){