NorMIT-nav  18.04
An IGT application
cxMeshPropertiesWidget.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 CXMESHPROPERTIESWIDGET_H
12 #define CXMESHPROPERTIESWIDGET_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 class ReplacableContentWidget;
28 
38 class cxGui_EXPORT MeshPropertiesWidget : public BaseWidget
39 {
40  Q_OBJECT
41 
42 public:
43  MeshPropertiesWidget(SelectDataStringPropertyBasePtr meshSelector,
44  PatientModelServicePtr patientModelService, ViewServicePtr viewService,
45  QWidget* parent);
46  virtual ~MeshPropertiesWidget();
47 
48  SelectDataStringPropertyBasePtr getSelector() { return mMeshSelector; }
49 
50 protected:
51  void setupUI();
52  virtual void prePaintEvent();
53 
54 private:
55  void updateFrontend();
56 
57 protected slots:
58  void meshSelectedSlot();
59 
60 private:
61  MeshPtr mMesh;
62  SelectDataStringPropertyBasePtr mMeshSelector;
63 
64  ReplacableContentWidget* mPropertiesWidget;
65 
66  PatientModelServicePtr mPatientModelService;
67  ViewServicePtr mViewService;
68 
70  void clearUI();
71 };
72 
73 }//end namespace cx
74 
75 #endif // CXMESHPROPERTIESWIDGET_H
Widget for displaying glyps information about meshes.
SelectDataStringPropertyBasePtr getSelector()
boost::shared_ptr< class ViewService > ViewServicePtr
boost::shared_ptr< class SelectDataStringPropertyBase > SelectDataStringPropertyBasePtr
boost::shared_ptr< class PatientModelService > PatientModelServicePtr
Interface for QWidget which handles widgets uniformly for the system.
Definition: cxBaseWidget.h:88
boost::shared_ptr< class Mesh > MeshPtr
Namespace for all CustusX production code.