diff --git a/GUI/Models/Sample/SampleListModel.cpp b/GUI/Models/Sample/SampleListModel.cpp
index 0091de368556f084b073a272641c113581bdd711..31a7f08bc110b1907c4d6e3e6f8898dbd85e2dce 100644
--- a/GUI/Models/Sample/SampleListModel.cpp
+++ b/GUI/Models/Sample/SampleListModel.cpp
@@ -13,13 +13,10 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Sample/SampleListModel.h"
-#include "GUI/Application/Application.h"
 #include "GUI/Models/Sample/GUIExamplesFactory.h"
 #include "GUI/Mapper/ModelUtils.h"
 #include "GUI/Items/MultiLayerItem.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Project/projectmanager.h"
-#include <QApplication>
 #include <QFontMetrics>
 #include <QIcon>
 
@@ -142,13 +139,14 @@ QModelIndex SampleListModel::createSample()
 
 QModelIndex SampleListModel::createSampleFromExamples(const QString& className,
                                                       const QString& title,
-                                                      const QString& description)
+                                                      const QString& description,
+                                                      MaterialModel* materialModel)
 {
     const int row = m_sampleModel->multiLayerItems().size();
     beginInsertRows(QModelIndex(), row, row);
 
     auto* sample = dynamic_cast<MultiLayerItem*>(GUIExamplesFactory::createSampleItems(
-        className, m_sampleModel, ProjectManager::instance()->document()->materialModel()));
+        className, m_sampleModel, materialModel));
     sample->setItemName(title);
     sample->setDescription(description);
 
diff --git a/GUI/Models/Sample/SampleListModel.h b/GUI/Models/Sample/SampleListModel.h
index 427eb4a7db6ad838d03a47827394259b3aa0a8fc..1075037508f1cde9995e454fd06b8c16d3f026c7 100644
--- a/GUI/Models/Sample/SampleListModel.h
+++ b/GUI/Models/Sample/SampleListModel.h
@@ -19,6 +19,7 @@
 #include <QSet>
 
 class SampleModel;
+class MaterialModel;
 class MultiLayerItem;
 
 //! List model for sample selection (used in the left pane of the layer oriented sample editor)
@@ -43,7 +44,8 @@ public:
     //! Create a new sample (multilayer) and return the index of it.
     QModelIndex createSample();
     QModelIndex createSampleFromExamples(const QString& className, const QString& title,
-                                         const QString& description);
+                                         const QString& description,
+                                         MaterialModel* materialModel);
 
 private:
     SampleModel* m_sampleModel = nullptr;
diff --git a/GUI/Views/SampleDesigner/FormLayouter.cpp b/GUI/Views/SampleDesigner/FormLayouter.cpp
index c0a6d8c510e325c51bacd25479f08232dc1feb6b..2e71e9c8eb9064134bef87d8af5d0e42bb36f0a1 100644
--- a/GUI/Views/SampleDesigner/FormLayouter.cpp
+++ b/GUI/Views/SampleDesigner/FormLayouter.cpp
@@ -16,7 +16,7 @@
 #include "GUI/Models/Types/UIntDescriptor.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
 #include "GUI/CommonWidgets/DoubleSpinBox.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/LayerEditorUtils.h"
 #include "GUI/Views/SampleDesigner/SampleEditorController.h"
 
diff --git a/GUI/CommonWidgets/GroupBoxCollapser.cpp b/GUI/Views/SampleDesigner/GroupBoxCollapser.cpp
similarity index 98%
rename from GUI/CommonWidgets/GroupBoxCollapser.cpp
rename to GUI/Views/SampleDesigner/GroupBoxCollapser.cpp
index 17719ed23e2331526feaea734e15303cb9c296ec..1d8113b58fb79bf7112b7c17deb50ea0080555e0 100644
--- a/GUI/CommonWidgets/GroupBoxCollapser.cpp
+++ b/GUI/Views/SampleDesigner/GroupBoxCollapser.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/CommonWidgets/GroupBoxCollapser.cpp
+//! @file      GUI/Views/SampleDesigner/GroupBoxCollapser.cpp
 //! @brief     Implements class GroupBoxCollapser
 //!
 //! @homepage  http://www.bornagainproject.org
