diff --git a/GUI/Model/Model/FitParameterModel.cpp b/GUI/Model/Model/FitParameterModel.cpp
index 466853eb8dd25f92ed336a45d3c88f9a625f5ca3..793d73314bdac9b3099736a42d8298a16f9dda9b 100644
--- a/GUI/Model/Model/FitParameterModel.cpp
+++ b/GUI/Model/Model/FitParameterModel.cpp
@@ -31,8 +31,8 @@ FitParameterModel::FitParameterModel(FitParameterContainerItem* fitParContainer,
     addColumn(COL_MAX, "Max", "Upper bound on fit parameter value");
 
     connectContainer();
-    connect(fitParContainer, &QObject::destroyed, [this] { m_fitParameterContainer = nullptr; });
-    connect(jobItem, &QObject::destroyed, [this] { m_jobItem = nullptr; });
+    connect(fitParContainer, &QObject::destroyed, [&] { m_fitParameterContainer = nullptr; });
+    connect(jobItem, &QObject::destroyed, [&] { m_jobItem = nullptr; });
 }
 
 Qt::ItemFlags FitParameterModel::flags(const QModelIndex& index) const
diff --git a/GUI/Model/Project/ProjectDocument.cpp b/GUI/Model/Project/ProjectDocument.cpp
index 4b30b6ccb5d79cfe53666ce9c2a51398d922f7c6..ff1b129fa357d06571abebd1fd4fbb930bc21c92 100644
--- a/GUI/Model/Project/ProjectDocument.cpp
+++ b/GUI/Model/Project/ProjectDocument.cpp
@@ -55,9 +55,9 @@ ProjectDocument::ProjectDocument()
     , m_lastViewActive(GUI::ID::ViewId::Instrument)
 {
     connect(&m_instrumentEditController, &MultiInstrumentNotifier::instrumentAddedOrRemoved, this,
-            &ProjectDocument::onModelChanged, Qt::UniqueConnection);
+            &ProjectDocument::onModelChanged);
     connect(&m_instrumentEditController, &MultiInstrumentNotifier::instrumentChanged, this,
-            &ProjectDocument::onModelChanged, Qt::UniqueConnection);
+            &ProjectDocument::onModelChanged);
 
     m_linkManager = std::make_unique<LinkInstrumentManager>(this);
     setObjectName("ProjectDocument");
diff --git a/GUI/Model/Sample/MaterialModel.cpp b/GUI/Model/Sample/MaterialModel.cpp
index cd95e6d36443db8fa2dd01a3f83ab16ba2a9f4af..d1f038cd23ba0353d4fc224a0f1cde203e1c86ee 100644
--- a/GUI/Model/Sample/MaterialModel.cpp
+++ b/GUI/Model/Sample/MaterialModel.cpp
@@ -86,7 +86,7 @@ MaterialItem* MaterialModel::addMaterialItem(MaterialItem* materialItem, bool si
     ASSERT(materialItem);
     materialItem->disconnect(this);
     m_materials << materialItem;
-    connect(materialItem, &MaterialItem::dataChanged, [this] { emit materialChanged(); });
+    connect(materialItem, &MaterialItem::dataChanged, [&] { emit materialChanged(); });
 
     if (signalAdding)
         emit materialAddedOrRemoved();
diff --git a/GUI/View/Access/DataAccessWidget.cpp b/GUI/View/Access/DataAccessWidget.cpp
index 73337bb843aced1d8e54893f336d2fefe0c271a9..9d9df5a42a3fdf30dfa37cc6c897c61ace0a4c8c 100644
--- a/GUI/View/Access/DataAccessWidget.cpp
+++ b/GUI/View/Access/DataAccessWidget.cpp
@@ -32,7 +32,7 @@ void DataAccessWidget::setBaseItem(QObject* item)
     ASSERT(jobItem() || realItem());
 
     disconnect(m_item, &QObject::destroyed, this, nullptr);
-    connect(m_item, &QObject::destroyed, [this] { m_item = nullptr; });
+    connect(m_item, &QObject::destroyed, [&] { m_item = nullptr; });
 }
 
 QList<QAction*> DataAccessWidget::actionList()
diff --git a/GUI/View/Canvas/MaskEditorActions.cpp b/GUI/View/Canvas/MaskEditorActions.cpp
index 7de53f185d771aa827c8a5af0dc50a39188c7d56..6637b62ca6cae29b02b0eb0a85b37d0990cfad5e 100644
--- a/GUI/View/Canvas/MaskEditorActions.cpp
+++ b/GUI/View/Canvas/MaskEditorActions.cpp
@@ -37,12 +37,12 @@ MaskEditorActions::MaskEditorActions(QWidget* parent)
     m_bringToFrontAction->setIcon(QIcon(":/images/maskeditor_bringtofront.svg"));
     m_bringToFrontAction->setToolTip("Rise selected mask one level up (PgUp)");
     m_bringToFrontAction->setShortcuts(QKeySequence::MoveToPreviousPage);
-    connect(m_bringToFrontAction, &QAction::triggered, [this] { changeMaskStackingOrder(true); });
+    connect(m_bringToFrontAction, &QAction::triggered, [&] { changeMaskStackingOrder(true); });
 
     m_sendToBackAction->setIcon(QIcon(":/images/maskeditor_sendtoback.svg"));
     m_sendToBackAction->setToolTip("Lower selected mask one level down (PgDown)");
     m_sendToBackAction->setShortcuts(QKeySequence::MoveToNextPage);
-    connect(m_sendToBackAction, &QAction::triggered, [this] { changeMaskStackingOrder(false); });
+    connect(m_sendToBackAction, &QAction::triggered, [&] { changeMaskStackingOrder(false); });
 
     m_deleteMaskAction->setToolTip("Remove selected mask (Del)");
     m_deleteMaskAction->setShortcuts(QKeySequence::Delete);
diff --git a/GUI/View/Canvas/MaskToolbox.cpp b/GUI/View/Canvas/MaskToolbox.cpp
index c8f2dd39380cce3f950a2adb08c23d4f4dfb8ff6..3a22dc943f3cfc0e7b1b1a34ecec7a05d0db7385 100644
--- a/GUI/View/Canvas/MaskToolbox.cpp
+++ b/GUI/View/Canvas/MaskToolbox.cpp
@@ -155,8 +155,8 @@ MaskToolbox::MaskToolbox(MaskEditorActions* actions, QWidget* parent)
     presentationButton->setToolTip("Press and hold to see mask results.");
     addWidget(presentationButton);
 
-    connect(presentationButton, &QToolButton::pressed, [this] { emit presentationChange(true); });
-    connect(presentationButton, &QToolButton::released, [this] { emit presentationChange(false); });
+    connect(presentationButton, &QToolButton::pressed, [&] { emit presentationChange(true); });
+    connect(presentationButton, &QToolButton::released, [&] { emit presentationChange(false); });
 
     auto* propertyPanelButton = new QToolButton(this);
     propertyPanelButton->setIcon(QIcon(":/images/maskeditor_toolpanel.svg"));
