Skip to content
Snippets Groups Projects
Commit 85e3a3af authored by Wuttke, Joachim's avatar Wuttke, Joachim
Browse files

move project invocation to Views

parent 2cef5924
No related branches found
No related tags found
2 merge requests!427Reduce include dependences in GUI; break cyclic dependence between View and Model,!426Restructure GUI subdirectories to reduce cyclic dependencies
Showing
with 26 additions and 24 deletions
......@@ -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);
......
......@@ -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;
......
......@@ -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"
......
......@@ -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
......
......@@ -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
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
......@@ -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);
}
......
......@@ -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"
......
......@@ -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"
......
......@@ -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"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment