]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
0022540: EDF 2857 GEOM : problem to generate a face
authorskv <skv@opencascade.com>
Fri, 7 Nov 2014 07:03:52 +0000 (10:03 +0300)
committerskv <skv@opencascade.com>
Fri, 7 Nov 2014 07:03:52 +0000 (10:03 +0300)
src/BuildGUI/BuildGUI_FaceDlg.cxx
src/BuildGUI/BuildGUI_FaceDlg.h

index bdd72265b573ccb3c28a6525efc1bbaafaad3932..3a5884fee058d429549608337f637fc92ee1499d 100644 (file)
@@ -106,10 +106,7 @@ void BuildGUI_FaceDlg::Init()
   GroupWire->CheckButton1->setChecked( true );
   myWires.clear();
 
-  TColStd_MapOfInteger aMap;
-  aMap.Add( GEOM_EDGE );
-  aMap.Add( GEOM_WIRE );
-  globalSelection( aMap );
+  setGlobalSelection();
 
   /* signals and slots connections */
   connect( buttonOk(),    SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) );
@@ -123,6 +120,23 @@ void BuildGUI_FaceDlg::Init()
   SelectionIntoArgument();
 }
 
+//=================================================================================
+// function : setGlobalSelection
+// purpose  :
+//=================================================================================
+void BuildGUI_FaceDlg::setGlobalSelection()
+{
+  TColStd_MapOfInteger aMap;
+
+  aMap.Add(GEOM_EDGE);
+  aMap.Add(GEOM_WIRE);
+  aMap.Add(GEOM_FACE);
+  aMap.Add(GEOM_SHELL);
+  aMap.Add(GEOM_SOLID);
+  aMap.Add(GEOM_COMPOUND);
+
+  globalSelection(aMap);
+}
 
 //=================================================================================
 // function : ClickOnOk()
@@ -159,7 +173,8 @@ void BuildGUI_FaceDlg::SelectionIntoArgument()
   myEditCurrentArgument->setText( "" );
 
   QList<TopAbs_ShapeEnum> types;
-  types << TopAbs_EDGE << TopAbs_WIRE;
+  types << TopAbs_EDGE  << TopAbs_WIRE  << TopAbs_FACE
+        << TopAbs_SHELL << TopAbs_SOLID << TopAbs_COMPOUND;
   myWires = getSelected( types, -1 );
 
   if ( !myWires.isEmpty() ) {
@@ -178,12 +193,8 @@ void BuildGUI_FaceDlg::SetEditCurrentArgument()
   QPushButton* send = (QPushButton*)sender();
   if ( send != GroupWire->PushButton1 )
     return;
-  
-  TColStd_MapOfInteger aMap;
-  aMap.Add( GEOM_EDGE );
-  aMap.Add( GEOM_WIRE );
-  globalSelection( aMap );
 
+  setGlobalSelection();
   myEditCurrentArgument = GroupWire->LineEdit1;
 
   myEditCurrentArgument->setFocus();
@@ -200,10 +211,7 @@ void BuildGUI_FaceDlg::ActivateThisDialog()
   GEOMBase_Skeleton::ActivateThisDialog();
   connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(),
            SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) );
-  TColStd_MapOfInteger aMap;
-  aMap.Add( GEOM_EDGE );
-  aMap.Add( GEOM_WIRE );
-  globalSelection( aMap );
+  setGlobalSelection();
 }
 
 
index d0e6670727152f142d9d8866902c2f95404500bc..9a2f89c32179ae6cb5954e6bc3d39c463e17c6a7 100644 (file)
@@ -53,6 +53,7 @@ protected:
 private:
   void                               Init();
   void                               enterEvent( QEvent* );
+  void                               setGlobalSelection();
   
 private:
   QList<GEOM::GeomObjPtr>            myWires;