Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
QmitkPatientTableInspector.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 QmitkPatientTableInspector_h
14 #define QmitkPatientTableInspector_h
15 
16 // semantic relations UI module
19 #include "QmitkPatientTableModel.h"
21 
22 #include "ui_QmitkPatientTableInspector.h"
23 
24 // qt widgets module
25 #include <QmitkEnums.h>
26 
27 // qt
28 #include <QMenu>
29 
30 /*
31 * @brief The QmitkPatientTableInspector is a QmitkAbstractSemanticRelationsStorageInspector that shows the currently
32 * available data of the semantic relations storage model in a control-point - information type matrix.
33 *
34 * The QmitkPatientTableInspector uses the QmitkSemanticRelationsStorageModel, a QmitkAbstractDataStorageModel that
35 * presents the semantic relations data as a table, showing a QPixmap as thumbnail for the data nodes.
36 */
38 {
39  Q_OBJECT
40 
41 public:
42 
43  QmitkPatientTableInspector(QWidget* parent = nullptr);
44 
45  QAbstractItemView* GetView() override;
46  const QAbstractItemView* GetView() const override;
47 
48  void SetSelectionMode(SelectionMode mode) override;
49  SelectionMode GetSelectionMode() const override;
50 
51  void SetCaseID(const mitk::SemanticTypes::CaseID& caseID) override;
52  void SetLesion(const mitk::SemanticTypes::Lesion& lesion) override;
53 
54  QItemSelectionModel* GetSelectionModel();
55 
56 Q_SIGNALS:
57 
58  void DataNodeDoubleClicked(const mitk::DataNode*);
59  void OnContextMenuRequested(const QPoint&);
60  void OnNodeRemoved(const mitk::DataNode*);
61 
62 private Q_SLOTS:
63 
64  void OnModelUpdated();
65  void OnNodeButtonClicked(const QString&);
66  void OnDataNodeSelectionChanged(const QList<mitk::DataNode::Pointer>&);
67  void OnItemDoubleClicked(const QModelIndex&);
68 
69 protected:
70 
71  void Initialize() override;
72 
73 private:
74 
75  void SetUpConnections();
76 
77  void keyPressEvent(QKeyEvent* e) override;
78 
79  Ui::QmitkPatientTableInspector m_Controls;
80  QmitkPatientTableModel* m_StorageModel;
81  QmitkTableItemThumbnailDelegate* m_ItemDelegate;
82 
83 };
84 
85 #endif
MitkSemanticRelationsUIExports.h
QmitkAbstractSemanticRelationsStorageInspector
Definition: QmitkAbstractSemanticRelationsStorageInspector.h:29
QmitkPatientTableModel.h
MITKSEMANTICRELATIONSUI_EXPORT
#define MITKSEMANTICRELATIONSUI_EXPORT
Definition: MitkSemanticRelationsUIExports.h:15
QmitkAbstractDataStorageInspector::SelectionMode
QAbstractItemView::SelectionMode SelectionMode
Definition: QmitkAbstractDataStorageInspector.h:68
QmitkTableItemThumbnailDelegate.h
QmitkAbstractDataStorageInspector::Initialize
virtual void Initialize()=0
QmitkAbstractSemanticRelationsStorageInspector::SetCaseID
virtual void SetCaseID(const mitk::SemanticTypes::CaseID &caseID)=0
Extends the abstract base class to allow setting the current case ID which is needed to access the se...
mitk::SemanticTypes::Lesion
Definition: mitkSemanticTypes.h:108
QmitkTableItemThumbnailDelegate
Definition: QmitkTableItemThumbnailDelegate.h:21
QmitkAbstractSemanticRelationsStorageInspector::SetLesion
virtual void SetLesion(const mitk::SemanticTypes::Lesion &lesion)=0
Extends the abstract base class to allow setting the current lesion. The function sets the lesion in ...
mitk::SemanticTypes::CaseID
std::string CaseID
Definition: mitkSemanticTypes.h:34
QmitkEnums.h
QmitkPatientTableModel
The QmitkPatientTableModel is a subclass of the QmitkAbstractSemanticRelationsStorageModel and holds ...
Definition: QmitkPatientTableModel.h:39
QmitkPatientTableInspector
Definition: QmitkPatientTableInspector.h:37
QmitkAbstractDataStorageInspector::GetView
virtual QAbstractItemView * GetView()=0
QmitkAbstractDataStorageInspector::GetSelectionMode
virtual SelectionMode GetSelectionMode() const =0
QmitkAbstractSemanticRelationsStorageInspector.h
mitk::DataNode
Class for nodes of the DataTree.
Definition: mitkDataNode.h:63
QmitkAbstractDataStorageInspector::SetSelectionMode
virtual void SetSelectionMode(SelectionMode mode)=0