diff --git a/GUI/Models/GUIExamplesFactory.cpp b/GUI/Models/GUIExamplesFactory.cpp
index 3911cfd032898f039fe45b666330ac7cec1642a5..d7160bde22d76fd1e52790dfb3611e8080069db2 100644
--- a/GUI/Models/GUIExamplesFactory.cpp
+++ b/GUI/Models/GUIExamplesFactory.cpp
@@ -17,51 +17,34 @@
 #include "Sample/Multilayer/MultiLayer.h"
 #include "Sample/StandardSamples/SampleBuilderFactory.h"
 #include <memory>
+#include <QMap>
 
-//! Defines correspondence between example name and real name of simulation from SimulationFactory
-QMap<QString, QString> init_NameToRegistry()
-{
-    QMap<QString, QString> result;
-    result["example01"] = "CylindersAndPrismsBuilder";
-    result["example02"] = "RadialParaCrystalBuilder";
-    result["example03"] = "HexParaCrystalBuilder";
-    result["example04"] = "CoreShellParticleBuilder";
-    result["example05"] = "MultiLayerWithRoughnessBuilder";
-    result["example06"] = "SquareLattice2DBuilder";
-    result["example07"] = "RotatedPyramidsBuilder";
-    result["example09"] = "ParticleCompositionBuilder";
-    result["example10"] = "MesoCrystalBuilder";
+namespace {
 
-    // temporary for testing
-    // result["example09"] = "MultipleLayoutBuilder";
-    // result["example09"] = "TwoTypesCylindersDistributionBuilder";
-    // result["example09"] = "RectParaCrystalBuilder";
-    // result["example09"] = "SizeDistributionLMAModelBuilder";
-    // result["example09"] = "CylindersInSSCABuilder";
-    // result["example09"] = "TransformBoxBuilder";
-    // result["example09"] = "BoxCompositionRotateZandYBuilder";
-    // result["example09"] = "CoreShellBoxRotateZandYBuilder";
-    // result["example09"] = "BoxStackCompositionBuilder";
-    // result["example09"] = "LargeCylindersInDWBABuilder";
-    // result["example09"] = "SlicedCompositionBuilder";
-    // result["example09"] = "RotatedPyramidsDistributionBuilder";
-    // result["example09"] = "SpheresWithLimitsDistributionBuilder";
-    // result["example09"] = "ConesWithLimitsDistributionBuilder";
-    return result;
-}
+QMap<QString, QString> name2registry = {
+    {"example01", "CylindersAndPrismsBuilder"},
+    {"example02", "RadialParaCrystalBuilder"},
+    {"example03", "HexParaCrystalBuilder"},
+    {"example04", "CoreShellParticleBuilder"},
+    {"example05", "MultiLayerWithRoughnessBuilder"},
+    {"example06", "SquareLattice2DBuilder"},
+    {"example07", "RotatedPyramidsBuilder"},
+    {"example09", "ParticleCompositionBuilder"},
+    {"example10", "MesoCrystalBuilder"},
+};
 
-QMap<QString, QString> GUIExamplesFactory::m_name_to_registry = init_NameToRegistry();
+} // namespace
 
 bool GUIExamplesFactory::isValidExampleName(const QString& name)
 {
-    return m_name_to_registry.contains(name);
+    return name2registry.contains(name);
 }
 
 //! Populate sample model with
 SessionItem* GUIExamplesFactory::createSampleItems(const QString& name, SampleModel* sampleModel,
                                                    MaterialModel* materialModel)
 {
-    QString exampleName = m_name_to_registry[name];
+    QString exampleName = name2registry[name];
 
     SampleBuilderFactory factory;
     const std::unique_ptr<MultiLayer> sample(factory.createSampleByName(exampleName.toStdString()));
diff --git a/GUI/Models/GUIExamplesFactory.h b/GUI/Models/GUIExamplesFactory.h
index eb1753e8216b617fa53c5bed9a0a1050908c05e4..46b309cf8213889024dea767bbc17bf469dad887 100644
--- a/GUI/Models/GUIExamplesFactory.h
+++ b/GUI/Models/GUIExamplesFactory.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_GUIEXAMPLESFACTORY_H
 #define BORNAGAIN_GUI_MODELS_GUIEXAMPLESFACTORY_H
 
-#include <QMap>
+#include <QString>
 
 class SessionItem;
 class SampleModel;
@@ -28,10 +28,6 @@ public:
 
     static SessionItem* createSampleItems(const QString& name, SampleModel* sampleModel,
                                           MaterialModel* materialModel);
-
-private:
-    static QMap<QString, QString> m_name_to_registry;
-    //!< correspondence of GUI example name and name from StandardSamples registry
 };
 
 #endif // BORNAGAIN_GUI_MODELS_GUIEXAMPLESFACTORY_H
