Salome HOME
af39518b30173626283144eafea73aede70f7b1e
[modules/visu.git] / src / VISUGUI / VisuGUI_FeatureEdgesPanel.h
1 // Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE
2 //
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License.
7 //
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 // Lesser General Public License for more details.
12 //
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 //
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19
20 //  VISU VISUGUI : GUI of VISU component
21 //  File   : VisuGUI_FeatureEdgesPanel.h
22 //  Author : Oleg Uvarov
23 //  Module : VISU
24 //
25 #ifndef VISUGUI_FEATUREEDGESPANEL_H
26 #define VISUGUI_FEATUREEDGESPANEL_H
27
28 #include "VisuGUI_Panel.h"
29
30 class QCheckBox;
31 class QGroupBox;
32
33 class SalomeApp_DoubleSpinBox;
34
35 class VISU_Actor;
36
37 class VisuGUI_FeatureEdgesPanel: public VisuGUI_Panel
38 {
39   Q_OBJECT
40
41 public:
42   VisuGUI_FeatureEdgesPanel( VisuGUI* theModule, QWidget* theParent = 0 );
43   virtual ~VisuGUI_FeatureEdgesPanel ();
44
45 protected:
46   virtual void              keyPressEvent( QKeyEvent* theEvent );
47   virtual void              showEvent( QShowEvent* theEvent );
48
49 protected slots:
50   virtual void              onModuleActivated();
51   virtual void              onModuleDeactivated();
52
53 private slots:
54   virtual void              onApply();
55   virtual void              onClose();
56   virtual void              onHelp();
57
58   void                      onSelectionEvent();
59
60 private:
61   VISU_Actor*               getSelectedActor() const;
62
63 private:
64   QGroupBox*                myGrp;
65
66   SalomeApp_DoubleSpinBox*  myAngleSpinBox;
67   QCheckBox*                myFeatureEdgesCB;
68   QCheckBox*                myBoundaryEdgesCB;
69   QCheckBox*                myManifoldEdgesCB;
70   QCheckBox*                myNonManifoldEdgesCB;
71   QCheckBox*                myColoringCB;
72
73   VISU_Actor*               myActor;
74 };
75
76 #endif