diff --git a/GUI/Model/FromCore/ItemizeSimulation.cpp b/GUI/Model/FromCore/ItemizeSimulation.cpp
index 19f985363d5c3345d6f48e3aa8e1739946b89cd3..e6ac3ad8e683f223a932a111797afe177a20118d 100644
--- a/GUI/Model/FromCore/ItemizeSimulation.cpp
+++ b/GUI/Model/FromCore/ItemizeSimulation.cpp
@@ -251,12 +251,13 @@ void updateDetector(Scatter2DInstrumentItem* instrument_item, const IDetector& d
 void setBackground(InstrumentItem* instrument_item, const ISimulation& simulation)
 {
     const auto* bg = simulation.background();
+    PolyItem<BackgroundItemCatalog>& ib = instrument_item->backgroundSelection();
     if (const auto* constant_bg = dynamic_cast<const ConstantBackground*>(bg)) {
-        auto* constant_bg_item = instrument_item->setBackgroundItemType<ConstantBackgroundItem>();
+        auto* constant_bg_item = ib.createCertainItem<ConstantBackgroundItem>();
         double value = constant_bg->backgroundValue();
         constant_bg_item->setBackgroundValue(value);
     } else if (dynamic_cast<const PoissonBackground*>(bg))
-        instrument_item->setBackgroundItemType<PoissonBackgroundItem>();
+        ib.createCertainItem<PoissonBackgroundItem>();
 }
 
 Scatter2DInstrumentItem* createScatter2DInstrumentItem(const ScatteringSimulation& simulation)
diff --git a/GUI/Model/Sim/InstrumentItems.h b/GUI/Model/Sim/InstrumentItems.h
index 6da3f6b6434aaf673be9b26ba5d6c6795eaed02c..5edc80f7b1ed00148596388dadd584cd5492a7cd 100644
--- a/GUI/Model/Sim/InstrumentItems.h
+++ b/GUI/Model/Sim/InstrumentItems.h
@@ -66,11 +66,6 @@ public:
 
     template <typename T> bool is() const { return dynamic_cast<const T*>(this) != nullptr; }
 
-    template <typename T> T* setBackgroundItemType()
-        {
-            return backgroundSelection().createCertainItem<T>();
-        }
-
     PolyItem<BackgroundItemCatalog>& backgroundSelection() { return m_background; }
     BackgroundItem* backgroundItem() const { return m_background.certainItem(); }