NorMIT-nav  2023.01.05-dev+develop.0da12
An IGT application
cxSamplerWidget.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 #ifndef CXSAMPLERWIDGET_H
12 #define CXSAMPLERWIDGET_H
13 
14 #include "cxGuiExport.h"
15 
16 #include "cxBaseWidget.h"
17 
18 #include "cxSpaceProperty.h"
19 #include "cxVector3DProperty.h"
20 #include "cxActiveToolProxy.h"
21 #include "cxPointMetric.h"
22 
23 namespace cx
24 {
25 
34 class cxGui_EXPORT SamplerWidget : public BaseWidget
35 {
36  Q_OBJECT
37 public:
38  SamplerWidget(TrackingServicePtr trackingService, PatientModelServicePtr patientModelService, SpaceProviderPtr spaceProvider, QWidget* parent);
39  virtual ~SamplerWidget();
40 
41 private slots:
42  void spacesChangedSlot();
43  void toggleAdvancedSlot();
44 protected:
45  virtual void prePaintEvent();
46 private:
47  void showAdvanced();
48 
49  QHBoxLayout* mLayout;
50  SpacePropertyPtr mSpaceSelector;
51  SpaceListenerPtr mListener;
52  ActiveToolProxyPtr mActiveTool;
53  QLineEdit* mCoordLineEdit;
54  QAction* mAdvancedAction;
55  QHBoxLayout* mAdvancedLayout;
56  QWidget* mAdvancedWidget;
57  PatientModelServicePtr mPatientModelService;
58  SpaceProviderPtr mSpaceProvider;
59 };
60 
61 } // namespace cx
62 
63 #endif // CXSAMPLERWIDGET_H
cx::SpaceListenerPtr
boost::shared_ptr< class SpaceListener > SpaceListenerPtr
Definition: cxAxisConnector.h:23
cxBaseWidget.h
cx
Namespace for all CustusX production code.
Definition: cx_dev_group_definitions.h:13
cx::BaseWidget
Interface for QWidget which handles widgets uniformly for the system.
Definition: cxBaseWidget.h:88
cx::ActiveToolProxyPtr
boost::shared_ptr< class ActiveToolProxy > ActiveToolProxyPtr
Definition: cxStatusBar.h:32
cxSpaceProperty.h
cx::SamplerWidget
Definition: cxSamplerWidget.h:34
cx::TrackingServicePtr
boost::shared_ptr< class TrackingService > TrackingServicePtr
Definition: cxToolFilterWidget.h:27
cx::PatientModelServicePtr
boost::shared_ptr< class PatientModelService > PatientModelServicePtr
Definition: cxLogicManager.h:25
cxPointMetric.h
cxVector3DProperty.h
cxActiveToolProxy.h
cx::SpacePropertyPtr
boost::shared_ptr< class SpaceProperty > SpacePropertyPtr
Definition: cxSpaceProperty.h:25
cx::SpaceProviderPtr
boost::shared_ptr< class SpaceProvider > SpaceProviderPtr
Definition: cxLogicManager.h:23