CustusX  2023.01.05-dev+develop.0da12
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 class QIcon;
21 class QWidget;
22 class QMenu;
23 class QActionGroup;
24 
25 namespace cx
26 {
27 
28 typedef boost::shared_ptr<class CoreServices> CoreServicesPtr;
29 
47 class cxResourceVisualization_EXPORT CameraStyleInteractor: public QObject
48 {
49 Q_OBJECT
50 public:
51  explicit CameraStyleInteractor();
52  QActionGroup* getInteractorStyleActionGroup();
53  void connectCameraStyle(ViewGroupDataPtr vg);
54 
55 private slots:
56  void setInteractionStyleActionSlot();
57  void updateActionGroup();
58 private:
59  void addInteractorStyleAction(QString caption, QActionGroup* group, QString className, QIcon icon,
60  QString helptext);
61  QPointer<QActionGroup> mCameraStyleGroup;
62  ViewGroupDataPtr mGroup;
63  CoreServicesPtr mBackend;
64 };
65 typedef boost::shared_ptr<class CameraStyleInteractor> CameraStyleInteractorPtr;
66 
70 } //namespace cx
71 
72 
73 #endif // CXCAMERASTYLEINTERACTOR_H
boost::shared_ptr< class ViewGroupData > ViewGroupDataPtr
Definition: cxViewGroup.h:29
boost::shared_ptr< class CoreServices > CoreServicesPtr
Definition: cxCameraStyle.h:37
boost::shared_ptr< class CameraStyleInteractor > CameraStyleInteractorPtr
Namespace for all CustusX production code.