diff --git a/GUI/Model/Sample/InterferenceItems.cpp b/GUI/Model/Sample/InterferenceItems.cpp
index 7361f676a0732f6b0c93d8343e0f9f4051d09e94..e6c987ae2ec3123ac20477910c7c871fe44284fd 100644
--- a/GUI/Model/Sample/InterferenceItems.cpp
+++ b/GUI/Model/Sample/InterferenceItems.cpp
@@ -16,7 +16,6 @@
 #include "Base/Const/Units.h"
 #include "GUI/Model/CatSample/Lattice2DItemCatalog.h"
 #include "GUI/Model/CatSample/ProfileItemCatalogs.h"
-#include "GUI/Model/Descriptor/UIntDescriptor.h"
 #include "GUI/Model/Sample/Lattice2DItems.h"
 #include "GUI/Model/Sample/ProfileItems.h"
 #include "GUI/Support/XML/Serialize.h"
@@ -258,11 +257,13 @@ void Interference2DParacrystalItem::setPDF2Type(Profile2DItem* p)
 
 InterferenceFinite2DLatticeItem::InterferenceFinite2DLatticeItem()
     : Interference2DAbstractLatticeItem(false)
+    , m_domainSize1(100)
+    , m_domainSize2(100)
 {
-    m_domainSize1.init("Domain size 1", "Domain size 1 in number of unit cells", 100,
-                       Unit::unitless, "size1");
-    m_domainSize2.init("Domain size 2", "Domain size 2 in number of unit cells", 100,
-                       Unit::unitless, "size2");
+//    m_domainSize1.init("Domain size 1", "Domain size 1 in number of unit cells", 100,
+//                       Unit::unitless, "size1");
+//    m_domainSize2.init("Domain size 2", "Domain size 2 in number of unit cells", 100,
+//                       Unit::unitless, "size2");
 }
 
 std::unique_ptr<IInterference> InterferenceFinite2DLatticeItem::createInterference() const
@@ -283,28 +284,28 @@ void InterferenceFinite2DLatticeItem::serialize(Streamer& s)
     Serialize::rwProperty(s, m_positionVariance);
     Serialize::rwValue(s, "integrate", m_xiIntegration);
     Serialize::rwSelected<Lattice2DItemCatalog>(s, m_latticeType);
-    Serialize::rwProperty(s, m_domainSize1);
-    Serialize::rwProperty(s, m_domainSize2);
+    Serialize::rwValue(s, "domainsize1", m_domainSize1);
+    Serialize::rwValue(s, "domainsize2", m_domainSize2);
 }
 
-UIntDescriptor InterferenceFinite2DLatticeItem::domainSize1() const
+uint InterferenceFinite2DLatticeItem::domainSize1() const
 {
     return m_domainSize1;
 }
 
-void InterferenceFinite2DLatticeItem::setDomainSize1(const unsigned int size)
+void InterferenceFinite2DLatticeItem::setDomainSize1(uint size)
 {
-    m_domainSize1.set(size);
+    m_domainSize1 = size;
 }
 
-UIntDescriptor InterferenceFinite2DLatticeItem::domainSize2() const
+uint InterferenceFinite2DLatticeItem::domainSize2() const
 {
     return m_domainSize2;
 }
 
-void InterferenceFinite2DLatticeItem::setDomainSize2(const unsigned int size)
+void InterferenceFinite2DLatticeItem::setDomainSize2(uint size)
 {
-    m_domainSize2.set(size);
+    m_domainSize2 = size;
 }
 
 // --------------------------------------------------------------------------------------------- //
diff --git a/GUI/Model/Sample/InterferenceItems.h b/GUI/Model/Sample/InterferenceItems.h
index b208ac8cdb4de6b3c78d8c1775990f663ecc2a45..123329acb750bc5aaf19c4aa4a988d9cacc963f0 100644
--- a/GUI/Model/Sample/InterferenceItems.h
+++ b/GUI/Model/Sample/InterferenceItems.h
@@ -17,7 +17,6 @@
 
 #include "GUI/Model/Descriptor/DoubleProperty.h"
 #include "GUI/Model/Descriptor/SelectionProperty.h"
