Salome HOME
0022488: EDF 2781 SMESH: Faces of an internal submesh can't be selected with the...
[modules/smesh.git] / src / StdMeshersGUI / StdMeshersGUI_CartesianParamCreator.h
index 5a02d5ca13bfcb1151ffed1e39c1e5e5e7593b30..1a9fcd51e3cb65f2e84ecf64830d23f06987caeb 100644 (file)
 #include <QFrame>
 #include <QItemDelegate>
 
-class SMESHGUI_SpinBox;
-class QLineEdit;
+class QAbstractItemModel;
 class QButtonGroup;
-class QTreeWidgetItem;
-class QString;
-class QWidget;
-class QTreeWidget;
+class QCheckBox;
+class QGroupBox;
+class QLineEdit;
 class QListWidget;
-class QStyleOptionViewItem;
-class QModelIndex;
-class QAbstractItemModel;
 class QListWidgetItem;
+class QModelIndex;
+class QString;
+class QStyleOptionViewItem;
+class QTreeWidget;
+class QTreeWidgetItem;
+class QWidget;
+class SMESHGUI_MeshEditPreview;
+class SMESHGUI_SpinBox;
 
 namespace StdMeshersGUI
 {
@@ -78,6 +81,9 @@ namespace StdMeshersGUI
     SMESH::double_array* getCoordinates();
     void getSpacing(SMESH::string_array_out funs, SMESH::double_array_out points) const;
 
+  signals:
+    void gridModeChanged(int);
+
   private slots:
     void onInsert();
     void onDelete();
@@ -125,18 +131,40 @@ public:
   StdMeshersGUI_CartesianParamCreator( const QString& aHypType );
   virtual ~StdMeshersGUI_CartesianParamCreator();
 
-  virtual bool    checkParams( QString& ) const;
-  virtual QString helpPage() const;
+  virtual bool     checkParams( QString& ) const;
+  virtual QString  helpPage() const;
 
 protected:
   virtual QFrame*  buildFrame();
   virtual void     retrieveParams() const;
   virtual QString  storeParams() const;
 
+private slots:
+  bool             updateAxesPreview();
+  void             onOrthogonalAxes(bool);
+  void             onAxisDirChange(const QString&);
+  void             onSelectionChange();
+  void             onOptimalAxes(bool);
+  void             onResetAxes(bool);
+  void             onGridModeChanged(int);
+
 private:
   QLineEdit*                  myName;
   SMESHGUI_SpinBox*           myThreshold;
+  QCheckBox*                  myAddEdges;
+
   StdMeshersGUI::GridAxisTab* myAxisTabs[3];
+  QGroupBox*                  myFixedPointGrp;
+  SMESHGUI_SpinBox*           myPointSpin[3];
+  QCheckBox*                  myOrthogonalChk;
+  QButtonGroup*               myAxisBtnGrp;
+  SMESHGUI_SpinBox*           myXDirSpin[3];
+  SMESHGUI_SpinBox*           myYDirSpin[3];
+  SMESHGUI_SpinBox*           myZDirSpin[3];
+  SMESHGUI_MeshEditPreview*   myAxesPreview;
+  double                      myOrigin[3];
+  double                      myAxesLen;
+  int                         myDirTic[3];
 };
 
 #endif // STDMESHERSGUI_CartesianParamCreator_H