Salome HOME
Join modifications from branch BR_3_1_0deb
[modules/smesh.git] / src / StdMeshersGUI / StdMeshersGUI_NbSegmentsCreator.h
1
2 #ifndef NB_SEGMENTS_CREATOR_HEADER
3 #define NB_SEGMENTS_CREATOR_HEADER
4
5 #include "StdMeshersGUI_StdHypothesisCreator.h"
6
7 #include <SALOMEconfig.h>
8 #include CORBA_SERVER_HEADER(SMESH_Mesh)
9
10 class QtxIntSpinBox;
11 class QtxComboBox;
12 class SMESHGUI_SpinBox;
13 class StdMeshersGUI_DistrTableFrame;
14 class StdMeshersGUI_DistrPreview;
15 class QLineEdit;
16 class QButtonGroup;
17 class QGridLayout;
18
19 typedef struct
20 {
21   int                 myNbSeg, myDistrType, myConv;
22   double              myScale;
23   SMESH::double_array myTable;
24   QString             myName, myExpr;
25
26 } NbSegmentsHypothesisData;
27
28 class StdMeshersGUI_NbSegmentsCreator : public StdMeshersGUI_StdHypothesisCreator
29 {
30   Q_OBJECT
31
32 public:
33   StdMeshersGUI_NbSegmentsCreator();
34   virtual ~StdMeshersGUI_NbSegmentsCreator();
35
36   virtual bool checkParams() const;
37
38 protected:
39   virtual QFrame*  buildFrame();
40   virtual void     retrieveParams() const;
41   virtual void     storeParams() const;
42
43 protected slots:
44   virtual void     onValueChanged();
45
46 private:
47   bool readParamsFromHypo( NbSegmentsHypothesisData& ) const;
48   bool readParamsFromWidgets( NbSegmentsHypothesisData& ) const;
49   bool storeParamsToHypo( const NbSegmentsHypothesisData& ) const;
50
51 private:
52   QtxIntSpinBox*   myNbSeg;
53   QtxComboBox*     myDistr;
54   SMESHGUI_SpinBox*   myScale;
55   StdMeshersGUI_DistrTableFrame*  myTable;
56   StdMeshersGUI_DistrPreview* myPreview;
57   QLineEdit       *myName, *myExpr;
58   QButtonGroup*    myConv;
59   QLabel          *myLScale, *myLTable, *myLExpr, *myLConv, *myInfo;
60   QGridLayout*     myGroupLayout;
61   int              myTableRow, myPreviewRow;
62 };
63
64 #endif