diff --git a/GUI/View/Canvas/SpecularDataCanvas.cpp b/GUI/View/Canvas/SpecularDataCanvas.cpp
index c5ead40738688f1fe6d4500d8ce2defbd1891412..a5039c97b53e3282691ea6f7aa686d38044042a2 100644
--- a/GUI/View/Canvas/SpecularDataCanvas.cpp
+++ b/GUI/View/Canvas/SpecularDataCanvas.cpp
@@ -40,14 +40,12 @@ SpecularDataCanvas::SpecularDataCanvas(QWidget* parent)
     m_reset_view_action->setIcon(QIcon(":/images/camera-metering-center.svg"));
     m_reset_view_action->setToolTip("Reset view\n"
                                     "x,y axes range will be set to default");
-    connect(m_reset_view_action, &QAction::triggered, this, &SpecularDataCanvas::onResetViewAction,
-            Qt::UniqueConnection);
+    connect(m_reset_view_action, &QAction::triggered, this, &SpecularDataCanvas::onResetViewAction);
 
     m_save_plot_action->setText("Save");
     m_save_plot_action->setIcon(QIcon(":/images/content-save-outline.svg"));
     m_save_plot_action->setToolTip("Save plot");
-    connect(m_save_plot_action, &QAction::triggered, this, &SpecularDataCanvas::onSavePlotAction,
-            Qt::UniqueConnection);
+    connect(m_save_plot_action, &QAction::triggered, this, &SpecularDataCanvas::onSavePlotAction);
 
     enableDeprecatedOnMousePress(true); // true for legacy reasons
 }
diff --git a/GUI/View/Combo/ItemComboWidget.cpp b/GUI/View/Combo/ItemComboWidget.cpp
index a20d6a8134d928725a480ebad797aaf9448df957..1b142aafe4bb442c84ad83e4f1a7cd998a38f624 100644
--- a/GUI/View/Combo/ItemComboWidget.cpp
+++ b/GUI/View/Combo/ItemComboWidget.cpp
@@ -97,7 +97,7 @@ void ItemComboWidget::setTheItem(QObject* item)
     ASSERT(jobItem() || realItem());
 
     disconnect(m_item, &QObject::destroyed, this, nullptr);
-    connect(m_item, &QObject::destroyed, [this] { m_item = nullptr; });
+    connect(m_item, &QObject::destroyed, [&] { m_item = nullptr; });
 
     setToolbarVisible(!itemPresentation().isEmpty());
     m_toolbar->setPresentationList(presentationList(), activePresentationList());
diff --git a/GUI/View/Data/DatafilesSelector.cpp b/GUI/View/Data/DatafilesSelector.cpp
index 271a285e4897f57460f598063d3862b7c7357a46..315f5e676933690c11bc7b188930c05d47de9a0e 100644
--- a/GUI/View/Data/DatafilesSelector.cpp
+++ b/GUI/View/Data/DatafilesSelector.cpp
@@ -75,13 +75,13 @@ DatafilesSelector::DatafilesSelector()
     m_import2dDataAction->setIcon(QIcon(":/images/shape-square-plus.svg"));
     m_import2dDataAction->setIconText("2D");
     m_import2dDataAction->setToolTip("Import 2D data");
-    connect(m_import2dDataAction, &QAction::triggered, [this] { importData2D(); });
+    connect(m_import2dDataAction, &QAction::triggered, [&] { importData2D(); });
 
     m_import1dDataAction->setText("Import 1D data");
     m_import1dDataAction->setIcon(QIcon(":/images/shape-square-plus.svg"));
     m_import1dDataAction->setIconText("1D");
     m_import1dDataAction->setToolTip("Import 1D data");
-    connect(m_import1dDataAction, &QAction::triggered, [this] { importData1D(); });
+    connect(m_import1dDataAction, &QAction::triggered, [&] { importData1D(); });
 
     m_renameDataAction->setText("Rename");
     m_renameDataAction->setIcon(QIcon()); // #baTODO: Icon needed?
@@ -121,9 +121,9 @@ DatafilesSelector::DatafilesSelector()
     connect(m_treeView, &QTreeView::customContextMenuRequested, this,
             &DatafilesSelector::onContextMenuRequest);
 
-    connect(m_treeModel, &QAbstractItemModel::modelReset, [this] { m_treeView->expandAll(); });
+    connect(m_treeModel, &QAbstractItemModel::modelReset, [&] { m_treeView->expandAll(); });
 
-    connect(m_treeModel, &QAbstractItemModel::rowsInserted, [this] { m_treeView->expandAll(); });
+    connect(m_treeModel, &QAbstractItemModel::rowsInserted, [&] { m_treeView->expandAll(); });
 
     connect(m_treeView->selectionModel(), &QItemSelectionModel::selectionChanged, this,
             &DatafilesSelector::onSelectionChanged, Qt::UniqueConnection);
