Salome HOME
projects
/
modules
/
smesh.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
bos #35165 [CEA] Clear the mesh when an hypothesis is added to an algorithm
[modules/smesh.git]
/
src
/
SMESHGUI
/
SMESHGUI_MeshOp.cxx
diff --git
a/src/SMESHGUI/SMESHGUI_MeshOp.cxx
b/src/SMESHGUI/SMESHGUI_MeshOp.cxx
index a52234cd06dfed3885337a10c9b48b1038ace9de..21e94744375d8fa4e7b5d267c1e7b952187f2fdb 100644
(file)
--- a/
src/SMESHGUI/SMESHGUI_MeshOp.cxx
+++ b/
src/SMESHGUI/SMESHGUI_MeshOp.cxx
@@
-37,6
+37,7
@@
#include "SMESH_NumberFilter.hxx"
#include "SMESH_TypeDefs.hxx"
#include "SMESH_TypeFilter.hxx"
#include "SMESH_NumberFilter.hxx"
#include "SMESH_TypeDefs.hxx"
#include "SMESH_TypeFilter.hxx"
+#include "SMESH_Gen_i.hxx"
#include CORBA_SERVER_HEADER(SMESH_BasicHypothesis)
#include CORBA_SERVER_HEADER(SMESH_BasicHypothesis)
@@
-157,7
+158,7
@@
bool SMESHGUI_MeshOp::onApply()
if (( myToCreate && !myIsMesh ) || myIsInvalidSubMesh )
aResult = createSubMesh( aMess, anEntryList );
else if ( !myToCreate )
if (( myToCreate && !myIsMesh ) || myIsInvalidSubMesh )
aResult = createSubMesh( aMess, anEntryList );
else if ( !myToCreate )
- aResult = editMeshOrSubMesh( aMess );
+ aResult = editMeshOrSubMesh( aMess
, anEntryList
);
if ( aResult )
{
SMESHGUI::Modified();
if ( aResult )
{
SMESHGUI::Modified();
@@
-2038,7
+2039,10
@@
bool SMESHGUI_MeshOp::createMesh( QString& theMess, QStringList& theEntryList )
elemType = SMESH::NODE;
CORBA::String_var name = geomGroups[ iG ]->GetName();
elemType = SMESH::NODE;
CORBA::String_var name = geomGroups[ iG ]->GetName();
- meshGroup = aMesh->CreateGroupFromGEOM( elemType, name, geomGroups[ iG ]);
+
+ SALOMEDS::SObject_wrap groupSO = SMESH_Gen_i::GetSMESHGen()->ObjectToSObject( geomGroups[iG] );
+ if (!groupSO->_is_nil())
+ meshGroup = aMesh->CreateGroupFromGEOM( elemType, name, geomGroups[ iG ]);
// if ( elemType != SMESH::NODE )
// meshGroup = aMesh->CreateGroupFromGEOM( SMESH::NODE, name, geomGroups[ iG ]);
}
// if ( elemType != SMESH::NODE )
// meshGroup = aMesh->CreateGroupFromGEOM( SMESH::NODE, name, geomGroups[ iG ]);
}
@@
-2573,13
+2577,14
@@
int SMESHGUI_MeshOp::find( const SMESH::SMESH_Hypothesis_var& theHyp,
//================================================================================
/*!
* \brief Edits mesh or sub-mesh
//================================================================================
/*!
* \brief Edits mesh or sub-mesh
- * \param theMess - Output parameter intended for returning error message
- * \retval bool - TRUE if mesh is edited successfully, FALSE otherwise
+ * \param theMess - Output parameter intended for returning error message
+ * \param theEntryList - List of entries of published objects
+ * \retval bool - TRUE if mesh is edited successfully, FALSE otherwise
*
* Assigns new name hypotheses and algorithms to the mesh or sub-mesh
*/
//================================================================================
*
* Assigns new name hypotheses and algorithms to the mesh or sub-mesh
*/
//================================================================================
-bool SMESHGUI_MeshOp::editMeshOrSubMesh( QString& theMess
)
+bool SMESHGUI_MeshOp::editMeshOrSubMesh( QString& theMess
, QStringList& theEntryList
)
{
theMess = "";
{
theMess = "";
@@
-2624,6
+2629,12
@@
bool SMESHGUI_MeshOp::editMeshOrSubMesh( QString& theMess )
if ( !isMesh && !aSubMeshVar->_is_nil() )
aMesh = aSubMeshVar->GetFather();
if ( !isMesh && !aSubMeshVar->_is_nil() )
aMesh = aSubMeshVar->GetFather();
+ _PTR(SObject) aMeshSO = SMESH::FindSObject(aMesh.in());
+ if (aMeshSO) {
+ SMESH::SetName(aMeshSO, myDlg->objectText(SMESHGUI_MeshDlg::Obj));
+ theEntryList.append(aMeshSO->GetID().c_str());
+ }
+
// Assign new algorithms and hypotheses
for ( int dim = aDim; dim <= SMESH::DIM_3D; dim++ )
{
// Assign new algorithms and hypotheses
for ( int dim = aDim; dim <= SMESH::DIM_3D; dim++ )
{