From ed7b7e873009982efccb8ab5c01c1a7237452efc Mon Sep 17 00:00:00 2001 From: dmv Date: Tue, 7 Oct 2008 05:41:12 +0000 Subject: [PATCH] Impossible to Delete a presentation object through the reference on it. Regression to version 3.2.1 --- src/VISUGUI/VisuGUI.cxx | 19 +++++++++++++++---- src/VISUGUI/VisuGUI_Tools.cxx | 2 +- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/VISUGUI/VisuGUI.cxx b/src/VISUGUI/VisuGUI.cxx index 08e0e860..54906ff2 100644 --- a/src/VISUGUI/VisuGUI.cxx +++ b/src/VISUGUI/VisuGUI.cxx @@ -1355,11 +1355,22 @@ VisuGUI Handle(SALOME_InteractiveObject) anIO; for (SALOME_ListIteratorOfListIO it (aList); it.More(); it.Next()) { anIO = it.Value(); - aNameList.append("\n - "); - aNameList.append(anIO->getName()); if (anIO->hasEntry()) { - if (IsRemovable(anIO->getEntry(), this)) - anEntries[i++] = anIO->getEntry(); + if (IsRemovable(anIO->getEntry(), this)) { + aNameList.append("\n - "); + // Get Name Of the Main Object if it's a referenced object + VISU::TObjectInfo anObjectInfo = GetObjectByEntry(GetAppStudy(this), anIO->getEntry()); + if(_PTR(SObject) aSObject = anObjectInfo.mySObject){ + _PTR(SObject) aRefSObject; + if (aSObject->ReferencedObject(aRefSObject)) { + QString aRefName = QString::fromStdString ( aRefSObject->GetName() ); + aNameList.append( aRefName ); + } + else + aNameList.append(anIO->getName()); + } + anEntries[i++] = anIO->getEntry(); + } } } nbSelected = i; diff --git a/src/VISUGUI/VisuGUI_Tools.cxx b/src/VISUGUI/VisuGUI_Tools.cxx index 07b5fa49..44eeeca3 100644 --- a/src/VISUGUI/VisuGUI_Tools.cxx +++ b/src/VISUGUI/VisuGUI_Tools.cxx @@ -420,7 +420,7 @@ namespace VISU // It can be a reference on curve, published under a container. IPAL 20317 VISU::TObjectInfo aRefObjectInfo = GetObjectByEntry(GetAppStudy(theModule), aRefSObject->GetID()); VISU::Base_i* aRefBase = aRefObjectInfo.myBase; - if(aRefBase && aRefBase->GetType() == VISU::TCURVE) + if( (aRefBase && aRefBase->GetType() == VISU::TCURVE) || (aRefBase && aRefBase->GetType() == VISU::TMESH) ) return true; } -- 2.39.2