// SMESH SMESHGUI : GUI for SMESH component
// File : SMESHGUI_MeshOp.cxx
// Author : Sergey LITONIN, Open CASCADE S.A.S.
+
// SMESH includes
-//
#include "SMESHGUI_MeshOp.h"
#include "SMESHGUI.h"
SMESH::CreateHypothesis(theTypeName, aHypName, false);
} else {
// Get hypotheses creator client (GUI)
- SMESHGUI_GenericHypothesisCreator* aCreator = SMESH::GetHypothesisCreator(theTypeName);
+ // BUG 0020378
+ //SMESHGUI_GenericHypothesisCreator* aCreator = SMESH::GetHypothesisCreator(theTypeName);
+ SMESH::HypothesisCreatorPtr aCreator = SMESH::GetHypothesisCreator(theTypeName);
// Create hypothesis
if (aCreator) {
int obj = myDlg->getActiveObject();
removeCustomFilters(); // Issue 0020170
+
+ // Get Entry of the Geom object
+ QString anObjEntry = "";
+ anObjEntry = myDlg->selectedObject( SMESHGUI_MeshDlg::Geom );
+ if ( anObjEntry == "" ) {
+ anObjEntry = myDlg->selectedObject( SMESHGUI_MeshDlg::Obj );
+ _PTR(SObject) pObj = studyDS()->FindObjectID( anObjEntry.toLatin1().data() );
+ GEOM::GEOM_Object_var aGeomVar = SMESH::GetShapeOnMeshOrSubMesh( pObj );
+ anObjEntry = aGeomVar->GetStudyEntry();
+ }
+
+ aCreator->setShapeEntry( anObjEntry );
myDlg->setEnabled( false );
aCreator->create(initParamHyp, aHypName, myDlg);
onActivateObject( obj ); // Issue 0020170. Restore filters
if ( aHyp->_is_nil() )
return;
- SMESHGUI_GenericHypothesisCreator* aCreator = SMESH::GetHypothesisCreator( aHyp->GetName() );
+ // BUG 0020378
+ //SMESHGUI_GenericHypothesisCreator* aCreator = SMESH::GetHypothesisCreator(aHyp->GetName());
+ SMESH::HypothesisCreatorPtr aCreator = SMESH::GetHypothesisCreator(aHyp->GetName());
if ( aCreator )
{
// Get initial parameters
getInitParamsHypothesis( aHyp->GetName(), aHyp->GetLibName());
aCreator->setInitParamsHypothesis( initParamHyp );
+ // Get Entry of the Geom object
+ QString anObjEntry = "";
+ anObjEntry = myDlg->selectedObject( SMESHGUI_MeshDlg::Geom );
+ if ( anObjEntry == "" ) {
+ anObjEntry = myDlg->selectedObject( SMESHGUI_MeshDlg::Obj );
+ _PTR(SObject) pObj = studyDS()->FindObjectID( anObjEntry.toLatin1().data() );
+ GEOM::GEOM_Object_var aGeomVar = SMESH::GetShapeOnMeshOrSubMesh( pObj );
+ anObjEntry = aGeomVar->GetStudyEntry();
+ }
+
+ aCreator->setShapeEntry( anObjEntry );
int obj = myDlg->getActiveObject();
removeCustomFilters(); // Issue 0020170
myDlg->setEnabled( false );
//================================================================================
bool SMESHGUI_MeshOp::isAccessibleDim( const int theDim ) const
{
- return myDlg->tab( theDim )->isEnabled();
+ return myDlg->isTabEnabled( theDim );
}
//================================================================================
SMESH::CreateHypothesis(aHypName, aHypData->Label, true);
} else {
// Get hypotheses creator client (GUI)
- SMESHGUI_GenericHypothesisCreator* aCreator = SMESH::GetHypothesisCreator(aHypName);
+ // BUG 0020378
+ //SMESHGUI_GenericHypothesisCreator* aCreator = SMESH::GetHypothesisCreator(aHypName);
+ SMESH::HypothesisCreatorPtr aCreator = SMESH::GetHypothesisCreator(aHypName);
// Create algorithm
- if (aCreator)
+ if (aCreator) {
aCreator->create(true, aHypName, myDlg);
+ }
else
SMESH::CreateHypothesis(aHypName, aHypData->Label, true);
}