-#include "GUI/Model/Descriptor/UIntProperty.h"
 #include "GUI/Model/Sample/Lattice2DItems.h"
 #include "GUI/Model/Sample/ProfileItems.h"
 #include <memory>
@@ -130,14 +129,14 @@ public:
     std::unique_ptr<IInterference> createInterference() const override;
     void serialize(Streamer& s) override;
 
-    UIntDescriptor domainSize1() const;
-    void setDomainSize1(unsigned int domain_size1);
-    UIntDescriptor domainSize2() const;
-    void setDomainSize2(unsigned int domain_size2);
+    uint domainSize1() const;
+    void setDomainSize1(uint domain_size1);
+    uint domainSize2() const;
+    void setDomainSize2(uint domain_size2);
 
 private:
-    UIntProperty m_domainSize1;
-    UIntProperty m_domainSize2;
+    uint m_domainSize1;
+    uint m_domainSize2;
 };
 
 // ------------------------------------------------------------------------------------------------
diff --git a/GUI/View/SampleDesigner/InterferenceForm.cpp b/GUI/View/SampleDesigner/InterferenceForm.cpp
index 576edc31649976601b1f3e854bf7fff9d47fcd2b..d3df0e30d359361eba41ab613cc364ed10090270 100644
--- a/GUI/View/SampleDesigner/InterferenceForm.cpp
+++ b/GUI/View/SampleDesigner/InterferenceForm.cpp
@@ -12,17 +12,18 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/View/SampleDesigner/InterferenceForm.h"
 #include "GUI/Model/Descriptor/UIntDescriptor.h"
 #include "GUI/Model/Sample/InterferenceItems.h"
 #include "GUI/Model/Sample/Lattice2DItems.h"
 #include "GUI/Model/Sample/ParticleLayoutItem.h"
 #include "GUI/View/Common/CustomEventFilters.h"
 #include "GUI/View/SampleDesigner/FormLayouter.h"
+#include "GUI/View/SampleDesigner/InterferenceForm.h"
 #include "GUI/View/SampleDesigner/LatticeTypeSelectionForm.h"
 #include "GUI/View/SampleDesigner/SampleEditorController.h"
 #include "GUI/View/SampleDesigner/SelectionContainerForm.h"
 #include "GUI/View/Tool/GroupBoxCollapser.h"
+#include "GUI/View/Tool/WidgetUtils.h"
 
 InterferenceForm::InterferenceForm(QWidget* parent, ParticleLayoutItem* layoutItem,
                                    SampleEditorController* ec)
@@ -104,8 +105,17 @@ void InterferenceForm::createInterferenceWidgets()
         layouter.addSelection(itf->decayFunction());
     } else if (auto* itf = dynamic_cast<InterferenceFinite2DLatticeItem*>(interference)) {
         layouter.addValue(itf->positionVariance());
-        layouter.addValue(itf->domainSize1());
-        layouter.addValue(itf->domainSize2());
+        layouter.addRow("Domain size 1:",
+            GUI::Util::createIntSpinbox([=] { return itf->domainSize1(); },
+                                        [=](int v) { itf->setDomainSize1(v); emit m_ec->modified();},
+                                        RealLimits::lowerLimited(1),
+                                        "Domain size 1 in number of unit cells"));
+        layouter.addRow("Domain size 2:",
+            GUI::Util::createIntSpinbox([=] { return itf->domainSize2(); },
+                                        [=](int v) { itf->setDomainSize2(v); emit m_ec->modified();},
+                                        RealLimits::lowerLimited(1),
+                                        "Domain size 2 in number of unit cells"));
+
         auto* w = new LatticeTypeSelectionForm(this, itf, m_ec);
         layouter.addRow(itf->latticeType().label, w);
     } else if (auto* itf = dynamic_cast<Interference2DParacrystalItem*>(interference)) {