]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
INT PAL 0052273: Geometry object can be deleted only in active view
authormpa <mpa@opencascade.com>
Fri, 17 Jan 2014 07:12:34 +0000 (07:12 +0000)
committermpa <mpa@opencascade.com>
Fri, 17 Jan 2014 07:12:34 +0000 (07:12 +0000)
src/GEOMGUI/GEOM_Displayer.cxx
src/GEOMGUI/GEOM_Displayer.h
src/GEOMToolsGUI/GEOMToolsGUI.cxx

index f4d8cbb987814dcccee2b62607174e16b2ddfa79..2683c9603d31901ed8f2525d19ac88ac80c7370e 100644 (file)
@@ -485,13 +485,14 @@ void GEOM_Displayer::Erase( const Handle(SALOME_InteractiveObject)& theIO,
 //=================================================================
 void GEOM_Displayer::Erase( GEOM::GEOM_BaseObject_ptr theObj,
                             const bool forced,
-                            const bool updateViewer )
+                            const bool updateViewer,
+                            SALOME_View* theViewFrame)
 {
   std::string entry = getEntry( theObj );
   if ( entry != "" )
   {
     Erase(new SALOME_InteractiveObject(entry.c_str(), "GEOM", getName(theObj).c_str()),
-          forced, updateViewer);
+          forced, updateViewer, theViewFrame);
   }
 }
 
index 4e8df530beb199c3230ba0889191c0081d061dc3..c26eca72a1937576cc1c6a89b568569916095588 100644 (file)
@@ -105,7 +105,8 @@ public:
 
   void          Erase     ( GEOM::GEOM_BaseObject_ptr theObj,
                             const bool forced = false,
-                            const bool updateViewer = true );
+                            const bool updateViewer = true,
+                            SALOME_View* theViewFrame = 0);
 
   void          EraseWithChildren(const Handle(SALOME_InteractiveObject)& theIO,
                                   const bool eraseOnlyChildren = false);
index 8ac38a4bba7ff7cd011a0b0ba89a27f10da75cc1..a25e0dc7538d77aad81d85279bd23f122b735401 100644 (file)
@@ -1011,7 +1011,7 @@ void GEOMToolsGUI::removeObjectWithChildren(_PTR(SObject) obj,
       QListIterator<SALOME_View*> it( views );
       while ( it.hasNext() )
         if ( SALOME_View* view = it.next() )
-          disp->Erase(geomObj, true, view);
+          disp->Erase(geomObj, true, true, view);
 
       // Remove object from Engine
       // We can't directly remove object from engine. All we can do is to unpublish the object