Salome HOME
Connect to OCCT Viewer
[modules/shaper.git] / src / XGUI / XGUI_Viewer.h
1
2 #ifndef XGUI_Viewer_H
3 #define XGUI_Viewer_H
4
5 #include <QObject>
6 #include <V3d_Viewer.hxx>
7 #include <AIS_InteractiveContext.hxx>
8 #include <AIS_Trihedron.hxx>
9
10 class XGUI_MainWindow;
11 class QMdiSubWindow;
12
13 class XGUI_Viewer : public QObject
14 {
15     Q_OBJECT
16 public:
17     enum { 
18         HorizontalGradient, VerticalGradient,
19         Diagonal1Gradient,  Diagonal2Gradient,
20         Corner1Gradient,    Corner2Gradient,
21         Corner3Gradient,    Corner4Gradient,
22         LastGradient = Corner4Gradient
23     };
24
25     XGUI_Viewer(XGUI_MainWindow* theParent);
26     ~XGUI_Viewer();
27
28     QMdiSubWindow* createView(V3d_TypeOfView theType = V3d_ORTHOGRAPHIC);
29
30     XGUI_MainWindow* mainWindow() const { return myMainWindow; }
31
32     Handle(V3d_Viewer) v3dViewer() const { return myV3dViewer; }
33
34 private:
35     XGUI_MainWindow* myMainWindow;
36
37     Handle(V3d_Viewer)              myV3dViewer;
38     Handle(AIS_Trihedron)           myTrihedron;
39     Handle(AIS_InteractiveContext)  myAISContext;
40 };
41
42 #endif