diff --git a/GUI/Views/SampleDesigner/DesignerScene.cpp b/GUI/Views/SampleDesigner/DesignerScene.cpp
index baaef554bda440ede59200b0580e40326c36ca9d..ddfaf5610622182d68af9111c8a1909b840dd728 100644
--- a/GUI/Views/SampleDesigner/DesignerScene.cpp
+++ b/GUI/Views/SampleDesigner/DesignerScene.cpp
@@ -85,28 +85,25 @@ DesignerScene::~DesignerScene()
 void DesignerScene::setSelectionModel(QItemSelectionModel* model, FilterPropertyProxy* proxy)
 {
     ASSERT(model);
+    if (model == m_selectionModel)
+        return;
 
-    if (model != m_selectionModel) {
-
-        if (m_selectionModel) {
-            disconnect(m_selectionModel, &QItemSelectionModel::selectionChanged, this,
-                       &DesignerScene::onSessionSelectionChanged);
-        }
+    if (m_selectionModel)
+        disconnect(m_selectionModel, &QItemSelectionModel::selectionChanged, this,
+                   &DesignerScene::onSessionSelectionChanged);
 
-        m_selectionModel = model;
-        m_proxy = proxy;
+    m_selectionModel = model;
+    m_proxy = proxy;
 
-        connect(m_selectionModel, &QItemSelectionModel::selectionChanged, this,
-                &DesignerScene::onSessionSelectionChanged);
-    }
+    connect(m_selectionModel, &QItemSelectionModel::selectionChanged, this,
+            &DesignerScene::onSessionSelectionChanged);
 }
 
 IView* DesignerScene::getViewForItem(SessionGraphicsItem* item)
 {
     auto it = m_ItemToView.find(item);
-    if (it != m_ItemToView.end()) {
+    if (it != m_ItemToView.end())
         return it.value();
-    }
     return nullptr;
 }
 