diff --git a/GUI/CommonWidgets/GroupBoxCollapser.h b/GUI/Views/SampleDesigner/GroupBoxCollapser.h
similarity index 90%
rename from GUI/CommonWidgets/GroupBoxCollapser.h
rename to GUI/Views/SampleDesigner/GroupBoxCollapser.h
index 167c8252fbd9293d302120616fbec809eab42583..b3d5a3566505e19c5a085d6714f619bfb8bad07e 100644
--- a/GUI/CommonWidgets/GroupBoxCollapser.h
+++ b/GUI/Views/SampleDesigner/GroupBoxCollapser.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/CommonWidgets/GroupBoxCollapser.h
+//! @file      GUI/Views/SampleDesigner/GroupBoxCollapser.h
 //! @brief     Defines class GroupBoxCollapser
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_COMMONWIDGETS_GROUPBOXCOLLAPSER_H
-#define BORNAGAIN_GUI_COMMONWIDGETS_GROUPBOXCOLLAPSER_H
+#ifndef BORNAGAIN_GUI_VIEWS_SAMPLEDESIGNER_GROUPBOXCOLLAPSER_H
+#define BORNAGAIN_GUI_VIEWS_SAMPLEDESIGNER_GROUPBOXCOLLAPSER_H
 
 #include <QObject>
 
@@ -62,4 +62,4 @@ private:
 };
 
 
-#endif // BORNAGAIN_GUI_COMMONWIDGETS_GROUPBOXCOLLAPSER_H
+#endif // BORNAGAIN_GUI_VIEWS_SAMPLEDESIGNER_GROUPBOXCOLLAPSER_H
diff --git a/GUI/Views/SampleDesigner/InterferenceForm.cpp b/GUI/Views/SampleDesigner/InterferenceForm.cpp
index 29dadd5bc509a5594ccddd76a26968a187caf115..994b01f87efc5fc7e1db19eb8dac594922196b6c 100644
--- a/GUI/Views/SampleDesigner/InterferenceForm.cpp
+++ b/GUI/Views/SampleDesigner/InterferenceForm.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/SampleDesigner/InterferenceForm.h"
 #include "GUI/Items/InterferenceItems.h"
 #include "GUI/Items/ParticleLayoutItem.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/FormLayouter.h"
 #include "GUI/Views/SampleDesigner/SampleEditorController.h"
 #include "GUI/Views/SampleDesigner/SelectionContainerForm.h"
diff --git a/GUI/Views/SampleDesigner/LayerForm.cpp b/GUI/Views/SampleDesigner/LayerForm.cpp
index 9dc0ce3ddbe6a24ae9c31cb65ee4f229a5c2eeb4..043b355d68f016e97dcf74f9250cca48c5f2f189 100644
--- a/GUI/Views/SampleDesigner/LayerForm.cpp
+++ b/GUI/Views/SampleDesigner/LayerForm.cpp
@@ -16,7 +16,7 @@
 #include "GUI/Items/LayerItem.h"
 #include "GUI/Items/MultiLayerItem.h"
 #include "GUI/Models/Types/UIntDescriptor.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/MaterialInplaceForm.h"
 #include "GUI/Views/SampleDesigner/ParticleLayoutForm.h"
 #include "GUI/Views/SampleDesigner/SampleEditorController.h"
