Salome HOME
Fixed a regression: wrong display of shape by choosing different shape type when...
authormpa <mpa@opencascade.com>
Fri, 17 Jan 2014 09:46:36 +0000 (09:46 +0000)
committermpa <mpa@opencascade.com>
Fri, 17 Jan 2014 09:46:36 +0000 (09:46 +0000)
src/GroupGUI/GroupGUI_GroupDlg.cxx

index 31bef761aaf915d39201410e8cff932b7744ce8a..9370dcd93e58c29719aea8930e658140e1efb35e 100644 (file)
@@ -922,7 +922,7 @@ void GroupGUI_GroupDlg::activateSelection()
       myIsShapeType) // check if shape type is already choosen by user
   {
     GEOM_Displayer* aDisplayer = getDisplayer();
-  
+
     //display mode for main shape
     if ( myDmMode == -1 ) {
     SALOME_View* view = GEOM_Displayer::GetActiveView();
@@ -935,11 +935,6 @@ void GroupGUI_GroupDlg::activateSelection()
           if(!aSh.IsNull()) {
             myDmMode = aSh->isTopLevel() ? aSh->prevDisplayMode() : aSh->DisplayMode();
           }
-          // Hide main shape, if explode on VERTEX
-          if(getShapeType() != TopAbs_VERTEX) {
-            aDisplayer->Erase(myMainObj, false, false);
-            myIsHiddenMain = true;
-          }
         }
         else
           myDmMode = SUIT_Session::session()->resourceMgr()->integerValue( "Geometry", "display_mode" );
@@ -948,10 +943,13 @@ void GroupGUI_GroupDlg::activateSelection()
     aDisplayer->SetDisplayMode(myDmMode);
 
     // Mantis issue 0021421: do not hide main shape, if explode on VERTEX
-    if (getShapeType() == TopAbs_VERTEX) {
-      if (myIsHiddenMain)
-        aDisplayer->Display(myMainObj);
+    if(getShapeType() != TopAbs_VERTEX) {
+      aDisplayer->Erase(myMainObj, false, false);
+      myIsHiddenMain = true;
     }
+    else
+      aDisplayer->Display(myMainObj);
+
     aDisplayer->Erase(myGroup, false, false);
 
     QColor aColor = SUIT_Session::session()->resourceMgr()->colorValue( "Geometry", "editgroup_color" );