Salome HOME
0022759: [EDF] Creation of a surface from several edges
[modules/geom.git] / src / BuildGUI / BuildGUI_FaceDlg.h
index 29e152781d7c138d0ee574507c4fe6d16eb7857a..929630f58288ccc1a7f44c2e55b925d4c1aa2bdf 100644 (file)
@@ -32,6 +32,9 @@
 
 class DlgRef_1Sel1Check;
 class DlgRef_2Sel;
+class DlgRef_1SelExt;
+class QTreeWidget;
+class QTreeWidgetItem;
 
 //=================================================================================
 // class    : BuildGUI_FaceDlg
@@ -41,6 +44,8 @@ class BuildGUI_FaceDlg : public GEOMBase_Skeleton
 { 
   Q_OBJECT
 
+  class TreeWidgetItem;
+
 public:
   BuildGUI_FaceDlg( GeometryGUI*, QWidget* = 0 );
   ~BuildGUI_FaceDlg();
@@ -50,26 +55,35 @@ protected:
   virtual GEOM::GEOM_IOperations_ptr createOperation();
   virtual bool                       isValid( QString& );
   virtual bool                       execute( ObjectList& );    
+  virtual void                       addSubshapesToStudy();
   
 private:
   void                               Init();
   void                               enterEvent( QEvent* );
+  void                               updateConstraintsTree();
+  void                               findEmptyTreeItem();
+  bool                               isTreeFull();
   
 private:
   QList<GEOM::GeomObjPtr>            myWires;
   GEOM::GeomObjPtr                   myFace;
   GEOM::GeomObjPtr                   myWire;
   
-  DlgRef_1Sel1Check*                 GroupWire;
+  DlgRef_1Sel1Check*                 myGroupWire;
   DlgRef_2Sel*                       myGroupSurf;
+  DlgRef_1SelExt*                    myGroupWireConstraints;
+
+  QTreeWidget*                       myTreeConstraints;
+  TreeWidgetItem*                    myCurrentItem;
 
 private slots:
-  void                               ConstructorsClicked (int);
+  void                               ConstructorsClicked( int );
   void                               ClickOnOk();
   bool                               ClickOnApply();
   void                               ActivateThisDialog();
   void                               SelectionIntoArgument();
   void                               SetEditCurrentArgument();
+  void                               onItemClicked( QTreeWidgetItem*, int );
 };
 
 #endif // BUILDGUI_FACEDLG_H