diff --git a/GUI/Views/SampleDesigner/MesoCrystalForm.cpp b/GUI/Views/SampleDesigner/MesoCrystalForm.cpp
index 458d239f021405d6f25412a8ceebfa8910817ef1..08086e1f2a9779e93fcc29a5a2cc2b73da20013a 100644
--- a/GUI/Views/SampleDesigner/MesoCrystalForm.cpp
+++ b/GUI/Views/SampleDesigner/MesoCrystalForm.cpp
@@ -17,7 +17,7 @@
 #include "GUI/Items/MesoCrystalItem.h"
 #include "GUI/Items/ParticleItem.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/FormLayouter.h"
 #include "GUI/Views/SampleDesigner/LayerEditorUtils.h"
 #include "GUI/Views/SampleDesigner/SampleEditorController.h"
diff --git a/GUI/Views/SampleDesigner/MultiLayerForm.cpp b/GUI/Views/SampleDesigner/MultiLayerForm.cpp
index 504deedfce3de330579f5457f14766eabb445769..d068f23ecbfe7a8add59842981f46498e923ac87 100644
--- a/GUI/Views/SampleDesigner/MultiLayerForm.cpp
+++ b/GUI/Views/SampleDesigner/MultiLayerForm.cpp
@@ -16,7 +16,7 @@
 #include "GUI/Items/MultiLayerItem.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
 #include "GUI/CommonWidgets/DoubleSpinBox.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/LayerEditorUtils.h"
 #include "GUI/Views/SampleDesigner/LayerForm.h"
 #include "GUI/Views/SampleDesigner/MesoCrystalForm.h"
diff --git a/GUI/Views/SampleDesigner/ParticleCompositionForm.cpp b/GUI/Views/SampleDesigner/ParticleCompositionForm.cpp
index 4dd1fb3ce1fa439fb807c19393b8feb318df26ad..a19daf21eb45eb4be750ab25cf7a3d58249b9d53 100644
--- a/GUI/Views/SampleDesigner/ParticleCompositionForm.cpp
+++ b/GUI/Views/SampleDesigner/ParticleCompositionForm.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/SampleDesigner/ParticleCompositionForm.h"
 #include "GUI/Items/ParticleCompositionItem.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/FormLayouter.h"
 #include "GUI/Views/SampleDesigner/LayerEditorUtils.h"
 #include "GUI/Views/SampleDesigner/SampleEditorController.h"
diff --git a/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp b/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp
index c9004fd32ca4d2f3231b919bddaa17d25a589202..ad84577dd2584111aad698b7df9a076321612a71 100644
--- a/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp
+++ b/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp
@@ -18,7 +18,7 @@
 #include "GUI/Items/ParticleCoreShellItem.h"
 #include "GUI/Items/ParticleItem.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/SampleEditorController.h"
 #include "GUI/Views/SampleDesigner/SelectionContainerForm.h"
 #include "GUI/utils/ActionFactory.h"
diff --git a/GUI/Views/SampleDesigner/ParticleForm.cpp b/GUI/Views/SampleDesigner/ParticleForm.cpp
index b994a4a733fd92b99ba2641f0220c36ecc5737ef..250d59bd064b82c85c0bd28e580fe17c1cf7181e 100644
--- a/GUI/Views/SampleDesigner/ParticleForm.cpp
+++ b/GUI/Views/SampleDesigner/ParticleForm.cpp
@@ -17,7 +17,7 @@
 #include "GUI/Items/FormFactorItems.h"
 #include "GUI/Items/ParticleItem.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/FormLayouter.h"
 #include "GUI/Views/SampleDesigner/MaterialInplaceForm.h"
 #include "GUI/Views/SampleDesigner/SampleEditorController.h"
diff --git a/GUI/Views/SampleDesigner/ParticleLayoutForm.cpp b/GUI/Views/SampleDesigner/ParticleLayoutForm.cpp
index 470e2289c0193e14d356305312ba18316de57e7d..98d95c5369cc70dba0abab55977b635f7315dec0 100644
--- a/GUI/Views/SampleDesigner/ParticleLayoutForm.cpp
+++ b/GUI/Views/SampleDesigner/ParticleLayoutForm.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/SampleDesigner/ParticleLayoutForm.h"
 #include "GUI/Items/ItemWithParticles.h"
 #include "GUI/Items/ParticleLayoutItem.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SampleDesigner/InterferenceForm.h"
 #include "GUI/Views/SampleDesigner/LayerEditorUtils.h"
 #include "GUI/Views/SampleDesigner/LayerForm.h"
