Salome HOME
IPAL20918 Color of Group of Nodes or Edges is not changed when Edit Group
authordmv <dmv@opencascade.com>
Fri, 6 Mar 2009 12:40:52 +0000 (12:40 +0000)
committerdmv <dmv@opencascade.com>
Fri, 6 Mar 2009 12:40:52 +0000 (12:40 +0000)
src/SMESHGUI/SMESHGUI_GroupDlg.cxx

index 14dcc9d3936d90b68a2cfa323a2dc35e7da82ea4..59052bc9a1ce036dc37073fbe14146539fe049b0 100644 (file)
@@ -816,8 +816,15 @@ bool SMESHGUI_GroupDlg::onApply()
       myGroup->SetColor(aColor);
 
       _PTR(SObject) aMeshGroupSO = SMESH::FindSObject(myGroup);
-      if (SMESH_Actor *anActor = SMESH::FindActorByEntry(aMeshGroupSO->GetID().c_str()))
-        anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B );
+
+      if (SMESH_Actor *anActor = SMESH::FindActorByEntry(aMeshGroupSO->GetID().c_str())) {
+       switch ( myTypeId ) {
+       case 0: anActor->SetNodeColor( aColor.R, aColor.G, aColor.B ); break;
+       case 1: anActor->SetEdgeColor( aColor.R, aColor.G, aColor.B ); break;
+       case 2:
+       case 3: anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B ); break;
+       }
+      }
 
       QValueList<int> aAddList;
       QValueList<int>::iterator anIt;
@@ -941,8 +948,14 @@ bool SMESHGUI_GroupDlg::onApply()
       myGroupOnGeom->SetColor(aColor);
 
       _PTR(SObject) aMeshGroupSO = SMESH::FindSObject(myGroupOnGeom);
-      if (SMESH_Actor *anActor = SMESH::FindActorByEntry(aMeshGroupSO->GetID().c_str()))
-        anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B );
+      if (SMESH_Actor *anActor = SMESH::FindActorByEntry(aMeshGroupSO->GetID().c_str())) {
+       switch ( myTypeId ) {
+       case 0: anActor->SetNodeColor( aColor.R, aColor.G, aColor.B ); break;
+       case 1: anActor->SetEdgeColor( aColor.R, aColor.G, aColor.B ); break;
+       case 2:
+       case 3: anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B ); break;
+       }
+      }
     }
 
     mySMESHGUI->updateObjBrowser(true);