diff --git a/GUI/Models/FitSuiteItem.cpp b/GUI/Models/FitSuiteItem.cpp index 9702904bf8e37d7056d7f537b42250b380bf8ca8..f3adc8baded611fbaba418a01e970c83d37138c4 100644 --- a/GUI/Models/FitSuiteItem.cpp +++ b/GUI/Models/FitSuiteItem.cpp @@ -43,3 +43,18 @@ MinimizerContainerItem* FitSuiteItem::minimizerContainerItem() { return item<MinimizerContainerItem>(FitSuiteItem::T_MINIMIZER); } + +int FitSuiteItem::updateInterval() const +{ + return getItemValue(P_UPDATE_INTERVAL).toInt(); +} + +void FitSuiteItem::setUpdateInterval(const int interval) +{ + setItemValue(P_UPDATE_INTERVAL, interval); +} + +bool FitSuiteItem::isUpdateIntervalPropertyName(const QString& name) +{ + return name == P_UPDATE_INTERVAL; +} diff --git a/GUI/Models/FitSuiteItem.h b/GUI/Models/FitSuiteItem.h index 2a61751f98f99db60826d50bb0043b512052701a..5b3c8020dccb012c1fc08e7ba0db931e4de42916 100644 --- a/GUI/Models/FitSuiteItem.h +++ b/GUI/Models/FitSuiteItem.h @@ -21,9 +21,10 @@ class FitParameterContainerItem; class MinimizerContainerItem; class BA_CORE_API_ FitSuiteItem : public SessionItem { +private: + static const QString P_UPDATE_INTERVAL; public: - static const QString P_UPDATE_INTERVAL; static const QString P_ITERATION_COUNT; static const QString P_CHI2; static const QString T_FIT_PARAMETERS_CONTAINER; @@ -35,6 +36,10 @@ public: FitParameterContainerItem* fitParameterContainerItem(); MinimizerContainerItem* minimizerContainerItem(); + + int updateInterval() const; + void setUpdateInterval(int interval); + static bool isUpdateIntervalPropertyName(const QString& name); }; #endif // BORNAGAIN_GUI_MODELS_FITSUITEITEM_H diff --git a/GUI/Views/FitWidgets/FitSessionController.cpp b/GUI/Views/FitWidgets/FitSessionController.cpp index c0be73ea78a5c80f0fd8ba00fffb56605ce6935c..8fb6c1acf07f1c568c991066c4613538efadffdd 100644 --- a/GUI/Views/FitWidgets/FitSessionController.cpp +++ b/GUI/Views/FitWidgets/FitSessionController.cpp @@ -63,10 +63,8 @@ void FitSessionController::setItem(JobItem* item) // Propagates update interval from FitSuiteItem to fit observer. m_jobItem->fitSuiteItem()->mapper()->setOnPropertyChange( [this](const QString& name) { - if (name == FitSuiteItem::P_UPDATE_INTERVAL) { - m_observer->setInterval(m_jobItem->fitSuiteItem() - ->getItemValue(FitSuiteItem::P_UPDATE_INTERVAL) - .toInt()); + if (FitSuiteItem::isUpdateIntervalPropertyName(name)) { + m_observer->setInterval(m_jobItem->fitSuiteItem()->updateInterval()); } }, this); @@ -79,8 +77,7 @@ void FitSessionController::onStartFittingRequest() try { m_objectiveBuilder = std::make_unique<FitObjectiveBuilder>(m_jobItem); - m_observer->setInterval( - m_jobItem->fitSuiteItem()->getItemValue(FitSuiteItem::P_UPDATE_INTERVAL).toInt()); + m_observer->setInterval(m_jobItem->fitSuiteItem()->updateInterval()); m_objectiveBuilder->attachObserver(m_observer); m_observer->finishedPlotting(); m_runFitManager->runFitting(m_objectiveBuilder); diff --git a/GUI/Views/FitWidgets/RunFitControlWidget.cpp b/GUI/Views/FitWidgets/RunFitControlWidget.cpp index 85adba129a4bf725355e6f2426ca54a63375e03a..84b9018f4efdb4e3fb338de8d20514bbaec27616 100644 --- a/GUI/Views/FitWidgets/RunFitControlWidget.cpp +++ b/GUI/Views/FitWidgets/RunFitControlWidget.cpp @@ -104,7 +104,7 @@ void RunFitControlWidget::onSliderValueChanged(int value) int interval = sliderValueToUpdateInterval(value); m_updateIntervalLabel->setText(QString::number(interval)); if (fitSuiteItem()) - fitSuiteItem()->setItemValue(FitSuiteItem::P_UPDATE_INTERVAL, interval); + fitSuiteItem()->setUpdateInterval(interval); } void RunFitControlWidget::onFitSuitePropertyChange(const QString& name) @@ -119,7 +119,7 @@ void RunFitControlWidget::subscribeToItem() { updateControlElements(); - fitSuiteItem()->setItemValue(FitSuiteItem::P_UPDATE_INTERVAL, sliderUpdateInterval()); + fitSuiteItem()->setUpdateInterval(sliderUpdateInterval()); fitSuiteItem()->mapper()->setOnPropertyChange( [this](const QString& name) { onFitSuitePropertyChange(name); }, this);