##// END OF EJS Templates
Parser refactoring (1)...
Parser refactoring (1) Creates a helper that will be used to read the properties and values of an AMDA file, to generate the dataset. The helper is intended to replace the current implementation of the parser, to be more generic and thus manage the spectrograms more easily

File last commit:

r656:c1e80b6034b1
r944:e1494a5194f1
Show More
SqpSettingsGeneralWidget.cpp
51 lines | 1.6 KiB | text/x-c | CppLexer
/ gui / src / Settings / SqpSettingsGeneralWidget.cpp
#include "Settings/SqpSettingsGeneralWidget.h"
#include "Settings/SqpSettingsDefs.h"
#include "ui_SqpSettingsGeneralWidget.h"
SqpSettingsGeneralWidget::SqpSettingsGeneralWidget(QWidget *parent)
: QWidget{parent}, ui{new Ui::SqpSettingsGeneralWidget}
{
ui->setupUi(this);
// Value limits
ui->toleranceInitSpinBox->setMinimum(0.);
ui->toleranceInitSpinBox->setMaximum(std::numeric_limits<double>::max());
ui->toleranceUpdateSpinBox->setMinimum(0.);
ui->toleranceUpdateSpinBox->setMaximum(std::numeric_limits<double>::max());
}
SqpSettingsGeneralWidget::~SqpSettingsGeneralWidget() noexcept
{
delete ui;
}
void SqpSettingsGeneralWidget::loadSettings()
{
QSettings settings{};
auto loadTolerance = [&settings](const QString &key, double defaultValue) {
// Tolerance is converted to percent
auto toleranceValue = settings.value(key, defaultValue).toDouble();
return toleranceValue * 100.;
};
ui->toleranceInitSpinBox->setValue(
loadTolerance(GENERAL_TOLERANCE_AT_INIT_KEY, GENERAL_TOLERANCE_AT_INIT_DEFAULT_VALUE));
ui->toleranceUpdateSpinBox->setValue(
loadTolerance(GENERAL_TOLERANCE_AT_UPDATE_KEY, GENERAL_TOLERANCE_AT_UPDATE_DEFAULT_VALUE));
}
void SqpSettingsGeneralWidget::saveSettings() const
{
QSettings settings{};
auto saveTolerance = [&settings](const QString &key, double value) {
// Tolerance is converted from percent
settings.setValue(key, value * 0.01);
};
saveTolerance(GENERAL_TOLERANCE_AT_INIT_KEY, ui->toleranceInitSpinBox->value());
saveTolerance(GENERAL_TOLERANCE_AT_UPDATE_KEY, ui->toleranceUpdateSpinBox->value());
}