Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
QmitkNavigationToolCreationWidget.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 
17 #ifndef QmitkNavigationToolCreationWidget_H
18 #define QmitkNavigationToolCreationWidget_H
19 
20 //QT headers
21 #include <QWidget>
22 
23 //mitk headers
24 #include "MitkIGTUIExports.h"
25 #include <mitkNavigationTool.h>
28 
29 //Microservices
30 #include <usGetModuleContext.h>
31 #include <usModule.h>
32 #include <usServiceProperties.h>
33 #include <usModuleContext.h>
34 
35 // Qmitk headers
37 
38 //ui header
39 #include "ui_QmitkNavigationToolCreationWidget.h"
40 
49 class MITKIGTUI_EXPORT QmitkNavigationToolCreationWidget : public QWidget
50 {
51  Q_OBJECT
52 
53  public:
54  static const std::string VIEW_ID;
55 
60  void Initialize(mitk::DataStorage* dataStorage, const std::string &supposedIdentifier, const std::string &supposedName = "NewTool");
61 
63  void SetTrackingDeviceType(mitk::TrackingDeviceType type, bool changeable = true);
64 
66  void SetDefaultData(mitk::NavigationTool::Pointer DefaultTool);
67 
68  QmitkNavigationToolCreationWidget(QWidget* parent = 0, Qt::WindowFlags f = 0);
70 
72  mitk::NavigationTool::Pointer GetCreatedTool();
73 
74 
75  signals:
76 
78  void NavigationToolFinished();
79 
81  void Canceled();
82 
83  protected slots:
84 
85  void OnCancel();
86  void OnFinished();
87  void OnLoadSurface();
88  void OnLoadCalibrationFile();
89  void OnShowAdvancedOptions(bool state);
90  void OnProcessDialogCloseRequest();
91  void OnRetrieveDataForManualTooltipManipulation();
92  void OnSurfaceUseOtherToggled(bool checked);
93 
94  protected:
95 
97  virtual void CreateConnections();
98 
99  virtual void CreateQtPartControl(QWidget *parent);
100 
101  Ui::QmitkNavigationToolCreationWidgetControls* m_Controls;
102 
104 
107 
110 
111  //############## private help methods #######################
113  void MessageBox(std::string s);
114 
117 
119  void FillUIToolLandmarkLists(mitk::PointSet::Pointer calLandmarks, mitk::PointSet::Pointer regLandmarks);
120 
125  void GetUIToolLandmarksLists(mitk::PointSet::Pointer& calLandmarks, mitk::PointSet::Pointer& regLandmarks);
126 
128  void InitializeUIToolLandmarkLists();
129  void RefreshTrackingDeviceCollection();
130 
131 };
132 #endif
Data management class that handles 'was created by' relations.
itk::SmartPointer< Self > Pointer
An object of this class offers an UI to modify a tooltip of an IGT navigation tool.
mitk::DataStorage * m_DataStorage
holds the DataStorage
QmitkNavigationToolCreationAdvancedWidget * m_AdvancedWidget
std::string TrackingDeviceType
Ui::QmitkNavigationToolCreationWidgetControls * m_Controls
mitk::NavigationTool::Pointer m_CreatedTool
this pointer holds the tool which is created
An object of this class offers an UI to create or modify NavigationTools.