Salome HOME
Update comments
[modules/gui.git] / src / GLViewer / GLViewer_Selector2d.h
1 // File:      GLViewer_Selector2d.h
2 // Created:   November, 2004
3 // Author:    OCC team
4 // Copyright (C) CEA 2004
5
6 /****************************************************************************
7 **  Class:   GLViewer_Selector2d 
8 **  Descr:   OpenGL Selector 2D
9 **  Module:  GLViewer
10 **  Created: UI team, 20.09.02
11 *****************************************************************************/
12 #ifndef GLVIEWER_SELECTOR2D_H
13 #define GLVIEWER_SELECTOR2D_H
14
15 #ifdef WNT
16 #include "windows.h"
17 #endif
18
19 #include "GLViewer_Selector.h"
20
21 #include <Quantity_NameOfColor.hxx>
22
23 class GLViewer_Viewer2d;
24 class GLViewer_Context;
25
26 /*! Class GLViewer_Selector2d
27 *   2D select manager for GLViewer
28 */
29 class GLVIEWER_API GLViewer_Selector2d : public GLViewer_Selector
30 {
31   Q_OBJECT
32
33 public:
34   GLViewer_Selector2d( GLViewer_Viewer2d*, GLViewer_Context* );
35   ~GLViewer_Selector2d();
36
37 public:
38   //! Sets context from Viewer2d
39   void                    setContext( GLViewer_Context* glc ) { myGLContext = glc; }
40   GLViewer_Context*       getContext() const { return myGLContext; }
41
42   // Redefined methods
43   virtual void            setHilightColor( Quantity_NameOfColor );
44   virtual void            setSelectColor( Quantity_NameOfColor );
45
46   virtual void            detect( int, int );
47   virtual void            undetectAll();
48
49   virtual void            select( bool append = false );
50   virtual void            select( const QRect&, bool append = false );    
51   virtual void            unselectAll();    
52   virtual int             numSelected() const;    
53
54   virtual void            checkSelection( int, bool, int );
55
56 protected:
57   GLViewer_Context*       myGLContext;
58 };
59
60 #endif