Salome HOME
Update comments
[modules/gui.git] / src / GLViewer / GLViewer_BaseDrawers.h
1 // File:      GLViewer_BaseDrawers.h
2 // Created:   November, 2004
3 // Author:    OCC team
4 // Copyright (C) CEA 2004
5
6 #ifndef GLVIEWER_BASEDRAWERS_H
7 #define GLVIEWER_BASEDRAWERS_H
8
9 #include <qcolor.h>
10 #include <qobject.h>
11 #include <qfile.h>
12 #include <qfont.h>
13 #include <qgl.h>
14
15 #include "GLViewer.h"
16 #include "GLViewer_Drawer.h"
17
18 class GLViewer_AspectLine;
19
20 #ifdef WNT
21 #pragma warning( disable:4251 )
22 #endif
23
24 /*! Class GLViewer_MarkerDrawer
25 *  Drawer for GLViewer_MarkerSet
26  */
27
28 class GLVIEWER_API GLViewer_MarkerDrawer : public GLViewer_Drawer  
29 {
30 public:
31   GLViewer_MarkerDrawer();
32   ~GLViewer_MarkerDrawer();
33   
34   //! Redefined method
35   virtual void       create( float, float, bool );
36   
37 private:
38   //! Draws marker in point (x,y) of \param radius with \param color and \param aspect
39   void               drawMarker( float& x, float& y, float& radius, QColor& color, GLViewer_AspectLine* aspect );
40 };
41
42 /*! Class  GLViewer_PolylineDrawer
43 * Drawer for GLViewer_Polyline
44 */
45
46 class GLVIEWER_API GLViewer_PolylineDrawer : public GLViewer_Drawer  
47 {
48 public:
49   GLViewer_PolylineDrawer();
50   ~GLViewer_PolylineDrawer();
51   //! Redefined method
52   virtual void       create( float, float, bool );    
53 };
54
55 /* Class GLViewer_TextDrawer
56 * Drawer for GLViewer_Text
57 */
58
59 class GLVIEWER_API GLViewer_TextDrawer: public GLViewer_Drawer
60 {
61   
62 public:
63   GLViewer_TextDrawer();
64   ~GLViewer_TextDrawer();
65   
66   //! Redefined method
67   virtual void              create( float, float, bool );
68   //! Updates objects after updating font
69   void                      updateObjects();
70 };
71
72 #ifdef WNT
73 #pragma warning ( default:4251 )
74 #endif
75
76 #endif