diff --git a/GUI/Views/SampleDesigner/SampleListView.cpp b/GUI/Views/SampleDesigner/SampleListView.cpp
index afcd8b6ca361e70720610e3591d429f82146a8a4..8e8868ec9bc3753e77cd2aa0ea5e91bb25dc245c 100644
--- a/GUI/Views/SampleDesigner/SampleListView.cpp
+++ b/GUI/Views/SampleDesigner/SampleListView.cpp
@@ -19,6 +19,7 @@
 #include "GUI/Models/Sample/SampleListModel.h"
 #include "GUI/CommonWidgets/ItemViewOverlayButtons.h"
 #include "GUI/utils/ItemDelegateForHTML.h"
+#include "GUI/Project/projectmanager.h"
 #include <QAction>
 #include <QDialog>
 #include <QDialogButtonBox>
@@ -142,7 +143,8 @@ void SampleListView::createNewSample()
 void SampleListView::createSampleFromLibrary(const QString& classname, const QString& title,
                                              const QString& description)
 {
-    const QModelIndex newIndex = m_model->createSampleFromExamples(classname, title, description);
+    const QModelIndex newIndex = m_model->createSampleFromExamples(classname, title, description,
+        ProjectManager::instance()->document()->materialModel());
     setCurrentIndex(newIndex);
 }
 
diff --git a/GUI/Views/Toplevel/ProjectSettingsView.cpp b/GUI/Views/Toplevel/ProjectSettingsView.cpp
index 8dd5b2e729394df9d005c465b43c6691780620f3..4b09cff21655151eb0e768afbe4267f9756d8b04 100644
--- a/GUI/Views/Toplevel/ProjectSettingsView.cpp
+++ b/GUI/Views/Toplevel/ProjectSettingsView.cpp
@@ -17,7 +17,7 @@
 #include "GUI/Models/Data/ApplicationModels.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Project/projectdocument.h"
 #include "GUI/utils/qstringutils.h"
 #include "ui_ProjectSettingsView.h"
diff --git a/GUI/Views/Toplevel/SimulationView.cpp b/GUI/Views/Toplevel/SimulationView.cpp
index 4287d170403fd9c04f449490d16e13cca98c816f..808dedd6b8f706767610e227ccf6e8222b85c15d 100644
--- a/GUI/Views/Toplevel/SimulationView.cpp
+++ b/GUI/Views/Toplevel/SimulationView.cpp
@@ -26,7 +26,7 @@
 #include "GUI/Models/Sample/SampleModel.h"
 #include "GUI/Models/Sample/SampleValidator.h"
 #include "GUI/Items/SimulationOptionsItem.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SimulationWidgets/PythonScriptWidget.h"
 #include "GUI/mainwindow/mainwindow.h"
 #include "GUI/Project/projectdocument.h"
diff --git a/GUI/Views/Toplevel/WelcomeView.cpp b/GUI/Views/Toplevel/WelcomeView.cpp
index a0b0417020ff5b2f2fbcc2ef801692c34873f609..d5c7e51489f340150f7c3a3570a66c0ef56a4011 100644
--- a/GUI/Views/Toplevel/WelcomeView.cpp
+++ b/GUI/Views/Toplevel/WelcomeView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/Toplevel/WelcomeView.h"
-#include "GUI/CommonWidgets/GroupBoxCollapser.h"
+#include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Project/projectmanager.h"
 #include "GUI/utils/LayoutUtils.h"
 #include "GUI/utils/qstringutils.h"