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

[j.1] DatafilesSet now also inherits SetWithModel ()

Merging branch 'j.1'  into 'main'.

See merge request !2398
parents f817cbb9 836c9628
No related branches found
No related tags found
1 merge request!2398DatafilesSet now also inherits SetWithModel
Pipeline #132165 passed
Showing
with 50 additions and 206 deletions
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
#include "GUI/Model/Files/DatafilesSet.h" #include "GUI/Model/Files/DatafilesSet.h"
#include "Base/Util/Assert.h" #include "Base/Util/Assert.h"
#include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Support/XML/UtilXML.h" #include "GUI/Support/XML/UtilXML.h"
namespace { namespace {
...@@ -26,11 +25,7 @@ const QString CurrentIndex("CurrentIndex"); ...@@ -26,11 +25,7 @@ const QString CurrentIndex("CurrentIndex");
} // namespace Tag } // namespace Tag
} // namespace } // namespace
DatafilesSet::DatafilesSet() DatafilesSet::DatafilesSet() = default;
{
setObjectName("DatafilesSet");
}
DatafilesSet::~DatafilesSet() = default; DatafilesSet::~DatafilesSet() = default;
void DatafilesSet::writeTo(QXmlStreamWriter* w) const void DatafilesSet::writeTo(QXmlStreamWriter* w) const
...@@ -65,7 +60,7 @@ void DatafilesSet::readFrom(QXmlStreamReader* r) ...@@ -65,7 +60,7 @@ void DatafilesSet::readFrom(QXmlStreamReader* r)
if (tag == Tag::RealData) { if (tag == Tag::RealData) {
auto* item = new DatafileItem; auto* item = new DatafileItem;
item->readFrom(r); item->readFrom(r);
push_back(item); add_item(item);
XML::gotoEndElementOfTag(r, tag); XML::gotoEndElementOfTag(r, tag);
// selected index // selected index
...@@ -99,14 +94,6 @@ void DatafilesSet::readDatafiles(const QString& projectDir, MessageService* mess ...@@ -99,14 +94,6 @@ void DatafilesSet::readDatafiles(const QString& projectDir, MessageService* mess
dataFilesCleaner.recollectDataNames(dataItems()); dataFilesCleaner.recollectDataNames(dataItems());
} }
QStringList DatafilesSet::itemNames() const
{
QStringList result;
for (DatafileItem* dfi : *this)
result.append(dfi->name());
return result;
}
QVector<DataItem*> DatafilesSet::dataItems() const QVector<DataItem*> DatafilesSet::dataItems() const
{ {
QVector<DataItem*> result; QVector<DataItem*> result;
......
...@@ -15,33 +15,27 @@ ...@@ -15,33 +15,27 @@
#ifndef BORNAGAIN_GUI_MODEL_FILES_DATAFILESSET_H #ifndef BORNAGAIN_GUI_MODEL_FILES_DATAFILESSET_H
#define BORNAGAIN_GUI_MODEL_FILES_DATAFILESSET_H #define BORNAGAIN_GUI_MODEL_FILES_DATAFILESSET_H
#include "Base/Types/VectorWC.h" #include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Model/Files/DatafilesCleaner.h" #include "GUI/Model/Files/DatafilesCleaner.h"
#include "GUI/Model/Type/SetWithModel.h"
#include <QObject> #include <QObject>
#include <QXmlStreamWriter> #include <QXmlStreamWriter>
class DataItem; class DataItem;
class DatafileItem;
class MessageService; class MessageService;
//! The DatafilesSet class is a model to store all imported DatafileItem's. //! The DatafilesSet class is a model to store all imported DatafileItem's.
class DatafilesSet : public QObject, public VectorWC<DatafileItem> { class DatafilesSet : public SetWithModel<DatafileItem> {
Q_OBJECT
public: public:
explicit DatafilesSet(); DatafilesSet();
~DatafilesSet(); virtual ~DatafilesSet();
void readFrom(QXmlStreamReader* r); void readFrom(QXmlStreamReader* r);
void readDatafiles(const QString& projectDir, MessageService* messageService); void readDatafiles(const QString& projectDir, MessageService* messageService);
QStringList itemNames() const;
void writeTo(QXmlStreamWriter* w) const; void writeTo(QXmlStreamWriter* w) const;
void writeDatafiles(const QString& projectDir) const; void writeDatafiles(const QString& projectDir) const;
signals:
void setChanged() const;
void currentModified() const;
private: private:
QVector<DataItem*> dataItems() const; QVector<DataItem*> dataItems() const;
......
...@@ -36,7 +36,6 @@ ...@@ -36,7 +36,6 @@
#include "GUI/Model/Detector/OffspecDetectorItem.h" #include "GUI/Model/Detector/OffspecDetectorItem.h"
#include "GUI/Model/Detector/ResolutionFunctionItems.h" #include "GUI/Model/Detector/ResolutionFunctionItems.h"
#include "GUI/Model/Device/BackgroundItems.h" #include "GUI/Model/Device/BackgroundItems.h"
#include "GUI/Model/Device/InstrumentItems.h"
#include "GUI/Model/Device/InstrumentsSet.h" #include "GUI/Model/Device/InstrumentsSet.h"
#include "GUI/Model/Mask/MaskItems.h" #include "GUI/Model/Mask/MaskItems.h"
#include "GUI/Model/Mask/MasksSet.h" #include "GUI/Model/Mask/MasksSet.h"
......
...@@ -15,14 +15,12 @@ ...@@ -15,14 +15,12 @@
#include "GUI/Model/Project/ProjectDocument.h" #include "GUI/Model/Project/ProjectDocument.h"
#include "GUI/Model/Device/BackgroundItems.h" #include "GUI/Model/Device/BackgroundItems.h"
#include "GUI/Model/Device/DatafileItem.h" #include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Model/Device/InstrumentItems.h"
#include "GUI/Model/Device/InstrumentsSet.h" #include "GUI/Model/Device/InstrumentsSet.h"
#include "GUI/Model/Files/DatafilesSet.h" #include "GUI/Model/Files/DatafilesSet.h"
#include "GUI/Model/Material/MaterialItem.h" #include "GUI/Model/Material/MaterialItem.h"
#include "GUI/Model/Project/LinkInstrumentManager.h" #include "GUI/Model/Project/LinkInstrumentManager.h"
#include "GUI/Model/Project/ProjectUtil.h" #include "GUI/Model/Project/ProjectUtil.h"
#include "GUI/Model/Sample/ItemWithMaterial.h" #include "GUI/Model/Sample/ItemWithMaterial.h"
#include "GUI/Model/Sample/SampleItem.h"
#include "GUI/Model/Sample/SamplesSet.h" #include "GUI/Model/Sample/SamplesSet.h"
#include "GUI/Model/Tune/JobsSet.h" #include "GUI/Model/Tune/JobsSet.h"
#include "GUI/Support/Data/ID.h" #include "GUI/Support/Data/ID.h"
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include "GUI/Model/Type/ModelForSet.h" #include "GUI/Model/Type/ModelForSet.h"
#include <QObject> #include <QObject>
#include <QStringList> #include <QStringList>
#include <vector>
//! Non-templated base class for SetWithModel, needed to support Qt signals. //! Non-templated base class for SetWithModel, needed to support Qt signals.
...@@ -63,10 +64,19 @@ public: ...@@ -63,10 +64,19 @@ public:
m_qmodel->endRemoveRows(); m_qmodel->endRemoveRows();
emit SetBase::setChanged(); emit SetBase::setChanged();
} }
void add_item(T* e) void add_item(T* t)
{ {
m_qmodel->beginInsertRows({}, size(), size()); m_qmodel->beginInsertRows({}, size(), size());
m_vec.push_back(e); m_vec.push_back(t);
m_idx = m_vec.size() - 1;
m_qmodel->endInsertRows();
emit SetBase::setChanged();
}
void add_items(std::vector<T*> v)
{
m_qmodel->beginInsertRows({}, size(), size());
for (T* t : v)
m_vec.push_back(t);
m_idx = m_vec.size() - 1; m_idx = m_vec.size() - 1;
m_qmodel->endInsertRows(); m_qmodel->endInsertRows();
emit SetBase::setChanged(); emit SetBase::setChanged();
......
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
#include "GUI/View/Data/DatafileEditor.h" #include "GUI/View/Data/DatafileEditor.h"
#include "GUI/Model/Device/DatafileItem.h" #include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Model/Device/InstrumentItems.h"
#include "GUI/Model/Device/InstrumentsSet.h" #include "GUI/Model/Device/InstrumentsSet.h"
#include "GUI/Model/Project/LinkInstrumentManager.h" #include "GUI/Model/Project/LinkInstrumentManager.h"
#include "GUI/Model/Project/ProjectDocument.h" #include "GUI/Model/Project/ProjectDocument.h"
......
...@@ -15,25 +15,16 @@ ...@@ -15,25 +15,16 @@
#include "GUI/View/Data/DatafilesQListView.h" #include "GUI/View/Data/DatafilesQListView.h"
#include "GUI/Model/Files/DatafilesSet.h" #include "GUI/Model/Files/DatafilesSet.h"
#include "GUI/Model/Project/ProjectDocument.h" #include "GUI/Model/Project/ProjectDocument.h"
#include "GUI/View/Data/DatafilesQModel.h"
#include "GUI/View/Widget/ListItemDelegate.h" #include "GUI/View/Widget/ListItemDelegate.h"
DatafilesQListView::DatafilesQListView(DatafilesQModel* model) DatafilesQListView::DatafilesQListView(DatafilesSet* set)
{ {
setMinimumWidth(200); setMinimumWidth(200);
setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding);
setSelectionMode(QAbstractItemView::NoSelection); setSelectionMode(QAbstractItemView::NoSelection);
setItemDelegate(new ListItemDelegate(this)); setItemDelegate(new ListItemDelegate(this));
setModel(model); setModel(set->model());
connect(this, &QListView::clicked, [this](const QModelIndex& qi) { connect(this, &QListView::clicked,
gDoc->datafilesModifier()->setCurrentIndex(qi.row()); [this, set](const QModelIndex& qi) { set->setCurrentIndex(qi.row()); });
emit gDoc->datafiles()->setChanged();
});
disconnect(gDoc->datafiles(), &DatafilesSet::setChanged, nullptr, nullptr);
connect(gDoc->datafiles(), &DatafilesSet::setChanged, [this, model] {
setCurrentIndex(model->index(gDoc->datafiles()->currentIndex(), 0));
repaint();
});
} }
...@@ -17,12 +17,12 @@ ...@@ -17,12 +17,12 @@
#include <QListView> #include <QListView>
class DatafilesQModel; class DatafilesSet;
//! List view to select one datafile (left side of layer-oriented datafile editor) //! List view to select one datafile (left side of layer-oriented datafile editor)
class DatafilesQListView : public QListView { class DatafilesQListView : public QListView {
public: public:
DatafilesQListView(DatafilesQModel*); DatafilesQListView(DatafilesSet*);
}; };
#endif // BORNAGAIN_GUI_VIEW_DATA_DATAFILESQLISTVIEW_H #endif // BORNAGAIN_GUI_VIEW_DATA_DATAFILESQLISTVIEW_H
// ************************************************************************************************
//
// BornAgain: simulate and fit reflection and scattering
//
//! @file GUI/View/Data/DatafilesQModel.cpp
//! @brief Implements class DatafilesQModel.
//!
//! @homepage http://www.bornagainproject.org
//! @license GNU General Public License v3 or higher (see COPYING)
//! @copyright Forschungszentrum Jülich GmbH 2021
//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
//
// ************************************************************************************************
#include "GUI/View/Data/DatafilesQModel.h"
#include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Model/Files/DatafilesSet.h"
#include "GUI/Model/Project/ProjectDocument.h"
#include <QColor>
DatafilesQModel::DatafilesQModel(QObject* parent)
: QAbstractListModel(parent) // parent needed to ensure end of life
{
}
DatafilesSet* DatafilesQModel::set()
{
return gDoc->datafilesModifier();
}
const DatafilesSet* DatafilesQModel::set() const
{
return gDoc->datafiles();
}
int DatafilesQModel::rowCount(const QModelIndex&) const
{
return set()->size();
}
QVariant DatafilesQModel::data(const QModelIndex& index, int role) const
{
if (!index.isValid())
return {};
size_t row = index.row();
if (row >= set()->size())
return {};
const DatafileItem* t = set()->at(row);
switch (role) {
case Qt::DisplayRole:
return t->name();
case Qt::ToolTipRole:
return t->description();
case Qt::BackgroundRole:
return row == set()->currentIndex() ? QColor(Qt::cyan) : QColor(Qt::white);
default:
return {};
}
}
void DatafilesQModel::deleteItem()
{
const size_t row = set()->currentIndex();
ASSERT(row != size_t(-1));
beginRemoveRows({}, row, row);
set()->delete_current();
endRemoveRows();
emit set()->setChanged();
}
void DatafilesQModel::pushItem(DatafileItem* t)
{
if (!t)
return;
const size_t row = set()->size();
beginInsertRows({}, row, row);
set()->push_back(t);
endInsertRows();
emit set()->setChanged();
}
void DatafilesQModel::pushItems(const std::vector<DatafileItem*>& v)
{
for (DatafileItem* t : v)
pushItem(t);
}
// ************************************************************************************************
//
// BornAgain: simulate and fit reflection and scattering
//
//! @file GUI/View/Data/DatafilesQModel.h
//! @brief Defines class DatafilesQModel.
//!
//! @homepage http://www.bornagainproject.org
//! @license GNU General Public License v3 or higher (see COPYING)
//! @copyright Forschungszentrum Jülich GmbH 2021
//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
//
// ************************************************************************************************
#ifndef BORNAGAIN_GUI_VIEW_DATA_DATAFILESQMODEL_H
#define BORNAGAIN_GUI_VIEW_DATA_DATAFILESQMODEL_H
#include <QAbstractListModel>
class DatafileItem;
class DatafilesSet;
//! Tree representation of DatafilesSet, for use in DatafilesSelector.
class DatafilesQModel : public QAbstractListModel {
public:
explicit DatafilesQModel(QObject* parent);
int rowCount(const QModelIndex&) const override;
QVariant data(const QModelIndex& index, int role) const override;
void deleteItem();
void pushItem(DatafileItem*);
void pushItems(const std::vector<DatafileItem*>&);
private:
DatafilesSet* set();
const DatafilesSet* set() const;
};
#endif // BORNAGAIN_GUI_VIEW_DATA_DATAFILESQMODEL_H
...@@ -18,7 +18,6 @@ ...@@ -18,7 +18,6 @@
#include "GUI/Model/Axis/PointwiseAxisItem.h" #include "GUI/Model/Axis/PointwiseAxisItem.h"
#include "GUI/Model/Beam/BeamWavelengthItem.h" #include "GUI/Model/Beam/BeamWavelengthItem.h"
#include "GUI/Model/Beam/SourceItems.h" #include "GUI/Model/Beam/SourceItems.h"
#include "GUI/Model/Device/InstrumentItems.h"
#include "GUI/Model/Device/InstrumentsSet.h" #include "GUI/Model/Device/InstrumentsSet.h"
#include "GUI/Model/Project/ProjectDocument.h" #include "GUI/Model/Project/ProjectDocument.h"
#include "GUI/View/Device/AlphaScanEditor.h" #include "GUI/View/Device/AlphaScanEditor.h"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// //
// BornAgain: simulate and fit reflection and scattering // BornAgain: simulate and fit reflection and scattering
// //
//! @file GUI/View/Data/DatafilesSelector.cpp //! @file GUI/View/List/DatafilesSelector.cpp
//! @brief Implements class DatafilesSelector. //! @brief Implements class DatafilesSelector.
//! //!
//! @homepage http://www.bornagainproject.org //! @homepage http://www.bornagainproject.org
...@@ -12,14 +12,13 @@ ...@@ -12,14 +12,13 @@
// //
// ************************************************************************************************ // ************************************************************************************************
#include "GUI/View/Data/DatafilesSelector.h" #include "GUI/View/List/DatafilesSelector.h"
#include "Base/Util/Assert.h" #include "Base/Util/Assert.h"
#include "GUI/Model/Data/DataItem.h" #include "GUI/Model/Data/DataItem.h"
#include "GUI/Model/Device/DatafileItem.h" #include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Model/Files/DatafilesSet.h" #include "GUI/Model/Files/DatafilesSet.h"
#include "GUI/View/Data/DatafileEditor.h" #include "GUI/View/Data/DatafileEditor.h"
#include "GUI/View/Data/DatafilesQListView.h" #include "GUI/View/Data/DatafilesQListView.h"
#include "GUI/View/Data/DatafilesQModel.h"
#include "GUI/View/Frame/StackedFrames.h" #include "GUI/View/Frame/StackedFrames.h"
#include "GUI/View/Loader/DataLoader.h" #include "GUI/View/Loader/DataLoader.h"
#include "GUI/View/Manager/ProjectManager.h" #include "GUI/View/Manager/ProjectManager.h"
...@@ -31,8 +30,8 @@ ...@@ -31,8 +30,8 @@
#include <QSplitter> #include <QSplitter>
DatafilesSelector::DatafilesSelector() DatafilesSelector::DatafilesSelector()
: m_qlistmodel(new DatafilesQModel(this)) : m_set(gDoc->datafilesModifier())
, m_qlistview(new DatafilesQListView(m_qlistmodel)) , m_qlistview(new DatafilesQListView(m_set))
, m_editor(new DatafileEditor) , m_editor(new DatafileEditor)
{ {
setMinimumWidth(200); setMinimumWidth(200);
...@@ -68,7 +67,7 @@ void DatafilesSelector::setToolbarActions(QToolBar* toolbar) ...@@ -68,7 +67,7 @@ void DatafilesSelector::setToolbarActions(QToolBar* toolbar)
import1dData_action->setIcon(QIcon(":/images/shape-square-plus.svg")); import1dData_action->setIcon(QIcon(":/images/shape-square-plus.svg"));
import1dData_action->setToolTip("Import 1D data"); import1dData_action->setToolTip("Import 1D data");
connect(import1dData_action, &QAction::triggered, connect(import1dData_action, &QAction::triggered,
[this] { m_qlistmodel->pushItems(RW::importData1D()); }); [this] { m_set->add_items(RW::importData1D()); });
auto* import2dData_action = new QAction(this); auto* import2dData_action = new QAction(this);
toolbar->addAction(import2dData_action); toolbar->addAction(import2dData_action);
...@@ -76,15 +75,15 @@ void DatafilesSelector::setToolbarActions(QToolBar* toolbar) ...@@ -76,15 +75,15 @@ void DatafilesSelector::setToolbarActions(QToolBar* toolbar)
import2dData_action->setIcon(QIcon(":/images/shape-square-plus.svg")); import2dData_action->setIcon(QIcon(":/images/shape-square-plus.svg"));
import2dData_action->setToolTip("Import 2D data"); import2dData_action->setToolTip("Import 2D data");
connect(import2dData_action, &QAction::triggered, connect(import2dData_action, &QAction::triggered,
[this] { m_qlistmodel->pushItems(RW::importData2D()); }); [this] { m_set->add_items(RW::importData2D()); });
m_rm_action = ActionFactory::createRemoveAction("data file"); m_rm_action = ActionFactory::createRemoveAction("data file");
toolbar->addAction(m_rm_action); toolbar->addAction(m_rm_action);
connect(m_rm_action, &QAction::triggered, m_qlistmodel, &DatafilesQModel::deleteItem); connect(m_rm_action, &QAction::triggered, m_set, &DatafilesSet::delete_current);
} }
void DatafilesSelector::updateActions() void DatafilesSelector::updateActions()
{ {
bool enabled = gDoc->datafiles()->currentIndex() != size_t(-1); bool enabled = m_set->currentIndex() != size_t(-1);
m_rm_action->setEnabled(enabled); m_rm_action->setEnabled(enabled);
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// //
// BornAgain: simulate and fit reflection and scattering // BornAgain: simulate and fit reflection and scattering
// //
//! @file GUI/View/Data/DatafilesSelector.h //! @file GUI/View/List/DatafilesSelector.h
//! @brief Defines class DatafilesSelector. //! @brief Defines class DatafilesSelector.
//! //!
//! @homepage http://www.bornagainproject.org //! @homepage http://www.bornagainproject.org
...@@ -12,14 +12,14 @@ ...@@ -12,14 +12,14 @@
// //
// ************************************************************************************************ // ************************************************************************************************
#ifndef BORNAGAIN_GUI_VIEW_DATA_DATAFILESSELECTOR_H #ifndef BORNAGAIN_GUI_VIEW_LIST_DATAFILESSELECTOR_H
#define BORNAGAIN_GUI_VIEW_DATA_DATAFILESSELECTOR_H #define BORNAGAIN_GUI_VIEW_LIST_DATAFILESSELECTOR_H
#include <QWidget> #include <QWidget>
class DatafileEditor; class DatafileEditor;
class DatafilesQListView; class DatafilesQListView;
class DatafilesQModel; class DatafilesSet;
class QToolBar; class QToolBar;
//! For viewing and selecting loaded datafiles. //! For viewing and selecting loaded datafiles.
...@@ -38,11 +38,11 @@ private: ...@@ -38,11 +38,11 @@ private:
void setToolbarActions(QToolBar* toolbar); void setToolbarActions(QToolBar* toolbar);
void updateActions(); void updateActions();
DatafilesQModel* m_qlistmodel; DatafilesSet* m_set;
DatafilesQListView* m_qlistview; DatafilesQListView* m_qlistview;
DatafileEditor* m_editor; DatafileEditor* m_editor;
QAction* m_rm_action; QAction* m_rm_action;
}; };
#endif // BORNAGAIN_GUI_VIEW_DATA_DATAFILESSELECTOR_H #endif // BORNAGAIN_GUI_VIEW_LIST_DATAFILESSELECTOR_H
...@@ -17,8 +17,8 @@ ...@@ -17,8 +17,8 @@
#include "GUI/Model/Device/DatafileItem.h" #include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Model/Files/DatafilesSet.h" #include "GUI/Model/Files/DatafilesSet.h"
#include "GUI/Model/Project/ProjectDocument.h" #include "GUI/Model/Project/ProjectDocument.h"
#include "GUI/View/Data/DatafilesSelector.h"
#include "GUI/View/Frame/StackedFrames.h" #include "GUI/View/Frame/StackedFrames.h"
#include "GUI/View/List/DatafilesSelector.h"
#include <QSplitter> #include <QSplitter>
#include <QVBoxLayout> #include <QVBoxLayout>
......
...@@ -15,12 +15,10 @@ ...@@ -15,12 +15,10 @@
#include "GUI/View/Views/SimulationView.h" #include "GUI/View/Views/SimulationView.h"
#include "GUI/Model/Data/DataItem.h" #include "GUI/Model/Data/DataItem.h"
#include "GUI/Model/Device/DatafileItem.h" #include "GUI/Model/Device/DatafileItem.h"
#include "GUI/Model/Device/InstrumentItems.h"
#include "GUI/Model/Device/InstrumentsSet.h" #include "GUI/Model/Device/InstrumentsSet.h"
#include "GUI/Model/Files/DatafilesSet.h" #include "GUI/Model/Files/DatafilesSet.h"
#include "GUI/Model/Job/JobItem.h" #include "GUI/Model/Job/JobItem.h"
#include "GUI/Model/Project/ProjectDocument.h" #include "GUI/Model/Project/ProjectDocument.h"
#include "GUI/Model/Sample/SampleItem.h"
#include "GUI/Model/Sample/SampleValidator.h" #include "GUI/Model/Sample/SampleValidator.h"
#include "GUI/Model/Sample/SamplesSet.h" #include "GUI/Model/Sample/SamplesSet.h"
#include "GUI/Model/Tune/JobsSet.h" #include "GUI/Model/Tune/JobsSet.h"
......
...@@ -83,20 +83,20 @@ TEST(TestDatafilesSet, saveXMLData) ...@@ -83,20 +83,20 @@ TEST(TestDatafilesSet, saveXMLData)
// add specular DatafileItems with non-default parameters // add specular DatafileItems with non-default parameters
auto* spec1 = new DatafileItem("spec1", df1); auto* spec1 = new DatafileItem("spec1", df1);
model1.push_back(spec1); model1.add_item(spec1);
auto* t1 = new SpecularInstrumentItem; auto* t1 = new SpecularInstrumentItem;
instrument_model.add_item(t1); instrument_model.add_item(t1);
spec1->linkToInstrument(t1); spec1->linkToInstrument(t1);
// add second specular DatafileItem // add second specular DatafileItem
auto* spec2 = new DatafileItem("spec2", df2); auto* spec2 = new DatafileItem("spec2", df2);
model1.push_back(spec2); model1.add_item(spec2);
// add 2D DatafileItems with non-default parameters // add 2D DatafileItems with non-default parameters
auto* intensity1 = new DatafileItem("GISAS", df2); auto* intensity1 = new DatafileItem("GISAS", df2);
auto* intensity2 = new DatafileItem("Offspec", df2); auto* intensity2 = new DatafileItem("Offspec", df2);
model1.push_back(intensity1); model1.add_item(intensity1);
model1.push_back(intensity2); model1.add_item(intensity2);
auto* t2 = new Scatter2DInstrumentItem; auto* t2 = new Scatter2DInstrumentItem;
auto* t3 = new OffspecInstrumentItem; auto* t3 = new OffspecInstrumentItem;
instrument_model.add_item(t2); instrument_model.add_item(t2);
......
...@@ -54,17 +54,17 @@ Datafield UTest::GUI::makeData2D(double value, int nx, double x_min, double x_ma ...@@ -54,17 +54,17 @@ Datafield UTest::GUI::makeData2D(double value, int nx, double x_min, double x_ma
return result; return result;
} }
DatafileItem* UTest::GUI::createRealData1D(const QString& name, DatafilesSet& model, double value) DatafileItem* UTest::GUI::createRealData1D(const QString& name, DatafilesSet& set, double value)
{ {
auto* dfi = new DatafileItem(name, makeData1D(value)); auto* dfi = new DatafileItem(name, makeData1D(value));
model.push_back(dfi); set.add_item(dfi);
return dfi; return dfi;
} }
DatafileItem* UTest::GUI::createRealData2D(const QString& name, DatafilesSet& model, double value) DatafileItem* UTest::GUI::createRealData2D(const QString& name, DatafilesSet& set, double value)
{ {
auto* dfi = new DatafileItem(name, makeData2D(value)); auto* dfi = new DatafileItem(name, makeData2D(value));
model.push_back(dfi); set.add_item(dfi);
return dfi; return dfi;
} }
......
...@@ -36,10 +36,10 @@ Datafield makeData2D(double value, int nx = 5, double x_min = -1.0, double x_max ...@@ -36,10 +36,10 @@ Datafield makeData2D(double value, int nx = 5, double x_min = -1.0, double x_max
double y_min = 0.0, double y_max = 2.0); double y_min = 0.0, double y_max = 2.0);
//! Creates real 1D data item initialized with Datafield //! Creates real 1D data item initialized with Datafield
DatafileItem* createRealData1D(const QString& name, DatafilesSet& model, double value); DatafileItem* createRealData1D(const QString& name, DatafilesSet& set, double value);
//! Creates real 2D data item initialized with Datafield //! Creates real 2D data item initialized with Datafield
DatafileItem* createRealData2D(const QString& name, DatafilesSet& model, double value); DatafileItem* createRealData2D(const QString& name, DatafilesSet& set, double value);
//! Helper function to test if data are the same. //! Helper function to test if data are the same.
bool isTheSame(const Datafield& data1, const Datafield& data2); bool isTheSame(const Datafield& data1, const Datafield& data2);
......
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