BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
dataselectorwidget.cpp
Go to the documentation of this file.
1 // ************************************************************************************************
2 //
3 // BornAgain: simulate and fit reflection and scattering
4 //
5 //! @file gui2/importdataview/dataselectorwidget.cpp
6 //! @brief Implements class CLASS?
7 //!
8 //! @homepage http://www.bornagainproject.org
9 //! @license GNU General Public License v3 or higher (see COPYING)
10 //! @copyright Forschungszentrum Jülich GmbH 2020
11 //! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
12 //
13 // ************************************************************************************************
14 
23 #include <QHBoxLayout>
24 #include <QLabel>
25 #include <QSplitter>
26 #include <QTreeView>
27 #include <QVBoxLayout>
28 
29 namespace gui2 {
30 
32  : QWidget(parent)
33  , m_viewModel(view_model)
34  , m_selectionModel(new DataSelectionModel(m_viewModel, this))
35  , m_selectorTree(new QTreeView)
36  , m_canvasPropertyEditor(new ModelView::PropertyTreeView)
37  , m_graphPropertyEditor(new ModelView::PropertyTreeView)
38  , m_collapsibleWidget(new ModelView::CollapsibleListWidget)
39 {
40  auto layout = new QVBoxLayout(this);
41 
44  /*set_collapsed*/ true);
46  /*set_collapsed*/ true);
47 
48  layout->addWidget(m_collapsibleWidget);
49 
50  m_selectorTree->setModel(m_viewModel);
51  m_selectorTree->setSelectionModel(m_selectionModel);
52  m_selectorTree->setSelectionMode(QAbstractItemView::ExtendedSelection);
53  m_selectorTree->setDragDropMode(QAbstractItemView::InternalMove);
54  m_selectorTree->setDragEnabled(true);
55 
56  connect(selectionModel(), &DataSelectionModel::selectionChanged, this,
58 }
59 
61 {
62  return m_selectionModel;
63 }
64 
66 {
69 
70  selectionChanged(); // emmit further
71 }
72 
73 } // namespace gui2
Vertical widget with column of panels displayed one under another.
void addWidget(QWidget *widget, const QString &title, bool collapsed=false)
Widget holding standard QTreeView and intended for displaying all properties of given SessionItem.
void setItem(SessionItem *item)
Custom selection model for data view model (AbstractViewModel).
CanvasItem * activeCanvas() const
Returns active canvas.
ModelView::GraphItem * selectedGraph() const
Returns currently selected graph. If more than one graph is selected, will return first one.
ModelView::PropertyTreeView * m_graphPropertyEditor
ModelView::CollapsibleListWidget * m_collapsibleWidget
DataSelectorWidget(DataViewModel *view_model, QWidget *parent=nullptr)
ModelView::PropertyTreeView * m_canvasPropertyEditor
DataSelectionModel * m_selectionModel
DataSelectionModel * selectionModel() const
View model for ExperimentalDataModel with drag-and-drop support.
Definition: dataviewmodel.h:31
Defines class CLASS?
Defines class CLASS?
Defines class CLASS?
Defines class CLASS?
Defines class CLASS?
Defines class CLASS?
materialitems.h Collection of materials to populate MaterialModel.
Based on Qt example "codeeditor" Copyright (C) 2016 The Qt Company Ltd.
Definition: app_constants.h:20
Defines class CLASS?
Defines class CLASS?