diff --git a/GUI/Model/Sample/SamplesSet.cpp b/GUI/Model/Sample/SamplesSet.cpp
index b7274747dad0200f4525910c12f01ed26c7c436b..7622b9f4b15f29a053c3ea13f87fb026079852fc 100644
--- a/GUI/Model/Sample/SamplesSet.cpp
+++ b/GUI/Model/Sample/SamplesSet.cpp
@@ -35,12 +35,6 @@ QVector<SampleItem*> SamplesSet::sampleItems() const
     return QVector<SampleItem*>(m_samples.begin(), m_samples.end());
 }
 
-SampleItem* SamplesSet::addSampleItem()
-{
-    addSampleItem(new SampleItem());
-    return m_samples.back();
-}
-
 void SamplesSet::addSampleItem(SampleItem* sample)
 {
     m_samples.push_back(sample);
@@ -88,7 +82,9 @@ void SamplesSet::readFrom(QXmlStreamReader* r)
 
         // sample
         if (tag == Tag::Sample) {
-            addSampleItem()->readFrom(r);
+            auto* t = new SampleItem;
+            t->readFrom(r);
+            addSampleItem(t);
             XML::gotoEndElementOfTag(r, tag);
 
             // selected index
diff --git a/GUI/Model/Sample/SamplesSet.h b/GUI/Model/Sample/SamplesSet.h
index b860dbd1fc148ff1bb41cf8ca2ac5d3ee9c31bce..e28c9c2f5a5fd21c747dccdd08f2f0effe3bfe15 100644
--- a/GUI/Model/Sample/SamplesSet.h
+++ b/GUI/Model/Sample/SamplesSet.h
@@ -27,9 +27,7 @@ public:
     ~SamplesSet();
     QVector<SampleItem*> sampleItems() const;
 
-    SampleItem* addSampleItem();
     void addSampleItem(SampleItem* sample);
-
     void removeSample(SampleItem* sample);
 
     QStringList sampleNames() const;
diff --git a/GUI/View/List/SamplesQModel.cpp b/GUI/View/List/SamplesQModel.cpp
index f813adad7109a7eb1b6b7db8378d33819c047c7c..f89d2228666bc378512474a40ea48bcfd9f63cf8 100644
--- a/GUI/View/List/SamplesQModel.cpp
+++ b/GUI/View/List/SamplesQModel.cpp
@@ -89,29 +89,35 @@ QModelIndex SamplesQModel::createSample()
 {
     const QStringList existingNames = gDoc->samples()->sampleNames();
 
+    auto* t = new SampleItem;
+    t->setSampleName(GUI::Util::String::suggestName(existingNames, "Sample"));
+    t->addStandardMaterials();
+
     const int row = gDoc->samples()->sampleItems().size();
+
     beginInsertRows(QModelIndex(), row, row);
-    auto* sample_item = gDoc->samplesModifier()->addSampleItem();
-    sample_item->setSampleName(GUI::Util::String::suggestName(existingNames, "Sample"));
-    sample_item->addStandardMaterials();
+    gDoc->samplesModifier()->addSampleItem(t);
     endInsertRows();
-    return indexForItem(sample_item);
+
+    return indexForItem(t);
 }
 
 QModelIndex SamplesQModel::createSampleFromExamples(const QString& className, const QString& title,
                                                     const QString& description)
 {
-    auto* sample = dynamic_cast<SampleItem*>(GUI::ExamplesFactory::itemizeSample(className));
-    if (!sample)
+    auto* t = dynamic_cast<SampleItem*>(GUI::ExamplesFactory::itemizeSample(className));
+    if (!t)
         return {};
-    sample->setSampleName(title);
-    sample->setDescription(description);
+    t->setSampleName(title);
+    t->setDescription(description);
 
     const int row = gDoc->samples()->sampleItems().size();
+
     beginInsertRows(QModelIndex(), row, row);
-    gDoc->samplesModifier()->addSampleItem(sample);
+    gDoc->samplesModifier()->addSampleItem(t);
     endInsertRows();
-    return indexForItem(sample);
+
+    return indexForItem(t);
 }
 
 #ifdef BORNAGAIN_PYTHON
@@ -121,16 +127,17 @@ QModelIndex SamplesQModel::createSampleFromPython()
     if (!sample)
         return {}; // any messages already shown to user
 
-    SampleItem* sampleItem = PyImportAssistant::itemizeSample(*sample);
-    if (!sampleItem)
+    SampleItem* t = PyImportAssistant::itemizeSample(*sample);
+    if (!t)
         return {}; // any messages already shown to user
-
-    sampleItem->setDescription("Imported from python code");
+    t->setDescription("Imported from python code");
 
     const int row = gDoc->samples()->sampleItems().size();
+
     beginInsertRows(QModelIndex(), row, row);
-    gDoc->samplesModifier()->addSampleItem(sampleItem);
+    gDoc->samplesModifier()->addSampleItem(t);
     endInsertRows();
-    return indexForItem(sampleItem);
+
+    return indexForItem(t);
 }
 #endif