Skip to content
Snippets Groups Projects
Commit 7850dbf8 authored by Mikhail Svechnikov's avatar Mikhail Svechnikov
Browse files

RunFitControlWidget: add updateIntervalToSliderValue()

parent 60c6d7a8
No related branches found
No related tags found
1 merge request!1124FitSuiteItem is refactored
......@@ -15,7 +15,6 @@
#include "GUI/Model/Job/FitSuiteItem.h"
#include "GUI/Model/Job/FitParameterContainerItem.h"
#include "GUI/Model/Job/MinimizerItem.h"
#include "GUI/Model/Model/SessionModel.h"
#include "GUI/Support/XML/UtilXML.h"
#include "GUI/Util/Error.h"
......@@ -85,6 +84,7 @@ int FitSuiteItem::updateInterval() const
void FitSuiteItem::setUpdateInterval(int interval)
{
qInfo() << " -- FitSuiteItem::setUpdateInterval to" << interval;
m_updateInterval = interval;
emit updateIntervalChanged(interval);
}
......
......@@ -16,17 +16,14 @@
#include "GUI/Model/Job/FitParameterContainerItem.h"
#include "GUI/Model/Job/FitParameterItem.h"
#include "GUI/Model/Job/FitParameterLinkItem.h"
#include "GUI/Model/Job/FitSuiteItem.h"
#include "GUI/Model/Job/JobItem.h"
#include "GUI/Model/Job/ParameterTreeItems.h"
#include "GUI/Model/Model/FitParameterHelper.h"
#include "GUI/Model/Model/FitParameterModel.h"
#include "GUI/Model/Model/JobModel.h"
#include "GUI/View/Common/CustomEventFilters.h"
#include "GUI/View/Fit/FitParameterDelegate.h"
#include "GUI/View/Fit/ParameterTuningWidget.h"
#include "GUI/View/Info/OverlayLabelController.h"
#include "GUI/View/Tool/mainwindow_constants.h"
#include <QAction>
#include <QHeaderView>
#include <QMenu>
......
......@@ -27,8 +27,8 @@
namespace {
const int default_interval = 10;
const std::vector<int> slider_to_interval = {1, 2, 3, 4, 5, 10, 15, 20,
25, 30, 50, 100, 200, 500, 1000};
const QVector<int> slider_to_interval = {1, 2, 3, 4, 5, 10, 15, 20,
25, 30, 50, 100, 200, 500, 1000};
const QString slider_tooltip = "Updates fit progress every Nth iteration";
} // namespace
......@@ -97,6 +97,7 @@ void RunFitControlWidget::setJobOrRealItem(JobRealBase* job_item)
updateControlElements(jobItem()->status());
updateIterationsCountLabel(fitSuiteItem()->iterationCount());
qInfo() << 1 << sliderUpdateInterval();
fitSuiteItem()->setUpdateInterval(sliderUpdateInterval());
connect(fitSuiteItem(), &FitSuiteItem::iterationCountChanged, this,
......@@ -116,6 +117,7 @@ void RunFitControlWidget::onFittingError(const QString& what)
void RunFitControlWidget::onSliderValueChanged(int value)
{
int interval = sliderValueToUpdateInterval(value);
qInfo() << 2 << interval;
m_updateIntervalLabel->setText(QString::number(interval));
if (fitSuiteItem())
fitSuiteItem()->setUpdateInterval(interval);
......@@ -134,6 +136,14 @@ int RunFitControlWidget::sliderValueToUpdateInterval(int value)
return svalue < slider_to_interval.size() ? slider_to_interval[svalue] : default_interval;
}
int RunFitControlWidget::updateIntervalToSliderValue(int updInterval)
{
if(slider_to_interval.contains(updInterval))
return slider_to_interval.indexOf(updInterval);
else
return slider_to_interval.indexOf(default_interval);
}
//! Updates button "enabled" status and caution status depending on current job conditions.
void RunFitControlWidget::updateControlElements(JobStatus status)
......
......@@ -45,6 +45,8 @@ private slots:
private:
int sliderUpdateInterval();
int sliderValueToUpdateInterval(int value);
int updateIntervalToSliderValue(int updInterval);
void updateControlElements(JobStatus status);
FitSuiteItem* fitSuiteItem();
bool isValidJobItem();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment