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