CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxMeshGlyphsWidget.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 CXMESHGLYPHSWIDGET_H
12 #define CXMESHGLYPHSWIDGET_H
13 
14 #include "cxGuiExport.h"
15 
16 #include <vector>
17 #include <QtWidgets>
18 
19 #include "cxMesh.h"
20 #include "cxDataInterface.h"
21 #include "cxBaseWidget.h"
22 
23 
24 namespace cx
25 {
26 typedef boost::shared_ptr<class SelectDataStringPropertyBase> SelectDataStringPropertyBasePtr;
27 
37 class cxGui_EXPORT MeshGlyphsWidget : public BaseWidget
38 {
39  Q_OBJECT
40 
41 public:
42  MeshGlyphsWidget(SelectDataStringPropertyBasePtr meshSelector,
43  PatientModelServicePtr patientModelService, ViewServicePtr viewService,
44  QWidget* parent);
45  virtual ~MeshGlyphsWidget();
46 
47  SelectDataStringPropertyBasePtr getSelector() { return mMeshSelector; }
48 
49 protected slots:
50  void meshSelectedSlot();
51  void meshChangedSlot();
52 
53 private:
54  void addWidgets();
55 
56  MeshPtr mMesh;
57  SelectDataStringPropertyBasePtr mMeshSelector;
58 
59  QCheckBox* mGlyphVisualizationCheckBox;
60  StringPropertyGlyphOrientationArrayPtr mGlyphOrientationArrayAdapter;
61  StringPropertyGlyphColorArrayPtr mGlyphColorArrayAdapter;
62  StringPropertyGlyphLUTPtr mGlyphColorLUTAdapter;
63 
64  PatientModelServicePtr mPatientModelService;
65  ViewServicePtr mViewService;
66 
68 };
69 
70 }//end namespace cx
71 
72 #endif // CXMESHGLYPHSWIDGET_H
SelectDataStringPropertyBasePtr getSelector()
boost::shared_ptr< class StringPropertyGlyphColorArray > StringPropertyGlyphColorArrayPtr
boost::shared_ptr< class ViewService > ViewServicePtr
boost::shared_ptr< class StringPropertyGlyphOrientationArray > StringPropertyGlyphOrientationArrayPtr
boost::shared_ptr< class SelectDataStringPropertyBase > SelectDataStringPropertyBasePtr
boost::shared_ptr< class PatientModelService > PatientModelServicePtr
boost::shared_ptr< class StringPropertyGlyphLUT > StringPropertyGlyphLUTPtr
Interface for QWidget which handles widgets uniformly for the system.
Definition: cxBaseWidget.h:88
Widget for displaying glyps information about meshes.
boost::shared_ptr< class Mesh > MeshPtr
Namespace for all CustusX production code.