NorMIT-nav  18.04
An IGT application
cxCameraStyleInteractor.h
Go to the documentation of this file.
1 #ifndef CXCAMERASTYLEINTERACTOR_H
2 #define CXCAMERASTYLEINTERACTOR_H
3 
4 /*=========================================================================
5 This file is part of CustusX, an Image Guided Therapy Application.
6 
7 Copyright (c) SINTEF Department of Medical Technology.
8 All rights reserved.
9 
10 CustusX is released under a BSD 3-Clause license.
11 
12 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
13 =========================================================================*/
14 
15 #include "cxResourceVisualizationExport.h"
16 
17 #include <QPointer>
18 #include "cxTransform3D.h"
19 #include "cxForwardDeclarations.h"
20 #include "cxEnumConverter.h"
21 class QIcon;
22 class QWidget;
23 class QMenu;
24 class QActionGroup;
25 
26 namespace cx
27 {
28 
29 typedef boost::shared_ptr<class CoreServices> CoreServicesPtr;
30 
48 class cxResourceVisualization_EXPORT CameraStyleInteractor: public QObject
49 {
50 Q_OBJECT
51 public:
52  explicit CameraStyleInteractor();
53  QActionGroup* getInteractorStyleActionGroup();
54  void connectCameraStyle(ViewGroupDataPtr vg);
55 
56 private slots:
57  void setInteractionStyleActionSlot();
58  void updateActionGroup();
59 private:
60  void addInteractorStyleAction(QString caption, QActionGroup* group, QString className, QIcon icon,
61  QString helptext);
62  QPointer<QActionGroup> mCameraStyleGroup;
63  ViewGroupDataPtr mGroup;
64  CoreServicesPtr mBackend;
65 };
66 typedef boost::shared_ptr<class CameraStyleInteractor> CameraStyleInteractorPtr;
67 
71 } //namespace cx
72 
73 
74 #endif // CXCAMERASTYLEINTERACTOR_H
boost::shared_ptr< class ViewGroupData > ViewGroupDataPtr
Definition: cxViewGroup.h:29
boost::shared_ptr< class CoreServices > CoreServicesPtr
Definition: cxCameraStyle.h:38
boost::shared_ptr< class CameraStyleInteractor > CameraStyleInteractorPtr
Namespace for all CustusX production code.