]> SALOME platform Git repositories - modules/geom.git/blob - src/GEOMGUI/GeometryGUI_FillingDlg.h
Salome HOME
5b92ab05798e813c61ad21df91710154406406fd
[modules/geom.git] / src / GEOMGUI / GeometryGUI_FillingDlg.h
1 //  File      : GeometryGUI_FillingDlg.h
2 //  Created   :
3 //  Author    : Lucien PIGNOLONI
4 //  Project   : SALOME
5 //  Module    : GeometryGUI
6 //  Copyright : OPEN CASCADE
7 //  $Header$
8
9 #ifndef DIALOGBOX_FILLING_H
10 #define DIALOGBOX_FILLING_H
11
12 #include "SALOME_Selection.h"
13 #include "GEOM_ShapeTypeFilter.hxx"
14
15 #include <qvariant.h>
16 #include <qdialog.h>
17
18 class QVBoxLayout; 
19 class QHBoxLayout; 
20 class QGridLayout; 
21 class QButtonGroup;
22 class QGroupBox;
23 class QLabel;
24 class QLineEdit;
25 class QSpinBox;
26 class QPushButton;
27 class QRadioButton;
28 class GeometryGUI;
29
30
31 //=================================================================================
32 // class    : GeometryGUI_FillingDlg
33 // purpose  :
34 //=================================================================================
35 class GeometryGUI_FillingDlg : public QDialog
36
37     Q_OBJECT
38
39 public:
40     GeometryGUI_FillingDlg( QWidget* parent = 0, const char* name = 0, SALOME_Selection* Sel = 0, bool modal = FALSE, WFlags fl = 0 );
41     ~GeometryGUI_FillingDlg();
42
43 private:
44
45     void Init( SALOME_Selection* Sel ) ;
46     void closeEvent( QCloseEvent* e ) ;
47     void enterEvent ( QEvent * ) ;                 /* mouse enter the QWidget */
48
49     GEOM::GEOM_Gen_var myGeom ;                 /* Current GeomI object */
50     GeometryGUI*          myGeomGUI ;              /* Current GeomGUI object */
51     SALOME_Selection*     mySelection ;            /* User shape selection */
52     GEOM::GEOM_Shape_var        myGeomShape ;            /* is mySectionShape */
53     TopoDS_Shape          mySectionShape ;
54     Standard_Integer      myMinDeg ;
55     Standard_Integer      myMaxDeg ;
56     Standard_Real         myTol3D ;
57     Standard_Real         myTol2D ;
58     Standard_Integer      myNbIter ;
59
60     bool                  myOkSectionShape ;         /* to check when arguments is defined */
61     int                   myConstructorId ;          /* Current constructor id = radio button id */
62     QLineEdit*            myEditCurrentArgument;     /* Current LineEdit */
63     Handle(GEOM_ShapeTypeFilter) myCompoundFilter ;  /* Filter selection */
64
65     QButtonGroup* GroupConstructors;
66     QRadioButton* Constructor1;
67     QGroupBox* GroupButtons;
68     QPushButton* buttonApply;
69     QPushButton* buttonOk;
70     QPushButton* buttonCancel;
71     QGroupBox* GroupC1;
72     QLineEdit* LineEditC1A1;
73     QLabel* TextLabelC1A2;
74     QLabel* TextLabelC1A3;
75     QLabel* TextLabelC1A5;
76
77     QLineEdit* LineEditC1A5;
78     QLabel* TextLabelC1A1;
79     QPushButton* SelectButtonC1A1;
80     QLabel* TextLabelC1A4;
81     QLabel* TextLabelC1A6;
82     QLineEdit* LineEditC1A4;
83
84     QSpinBox* SpinBox_C1A2;
85     QSpinBox* SpinBox_C1A3;
86     QSpinBox* SpinBox_C1A6;
87
88 private slots:
89
90     void ConstructorsClicked(int constructorId);
91     void ClickOnOk();
92     void ClickOnCancel();
93     void ClickOnApply();
94     void SetEditCurrentArgument() ;
95     void SelectionIntoArgument() ;
96     void LineEditReturnPressed() ;
97     void DeactivateActiveDialog() ;
98     void ActivateThisDialog() ;
99
100 protected:
101     QGridLayout* GeometryGUI_FillingDlgLayout;
102     QGridLayout* GroupConstructorsLayout;
103     QGridLayout* GroupButtonsLayout;
104     QGridLayout* GroupC1Layout;
105 };
106
107 #endif // DIALOGBOX_FILLING_H