diff --git a/GUI/Model/Job/FitParameterItem.cpp b/GUI/Model/Job/FitParameterItem.cpp index 7b6c20e7e0db723837e302d22ed64162bc77163f..62536d2a33d3bb81f864701ac97be939924b1371 100644 --- a/GUI/Model/Job/FitParameterItem.cpp +++ b/GUI/Model/Job/FitParameterItem.cpp @@ -97,11 +97,11 @@ AttLimits FitParameterItem::attLimits() const if (isFixed()) return AttLimits::fixed(); if (isLimited()) - return AttLimits::limited(getItemValue(P_MIN).toDouble(), getItemValue(P_MAX).toDouble()); + return AttLimits::limited(minimum(), maximum()); if (isLowerLimited()) - return AttLimits::lowerLimited(getItemValue(P_MIN).toDouble()); + return AttLimits::lowerLimited(minimum()); if (isUpperLimited()) - return AttLimits::upperLimited(getItemValue(P_MAX).toDouble()); + return AttLimits::upperLimited(maximum()); if (isFree()) return AttLimits::limitless(); ASSERT(0); @@ -184,17 +184,22 @@ QStringList FitParameterItem::links() const return links; } -ComboProperty FitParameterItem::type() const +ComboProperty FitParameterItem::typeCombo() const { return getItemValue(P_TYPE).value<ComboProperty>(); } -void FitParameterItem::setType(const ComboProperty& type) +void FitParameterItem::setTypeCombo(const ComboProperty& type) { setItemValue(P_TYPE, type.variant()); onTypeChange(); } +QString FitParameterItem::currentType() const +{ + return typeCombo().currentValue(); +} + SessionItem* FitParameterItem::typeItem() const { return getItem(P_TYPE); @@ -208,12 +213,6 @@ void FitParameterItem::removeLink(const QString& link) } } -QString FitParameterItem::parameterType() const -{ - auto partype = getItemValue(P_TYPE).value<ComboProperty>(); - return partype.currentValue(); -} - //! Enables/disables min, max properties on FitParameterItem's type void FitParameterItem::onTypeChange() @@ -258,25 +257,25 @@ void FitParameterItem::setLimitEnabled(const QString& name, bool enabled) bool FitParameterItem::isLimited() const { - return parameterType() == "limited"; + return currentType() == "limited"; } bool FitParameterItem::isFree() const { - return parameterType() == "free"; + return currentType() == "free"; } bool FitParameterItem::isLowerLimited() const { - return parameterType() == "lower limited"; + return currentType() == "lower limited"; } bool FitParameterItem::isUpperLimited() const { - return parameterType() == "upper limited"; + return currentType() == "upper limited"; } bool FitParameterItem::isFixed() const { - return parameterType() == "fixed"; + return currentType() == "fixed"; } diff --git a/GUI/Model/Job/FitParameterItem.h b/GUI/Model/Job/FitParameterItem.h index 9436635368a5ce0fd9e2337c1e9b007a7fe546cf..53faf479a92fd30f9b4db55e196c549644475285 100644 --- a/GUI/Model/Job/FitParameterItem.h +++ b/GUI/Model/Job/FitParameterItem.h @@ -63,12 +63,12 @@ public: QVector<FitParameterLinkItem*> linkItems() const; QStringList links() const; - ComboProperty type() const; - void setType(const ComboProperty& type); + ComboProperty typeCombo() const; + void setTypeCombo(const ComboProperty& type); + QString currentType() const; SessionItem* typeItem() const; private: - QString parameterType() const; void onTypeChange(); void setLimitEnabled(const QString& name, bool enabled); bool isLimited() const; diff --git a/GUI/Model/Model/FitParameterModel.cpp b/GUI/Model/Model/FitParameterModel.cpp index ca44a6d11d2d8fd468fb87d398c6ef1a276a624f..82aa977aff64997f4cbe33b59577c7b4f80ec37c 100644 --- a/GUI/Model/Model/FitParameterModel.cpp +++ b/GUI/Model/Model/FitParameterModel.cpp @@ -220,7 +220,7 @@ bool FitParameterModel::setData(const QModelIndex& index, const QVariant& value, if (item->itemParent()->hasModelType<FitParameterItem>()) { FitParameterItem* fitParItem = dynamic_cast<FitParameterItem*>(item->itemParent()); if (index.column() == COL_TYPE) - fitParItem->setType(value.value<ComboProperty>()); + fitParItem->setTypeCombo(value.value<ComboProperty>()); else if (index.column() == COL_VALUE) fitParItem->setStartValue(value.toDouble()); else if (index.column() == COL_MIN)