Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
QmitkDataManagerView.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef QmitkDataManagerView_h
14 #define QmitkDataManagerView_h
15 
17 
18 // mitk core
19 #include <mitkNodePredicateBase.h>
20 
21 // mitk gui qt common plugin
22 #include <QmitkAbstractView.h>
23 
24 // mitk gui qt application
26 
27 // qt
28 #include <QItemSelection>
29 
30 // forward declarations
31 class QModelIndex;
32 class QTreeView;
33 
36 class QmitkDataManagerItemDelegate;
38 
44 {
45  Q_OBJECT
46 
47 public:
48 
49  static const QString VIEW_ID; // = "org.mitk.views.datamanager"
50 
52 
53  ~QmitkDataManagerView() override;
54 
55 public Q_SLOTS:
56 
57  // invoked when the berry preferences were changed
58  void OnPreferencesChanged(const mitk::IPreferences* prefs) override;
59 
61  // Slots for Qt node tree signals
64  void NodeTreeViewRowsInserted(const QModelIndex& parent, int start, int end);
65 
67  void NodeTreeViewRowsRemoved(const QModelIndex& parent, int start, int end);
68 
70  void NodeSelectionChanged(const QItemSelection& selected, const QItemSelection& deselected);
71 
72  void OnNodeVisibilityChanged();
73 
74 protected:
75 
76  void CreateQtPartControl(QWidget* parent) override;
77 
78  void SetFocus() override;
82  void NodeChanged(const mitk::DataNode* node) override;
83 
84 protected:
85 
86  QWidget* m_Parent;
88 
96 
100  QTreeView* m_NodeTreeView;
105 
108 
109  QmitkDataManagerItemDelegate* m_ItemDelegate;
110 
111 private:
112 
113  QItemSelectionModel* GetDataNodeSelectionModel() const override;
114 
115 };
116 
117 #endif
QmitkAbstractView.h
QmitkDataManagerView::m_FilterModel
QmitkDataStorageFilterProxyModel * m_FilterModel
Definition: QmitkDataManagerView.h:93
QmitkDataManagerView
A view that shows all data nodes of the data storage in a qt tree view.
Definition: QmitkDataManagerView.h:43
QmitkDataManagerView::m_NodeWithNoDataFilterPredicate
mitk::NodePredicateBase::Pointer m_NodeWithNoDataFilterPredicate
Definition: QmitkDataManagerView.h:95
QmitkDnDFrameWidget
Enables loading data into a MITK application via Drag'n Drop.
Definition: QmitkDnDFrameWidget.h:33
QmitkDataManagerView::m_Parent
QWidget * m_Parent
Definition: QmitkDataManagerView.h:86
org_mitk_gui_qt_datamanager_Export.h
QmitkDataManagerView::m_NodeTreeModel
QmitkDataStorageTreeModel * m_NodeTreeModel
A plain widget as the base pane.
Definition: QmitkDataManagerView.h:92
QmitkAbstractView
A convenient base class for MITK related BlueBerry Views.
Definition: QmitkAbstractView.h:89
QmitkDataManagerView::m_DataNodeContextMenu
QmitkDataNodeContextMenu * m_DataNodeContextMenu
The context menu that shows up when right clicking on a node.
Definition: QmitkDataManagerView.h:104
itk::SmartPointer< Self >
QmitkDataManagerView::VIEW_ID
static const QString VIEW_ID
Definition: QmitkDataManagerView.h:49
mitkNodePredicateBase.h
berry::QtViewPart::CreateQtPartControl
virtual void CreateQtPartControl(QWidget *parent)=0
QmitkDataManagerView::m_CurrentRowCount
size_t m_CurrentRowCount
saves the current amount of rows shown in the data manager
Definition: QmitkDataManagerView.h:107
QmitkDataManagerView::m_ItemDelegate
QmitkDataManagerItemDelegate * m_ItemDelegate
Definition: QmitkDataManagerView.h:109
QmitkDataManagerView::m_NodeTreeView
QTreeView * m_NodeTreeView
The Table view to show the selected nodes.
Definition: QmitkDataManagerView.h:100
QmitkDataManagerView::m_HelperObjectFilterPredicate
mitk::NodePredicateBase::Pointer m_HelperObjectFilterPredicate
Definition: QmitkDataManagerView.h:94
QmitkDataManagerView::m_DnDFrameWidget
QmitkDnDFrameWidget * m_DnDFrameWidget
Definition: QmitkDataManagerView.h:87
MITK_QT_DATAMANAGER
#define MITK_QT_DATAMANAGER
Definition: org_mitk_gui_qt_datamanager_Export.h:26
mitk::IPreferences
Interface to application preferences.
Definition: mitkIPreferences.h:50
QmitkDataNodeContextMenu
Definition: QmitkDataNodeContextMenu.h:46
QmitkDataNodeContextMenu.h
berry::WorkbenchPart::SetFocus
void SetFocus() override=0
mitk::DataNode
Class for nodes of the DataTree.
Definition: mitkDataNode.h:63
QmitkDataStorageFilterProxyModel
Definition: QmitkDataStorageFilterProxyModel.h:26
QmitkDataStorageTreeModel
Definition: QmitkDataStorageTreeModel.h:39