diff --git a/GUI/Models/AxesItems.cpp b/GUI/Models/AxesItems.cpp
index 5f81767bd407938b3970154cb8be95111cd2e4a4..644b1ab5961f4642fcf049d47ae1ae865edeea65 100644
--- a/GUI/Models/AxesItems.cpp
+++ b/GUI/Models/AxesItems.cpp
@@ -180,6 +180,17 @@ bool AmplitudeAxisItem::isLogScalePropertyName(const QString& name)
     return name == P_IS_LOGSCALE;
 }
 
+bool AmplitudeAxisItem::isLocked() const
+{
+    return getItemValue(P_LOCK_MIN_MAX).toBool();
+}
+
+void AmplitudeAxisItem::setLocked(bool locked)
+{
+    setItemValue(P_LOCK_MIN_MAX, locked);
+}
+
+
 //! Sets editor for min, max values of axes
 
 void AmplitudeAxisItem::setMinMaxEditor(const QString& editorType)
diff --git a/GUI/Models/AxesItems.h b/GUI/Models/AxesItems.h
index 973982f074230e9aaca9a4d19f50d2ef88493348..bf15e92b767d210523d53d060f5ad1c27c7a34ef 100644
--- a/GUI/Models/AxesItems.h
+++ b/GUI/Models/AxesItems.h
@@ -69,15 +69,18 @@ protected:
 class BA_CORE_API_ AmplitudeAxisItem : public BasicAxisItem {
 private:
     static const QString P_IS_LOGSCALE;
+    static const QString P_LOCK_MIN_MAX;
 
 public:
-    static const QString P_LOCK_MIN_MAX;
     AmplitudeAxisItem();
 
     bool isLogScale() const;
     void setLogScale(bool value);
     static bool isLogScalePropertyName(const QString& name);
 
+    bool isLocked() const;
+    void setLocked(bool locked);
+
 private:
     void setMinMaxEditor(const QString& editorType);
 };
diff --git a/GUI/Models/IntensityDataItem.cpp b/GUI/Models/IntensityDataItem.cpp
index 85956a2ec956ab79ad68b84a667ef7b98c1b3cf7..3407f8e651a48bb6c633153d78fb1b2ece3664f2 100644
--- a/GUI/Models/IntensityDataItem.cpp
+++ b/GUI/Models/IntensityDataItem.cpp
@@ -199,12 +199,12 @@ QString IntensityDataItem::getYaxisTitle() const
 
 bool IntensityDataItem::isZAxisLocked() const
 {
-    return getItem(P_ZAXIS)->getItemValue(AmplitudeAxisItem::P_LOCK_MIN_MAX).toBool();
+    return item<AmplitudeAxisItem>(P_ZAXIS)->isLocked();
 }
 
 void IntensityDataItem::setZAxisLocked(bool state)
 {
-    return getItem(P_ZAXIS)->setItemValue(AmplitudeAxisItem::P_LOCK_MIN_MAX, state);
+    item<AmplitudeAxisItem>(P_ZAXIS)->setLocked(state);
 }
 
 void IntensityDataItem::setXaxisTitle(const QString& title)
diff --git a/GUI/Views/InstrumentWidgets/DetectorMaskDelegate.cpp b/GUI/Views/InstrumentWidgets/DetectorMaskDelegate.cpp
index cfd72b7c84b9de1dfa208896825b1d6e425c683a..c0e543387096d5b936513e6ec94a3e04cec0145c 100644
--- a/GUI/Views/InstrumentWidgets/DetectorMaskDelegate.cpp
+++ b/GUI/Views/InstrumentWidgets/DetectorMaskDelegate.cpp
@@ -65,7 +65,7 @@ void DetectorMaskDelegate::createIntensityDataItem()
     zAxisItem->setLowerBound(0.0);
     zAxisItem->setUpperBound(2.0);
     zAxisItem->setLogScale(false);
-    zAxisItem->setItemValue(AmplitudeAxisItem::P_LOCK_MIN_MAX, true);
+    zAxisItem->setLocked(true);
 
     // creating output data corresponding to the detector
     auto instrument = dynamic_cast<const GISASInstrumentItem*>(