typedef map< pair<string, SMESH::ElementType>, TListOfNewGroups > TGroupsMap;
typedef std::set<SMESHDS_GroupBase*> TGroups;
- TPythonDump aPythonDump; // prevent dump of called methods
+ TPythonDump* pPythonDump = new TPythonDump;
+ TPythonDump& aPythonDump = *pPythonDump; // prevent dump of called methods
// create mesh
SMESH::SMESH_Mesh_var aNewMesh = CreateEmptyMesh();
<< theMergeNodesAndElements << ", "
<< theMergeTolerance << ")";
+ delete pPythonDump; // enable python dump from GetGroups()
+
+ // 0020577: EDF 1164 SMESH: Bad dump of concatenate with create common groups
+ if ( !aNewMesh->_is_nil() )
+ {
+ SMESH::ListOfGroups_var groups = aNewMesh->GetGroups();
+ }
+
+ // IPAL21468 Change icon of compound because it need not be computed.
+ SALOMEDS::SObject_var aMeshSObj = ObjectToSObject( myCurrentStudy, aNewMesh );
+ if( !aMeshSObj->_is_nil() ) {
+ SALOMEDS::GenericAttribute_var anAttr;
+ SALOMEDS::StudyBuilder_var aBuilder = myCurrentStudy->NewBuilder();
+ anAttr = aBuilder->FindOrCreateAttribute( aMeshSObj,"AttributePixMap" );
+ SALOMEDS::AttributePixMap_var aPixmap = SALOMEDS::AttributePixMap::_narrow(anAttr);
+ aPixmap->SetPixMap("ICON_SMESH_TREE_MESH");
+ }
+
return aNewMesh._retn();
}
// context->myDocument = 0;
// }
+ myCurrentStudy = SALOMEDS::Study::_nil();
return;
}
}
}
+int SMESH_Gen_i::GetCurrentStudyID()
+{
+ return myCurrentStudy->_is_nil() || myCurrentStudy->_non_existent() ? -1 : myCurrentStudy->StudyId();
+}
+
+//=================================================================================
+// function : GetStudy()
+// purpose : Returns a pointer to SALOMEDS Study object by its id
+//=================================================================================
+SALOMEDS::Study_ptr SMESH_Gen_i::GetStudy(CORBA::Long theStudyID)
+{
+ CORBA::Object_var aSMObject = GetNS()->Resolve( "/myStudyManager" );
+ SALOMEDS::StudyManager_var aStudyManager = SALOMEDS::StudyManager::_narrow( aSMObject );
+ SALOMEDS::Study_var aStudy = aStudyManager->GetStudyByID( theStudyID );
+ return aStudy._retn();
+}
+
+//=================================================================================
+// function : GetNotebook()
+// purpose : Returns a pointer to SALOME Notebook object by an id of the study
+//=================================================================================
+SALOME::Notebook_ptr SMESH_Gen_i::GetNotebook( CORBA::Long theStudyID )
+{
+ SALOMEDS::Study_ptr aStudy = GetStudy( theStudyID );
+ SALOME::Notebook_var aNotebook = aStudy->GetNotebook();
+ return aNotebook._retn();
+}
+
//=============================================================================
/*!
* SMESHEngine_factory