X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSupervision%2FSNode_Impl.cxx;h=3ea6e5025be5f47a94e50a071ea4ddd702a26881;hb=5ff06bf22a9bc7108af5f23e9898a3a06ca94729;hp=1d6b83e6faf1ef7763cd2956134590e600efb59f;hpb=bae06cd3bdae2ac2acb878e96689b2ea283aad23;p=modules%2Fsuperv.git diff --git a/src/Supervision/SNode_Impl.cxx b/src/Supervision/SNode_Impl.cxx index 1d6b83e..3ea6e50 100644 --- a/src/Supervision/SNode_Impl.cxx +++ b/src/Supervision/SNode_Impl.cxx @@ -83,23 +83,31 @@ void SNode_Impl::destroy() { delete(_id) ; _thisObj->_remove_ref(); } + else { + MESSAGE("SNode_Impl::destroy ERROR ") ; + } if ( !CORBA::is_nil( aCoupled ) ) { - aCoupled->SetCoupled( "" ) ; +// aCoupled->SetCoupled( "" ) ; : Used in GraphBase::Graph::RemoveNode( EndSwitchNode ) : aCoupled->destroy() ; } +// Valid() only after deletion of the corresponding EndSwitchNode : + DataFlowEditor()->UnValid() ; } -// endService( "SNode_Impl::Destroy" ); + endService( "SNode_Impl::Destroy" ); } bool SNode_Impl::Delete() { -// beginService( "SNode_Impl::Delete" ); + beginService( "SNode_Impl::Delete" ); bool RetVal = false ; if ( DataFlowEditor()->IsEditing() ) { + DeletePorts() ; RetVal = DataFlowEditor()->RemoveNode( Name() ) ; - if ( RetVal ) - RetVal = DataFlowEditor()->IsValid() ; +// Valid() only after deletion of the corresponding EndLoopNode : +// if ( RetVal ) { +// RetVal = DataFlowEditor()->IsValid() ; +// } } -// endService( "SNode_Impl::Delete" ); + endService( "SNode_Impl::Delete" ); return RetVal ; }