From f004d74b05525eebe98a2b4ab4d1323e490c04aa Mon Sep 17 00:00:00 2001
From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de>
Date: Tue, 2 Nov 2021 18:41:50 +0100
Subject: [PATCH] mv ..

---
 App/main.cpp                                   |  2 +-
 GUI/CMakeLists.txt                             | 18 ++----------------
 .../LinkInstrumentManager.cpp                  |  4 ++--
 .../LinkInstrumentManager.h                    |  8 ++++----
 .../OutputDataIOService.cpp                    |  4 ++--
 .../OutputDataIOService.h                      |  8 ++++----
 GUI/Project/projectdocument.cpp                |  4 ++--
 .../ImportDataWidgets/ImportDataUtils.cpp      |  2 +-
 .../RealDataPropertiesWidget.cpp               |  2 +-
 .../Loaders}/AutomaticDataLoader1D.cpp         |  6 +++---
 .../Loaders}/AutomaticDataLoader1D.h           |  8 ++++----
 .../AutomaticDataLoader1DResultModel.cpp       |  4 ++--
 .../AutomaticDataLoader1DResultModel.h         |  8 ++++----
 .../Loaders}/DataLoaderUtil.cpp                | 10 +++++-----
 .../Loaders}/DataLoaderUtil.h                  |  8 ++++----
 .../Loaders}/QREDataLoader.cpp                 |  8 ++++----
 .../Loaders}/QREDataLoader.h                   |  8 ++++----
 .../Loaders}/QREDataLoaderProperties.cpp       |  4 ++--
 .../Loaders}/QREDataLoaderProperties.h         |  8 ++++----
 .../Loaders}/QREDataLoaderProperties.ui        |  0
 .../Loaders}/QREDataLoaderResultModel.cpp      |  4 ++--
 .../Loaders}/QREDataLoaderResultModel.h        | 10 +++++-----
 .../Loaders}/UserDefinedDataLoader1D.cpp       |  4 ++--
 .../Loaders}/UserDefinedDataLoader1D.h         |  8 ++++----
 .../SpecularDataImportWidget.cpp               |  2 +-
 Tests/Unit/GUI/TestLinkInstrument.cpp          |  2 +-
 Tests/Unit/GUI/TestOutputDataIOService.cpp     |  2 +-
 Tests/Unit/GUI/TestSavingSpecularData.cpp      |  2 +-
 28 files changed, 72 insertions(+), 86 deletions(-)
 rename GUI/{mainwindow => Project}/LinkInstrumentManager.cpp (97%)
 rename GUI/{mainwindow => Project}/LinkInstrumentManager.h (89%)
 rename GUI/{mainwindow => Project}/OutputDataIOService.cpp (97%)
 rename GUI/{mainwindow => Project}/OutputDataIOService.h (87%)
 rename GUI/{DataLoaders => Views/Loaders}/AutomaticDataLoader1D.cpp (94%)
 rename GUI/{DataLoaders => Views/Loaders}/AutomaticDataLoader1D.h (86%)
 rename GUI/{DataLoaders => Views/Loaders}/AutomaticDataLoader1DResultModel.cpp (93%)
 rename GUI/{DataLoaders => Views/Loaders}/AutomaticDataLoader1DResultModel.h (84%)
 rename GUI/{DataLoaders => Views/Loaders}/DataLoaderUtil.cpp (89%)
 rename GUI/{DataLoaders => Views/Loaders}/DataLoaderUtil.h (80%)
 rename GUI/{DataLoaders => Views/Loaders}/QREDataLoader.cpp (99%)
 rename GUI/{DataLoaders => Views/Loaders}/QREDataLoader.h (96%)
 rename GUI/{DataLoaders => Views/Loaders}/QREDataLoaderProperties.cpp (97%)
 rename GUI/{DataLoaders => Views/Loaders}/QREDataLoaderProperties.h (87%)
 rename GUI/{DataLoaders => Views/Loaders}/QREDataLoaderProperties.ui (100%)
 rename GUI/{DataLoaders => Views/Loaders}/QREDataLoaderResultModel.cpp (96%)
 rename GUI/{DataLoaders => Views/Loaders}/QREDataLoaderResultModel.h (83%)
 rename GUI/{DataLoaders => Views/Loaders}/UserDefinedDataLoader1D.cpp (95%)
 rename GUI/{DataLoaders => Views/Loaders}/UserDefinedDataLoader1D.h (87%)