diff --git a/GUI/View/Fit/FitSessionWidget.cpp b/GUI/View/Fit/FitSessionWidget.cpp
index 9473ce72704d96d9a3c171935e70a83ab8d51b97..fe0124d34dbd26eaad937bf94e47ae41a41896d3 100644
--- a/GUI/View/Fit/FitSessionWidget.cpp
+++ b/GUI/View/Fit/FitSessionWidget.cpp
@@ -78,8 +78,7 @@ void FitSessionWidget::setSessionController(FitSessionController* sessionControl
     if (m_sessionController) {
         connect(m_sessionController, &FitSessionController::fittingError, this,
                 &FitSessionWidget::onFittingError);
-        connect(m_sessionController, &QObject::destroyed,
-                [this] { m_sessionController = nullptr; });
+        connect(m_sessionController, &QObject::destroyed, [&] { m_sessionController = nullptr; });
         connect(m_controlWidget, &RunFitControlWidget::startFittingPushed, m_sessionController,
                 &FitSessionController::onStartFittingRequest);
         connect(m_controlWidget, &RunFitControlWidget::stopFittingPushed, m_sessionController,
diff --git a/GUI/View/FitControl/GUIFitObserver.cpp b/GUI/View/FitControl/GUIFitObserver.cpp
index 882399a13b78c34c3868e3ada2cded4f978db3b9..2d5a6ca045827707a08544bc593c8eb9a7f204e3 100644
--- a/GUI/View/FitControl/GUIFitObserver.cpp
+++ b/GUI/View/FitControl/GUIFitObserver.cpp
@@ -38,7 +38,7 @@ void GUIFitObserver::update(const FitObjective* subject)
         return; // plotting still works, will skip iteration
 
     if (m_block_update_plots)
-        m_on_finish_notifier.wait(lock, [this] { return m_block_update_plots; });
+        m_on_finish_notifier.wait(lock, [&] { return m_block_update_plots; });
 
     FitProgressInfo info;
     info.m_chi2 = subject->iterationInfo().chi2();
diff --git a/GUI/View/FitControl/MinimizerSettingsWidget.cpp b/GUI/View/FitControl/MinimizerSettingsWidget.cpp
index 74c78590c082bda3e5810296849d8b72e3d07eff..87a907c23b49a2e15b956623bb4bb4b65bceb623 100644
--- a/GUI/View/FitControl/MinimizerSettingsWidget.cpp
+++ b/GUI/View/FitControl/MinimizerSettingsWidget.cpp
@@ -59,7 +59,7 @@ void MinimizerSettingsWidget::setMinContainerItem(MinimizerContainerItem* contai
 
     m_mainLayout->addRow("Objective metric:",
                          GUI::Util::createComboBox(
-                             [this] { return m_containerItem->objectiveMetricCombo(); },
+                             [&] { return m_containerItem->objectiveMetricCombo(); },
                              [this](const QString& t) {
                                  m_containerItem->setCurrentObjectiveMetric(t);
                                  gDoc->setModified();
@@ -69,7 +69,7 @@ void MinimizerSettingsWidget::setMinContainerItem(MinimizerContainerItem* contai
                              "and experimental data"));
     m_mainLayout->addRow("Norm function:",
                          GUI::Util::createComboBox(
-                             [this] { return m_containerItem->normFunctionCombo(); },
+                             [&] { return m_containerItem->normFunctionCombo(); },
                              [this](const QString& t) {
                                  m_containerItem->setCurrentNormFunction(t);
                                  gDoc->setModified();
diff --git a/GUI/View/FitControl/RunFitControlWidget.cpp b/GUI/View/FitControl/RunFitControlWidget.cpp
index c33dd95cae366cd86930b13b1afdaad0539902f2..f5a2f5ec7b77340b99b954beb4130904245e50c0 100644
--- a/GUI/View/FitControl/RunFitControlWidget.cpp
+++ b/GUI/View/FitControl/RunFitControlWidget.cpp
@@ -88,8 +88,7 @@ RunFitControlWidget::RunFitControlWidget()
     connect(m_startButton, &QPushButton::clicked, [&] { emit startFittingPushed(); });
     connect(m_stopButton, &QPushButton::clicked, [&] { emit stopFittingPushed(); });
     connect(m_updButton, &QPushButton::clicked, [&] { emit updFromTreePushed(); });
-    connect(m_intervalSlider, &QSlider::valueChanged, this,
-            &RunFitControlWidget::onSliderValueChanged);
+    connect(m_intervalSlider, &QSlider::valueChanged, [&](int i) { onSliderValueChanged(i); });
 
     setEnabled(false);
 }
diff --git a/GUI/View/FitControl/RunFitControlWidget.h b/GUI/View/FitControl/RunFitControlWidget.h
index d834900ed2853b013c891ab1da0298532377ebee..fc12832d599e0c198ba11b00d2f7f77ae8b2c920 100644
--- a/GUI/View/FitControl/RunFitControlWidget.h
+++ b/GUI/View/FitControl/RunFitControlWidget.h
@@ -44,10 +44,8 @@ signals:
 public slots:
     void onFittingError(const QString& what);
 
-private slots:
-    void onSliderValueChanged(int value);
-
 private:
+    void onSliderValueChanged(int value);
     int sliderUpdateInterval();
     int sliderValueToUpdateInterval(int value);
     int updateIntervalToSliderValue(int updInterval);
diff --git a/GUI/View/Frame/Fit1DFrame.cpp b/GUI/View/Frame/Fit1DFrame.cpp
index 1c709f50a6310cd821be387b459a85afdfcda0cf..1f479d34e472c15ebbd103610d6df0e091a6a327 100644
--- a/GUI/View/Frame/Fit1DFrame.cpp
+++ b/GUI/View/Frame/Fit1DFrame.cpp
@@ -71,12 +71,11 @@ Fit1DFrame::Fit1DFrame(QWidget* parent)
     m_resetViewAction->setText("Center view");
     m_resetViewAction->setIcon(QIcon(":/images/camera-metering-center.svg"));
     m_resetViewAction->setToolTip("Reset View");
-    connect(m_resetViewAction, &QAction::triggered, this, &Fit1DFrame::onResetViewAction,
-            Qt::UniqueConnection);
+    connect(m_resetViewAction, &QAction::triggered, this, &Fit1DFrame::onResetViewAction);
 
     m_scaleEditor->setVisible(false);
     connect(m_scaleEditor, &DataPropertyWidget::axesRangeResetRequested, this,
-            &Fit1DFrame::onResetViewAction, Qt::UniqueConnection);
+            &Fit1DFrame::onResetViewAction);
 }
 
 void Fit1DFrame::setJobOrDatafileItem(QObject* item)
diff --git a/GUI/View/Frame/Fit2DFrame.cpp b/GUI/View/Frame/Fit2DFrame.cpp
index d979617c8e628b5161457a643c814912b4b71f4a..32d2a47e5fe852131c6b08b41c4ced168f807fc9 100644
--- a/GUI/View/Frame/Fit2DFrame.cpp
+++ b/GUI/View/Frame/Fit2DFrame.cpp
@@ -73,12 +73,11 @@ Fit2DFrame::Fit2DFrame()
     m_resetViewAction->setText("Center view");
     m_resetViewAction->setIcon(QIcon(":/images/camera-metering-center.svg"));
     m_resetViewAction->setToolTip("Reset View");
-    connect(m_resetViewAction, &QAction::triggered, this, &Fit2DFrame::onResetViewAction,
-            Qt::UniqueConnection);
+    connect(m_resetViewAction, &QAction::triggered, this, &Fit2DFrame::onResetViewAction);
 
     m_scaleEditor->setVisible(false);
     connect(m_scaleEditor, &DataPropertyWidget::axesRangeResetRequested, this,
-            &Fit2DFrame::onResetViewAction, Qt::UniqueConnection);
+            &Fit2DFrame::onResetViewAction);
 }
 
 void Fit2DFrame::setJobOrDatafileItem(QObject* item)
@@ -131,7 +130,7 @@ void Fit2DFrame::connectItems()
 
     // sync Z range between simulated and real
     connect(simuData2DItem(), &Data2DItem::alignRanges,
-            [this] { GUI::View::RangeUtil::setCommonRangeZ(mainData2DItems()); });
+            [&] { GUI::View::RangeUtil::setCommonRangeZ(mainData2DItems()); });
 
     // sync Z range: simu --> real
     connect(simuData2DItem(), &DataItem::updateOtherPlots, realData2DItem(),
diff --git a/GUI/View/Frame/Plot2DWithProjectionFrame.cpp b/GUI/View/Frame/Plot2DWithProjectionFrame.cpp
index e2d3cc62a315c0b761eea1aead0db5f79a04bf9c..7edf994e415a755f3a7dd78d54423bd599df8703 100644
--- a/GUI/View/Frame/Plot2DWithProjectionFrame.cpp
+++ b/GUI/View/Frame/Plot2DWithProjectionFrame.cpp
@@ -101,7 +101,7 @@ void Plot2DWithProjectionFrame::setup_connections()
 
     // tool panel request is propagated from editorActions to this MaskEditor
     connect(m_editorActions, &ProjectionActions::propertyPanelRequest,
-            [this] { m_scaleEditor->setHidden(!m_scaleEditor->isHidden()); });
+            [&] { m_scaleEditor->setHidden(!m_scaleEditor->isHidden()); });
 
     // selection/drawing activity is propagated from Toolbar to graphics scene
     connect(m_toolbar, &ProjectionsToolpanel::activityChanged, m_projectionsCanvas,
diff --git a/GUI/View/Info/CautionSign.cpp b/GUI/View/Info/CautionSign.cpp
index cb78ca7b21feabd7b21973f97517b4d2aafa49a8..d468543bdfde4d8861609c45e8ccacd7572e9414 100644
--- a/GUI/View/Info/CautionSign.cpp
+++ b/GUI/View/Info/CautionSign.cpp
@@ -45,7 +45,7 @@ void CautionSign::clear()
     m_caution_message.clear();
 
     m_clear_just_had_happened = true;
-    QTimer::singleShot(10, this, [this] { m_clear_just_had_happened = false; });
+    QTimer::singleShot(10, this, [&] { m_clear_just_had_happened = false; });
 }
 
 //! Shows caution sign on the screen. If clear of previous caution sign had happened just
diff --git a/GUI/View/Instrument/InstrumentLibraryDialog.cpp b/GUI/View/Instrument/InstrumentLibraryDialog.cpp
index adf71ca346cd1fe2e4128b5834d5619ecfb51e60..3a1951ec1937daf368619a04e148b8e8c25bfb95 100644
--- a/GUI/View/Instrument/InstrumentLibraryDialog.cpp
+++ b/GUI/View/Instrument/InstrumentLibraryDialog.cpp
@@ -69,7 +69,7 @@ InstrumentLibraryDialog::InstrumentLibraryDialog(QWidget* parent,
     m_treeView->setItemDelegate(new ItemDelegateForHTML(this));
     m_treeView->setIconSize(QSize(128, 128));
 
-    connect(m_treeModel, &QAbstractItemModel::modelReset, [this] { m_treeView->expandAll(); });
+    connect(m_treeModel, &QAbstractItemModel::modelReset, [&] { m_treeView->expandAll(); });
 
     connect(m_buttonBox, &QDialogButtonBox::accepted, this, &QDialog::accept);
     connect(m_buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject);
diff --git a/GUI/View/JobControl/JobListModel.cpp b/GUI/View/JobControl/JobListModel.cpp
index 49960f0e2eb098053c3ce0a11ace6fa58888b936..6542b4982df4e0646d09d805e82f3c6d33b15b9d 100644
--- a/GUI/View/JobControl/JobListModel.cpp
+++ b/GUI/View/JobControl/JobListModel.cpp
@@ -30,7 +30,7 @@ JobListModel::JobListModel(JobModel* jobs, QObject* parent)
 {
     for (JobItem* job : m_jobs->jobItems())
         enableJobNotification(job);
-    connect(jobs, &JobModel::jobAdded, this, &JobListModel::onJobAdded, Qt::UniqueConnection);
+    connect(jobs, &JobModel::jobAdded, this, &JobListModel::onJobAdded);
 }
 
 JobListModel::~JobListModel()
diff --git a/GUI/View/Main/AboutDialog.cpp b/GUI/View/Main/AboutDialog.cpp
index 5f5f7d8146da3e4a08cbd32ba0957321f6b0554d..3d950739493a402a16351b69e350fc996f2f19e7 100644
--- a/GUI/View/Main/AboutDialog.cpp
+++ b/GUI/View/Main/AboutDialog.cpp
@@ -153,6 +153,6 @@ AboutDialog::AboutDialog(QWidget* parent)
     static const char mydata[] = {0x64, 0x65, 0x76, 0x73};
     QByteArray b = QByteArray::fromRawData(mydata, sizeof(mydata));
     auto* f = new ShortcodeFilter(b, this);
-    connect(f, &ShortcodeFilter::found, [this] { layout()->addWidget(createLogoLabel()); });
+    connect(f, &ShortcodeFilter::found, [&] { layout()->addWidget(createLogoLabel()); });
     installEventFilter(f);
 }
diff --git a/GUI/View/Numeric/DoubleSpinBox.cpp b/GUI/View/Numeric/DoubleSpinBox.cpp
index a17d31622ad921f7f6ac13cd28839552304140e0..789aa6b9885f5a463ad7beccd1194e2c9e95c5d2 100644
--- a/GUI/View/Numeric/DoubleSpinBox.cpp
+++ b/GUI/View/Numeric/DoubleSpinBox.cpp
@@ -48,7 +48,7 @@ DoubleSpinBox::DoubleSpinBox(DoubleProperty* d)
 {
     replaceProperty(d);
 
-    QObject::connect(this, &QAbstractSpinBox::editingFinished, [this] {
+    QObject::connect(this, &QAbstractSpinBox::editingFinished, [&] {
         ASSERT(m_property);
         setValue(fromDisplay());
         m_old_dir = 0;
diff --git a/GUI/View/ParEdit/CustomEditors.cpp b/GUI/View/ParEdit/CustomEditors.cpp
index 1a133fb4a97354b7b21847b9355d9fef3821182a..10fe6be2fb050c1b9ed019314b2b034ed00fdddb 100644
--- a/GUI/View/ParEdit/CustomEditors.cpp
+++ b/GUI/View/ParEdit/CustomEditors.cpp
@@ -155,7 +155,7 @@ ScientificSpinBoxEditor::ScientificSpinBoxEditor(QWidget* parent)
     layout->setSpacing(0);
     layout->addWidget(m_doubleEditor);
 
-    connect(m_doubleEditor, &ScientificSpinBox::valueChanged, [this] { onEditingFinished(); });
+    connect(m_doubleEditor, &ScientificSpinBox::valueChanged, [&] { onEditingFinished(); });
 
     setFocusProxy(m_doubleEditor);
 }
diff --git a/GUI/View/Plotter/ColorMap.cpp b/GUI/View/Plotter/ColorMap.cpp
index ad9e1256b400d8f657e3670d254c4efb1c520314..6af80b117d1ffacb0784b02cb1a7b7624a58942a 100644
--- a/GUI/View/Plotter/ColorMap.cpp
+++ b/GUI/View/Plotter/ColorMap.cpp
@@ -82,7 +82,7 @@ void ColorMap::itemToMap(Data2DItem* item)
 
     // set nullptr at destruction
     disconnect(m_data_item, &DataItem::destroyed, this, nullptr);
-    connect(m_data_item, &DataItem::destroyed, [this] { m_data_item = nullptr; });
+    connect(m_data_item, &DataItem::destroyed, [&] { m_data_item = nullptr; });
 
     //... Set initial state to match given intensity item.
     setAxesRangeFromItem();
diff --git a/GUI/View/Plotter/ProjectionsPlot.cpp b/GUI/View/Plotter/ProjectionsPlot.cpp
index 7b64817ae779750508fd3468888b1c481c4a55c4..a561e5826626727000b1ffe2a7e560b04db86911 100644
--- a/GUI/View/Plotter/ProjectionsPlot.cpp
+++ b/GUI/View/Plotter/ProjectionsPlot.cpp
@@ -51,7 +51,7 @@ void ProjectionsPlot::setData2DItem(Data2DItem* item)
     // set nullptr at destruction
     if (m_data2DItem) {
         disconnect(m_data2DItem, &DataItem::destroyed, this, nullptr);
-        connect(m_data2DItem, &DataItem::destroyed, [this] { m_data2DItem = nullptr; });
+        connect(m_data2DItem, &DataItem::destroyed, [&] { m_data2DItem = nullptr; });
     }
 
     clearAll();
diff --git a/GUI/View/Project/SimulationView.cpp b/GUI/View/Project/SimulationView.cpp
index db238e6b9d6db0658571a32b9c74c4c48ca18646..695a7614bec2aebeea2d8da356bb6b08ee69f908 100644
--- a/GUI/View/Project/SimulationView.cpp
+++ b/GUI/View/Project/SimulationView.cpp
@@ -139,27 +139,26 @@ SimulationView::SimulationView()
 
     //... Connect
 
-    connect(m_instrumentCombo, &QComboBox::currentTextChanged, [this] { updateStateFromUI(); });
-    connect(m_sampleCombo, &QComboBox::currentTextChanged, [this] { updateStateFromUI(); });
-    connect(m_realDataCombo, &QComboBox::currentTextChanged, [this] { updateStateFromUI(); });
+    connect(m_instrumentCombo, &QComboBox::currentTextChanged, [&] { updateStateFromUI(); });
+    connect(m_sampleCombo, &QComboBox::currentTextChanged, [&] { updateStateFromUI(); });
+    connect(m_realDataCombo, &QComboBox::currentTextChanged, [&] { updateStateFromUI(); });
 
     connect(m_simulateButton, &QPushButton::clicked, this, &SimulationView::simulate);
     connect(m_exportToPyScriptButton, &QPushButton::clicked, this,
             &SimulationView::exportPythonScript);
     connect(b_exec, &QButtonGroup::buttonClicked, this, &SimulationView::updateEnabling);
 
-    connect(m_runPolicyImmediatelyRadio, &QRadioButton::toggled, [this] { updateStateFromUI(); });
+    connect(m_runPolicyImmediatelyRadio, &QRadioButton::toggled, [&] { updateStateFromUI(); });
 
-    connect(m_analyticalRadio, &QRadioButton::toggled, [this] { updateStateFromUI(); });
+    connect(m_analyticalRadio, &QRadioButton::toggled, [&] { updateStateFromUI(); });
 
-    connect(m_averageLayerRadio, &QRadioButton::toggled, [this] { updateStateFromUI(); });
+    connect(m_averageLayerRadio, &QRadioButton::toggled, [&] { updateStateFromUI(); });
 
-    connect(m_numberOfThreadsCombo, &QComboBox::currentIndexChanged,
-            [this] { updateStateFromUI(); });
+    connect(m_numberOfThreadsCombo, &QComboBox::currentIndexChanged, [&] { updateStateFromUI(); });
 
-    connect(m_numberOfMonteCarloPoints, &QSpinBox::valueChanged, [this] { updateStateFromUI(); });
+    connect(m_numberOfMonteCarloPoints, &QSpinBox::valueChanged, [&] { updateStateFromUI(); });
 
-    connect(m_includeSpecularCheck, &QCheckBox::toggled, [this] { updateStateFromUI(); });
+    connect(m_includeSpecularCheck, &QCheckBox::toggled, [&] { updateStateFromUI(); });
 }
 
 void SimulationView::showEvent(QShowEvent*)
diff --git a/GUI/View/Realspace/RealspacePanel.cpp b/GUI/View/Realspace/RealspacePanel.cpp
index 42a3bf6f1c7b835b4b1188cf3a7f56666dc4a8bd..9d2ba6baa78cee1373bbd9bdddb4c3d2b587f263 100644
--- a/GUI/View/Realspace/RealspacePanel.cpp
+++ b/GUI/View/Realspace/RealspacePanel.cpp
@@ -47,10 +47,10 @@ RealspacePanel::RealspacePanel(QWidget* parent)
     connect(action, &QAction::triggered, m_widget, &RealspaceWidget::topView);
 
     action = createAction("Enlarge", "Increase layer size");
-    connect(action, &QAction::triggered, [this] { m_widget->changeLayerSize(1.25); });
+    connect(action, &QAction::triggered, [&] { m_widget->changeLayerSize(1.25); });
 
     action = createAction("Reduce", "Decrease layer size");
-    connect(action, &QAction::triggered, [this] { m_widget->changeLayerSize(0.8); });
+    connect(action, &QAction::triggered, [&] { m_widget->changeLayerSize(0.8); });
 
     auto* mainLayout = new QVBoxLayout(this);
     mainLayout->setContentsMargins(0, 0, 0, 0);
diff --git a/GUI/View/Sample/LatticeTypeSelectionForm.cpp b/GUI/View/Sample/LatticeTypeSelectionForm.cpp
index fef6f7826d59662281fd8828e1d2d60f898f3181..216b8f471e8eddbaab53ab683f524b570702e4ea 100644
--- a/GUI/View/Sample/LatticeTypeSelectionForm.cpp
+++ b/GUI/View/Sample/LatticeTypeSelectionForm.cpp
@@ -42,7 +42,7 @@ void LatticeTypeSelectionForm::createContent()
     m_integrateOverXiCheckBox->setChecked(m_interferenceItem->xiIntegration());
     m_gridLayout->addWidget(m_integrateOverXiCheckBox, 1, m_gridLayout->columnCount());
     connect(m_integrateOverXiCheckBox, &QCheckBox::stateChanged,
-            [this] { m_ec->setIntegrateOverXi(this, m_integrateOverXiCheckBox->isChecked()); });
+            [&] { m_ec->setIntegrateOverXi(this, m_integrateOverXiCheckBox->isChecked()); });
 
     const int colOfXiLabel = m_gridLayout->columnCount();
     LayerEditorUtil::addMultiPropertyToGrid(m_gridLayout, m_gridLayout->columnCount(),
diff --git a/GUI/View/Sample/LayerForm.cpp b/GUI/View/Sample/LayerForm.cpp
index 81a59111ee763b74a4ce89c1ab6c4381564f5208..6316718934002e54c2dc2ed075904e2c0b9380a7 100644
--- a/GUI/View/Sample/LayerForm.cpp
+++ b/GUI/View/Sample/LayerForm.cpp
@@ -98,7 +98,7 @@ LayerForm::LayerForm(QWidget* parent, LayerItem* layerItem, SampleEditorControll
     m_layout->addValue(m_layer->thickness());
 
     m_layout->addBoldRow("Number of slices:", GUI::Util::createIntSpinBox(
-                                                  [this] { return m_layer->numSlices(); },
+                                                  [&] { return m_layer->numSlices(); },
                                                   [this](int v) {
                                                       m_layer->setNumSlices(v);
                                                       emit m_ec->modified();
diff --git a/GUI/View/Sample/SampleForm.cpp b/GUI/View/Sample/SampleForm.cpp
index 16792484d0b0c97e09e4fe88ff6d408997a4e9c2..ba61793ea500ea0201e8d2b67cde6f48c4189dcb 100644
--- a/GUI/View/Sample/SampleForm.cpp
+++ b/GUI/View/Sample/SampleForm.cpp
@@ -95,7 +95,7 @@ SampleForm::SampleForm(SampleItem* sampleItem, SampleEditorController* ec)
     // m_layout->addVector(sampleItem->externalField(), false);
 
     auto* showInRealspaceAction = ActionFactory::createShowInRealspaceAction(
-        this, "sample", [this] { m_ec->requestViewInRealspace(m_sampleItem); });
+        this, "sample", [&] { m_ec->requestViewInRealspace(m_sampleItem); });
 
     summary->addTitleAction(showInRealspaceAction);
 
diff --git a/GUI/View/Sample/SampleView.cpp b/GUI/View/Sample/SampleView.cpp
index f4fdaab400cc95aedc4e59c6456dbb425af38dcf..ec2bbb1bc0159caa9285c9ffc7531186dac2547d 100644
--- a/GUI/View/Sample/SampleView.cpp
+++ b/GUI/View/Sample/SampleView.cpp
@@ -79,11 +79,11 @@ SampleView::SampleView()
     applySplitterPos();
 
     // unfix RealspacePanel size only on manual resize
-    connect(hSplitter, &QSplitter::splitterMoved, [this] {
+    connect(hSplitter, &QSplitter::splitterMoved, [&] {
         m_realspacePanel->setMinimumWidth(1); // somehow with min width >0 it behaves better
         m_realspacePanel->setMaximumWidth(QWIDGETSIZE_MAX);
     });
-    connect(vSplitter, &QSplitter::splitterMoved, [this] {
+    connect(vSplitter, &QSplitter::splitterMoved, [&] {
         m_realspacePanel->setMinimumHeight(0);
         m_realspacePanel->setMaximumHeight(QWIDGETSIZE_MAX);
     });
@@ -123,8 +123,7 @@ SampleView::SampleView()
     connect(editor, &SampleEditor::modified, m_realspacePanel->widget(),
             &RealspaceWidget::updateScene);
 
-    connect(editor, &SampleEditor::modified, gDoc.get(), &ProjectDocument::setModified,
-            Qt::UniqueConnection);
+    connect(editor, &SampleEditor::modified, gDoc.get(), &ProjectDocument::setModified);
 }
 
 SampleView::~SampleView()
diff --git a/GUI/View/Sample/ScriptPanel.cpp b/GUI/View/Sample/ScriptPanel.cpp
index d61d7cbb5e4e1778273071d3bbd4ec4400a270a3..c82c89a71b669c5e637a68a3a4f25cb58ee24cdc 100644
--- a/GUI/View/Sample/ScriptPanel.cpp
+++ b/GUI/View/Sample/ScriptPanel.cpp
@@ -53,8 +53,7 @@ ScriptPanel::ScriptPanel(QWidget* parent)
     m_textEdit->setFont(textFont);
     m_textEdit->setFontPointSize(GUI::Style::fontSizeRegular());
 
-    connect(m_updateTimer, &UpdateTimer::timeToUpdate, this, &ScriptPanel::updateEditor,
-            Qt::UniqueConnection);
+    connect(m_updateTimer, &UpdateTimer::timeToUpdate, this, &ScriptPanel::updateEditor);
 }
 
 void ScriptPanel::setCurrentSample(SampleItem* sampleItem)
diff --git a/GUI/View/Scene/MaskGraphicsScene.cpp b/GUI/View/Scene/MaskGraphicsScene.cpp
index 1f2a1c148984db22fd8240e9c80b2534795204d8..7fd8e1939bf5f67170f1a61b9bd706af22b36d23 100644
--- a/GUI/View/Scene/MaskGraphicsScene.cpp
+++ b/GUI/View/Scene/MaskGraphicsScene.cpp
@@ -63,7 +63,7 @@ MaskGraphicsScene::MaskGraphicsScene()
     , m_mask_value(MaskFlags::MASK_ON)
 {
     setSceneRect(0, 0, 800, 600);
-    connect(this, &QGraphicsScene::selectionChanged, [this] { onSceneSelectionChanged(); });
+    connect(this, &QGraphicsScene::selectionChanged, [&] { onSceneSelectionChanged(); });
 }
 
 MaskGraphicsScene::~MaskGraphicsScene() = default;
diff --git a/GUI/View/Setup/MaskPanel.cpp b/GUI/View/Setup/MaskPanel.cpp
index d5cb62bfdebe975c4680420b718c978fc9bedb4b..0530dfe23a4ea461a732f006f3d98f9d64130b47 100644
--- a/GUI/View/Setup/MaskPanel.cpp
+++ b/GUI/View/Setup/MaskPanel.cpp
@@ -92,7 +92,7 @@ void MaskPanel::updateMaskPanel(MaskeditorListmodel* mask_list_model)
     m_listView->setRootIndex(m_mask_list_model->maskContItem()->rootIndex);
 
     connect(m_listView->selectionModel(), &QItemSelectionModel::selectionChanged, this,
-            &MaskPanel::onSelectionChanged, Qt::UniqueConnection);
+            &MaskPanel::onSelectionChanged);
 }
 
 void MaskPanel::resetMaskPanel()
diff --git a/GUI/View/Setup/ProjectionActions.cpp b/GUI/View/Setup/ProjectionActions.cpp
index 8f87b54922cbcbd9878c1ec9cecc692369b111ae..37cd6a6e5d9ad201c5519c73255fc62636afd823 100644
--- a/GUI/View/Setup/ProjectionActions.cpp
+++ b/GUI/View/Setup/ProjectionActions.cpp
@@ -36,14 +36,13 @@ ProjectionActions::ProjectionActions(QWidget* parent)
     m_resetViewAction->setIcon(QIcon(":/images/camera-metering-center.svg"));
     m_resetViewAction->setToolTip("Reset view\n"
                                   "x,y,z axes range will be set to default");
-    connect(m_resetViewAction, &QAction::triggered, this, &ProjectionActions::resetViewRequest,
-            Qt::UniqueConnection);
+    connect(m_resetViewAction, &QAction::triggered, this, &ProjectionActions::resetViewRequest);
 
     m_togglePanelAction->setText("Properties");
     m_togglePanelAction->setIcon(QIcon(":/images/dock-right.svg"));
     m_togglePanelAction->setToolTip("Toggle property panel");
     connect(m_togglePanelAction, &QAction::triggered, this,
-            &ProjectionActions::propertyPanelRequest, Qt::UniqueConnection);
+            &ProjectionActions::propertyPanelRequest);
 
     m_deleteAction->setToolTip("Remove selected (Del)");
     m_deleteAction->setShortcuts(QKeySequence::Delete);
diff --git a/GUI/View/Setup/Scale1DEditor.cpp b/GUI/View/Setup/Scale1DEditor.cpp
index a8a6774337e691ebabadc8f652f06af73d74b21a..642f858dd4cee8182a964cdcc444c856e580ba21 100644
--- a/GUI/View/Setup/Scale1DEditor.cpp
+++ b/GUI/View/Setup/Scale1DEditor.cpp
@@ -47,7 +47,7 @@ void Scale1DEditor::createPanelElements()
     m_mainLayout->addRow("Axes units:",
                          GUI::Util::createUnitsComboBox(
                              axesUnitsList(),
-                             [this] { return currentData1DItem()->currentAxesUnits(); },
+                             [&] { return currentData1DItem()->currentAxesUnits(); },
                              [this](const QString& newVal) {
                                  for (auto item : allData1DItems())
                                      item->setCurrentAxesUnits(newVal);
@@ -64,7 +64,7 @@ void Scale1DEditor::createPanelElements()
     xFormLayout->setSpacing(5);
 
     xFormLayout->addRow("Min:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData1DItem()->axItemX()->min(); },
+                                    [&] { return currentData1DItem()->axItemX()->min(); },
                                     [this](double newValue) {
                                         for (auto* item : allData1DItems())
                                             item->axItemX()->setMin(newValue);
@@ -73,7 +73,7 @@ void Scale1DEditor::createPanelElements()
                                     &m_updaters));
 
     xFormLayout->addRow("Max:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData1DItem()->axItemX()->max(); },
+                                    [&] { return currentData1DItem()->axItemX()->max(); },
                                     [this](double newValue) {
                                         for (auto* item : allData1DItems())
                                             item->axItemX()->setMax(newValue);
@@ -90,7 +90,7 @@ void Scale1DEditor::createPanelElements()
     yFormLayout->setSpacing(5);
 
     auto* logRangeSpinBox = GUI::Util::createDoubleSpinBox(
-        [this] { return currentData1DItem()->axItemY()->logRangeOrders(); },
+        [&] { return currentData1DItem()->axItemY()->logRangeOrders(); },
         [this](double newValue) {
             for (auto* item : mainData1DItems()) {
                 item->axItemY()->setLogRangeOrders(newValue);
@@ -101,7 +101,7 @@ void Scale1DEditor::createPanelElements()
         &m_updaters, "Dynamic range to display values", RealLimits::positive());
 
     yFormLayout->addRow("Min:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData1DItem()->axItemY()->min(); },
+                                    [&] { return currentData1DItem()->axItemY()->min(); },
                                     [this](double newValue) {
                                         for (auto* item : mainData1DItems()) {
                                             item->axItemY()->setMin(newValue);
@@ -113,7 +113,7 @@ void Scale1DEditor::createPanelElements()
                                     &m_updaters));
 
     yFormLayout->addRow("Max:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData1DItem()->axItemY()->max(); },
+                                    [&] { return currentData1DItem()->axItemY()->max(); },
                                     [this](double newValue) {
                                         for (auto* item : mainData1DItems()) {
                                             item->axItemY()->setMax(newValue);
@@ -125,7 +125,7 @@ void Scale1DEditor::createPanelElements()
                                     &m_updaters));
 
     yFormLayout->addRow(GUI::Util::createCheckBox(
-        "log10", [this] { return currentData1DItem()->axItemY()->isLogScale(); },
+        "log10", [&] { return currentData1DItem()->axItemY()->isLogScale(); },
         [this, logRangeSpinBox](bool b) {
             logRangeSpinBox->setEnabled(b);
             for (auto* item : allData1DItems())
diff --git a/GUI/View/Setup/Scale2DEditor.cpp b/GUI/View/Setup/Scale2DEditor.cpp
index 88116172dd331adf70ddc2f48e79d41da8a42122..253d6f9d44c252608298f6a78126d859e948c8a7 100644
--- a/GUI/View/Setup/Scale2DEditor.cpp
+++ b/GUI/View/Setup/Scale2DEditor.cpp
@@ -50,7 +50,7 @@ void Scale2DEditor::createPanelElements()
     m_mainLayout->addRow("Axes units:",
                          GUI::Util::createUnitsComboBox(
                              axesUnitsList(),
-                             [this] { return currentData2DItem()->currentAxesUnits(); },
+                             [&] { return currentData2DItem()->currentAxesUnits(); },
                              [this](const QString& newVal) {
                                  for (auto item : allData2DItems())
                                      item->setCurrentAxesUnits(newVal);
@@ -60,18 +60,17 @@ void Scale2DEditor::createPanelElements()
                              &m_updaters));
     */
 
-    m_mainLayout->addRow(
-        "Color scheme:",
-        GUI::Util::createComboBox([this] { return currentData2DItem()->gradientCombo(); },
-                                  [this](const QString& newVal) {
-                                      for (auto* item : allData2DItems())
-                                          item->setCurrentGradient(newVal);
-                                      gDoc->setModified();
-                                  },
-                                  false, &m_updaters));
+    m_mainLayout->addRow("Color scheme:", GUI::Util::createComboBox(
+                                              [&] { return currentData2DItem()->gradientCombo(); },
+                                              [this](const QString& newVal) {
+                                                  for (auto* item : allData2DItems())
+                                                      item->setCurrentGradient(newVal);
+                                                  gDoc->setModified();
+                                              },
+                                              false, &m_updaters));
 
     m_mainLayout->addRow(GUI::Util::createCheckBox(
-        "Interpolate", [this] { return currentData2DItem()->isInterpolated(); },
+        "Interpolate", [&] { return currentData2DItem()->isInterpolated(); },
         [this](bool b) {
             for (auto* item : allData2DItems())
                 item->setInterpolated(b);
@@ -86,7 +85,7 @@ void Scale2DEditor::createPanelElements()
     xFormLayout->setSpacing(5);
 
     xFormLayout->addRow("Min:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData2DItem()->axItemX()->min(); },
+                                    [&] { return currentData2DItem()->axItemX()->min(); },
                                     [this](double newValue) {
                                         for (auto* item : allData2DItems())
                                             item->axItemX()->setMin(newValue);
@@ -95,7 +94,7 @@ void Scale2DEditor::createPanelElements()
                                     &m_updaters));
 
     xFormLayout->addRow("Max:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData2DItem()->axItemX()->max(); },
+                                    [&] { return currentData2DItem()->axItemX()->max(); },
                                     [this](double newValue) {
                                         for (auto* item : allData2DItems())
                                             item->axItemX()->setMax(newValue);
@@ -112,7 +111,7 @@ void Scale2DEditor::createPanelElements()
     yFormLayout->setSpacing(5);
 
     yFormLayout->addRow("Min:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData2DItem()->axItemY()->min(); },
+                                    [&] { return currentData2DItem()->axItemY()->min(); },
                                     [this](double newValue) {
                                         for (auto* item : allData2DItems())
                                             item->axItemY()->setMin(newValue);
@@ -121,7 +120,7 @@ void Scale2DEditor::createPanelElements()
                                     &m_updaters));
 
     yFormLayout->addRow("Max:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData2DItem()->axItemY()->max(); },
+                                    [&] { return currentData2DItem()->axItemY()->max(); },
                                     [this](double newValue) {
                                         for (auto* item : allData2DItems())
                                             item->axItemY()->setMax(newValue);
@@ -138,7 +137,7 @@ void Scale2DEditor::createPanelElements()
     zFormLayout->setSpacing(5);
 
     auto* logRangeSpinBox = GUI::Util::createDoubleSpinBox(
-        [this] { return currentData2DItem()->zAxisItem()->logRangeOrders(); },
+        [&] { return currentData2DItem()->zAxisItem()->logRangeOrders(); },
         [this](double newValue) {
             for (auto* item : mainData2DItems()) {
                 item->zAxisItem()->setLogRangeOrders(newValue);
@@ -149,7 +148,7 @@ void Scale2DEditor::createPanelElements()
         &m_updaters, "Dynamic range to display values", RealLimits::positive());
 
     zFormLayout->addRow("Min:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData2DItem()->zAxisItem()->min(); },
+                                    [&] { return currentData2DItem()->zAxisItem()->min(); },
                                     [this](double newValue) {
                                         for (auto* item : allData2DItems()) {
                                             item->zAxisItem()->setMin(newValue);
@@ -161,7 +160,7 @@ void Scale2DEditor::createPanelElements()
                                     &m_updaters));
 
     zFormLayout->addRow("Max:", GUI::Util::createDoubleSpinBox(
-                                    [this] { return currentData2DItem()->zAxisItem()->max(); },
+                                    [&] { return currentData2DItem()->zAxisItem()->max(); },
                                     [this](double newValue) {
                                         for (auto* item : mainData2DItems()) {
                                             item->zAxisItem()->setMax(newValue);
@@ -173,7 +172,7 @@ void Scale2DEditor::createPanelElements()
                                     &m_updaters));
 
     zFormLayout->addRow(GUI::Util::createCheckBox(
-        "log10", [this] { return currentData2DItem()->zAxisItem()->isLogScale(); },
+        "log10", [&] { return currentData2DItem()->zAxisItem()->isLogScale(); },
         [this, logRangeSpinBox](bool b) {
             logRangeSpinBox->setEnabled(b);
             for (auto* item : allData2DItems())
@@ -185,7 +184,7 @@ void Scale2DEditor::createPanelElements()
     zFormLayout->addRow("Log range:", logRangeSpinBox);
 
     zFormLayout->addRow(GUI::Util::createCheckBox(
-        "Visible", [this] { return currentData2DItem()->zAxisItem()->isVisible(); },
+        "Visible", [&] { return currentData2DItem()->zAxisItem()->isVisible(); },
         [this](bool b) {
             for (auto* item : allData2DItems())
                 item->zAxisItem()->setVisible(b);
diff --git a/GUI/View/Tool/WidgetMoverButton.cpp b/GUI/View/Tool/WidgetMoverButton.cpp
index e82099cd7fa87ee85a7034a922b3d85e7d78c827..ce562ca5d1dea551feae30491b1fe7c1d1717889 100644
--- a/GUI/View/Tool/WidgetMoverButton.cpp
+++ b/GUI/View/Tool/WidgetMoverButton.cpp
@@ -143,12 +143,12 @@ void WidgetMoverButton::mouseMoveEvent(QMouseEvent* event)
         if (parPos.y() < 20) {
             m_dragScrollTimer.setInterval(10);
             m_dragScrollTimer.disconnect();
-            connect(&m_dragScrollTimer, &QTimer::timeout, [this] { scrollParent(true); });
+            connect(&m_dragScrollTimer, &QTimer::timeout, [&] { scrollParent(true); });
             m_dragScrollTimer.start();
         } else if (parPos.y() > m_scrollArea->height() - 20) {
             m_dragScrollTimer.setInterval(10);
             m_dragScrollTimer.disconnect();
-            connect(&m_dragScrollTimer, &QTimer::timeout, [this] { scrollParent(false); });
+            connect(&m_dragScrollTimer, &QTimer::timeout, [&] { scrollParent(false); });
             m_dragScrollTimer.start();
         } else
             m_dragScrollTimer.stop();
diff --git a/GUI/View/Tuning/FitParameterWidget.cpp b/GUI/View/Tuning/FitParameterWidget.cpp
index 80a36e48ecbe64fa4e7490c0b069e3177316ac62..159a06e76bb6e7dd4955781d495a180eafaf129d 100644
--- a/GUI/View/Tuning/FitParameterWidget.cpp
+++ b/GUI/View/Tuning/FitParameterWidget.cpp
@@ -89,7 +89,7 @@ void FitParameterWidget::setParameterTuningWidget(ParameterTuningWidget* tuningW
 
     connect(m_tuningWidget, &ParameterTuningWidget::itemContextMenuRequest, this,
             &FitParameterWidget::onTuningWidgetContextMenu, Qt::UniqueConnection);
-    connect(tuningWidget, &QObject::destroyed, [this] { m_tuningWidget = nullptr; });
+    connect(tuningWidget, &QObject::destroyed, [&] { m_tuningWidget = nullptr; });
 }
 
 //! Creates context menu for ParameterTuningWidget
diff --git a/GUI/View/Tuning/ParameterBackupWidget.cpp b/GUI/View/Tuning/ParameterBackupWidget.cpp
index 7d022dd57aa7114a9b42e20952cfe1bf1622ba22..b46bbcd7fccaf996f781ac8e3bae0d2703ef521f 100644
--- a/GUI/View/Tuning/ParameterBackupWidget.cpp
+++ b/GUI/View/Tuning/ParameterBackupWidget.cpp
@@ -84,7 +84,7 @@ ParameterBackupWidget::ParameterBackupWidget(QWidget* parent)
 
     m_reset = new QPushButton(QIcon(":/images/undo.svg"), "Reset");
     m_reset->setToolTip("Reset parameter tree to selected snapshot");
-    connect(m_reset, &QPushButton::clicked, [this] { backupSwitched(m_combo->currentIndex()); });
+    connect(m_reset, &QPushButton::clicked, [&] { backupSwitched(m_combo->currentIndex()); });
     h2->addWidget(m_reset);
 
     mainLayout->addLayout(h1);
@@ -98,7 +98,7 @@ void ParameterBackupWidget::setParameterContainer(ParameterContainerItem* contai
 
     // new snapshot
     disconnect(m_create, nullptr, nullptr, nullptr);
-    connect(m_create, &QPushButton::clicked, [this] {
+    connect(m_create, &QPushButton::clicked, [&] {
         QString newName;
         NewSnapshotDialog dialog(newName);
         if (dialog.exec() == QDialog::Accepted)
@@ -111,7 +111,7 @@ void ParameterBackupWidget::setParameterContainer(ParameterContainerItem* contai
 
     // delete snapshot
     disconnect(m_remove, nullptr, nullptr, nullptr);
-    connect(m_remove, &QPushButton::clicked, [this] {
+    connect(m_remove, &QPushButton::clicked, [&] {
         if (m_combo->currentIndex() >= 0) {
             m_container->deleteBackupValues(m_combo->currentIndex());
             fillCombo();