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(); }