Salome HOME
updated copyright message
[modules/geom.git] / src / GenerationGUI / GenerationGUI_ThicknessDlg.cxx
index f743fa63151979dc40d8683a689bbf93309c5dd8..2f84e015fd7802be0b16a0176ec550c49a8369fc 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2015  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2023  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -376,7 +376,7 @@ void GenerationGUI_ThicknessDlg::ValueChangedInSpinBox()
 //==============================================================================
 GEOM::GEOM_IOperations_ptr GenerationGUI_ThicknessDlg::createOperation()
 {
-  return getGeomEngine()->GetI3DPrimOperations(getStudyId());
+  return getGeomEngine()->GetI3DPrimOperations();
 }
 
 //==============================================================================
@@ -421,6 +421,7 @@ bool GenerationGUI_ThicknessDlg::execute (ObjectList& objects)
   GEOM::GEOM_I3DPrimOperations_var anOper       =
     GEOM::GEOM_I3DPrimOperations::_narrow(getOperation());
   double                           aThickness   = myThicknessSpin->value();
+  bool                             anInside = myInsideCheck->isChecked();
   GEOM::ListOfLong_var             anObjIDsList = new GEOM::ListOfLong();
   TopoDS_Shape                     aShape;
 
@@ -452,16 +453,28 @@ bool GenerationGUI_ThicknessDlg::execute (ObjectList& objects)
     }
   }
 
-  if (myInsideCheck->isChecked()) {
-    aThickness = -aThickness;  
-  }
-
   anObj = anOper->MakeThickening
-    (myObject.get(), anObjIDsList.in(), aThickness, true);
+    (myObject.get(), anObjIDsList.in(), aThickness, true, anInside);
     
   if (!anObj->_is_nil()) {
+    if (!IsPreview()) {
+      QStringList aParameters;
+      aParameters << myThicknessSpin->text();
+      anObj->SetParameters(aParameters.join(":").toUtf8().constData());
+    }
     objects.push_back(anObj._retn());
   }
 
   return true;
 }
+
+//=================================================================================
+// function : getSourceObjects
+// purpose  : virtual method to get source objects
+//=================================================================================
+QList<GEOM::GeomObjPtr> GenerationGUI_ThicknessDlg::getSourceObjects()
+{
+  QList<GEOM::GeomObjPtr> res(myFaces);
+  res << myObject;
+  return res;
+}