Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
QmitkPointListWidget.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,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 #ifndef QmitkPointListWidget_H
17 #define QmitkPointListWidget_H
18 
20 #include <QmitkPointListModel.h>
21 #include <QmitkPointListView.h>
22 
23 #include <QmitkStdMultiWidget.h>
24 #include <mitkDataInteractor.h>
25 #include <mitkDataNode.h>
26 #include <mitkPointSet.h>
28 
29 #include <QPushButton>
30 
54 {
55  Q_OBJECT
56 
57 public:
58  QmitkPointListWidget(QWidget *parent = 0, int orientation = 0);
60 
61  void SetupConnections();
62 
64 
69  DEPRECATED(void SetSnc1(mitk::SliceNavigationController *snc));
70  DEPRECATED(void SetSnc2(mitk::SliceNavigationController *snc));
71  DEPRECATED(void SetSnc3(mitk::SliceNavigationController *snc));
73 
81  void AddSliceNavigationController(mitk::SliceNavigationController *snc);
82 
90  void RemoveSliceNavigationController(mitk::SliceNavigationController *snc);
91 
93  void SetPointSet(mitk::PointSet *newPs);
94  mitk::PointSet *GetPointSet();
95 
97  void SetPointSetNode(mitk::DataNode *newNode);
98  mitk::DataNode *GetPointSetNode();
99 
101  void SetMultiWidget(QmitkStdMultiWidget *multiWidget);
102 
104  void OnNodeDeleted(const itk::EventObject &e);
105 
107  void UnselectEditButton();
108 
109 public slots:
110  void DeactivateInteractor(bool deactivate);
111  void EnableEditButton(bool enabled);
112 
113 signals:
116  void EditPointSets(bool active);
118  void PointSelectionChanged();
120  void PointListChanged();
121 
122 protected slots:
123  void OnBtnSavePoints();
124  void OnBtnLoadPoints();
125  void RemoveSelectedPoint();
126  void MoveSelectedPointDown();
127  void MoveSelectedPointUp();
128  void OnBtnAddPoint(bool checked);
129  void OnBtnAddPointManually();
130 
134  void OnPointSelectionChanged();
135 
136  void OnListDoubleClick();
137 
138 protected:
139  void SetupUi();
140  void ObserveNewNode(mitk::DataNode *node);
141 
144 
146 
148 
149  QPushButton *m_MovePointUpBtn;
150  QPushButton *m_MovePointDownBtn;
151  QPushButton *m_RemovePointBtn;
152  QPushButton *m_SavePointsBtn;
153  QPushButton *m_LoadPointsBtn;
154  QPushButton *m_ToggleAddPoint;
155  QPushButton *m_AddPoint;
156 
160 
164  unsigned long m_NodeObserverTag;
165 };
166 
167 #endif
#define MITKQTWIDGETSEXT_EXPORT
QmitkStdMultiWidget * m_MultiWidget
GUI widget for handling mitk::PointSet.
QPushButton * m_MovePointDownBtn
Controls the selection of the slice the associated BaseRenderer will display.
QmitkPointListView * m_PointListView
#define DEPRECATED(func)
Definition: mitkCommon.h:183
mitk::DataNode::Pointer m_PointSetNode
Widget for regular operations on point sets.
Data structure which stores a set of points. Superclass of mitk::Mesh.
Definition: mitkPointSet.h:79
mitk::SliceNavigationController * m_Snc3
mitk::DataInteractor::Pointer m_DataInteractor
mitk::SliceNavigationController * m_Snc2
Class for nodes of the DataTree.
Definition: mitkDataNode.h:66
mitk::SliceNavigationController * m_Snc1