]> SALOME platform Git repositories - modules/geom.git/blob - src/GEOMGUI/GeometryGUI_BndBoxDlg.h
Salome HOME
846220202af2a3ff45a585ab8afd4770b993c830
[modules/geom.git] / src / GEOMGUI / GeometryGUI_BndBoxDlg.h
1 //  File      : GeometryGUI_BndBoxDlg.h
2 //  Created   : Mon Mar 04 13:12:22 2002
3 //  Author    : Nicolas REJNERI
4
5 //  Project   : SALOME
6 //  Module    : GEOMGUI
7 //  Copyright : Open CASCADE 2002
8 //  $Header$
9
10 #ifndef DIALOGBOX_BNDBOX_H
11 #define DIALOGBOX_BNDBOX_H
12
13 #include "SALOME_Selection.h"
14 #include "GEOM_ShapeTypeFilter.hxx"
15
16 #include <qvariant.h>
17 #include <qdialog.h>
18
19 class QVBoxLayout; 
20 class QHBoxLayout; 
21 class QGridLayout; 
22 class QButtonGroup;
23 class QGroupBox;
24 class QLabel;
25 class QLineEdit;
26 class QPushButton;
27 class QRadioButton;
28 class GeometryGUI;
29
30 //=================================================================================
31 // class    : DialogBox_PROPERTIES
32 // purpose  :
33 //=================================================================================
34 class GeometryGUI_BndBoxDlg : public QDialog
35
36     Q_OBJECT
37
38 public:
39     GeometryGUI_BndBoxDlg( QWidget* parent = 0, const char* name = 0, SALOME_Selection* Sel = 0, bool modal = FALSE, WFlags fl = 0 );
40     ~GeometryGUI_BndBoxDlg();
41
42 private:
43
44     void Init( SALOME_Selection* Sel ) ;
45     void closeEvent( QCloseEvent* e ) ;
46     void enterEvent ( QEvent * ) ;                /* mouse enter the QWidget */
47     void CalculateAndDisplayBndBox(const TopoDS_Shape& S) ;
48
49     GEOM::GEOM_Gen_var myGeom ;                /* Current GeomI object */
50     GeometryGUI*          myGeomGUI ;             /* Current GeomGUI object */
51     SALOME_Selection*     mySelection ;           /* User shape selection */
52     int                   myConstructorId ;       /* Current constructor id = radio button id */
53     QLineEdit*            myEditCurrentArgument;  /* Current LineEdit */
54     TopoDS_Shape          mySimulationTopoDs ;    /* Shape used for simulation display */
55
56     QButtonGroup* GroupConstructors;
57     QRadioButton* Constructor1;
58     QGroupBox* GroupConstructor1;
59     QLineEdit* LineEditC1A1;
60     QPushButton* SelectButtonC1A1;
61     QLabel* TextLabelC1A1;
62
63     QLabel* TextLabel_Min;
64     QLabel* TextLabel_Max;
65
66     QLabel* TextLabel_X;
67     QLabel* TextLabel_Y;
68     QLabel* TextLabel_Z;
69
70     QLineEdit* LineEdit_MinX;
71     QLineEdit* LineEdit_MinY;
72     QLineEdit* LineEdit_MinZ;
73    
74     QLineEdit* LineEdit_MaxX;
75     QLineEdit* LineEdit_MaxY;
76     QLineEdit* LineEdit_MaxZ;
77
78     QGroupBox* GroupButtons;
79     QPushButton* buttonApply;
80     QPushButton* buttonOk;
81     QPushButton* buttonCancel;
82
83 private slots:
84
85     void ConstructorsClicked(int constructorId);
86     void ClickOnCancel();
87     void SetEditCurrentArgument() ;
88     void LineEditReturnPressed() ;
89     void SelectionIntoArgument() ;
90     void DeactivateActiveDialog() ;
91     void ActivateThisDialog() ;
92
93 protected:
94     QGridLayout* GeometryGUI_BndBoxDlgLayout;
95     QGridLayout* GroupConstructorsLayout;
96     QGridLayout* GroupConstructor1Layout;
97     QGridLayout* GroupButtonsLayout;
98 };
99
100 #endif // DIALOGBOX_BNDBOX_H