Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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