@@ -167,13 +164,8 @@ void DesignerScene::onSessionSelectionChanged(const QItemSelection& /* selected
     for (QMap<SessionGraphicsItem*, IView*>::iterator it = m_ItemToView.begin();
          it != m_ItemToView.end(); ++it) {
         QModelIndex index = m_proxy->mapFromSource(m_sampleModel->indexOfItem(it.key()));
-        if (index.isValid()) {
-            if (m_selectionModel->isSelected(index)) {
-                it.value()->setSelected(true);
-            } else {
-                it.value()->setSelected(false);
-            }
-        }
+        if (index.isValid())
+            it.value()->setSelected(m_selectionModel->isSelected(index));
     }
 
     m_block_selection = false;
@@ -221,10 +213,8 @@ void DesignerScene::updateViews(const QModelIndex& parentIndex, IView* parentVie
                 continue;
 
             childView = addViewForItem(item);
-            if (childView) {
-                if (parentView)
-                    parentView->addView(childView, childCount++);
-            }
+            if (childView && parentView)
+                parentView->addView(childView, childCount++);
         }
 
         updateViews(itemIndex, childView);
@@ -236,19 +226,15 @@ IView* DesignerScene::addViewForItem(SessionGraphicsItem* item)
 {
     ASSERT(item);
 
-    IView* view = getViewForItem(item);
+    if (IView* view = getViewForItem(item))
+        return view;
 
-    if (!view) {
-        view = SampleViewFactory::createSampleView(item->modelType());
-        if (view) {
-            m_ItemToView[item] = view;
-            view->setParameterizedItem(item);
-            addItem(view);
-            return view;
-        }
-    } else {
-        // view for item exists
-    }
+    IView* view = SampleViewFactory::createSampleView(item->modelType());
+    if (!view)
+        return nullptr;
+    m_ItemToView[item] = view;
+    view->setParameterizedItem(item);
+    addItem(view);
     return view;
 }
 
@@ -263,13 +249,8 @@ void DesignerScene::deleteViews(const QModelIndex& viewIndex)
 {
     for (int i_row = 0; i_row < m_sampleModel->rowCount(viewIndex); ++i_row) {
         QModelIndex itemIndex = m_sampleModel->index(i_row, 0, viewIndex);
-
-        if (SessionItem* item = m_sampleModel->itemForIndex(itemIndex)) {
+        if (SessionItem* item = m_sampleModel->itemForIndex(itemIndex))
             removeItemViewFromScene(item);
-
-        } else {
-            // not a parameterized graphics item
-        }
         deleteViews(itemIndex);
     }
     removeItemViewFromScene(m_sampleModel->itemForIndex(viewIndex)); // deleting view itself
@@ -378,7 +359,8 @@ void DesignerScene::onEstablishedConnection(NodeEditorConnection* connection_ptr
         if (parentView->getInputPortIndex(connection->inputPort()) == 0) {
             parent->setCore(child);
             return;
-        } else if (parentView->getInputPortIndex(connection->inputPort()) == 1) {
+        }
+        if (parentView->getInputPortIndex(connection->inputPort()) == 1) {
             parent->setShell(child);
             return;
         }
@@ -411,9 +393,8 @@ void DesignerScene::removeConnections(IView* view)
 void DesignerScene::dragMoveEvent(QGraphicsSceneDragDropEvent* event)
 {
     const DesignerMimeData* mimeData = checkDragEvent(event);
-    if (isAcceptedByMultiLayer(mimeData, event)) {
+    if (isAcceptedByMultiLayer(mimeData, event))
         QGraphicsScene::dragMoveEvent(event);
-    }
 }
 
 //! Hadles drop event
@@ -422,52 +403,52 @@ void DesignerScene::dragMoveEvent(QGraphicsSceneDragDropEvent* event)
 void DesignerScene::dropEvent(QGraphicsSceneDragDropEvent* event)
 {
     const DesignerMimeData* mimeData = checkDragEvent(event);
-    if (mimeData) {
+    if (!mimeData)
+        return;
 
-        // to have possibility to drop MultiLayer on another MultiLayer
-        // * edit function DesignerScene::isAcceptedByMultiLayer
-        // * edit MultiLayerItem for addToValidChildren
-        // * remove method MultiLayerView::itemChange
+    // to have possibility to drop MultiLayer on another MultiLayer
+    // * edit function DesignerScene::isAcceptedByMultiLayer
+    // * edit MultiLayerItem for addToValidChildren
+    // * remove method MultiLayerView::itemChange
 
-        if (isAcceptedByMultiLayer(mimeData, event)) {
-            // certain views can be dropped on MultiLayer and so will be processed there
-            QGraphicsScene::dropEvent(event);
+    if (isAcceptedByMultiLayer(mimeData, event)) {
+        // certain views can be dropped on MultiLayer and so will be processed there
+        QGraphicsScene::dropEvent(event);
+        return;
+    }
 
+    // other views can be dropped on canvas anywhere
+    if (SampleViewFactory::isValidType(mimeData->getClassName())) {
+        SessionGraphicsItem* new_item(nullptr);
+        if (mimeData->getClassName().startsWith("FormFactor")) {
+            ParticleItem* new_particle = m_sampleModel->insertItem<ParticleItem>();
+            QString ffName = mimeData->getClassName();
+            ffName.remove("FormFactor");
+            new_particle->setFormFactor(ffName);
+            new_item = new_particle;
         } else {
-            // other views can be dropped on canvas anywhere
-            if (SampleViewFactory::isValidType(mimeData->getClassName())) {
-
-                SessionGraphicsItem* new_item(nullptr);
-                if (mimeData->getClassName().startsWith("FormFactor")) {
-                    ParticleItem* new_particle = m_sampleModel->insertItem<ParticleItem>();
-                    QString ffName = mimeData->getClassName();
-                    ffName.remove("FormFactor");
-                    new_particle->setFormFactor(ffName);
-                    new_item = new_particle;
-                } else {
-                    new_item = dynamic_cast<SessionGraphicsItem*>(
-                        m_sampleModel->insertNewItem(mimeData->getClassName()));
-                }
-
-                // propagating drop coordinates to SessionItem
-                QRectF boundingRect = DesignerHelper::getDefaultBoundingRect(new_item->modelType());
-                new_item->setXPos(event->scenePos().x() - boundingRect.width() / 2);
-                new_item->setYPos(event->scenePos().y() - boundingRect.height() / 2);
-                clearSelection();
-                selectItem(new_item);
-            } else if (GUIExamplesFactory::isValidExampleName(mimeData->getClassName())) {
-                SessionItem* topItem = GUIExamplesFactory::createSampleItems(
-                    mimeData->getClassName(), m_sampleModel, m_materialModel);
-                QRectF boundingRect = DesignerHelper::getDefaultBoundingRect(topItem->modelType());
-                QPointF reference(event->scenePos().x() - boundingRect.width() / 2,
-                                  event->scenePos().y() - boundingRect.height() / 2);
-                m_aligner->alignSample(topItem, reference, true);
-                clearSelection();
-                selectItem(topItem, true);
-            }
-            adjustSceneRect();
+            new_item = dynamic_cast<SessionGraphicsItem*>(
+                m_sampleModel->insertNewItem(mimeData->getClassName()));
         }
+
+        // propagating drop coordinates to SessionItem
+        QRectF boundingRect = DesignerHelper::getDefaultBoundingRect(new_item->modelType());
+        new_item->setXPos(event->scenePos().x() - boundingRect.width() / 2);
+        new_item->setYPos(event->scenePos().y() - boundingRect.height() / 2);
+        clearSelection();
+        selectItem(new_item);
+
+    } else if (GUIExamplesFactory::isValidExampleName(mimeData->getClassName())) {
+        SessionItem* topItem = GUIExamplesFactory::createSampleItems(
+            mimeData->getClassName(), m_sampleModel, m_materialModel);
+        QRectF boundingRect = DesignerHelper::getDefaultBoundingRect(topItem->modelType());
+        QPointF reference(event->scenePos().x() - boundingRect.width() / 2,
+                          event->scenePos().y() - boundingRect.height() / 2);
+        m_aligner->alignSample(topItem, reference, true);
+        clearSelection();
+        selectItem(topItem, true);
     }
+    adjustSceneRect();
 }
 
 //! returns proper MimeData if the object can be hadled by graphics scene
@@ -484,9 +465,8 @@ const DesignerMimeData* DesignerScene::checkDragEvent(QGraphicsSceneDragDropEven
 
 void DesignerScene::mouseMoveEvent(QGraphicsSceneMouseEvent* event)
 {
-    if (isLayerDragged()) {
+    if (isLayerDragged())
         invalidate(); // to redraw vertical dashed line which denotes where to drag the layer
-    }
     QGraphicsScene::mouseMoveEvent(event);
 }
 
@@ -524,19 +504,13 @@ bool DesignerScene::isAcceptedByMultiLayer(const DesignerMimeData* mimeData,
     //    }
 
     // layer can be inserted in MultiLayer
-    if (mimeData->getClassName() == "Layer" && isMultiLayerNearby(event)) {
-        return true;
-    }
-    return false;
+    return mimeData->getClassName() == "Layer" && isMultiLayerNearby(event);
 }
 
 bool DesignerScene::isLayerDragged() const
 {
     ILayerView* layer = dynamic_cast<ILayerView*>(mouseGrabberItem());
-    if (layer && !m_layer_interface_line.isNull()) {
-        return true;
-    }
-    return false;
+    return layer && !m_layer_interface_line.isNull();
 }
 
 void DesignerScene::onSmartAlign()
diff --git a/GUI/Views/SampleDesigner/SampleViewFactory.cpp b/GUI/Views/SampleDesigner/SampleViewFactory.cpp
index a6a800ed8e30838e26455b3a27115b0b2a088afe..ba6077a9b95a4abf377ce3cc0838475576753ab3 100644
--- a/GUI/Views/SampleDesigner/SampleViewFactory.cpp
+++ b/GUI/Views/SampleDesigner/SampleViewFactory.cpp
@@ -32,28 +32,31 @@
 #include "GUI/Views/SampleDesigner/ParticleView.h"
 #include "GUI/Views/SampleDesigner/TransformationView.h"
 
-QStringList SampleViewFactory::m_valid_item_types = {MultiLayerItem::M_TYPE,
-                                                     LayerItem::M_TYPE,
-                                                     ParticleLayoutItem::M_TYPE,
-                                                     ParticleItem::M_TYPE,
-                                                     TransformationItem::M_TYPE,
-                                                     ParticleCoreShellItem::M_TYPE,
-                                                     ParticleCompositionItem::M_TYPE,
-                                                     MesoCrystalItem::M_TYPE,
-                                                     Interference1DLatticeItem::M_TYPE,
-                                                     Interference2DLatticeItem::M_TYPE,
-                                                     Interference2DParaCrystalItem::M_TYPE,
-                                                     InterferenceFinite2DLatticeItem::M_TYPE,
-                                                     InterferenceHardDiskItem::M_TYPE,
-                                                     InterferenceRadialParaCrystalItem::M_TYPE};
+namespace {
+
+QStringList valid_item_types = {MultiLayerItem::M_TYPE,
+    LayerItem::M_TYPE,
+    ParticleLayoutItem::M_TYPE,
+    ParticleItem::M_TYPE,
+    TransformationItem::M_TYPE,
+    ParticleCoreShellItem::M_TYPE,
+    ParticleCompositionItem::M_TYPE,
+    MesoCrystalItem::M_TYPE,
+    Interference1DLatticeItem::M_TYPE,
+    Interference2DLatticeItem::M_TYPE,
+    Interference2DParaCrystalItem::M_TYPE,
+    InterferenceFinite2DLatticeItem::M_TYPE,
+    InterferenceHardDiskItem::M_TYPE,
+    InterferenceRadialParaCrystalItem::M_TYPE};
+
+} // namespace
 
 bool SampleViewFactory::isValidType(const QString& model_type)
 {
     if (model_type.startsWith("FormFactor")) {
         return true;
-    } else {
-        return m_valid_item_types.contains(model_type);
     }
+    return valid_item_types.contains(model_type);
 }
 
 IView* SampleViewFactory::createSampleView(const QString& model_type)
diff --git a/GUI/Views/SampleDesigner/SampleViewFactory.h b/GUI/Views/SampleDesigner/SampleViewFactory.h
index ecb769fa2f655c26abbad51622905ed070bf4515..744ef0f3127cee7d8e0df893505d0f370ccfbe54 100644
--- a/GUI/Views/SampleDesigner/SampleViewFactory.h
+++ b/GUI/Views/SampleDesigner/SampleViewFactory.h
@@ -15,7 +15,6 @@
 #ifndef BORNAGAIN_GUI_VIEWS_SAMPLEDESIGNER_SAMPLEVIEWFACTORY_H
 #define BORNAGAIN_GUI_VIEWS_SAMPLEDESIGNER_SAMPLEVIEWFACTORY_H
 
-#include <QMap>
 #include <QStringList>
 
 class IView;
@@ -24,11 +23,6 @@ class SampleViewFactory {
 public:
     static bool isValidType(const QString& model_type);
     static IView* createSampleView(const QString& model_type);
-
-    static bool isValidExampleName();
-
-private:
-    static QStringList m_valid_item_types;
 };
 
 #endif // BORNAGAIN_GUI_VIEWS_SAMPLEDESIGNER_SAMPLEVIEWFACTORY_H