diff --git a/App/main.cpp b/App/main.cpp
index 4601b073a8f..670f7979580 100644
--- a/App/main.cpp
+++ b/App/main.cpp
@@ -15,7 +15,7 @@
 #include "App/MessageHandler.h"
 #include "App/appoptions.h"
 #include "GUI/Application/GlobalSettings.h"
-#include "GUI/DataLoaders/DataLoaderUtil.h"
+#include "GUI/Views/Loaders/DataLoaderUtil.h"
 #include "GUI/Session/SessionData.h"
 #include "GUI/mainwindow/mainwindow.h"
 #include "GUI/utils/hostosinfo.h"
diff --git a/GUI/CMakeLists.txt b/GUI/CMakeLists.txt
index a1c06ac03cb..023ef1f0454 100644
--- a/GUI/CMakeLists.txt
+++ b/GUI/CMakeLists.txt
@@ -16,7 +16,6 @@ set(library_name BornAgainGUI)
 set(include_dirs
     ${CMAKE_CURRENT_SOURCE_DIR}/Application
     ${CMAKE_CURRENT_SOURCE_DIR}/CommonWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/DataLoaders
     ${CMAKE_CURRENT_SOURCE_DIR}/InfoWidgets
     ${CMAKE_CURRENT_SOURCE_DIR}/Items
     ${CMAKE_CURRENT_SOURCE_DIR}/Mapper
@@ -24,25 +23,12 @@ set(include_dirs
     ${CMAKE_CURRENT_SOURCE_DIR}/Session
     ${CMAKE_CURRENT_SOURCE_DIR}/mainwindow
     ${CMAKE_CURRENT_SOURCE_DIR}/utils
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/FitWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/ImportDataWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/ImportDataWidgets/CsvImportAssistant
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/InstrumentWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/IntensityDataWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/JobWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/MaskWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/MaterialEditor
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/ProjectionsWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/PropertyEditor
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/RealSpaceWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/SampleDesigner
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/SimulationWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/SpecularDataWidgets
-    ${CMAKE_CURRENT_SOURCE_DIR}/Views/Toplevel
 )
 
 file(GLOB model_dirs ${CMAKE_CURRENT_SOURCE_DIR}/Models/*)
 list(APPEND include_dirs ${model_dirs})
+file(GLOB views_dirs ${CMAKE_CURRENT_SOURCE_DIR}/Views/*)
+list(APPEND include_dirs ${views_dirs})
 
 set(source_files)
 set(include_files)
diff --git a/GUI/mainwindow/LinkInstrumentManager.cpp b/GUI/Project/LinkInstrumentManager.cpp
similarity index 97%
rename from GUI/mainwindow/LinkInstrumentManager.cpp
rename to GUI/Project/LinkInstrumentManager.cpp
index 4f2cf20c6e3..859dd48c4d8 100644
--- a/GUI/mainwindow/LinkInstrumentManager.cpp
+++ b/GUI/Project/LinkInstrumentManager.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/mainwindow/LinkInstrumentManager.cpp
+//! @file      GUI/Project/LinkInstrumentManager.cpp
 //! @brief     Implements class LinkInstrumentManager
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/mainwindow/LinkInstrumentManager.h"
+#include "GUI/Project/LinkInstrumentManager.h"
 #include "GUI/Items/InstrumentItems.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Models/Data/RealDataModel.h"
diff --git a/GUI/mainwindow/LinkInstrumentManager.h b/GUI/Project/LinkInstrumentManager.h
similarity index 89%
rename from GUI/mainwindow/LinkInstrumentManager.h
rename to GUI/Project/LinkInstrumentManager.h
index 8c00b7c4736..2bdaf254ce6 100644
--- a/GUI/mainwindow/LinkInstrumentManager.h
+++ b/GUI/Project/LinkInstrumentManager.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/mainwindow/LinkInstrumentManager.h
+//! @file      GUI/Project/LinkInstrumentManager.h
 //! @brief     Defines class LinkInstrumentManager
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MAINWINDOW_LINKINSTRUMENTMANAGER_H
-#define BORNAGAIN_GUI_MAINWINDOW_LINKINSTRUMENTMANAGER_H
+#ifndef BORNAGAIN_GUI_PROJECT_LINKINSTRUMENTMANAGER_H
+#define BORNAGAIN_GUI_PROJECT_LINKINSTRUMENTMANAGER_H
 
 #include <QList>
 #include <QObject>
@@ -52,4 +52,4 @@ private:
     RealDataModel* m_realDataModel;
 };
 
-#endif // BORNAGAIN_GUI_MAINWINDOW_LINKINSTRUMENTMANAGER_H
+#endif // BORNAGAIN_GUI_PROJECT_LINKINSTRUMENTMANAGER_H
diff --git a/GUI/mainwindow/OutputDataIOService.cpp b/GUI/Project/OutputDataIOService.cpp
similarity index 97%
rename from GUI/mainwindow/OutputDataIOService.cpp
rename to GUI/Project/OutputDataIOService.cpp
index 7a892b44e74..b352df93764 100644
--- a/GUI/mainwindow/OutputDataIOService.cpp
+++ b/GUI/Project/OutputDataIOService.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/mainwindow/OutputDataIOService.cpp
+//! @file      GUI/Project/OutputDataIOService.cpp
 //! @brief     Implements class OutputDataIOService
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/mainwindow/OutputDataIOService.h"
+#include "GUI/Project/OutputDataIOService.h"
 #include "GUI/Items/JobItem.h"
 #include "GUI/Items/ModelPath.h"
 #include "GUI/Models/Data/ApplicationModels.h"
diff --git a/GUI/mainwindow/OutputDataIOService.h b/GUI/Project/OutputDataIOService.h
similarity index 87%
rename from GUI/mainwindow/OutputDataIOService.h
rename to GUI/Project/OutputDataIOService.h
index c8ef06897bd..9b943b21c03 100644
--- a/GUI/mainwindow/OutputDataIOService.h
+++ b/GUI/Project/OutputDataIOService.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/mainwindow/OutputDataIOService.h
+//! @file      GUI/Project/OutputDataIOService.h
 //! @brief     Defines class OutputDataIOService
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MAINWINDOW_OUTPUTDATAIOSERVICE_H
-#define BORNAGAIN_GUI_MAINWINDOW_OUTPUTDATAIOSERVICE_H
+#ifndef BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOSERVICE_H
+#define BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOSERVICE_H
 
 #include "GUI/mainwindow/OutputDataIOHistory.h"
 #include <QObject>
@@ -49,4 +49,4 @@ private:
     ApplicationModels* m_applicationModels;
 };
 
-#endif // BORNAGAIN_GUI_MAINWINDOW_OUTPUTDATAIOSERVICE_H
+#endif // BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOSERVICE_H
diff --git a/GUI/Project/projectdocument.cpp b/GUI/Project/projectdocument.cpp
index 4473f455659..0dd0cab21ad 100644
--- a/GUI/Project/projectdocument.cpp
+++ b/GUI/Project/projectdocument.cpp
@@ -16,8 +16,8 @@
 #include "GUI/Models/Data/DocumentModel.h"
 #include "GUI/Models/Job/JobModel.h"
 #include "GUI/Project/ProjectUtils.h"
-#include "GUI/mainwindow/LinkInstrumentManager.h"
-#include "GUI/mainwindow/OutputDataIOService.h"
+#include "GUI/Project/LinkInstrumentManager.h"
+#include "GUI/Project/OutputDataIOService.h"
 #include "GUI/utils/Error.h"
 #include "GUI/utils/Helpers.h"
 #include "GUI/utils/MessageService.h"
diff --git a/GUI/Views/ImportDataWidgets/ImportDataUtils.cpp b/GUI/Views/ImportDataWidgets/ImportDataUtils.cpp
index 665b9f8b3ba..44dc65a221d 100644
--- a/GUI/Views/ImportDataWidgets/ImportDataUtils.cpp
+++ b/GUI/Views/ImportDataWidgets/ImportDataUtils.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/ImportDataWidgets/ImportDataUtils.h"
 #include "Device/Data/OutputData.h"
 #include "Device/InputOutput/DataFormatUtils.h"
-#include "GUI/DataLoaders/QREDataLoader.h"
+#include "GUI/Views/Loaders/QREDataLoader.h"
 #include "GUI/Items/InstrumentItems.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/utils/OutputDataUtils.h"
diff --git a/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp b/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp
index eadda81e442..87e0994d4c6 100644
--- a/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp
+++ b/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp
@@ -17,7 +17,7 @@
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Project/projectdocument.h"
-#include "GUI/mainwindow/LinkInstrumentManager.h"
+#include "GUI/Project/LinkInstrumentManager.h"
 #include "GUI/mainwindow/mainwindow.h"
 #include <QComboBox>
 #include <QLabel>
diff --git a/GUI/DataLoaders/AutomaticDataLoader1D.cpp b/GUI/Views/Loaders/AutomaticDataLoader1D.cpp
similarity index 94%
rename from GUI/DataLoaders/AutomaticDataLoader1D.cpp
rename to GUI/Views/Loaders/AutomaticDataLoader1D.cpp
index 137324d318e..16326f7fe8d 100644
--- a/GUI/DataLoaders/AutomaticDataLoader1D.cpp
+++ b/GUI/Views/Loaders/AutomaticDataLoader1D.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/AutomaticDataLoader1D.cpp
+//! @file      GUI/Views/Loaders/AutomaticDataLoader1D.cpp
 //! @brief     Implements class AutomaticDataLoader1D
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,9 +12,9 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/DataLoaders/AutomaticDataLoader1D.h"
+#include "GUI/Views/Loaders/AutomaticDataLoader1D.h"
 #include "Device/InputOutput/OutputDataReadReflectometry.h"
-#include "GUI/DataLoaders/AutomaticDataLoader1DResultModel.h"
+#include "GUI/Views/Loaders/AutomaticDataLoader1DResultModel.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Items/SpecularDataItem.h"
 #include "GUI/Models/Data/ImportDataInfo.h"
diff --git a/GUI/DataLoaders/AutomaticDataLoader1D.h b/GUI/Views/Loaders/AutomaticDataLoader1D.h
similarity index 86%
rename from GUI/DataLoaders/AutomaticDataLoader1D.h
rename to GUI/Views/Loaders/AutomaticDataLoader1D.h
index f8719f44642..c9110d94e4b 100644
--- a/GUI/DataLoaders/AutomaticDataLoader1D.h
+++ b/GUI/Views/Loaders/AutomaticDataLoader1D.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/AutomaticDataLoader1D.h
+//! @file      GUI/Views/Loaders/AutomaticDataLoader1D.h
 //! @brief     Defines class AutomaticDataLoader1D
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_DATALOADERS_AUTOMATICDATALOADER1D_H
-#define BORNAGAIN_GUI_DATALOADERS_AUTOMATICDATALOADER1D_H
+#ifndef BORNAGAIN_GUI_VIEWS_LOADERS_AUTOMATICDATALOADER1D_H
+#define BORNAGAIN_GUI_VIEWS_LOADERS_AUTOMATICDATALOADER1D_H
 
 #include "Device/Data/OutputData.h"
 #include "GUI/Models/Data/AbstractDataLoader1D.h"
@@ -39,4 +39,4 @@ private:
     QString m_error;
 };
 
-#endif // BORNAGAIN_GUI_DATALOADERS_AUTOMATICDATALOADER1D_H
+#endif // BORNAGAIN_GUI_VIEWS_LOADERS_AUTOMATICDATALOADER1D_H
diff --git a/GUI/DataLoaders/AutomaticDataLoader1DResultModel.cpp b/GUI/Views/Loaders/AutomaticDataLoader1DResultModel.cpp
similarity index 93%
rename from GUI/DataLoaders/AutomaticDataLoader1DResultModel.cpp
rename to GUI/Views/Loaders/AutomaticDataLoader1DResultModel.cpp
index 871a6658331..ccabbe28a68 100644
--- a/GUI/DataLoaders/AutomaticDataLoader1DResultModel.cpp
+++ b/GUI/Views/Loaders/AutomaticDataLoader1DResultModel.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/AutomaticDataLoader1DResultModel.cpp
+//! @file      GUI/Views/Loaders/AutomaticDataLoader1DResultModel.cpp
 //! @brief     Implements class AutomaticDataLoader1DResultModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/DataLoaders/AutomaticDataLoader1DResultModel.h"
+#include "GUI/Views/Loaders/AutomaticDataLoader1DResultModel.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Items/SpecularDataItem.h"
 
diff --git a/GUI/DataLoaders/AutomaticDataLoader1DResultModel.h b/GUI/Views/Loaders/AutomaticDataLoader1DResultModel.h
similarity index 84%
rename from GUI/DataLoaders/AutomaticDataLoader1DResultModel.h
rename to GUI/Views/Loaders/AutomaticDataLoader1DResultModel.h
index 68c55fafade..81d991461fb 100644
--- a/GUI/DataLoaders/AutomaticDataLoader1DResultModel.h
+++ b/GUI/Views/Loaders/AutomaticDataLoader1DResultModel.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/AutomaticDataLoader1DResultModel.h
+//! @file      GUI/Views/Loaders/AutomaticDataLoader1DResultModel.h
 //! @brief     Defines class AutomaticDataLoader1DResultModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_DATALOADERS_AUTOMATICDATALOADER1DRESULTMODEL_H
-#define BORNAGAIN_GUI_DATALOADERS_AUTOMATICDATALOADER1DRESULTMODEL_H
+#ifndef BORNAGAIN_GUI_VIEWS_LOADERS_AUTOMATICDATALOADER1DRESULTMODEL_H
+#define BORNAGAIN_GUI_VIEWS_LOADERS_AUTOMATICDATALOADER1DRESULTMODEL_H
 
 #include "GUI/Models/Data/AbstractDataLoaderResultModel.h"
 
@@ -40,4 +40,4 @@ private:
     RealDataItem* m_item;
 };
 
-#endif // BORNAGAIN_GUI_DATALOADERS_AUTOMATICDATALOADER1DRESULTMODEL_H
+#endif // BORNAGAIN_GUI_VIEWS_LOADERS_AUTOMATICDATALOADER1DRESULTMODEL_H
diff --git a/GUI/DataLoaders/DataLoaderUtil.cpp b/GUI/Views/Loaders/DataLoaderUtil.cpp
similarity index 89%
rename from GUI/DataLoaders/DataLoaderUtil.cpp
rename to GUI/Views/Loaders/DataLoaderUtil.cpp
index 945260e5fe3..81fb41e8582 100644
--- a/GUI/DataLoaders/DataLoaderUtil.cpp
+++ b/GUI/Views/Loaders/DataLoaderUtil.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/DataLoaderUtil.cpp
+//! @file      GUI/Views/Loaders/DataLoaderUtil.cpp
 //! @brief     Implements class UserDefinedDataLoader1D
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/DataLoaders/DataLoaderUtil.h"
-#include "GUI/DataLoaders/AutomaticDataLoader1D.h"
-#include "GUI/DataLoaders/QREDataLoader.h"
-#include "GUI/DataLoaders/UserDefinedDataLoader1D.h"
+#include "GUI/Views/Loaders/DataLoaderUtil.h"
+#include "GUI/Views/Loaders/AutomaticDataLoader1D.h"
+#include "GUI/Views/Loaders/QREDataLoader.h"
+#include "GUI/Views/Loaders/UserDefinedDataLoader1D.h"
 #include "GUI/Models/Data/DataLoaders1D.h"
 
 void cloneAsUserDefinedLoader(AbstractDataLoader1D* loader, const QString& name)
diff --git a/GUI/DataLoaders/DataLoaderUtil.h b/GUI/Views/Loaders/DataLoaderUtil.h
similarity index 80%
rename from GUI/DataLoaders/DataLoaderUtil.h
rename to GUI/Views/Loaders/DataLoaderUtil.h
index ed92834113f..34276987947 100644
--- a/GUI/DataLoaders/DataLoaderUtil.h
+++ b/GUI/Views/Loaders/DataLoaderUtil.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/DataLoaderUtil.h
+//! @file      GUI/Views/Loaders/DataLoaderUtil.h
 //! @brief     Utility functions for data loaders
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_DATALOADERS_DATALOADERUTIL_H
-#define BORNAGAIN_GUI_DATALOADERS_DATALOADERUTIL_H
+#ifndef BORNAGAIN_GUI_VIEWS_LOADERS_DATALOADERUTIL_H
+#define BORNAGAIN_GUI_VIEWS_LOADERS_DATALOADERUTIL_H
 
 class AbstractDataLoader1D;
 class QString;
@@ -24,4 +24,4 @@ void cloneAsUserDefinedLoader(AbstractDataLoader1D* loader, const QString& name)
 //! register the concrete 1D data loaders with DataLoaders1D
 void register1DDataLoaders();
 
-#endif // BORNAGAIN_GUI_DATALOADERS_DATALOADERUTIL_H
+#endif // BORNAGAIN_GUI_VIEWS_LOADERS_DATALOADERUTIL_H
diff --git a/GUI/DataLoaders/QREDataLoader.cpp b/GUI/Views/Loaders/QREDataLoader.cpp
similarity index 99%
rename from GUI/DataLoaders/QREDataLoader.cpp
rename to GUI/Views/Loaders/QREDataLoader.cpp
index 87415751e0d..14bad0966a2 100644
--- a/GUI/DataLoaders/QREDataLoader.cpp
+++ b/GUI/Views/Loaders/QREDataLoader.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/QREDataLoader.cpp
+//! @file      GUI/Views/Loaders/QREDataLoader.cpp
 //! @brief     Implements class QREDataLoader
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,11 +12,11 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/DataLoaders/QREDataLoader.h"
+#include "GUI/Views/Loaders/QREDataLoader.h"
 #include "Base/Axis/PointwiseAxis.h"
 #include "Device/Coord/AxisNames.h"
-#include "GUI/DataLoaders/QREDataLoaderProperties.h"
-#include "GUI/DataLoaders/QREDataLoaderResultModel.h"
+#include "GUI/Views/Loaders/QREDataLoaderProperties.h"
+#include "GUI/Views/Loaders/QREDataLoaderResultModel.h"
 #include "GUI/Items/JobItemUtils.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Items/SpecularDataItem.h"
diff --git a/GUI/DataLoaders/QREDataLoader.h b/GUI/Views/Loaders/QREDataLoader.h
similarity index 96%
rename from GUI/DataLoaders/QREDataLoader.h
rename to GUI/Views/Loaders/QREDataLoader.h
index 8a4e8bbdb9c..c9bdf575d25 100644
--- a/GUI/DataLoaders/QREDataLoader.h
+++ b/GUI/Views/Loaders/QREDataLoader.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/QREDataLoader.h
+//! @file      GUI/Views/Loaders/QREDataLoader.h
 //! @brief     Defines class QREDataLoader
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_DATALOADERS_QREDATALOADER_H
-#define BORNAGAIN_GUI_DATALOADERS_QREDATALOADER_H
+#ifndef BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADER_H
+#define BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADER_H
 
 #include "GUI/Models/Data/AbstractDataLoader1D.h"
 #include <QVector>
@@ -139,4 +139,4 @@ private:
 QDataStream& operator<<(QDataStream& stream, const QREDataLoader::ImportSettings& s);
 QDataStream& operator>>(QDataStream& stream, QREDataLoader::ImportSettings& s);
 
-#endif // BORNAGAIN_GUI_DATALOADERS_QREDATALOADER_H
+#endif // BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADER_H
diff --git a/GUI/DataLoaders/QREDataLoaderProperties.cpp b/GUI/Views/Loaders/QREDataLoaderProperties.cpp
similarity index 97%
rename from GUI/DataLoaders/QREDataLoaderProperties.cpp
rename to GUI/Views/Loaders/QREDataLoaderProperties.cpp
index c46d51f2da9..02130e6906e 100644
--- a/GUI/DataLoaders/QREDataLoaderProperties.cpp
+++ b/GUI/Views/Loaders/QREDataLoaderProperties.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/QREDataLoaderProperties.cpp
+//! @file      GUI/Views/Loaders/QREDataLoaderProperties.cpp
 //! @brief     Implements class AutomaticMultiColumnDataLoader1DProperties
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/DataLoaders/QREDataLoaderProperties.h"
+#include "GUI/Views/Loaders/QREDataLoaderProperties.h"
 #include "ui_QREDataLoaderProperties.h"
 #include <QCheckBox>
 #include <QtGui>
diff --git a/GUI/DataLoaders/QREDataLoaderProperties.h b/GUI/Views/Loaders/QREDataLoaderProperties.h
similarity index 87%
rename from GUI/DataLoaders/QREDataLoaderProperties.h
rename to GUI/Views/Loaders/QREDataLoaderProperties.h
index d228b5624b0..56abe77ae10 100644
--- a/GUI/DataLoaders/QREDataLoaderProperties.h
+++ b/GUI/Views/Loaders/QREDataLoaderProperties.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/QREDataLoaderProperties.h
+//! @file      GUI/Views/Loaders/QREDataLoaderProperties.h
 //! @brief     Defines class AutomaticMultiColumnDataLoader1DProperties
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_DATALOADERS_QREDATALOADERPROPERTIES_H
-#define BORNAGAIN_GUI_DATALOADERS_QREDATALOADERPROPERTIES_H
+#ifndef BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADERPROPERTIES_H
+#define BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADERPROPERTIES_H
 
 #include <QWidget>
 
@@ -62,4 +62,4 @@ private:
     static const int factorColumn = factorLabelColumn + 1;
 };
 
-#endif // BORNAGAIN_GUI_DATALOADERS_QREDATALOADERPROPERTIES_H
+#endif // BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADERPROPERTIES_H
diff --git a/GUI/DataLoaders/QREDataLoaderProperties.ui b/GUI/Views/Loaders/QREDataLoaderProperties.ui
similarity index 100%
rename from GUI/DataLoaders/QREDataLoaderProperties.ui
rename to GUI/Views/Loaders/QREDataLoaderProperties.ui
diff --git a/GUI/DataLoaders/QREDataLoaderResultModel.cpp b/GUI/Views/Loaders/QREDataLoaderResultModel.cpp
similarity index 96%
rename from GUI/DataLoaders/QREDataLoaderResultModel.cpp
rename to GUI/Views/Loaders/QREDataLoaderResultModel.cpp
index 4f8652d2a58..c5888f0a202 100644
--- a/GUI/DataLoaders/QREDataLoaderResultModel.cpp
+++ b/GUI/Views/Loaders/QREDataLoaderResultModel.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/QREDataLoaderResultModel.cpp
+//! @file      GUI/Views/Loaders/QREDataLoaderResultModel.cpp
 //! @brief     Implements class QREDataLoaderResultModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/DataLoaders/QREDataLoaderResultModel.h"
+#include "GUI/Views/Loaders/QREDataLoaderResultModel.h"
 
 QREDataLoaderResultModel::QREDataLoaderResultModel(QREDataLoader::ImportResult* importResult)
     : m_importResult(importResult)
diff --git a/GUI/DataLoaders/QREDataLoaderResultModel.h b/GUI/Views/Loaders/QREDataLoaderResultModel.h
similarity index 83%
rename from GUI/DataLoaders/QREDataLoaderResultModel.h
rename to GUI/Views/Loaders/QREDataLoaderResultModel.h
index f38208215c8..fc7cf21ca3f 100644
--- a/GUI/DataLoaders/QREDataLoaderResultModel.h
+++ b/GUI/Views/Loaders/QREDataLoaderResultModel.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/QREDataLoaderResultModel.h
+//! @file      GUI/Views/Loaders/QREDataLoaderResultModel.h
 //! @brief     Defines class QREDataLoaderResultModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_DATALOADERS_QREDATALOADERRESULTMODEL_H
-#define BORNAGAIN_GUI_DATALOADERS_QREDATALOADERRESULTMODEL_H
+#ifndef BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADERRESULTMODEL_H
+#define BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADERRESULTMODEL_H
 
-#include "GUI/DataLoaders/QREDataLoader.h"
+#include "GUI/Views/Loaders/QREDataLoader.h"
 #include "GUI/Models/Data/AbstractDataLoaderResultModel.h"
 
 //! The result model of a QREDataLoader (for showing the import results in a table view).
@@ -39,4 +39,4 @@ private:
     QREDataLoader::ImportResult* m_importResult;
 };
 
-#endif // BORNAGAIN_GUI_DATALOADERS_QREDATALOADERRESULTMODEL_H
+#endif // BORNAGAIN_GUI_VIEWS_LOADERS_QREDATALOADERRESULTMODEL_H
diff --git a/GUI/DataLoaders/UserDefinedDataLoader1D.cpp b/GUI/Views/Loaders/UserDefinedDataLoader1D.cpp
similarity index 95%
rename from GUI/DataLoaders/UserDefinedDataLoader1D.cpp
rename to GUI/Views/Loaders/UserDefinedDataLoader1D.cpp
index e98d4a86b77..97c3b18ad2e 100644
--- a/GUI/DataLoaders/UserDefinedDataLoader1D.cpp
+++ b/GUI/Views/Loaders/UserDefinedDataLoader1D.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/UserDefinedDataLoader1D.cpp
+//! @file      GUI/Views/Loaders/UserDefinedDataLoader1D.cpp
 //! @brief     Implements class UserDefinedDataLoader1D
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/DataLoaders/UserDefinedDataLoader1D.h"
+#include "GUI/Views/Loaders/UserDefinedDataLoader1D.h"
 
 UserDefinedDataLoader1D::UserDefinedDataLoader1D(AbstractDataLoader1D* wrappedLoader,
                                                  const QString& name,
diff --git a/GUI/DataLoaders/UserDefinedDataLoader1D.h b/GUI/Views/Loaders/UserDefinedDataLoader1D.h
similarity index 87%
rename from GUI/DataLoaders/UserDefinedDataLoader1D.h
rename to GUI/Views/Loaders/UserDefinedDataLoader1D.h
index 45d8a7fb691..4f4113e4943 100644
--- a/GUI/DataLoaders/UserDefinedDataLoader1D.h
+++ b/GUI/Views/Loaders/UserDefinedDataLoader1D.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/DataLoaders/UserDefinedDataLoader1D.h
+//! @file      GUI/Views/Loaders/UserDefinedDataLoader1D.h
 //! @brief     Defines class UserDefinedDataLoader1D
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_DATALOADERS_USERDEFINEDDATALOADER1D_H
-#define BORNAGAIN_GUI_DATALOADERS_USERDEFINEDDATALOADER1D_H
+#ifndef BORNAGAIN_GUI_VIEWS_LOADERS_USERDEFINEDDATALOADER1D_H
+#define BORNAGAIN_GUI_VIEWS_LOADERS_USERDEFINEDDATALOADER1D_H
 
 #include "GUI/Models/Data/AbstractDataLoader1D.h"
 
@@ -43,4 +43,4 @@ private:
     QByteArray m_defaultProperties;
 };
 
-#endif // BORNAGAIN_GUI_DATALOADERS_USERDEFINEDDATALOADER1D_H
+#endif // BORNAGAIN_GUI_VIEWS_LOADERS_USERDEFINEDDATALOADER1D_H
diff --git a/GUI/Views/SpecularDataWidgets/SpecularDataImportWidget.cpp b/GUI/Views/SpecularDataWidgets/SpecularDataImportWidget.cpp
index c66577c16e0..d218a0d750a 100644
--- a/GUI/Views/SpecularDataWidgets/SpecularDataImportWidget.cpp
+++ b/GUI/Views/SpecularDataWidgets/SpecularDataImportWidget.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/SpecularDataWidgets/SpecularDataImportWidget.h"
-#include "GUI/DataLoaders/DataLoaderUtil.h"
+#include "GUI/Views/Loaders/DataLoaderUtil.h"
 #include "GUI/Items/DataItemUtils.h"
 #include "GUI/Items/InstrumentItems.h"
 #include "GUI/Items/RealDataItem.h"
diff --git a/Tests/Unit/GUI/TestLinkInstrument.cpp b/Tests/Unit/GUI/TestLinkInstrument.cpp
index d108156ef68..fe4246bb744 100644
--- a/Tests/Unit/GUI/TestLinkInstrument.cpp
+++ b/Tests/Unit/GUI/TestLinkInstrument.cpp
@@ -6,7 +6,7 @@
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Project/projectdocument.h"
-#include "GUI/mainwindow/LinkInstrumentManager.h"
+#include "GUI/Project/LinkInstrumentManager.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Utils.h"
 #include <QSignalSpy>
diff --git a/Tests/Unit/GUI/TestOutputDataIOService.cpp b/Tests/Unit/GUI/TestOutputDataIOService.cpp
index 1a7909e0894..e87239bc5e7 100644
--- a/Tests/Unit/GUI/TestOutputDataIOService.cpp
+++ b/Tests/Unit/GUI/TestOutputDataIOService.cpp
@@ -10,7 +10,7 @@
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Job/JobModel.h"
 #include "GUI/Project/ProjectUtils.h"
-#include "GUI/mainwindow/OutputDataIOService.h"
+#include "GUI/Project/OutputDataIOService.h"
 #include "GUI/utils/Error.h"
 #include "GUI/utils/Helpers.h"
 #include "Tests/GTestWrapper/google_test.h"
diff --git a/Tests/Unit/GUI/TestSavingSpecularData.cpp b/Tests/Unit/GUI/TestSavingSpecularData.cpp
index 28605f9d08b..007b73b51d2 100644
--- a/Tests/Unit/GUI/TestSavingSpecularData.cpp
+++ b/Tests/Unit/GUI/TestSavingSpecularData.cpp
@@ -13,7 +13,7 @@
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Models/Job/JobModel.h"
 #include "GUI/Project/ProjectUtils.h"
-#include "GUI/mainwindow/OutputDataIOService.h"
+#include "GUI/Project/OutputDataIOService.h"
 #include "GUI/utils/Error.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Utils.h"
-- 
GitLab