Salome HOME
INT PAL 0052968: 'Mesh Information' dialog shows incorrect color of group built from...
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_GroupOnShapeDlg.cxx
index c31a07c449810fb5e3026b632a83119023b997f6..deeaad22ff1481a30d5eeb513726c2c7683933f1 100644 (file)
@@ -1,9 +1,9 @@
-// Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2015  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -30,6 +30,7 @@
 #include "SMESHGUI.h"
 #include "SMESHGUI_Utils.h"
 #include "SMESHGUI_GEOMGenUtils.h"
+#include <SMESH_ActorUtils.h>
 
 #include <GeometryGUI.h>
 #include <GEOM_SelectionFilter.h>
@@ -350,9 +351,17 @@ bool SMESHGUI_GroupOnShapeOp::onApply()
 
       //printf( "apply() %s %s\n", (*geomID).latin1(), name.latin1() );
       group = mesh->CreateGroupFromGEOM( elemType, name.toLatin1().data(), geom );
-      if( !group->_is_nil() )
+      if( !group->_is_nil() ) {
+        // set default color for created group
+        QColor c = SMESH::GetColor( "SMESH", "default_grp_color" );
+        SALOMEDS::Color aColor;
+        aColor.R = c.redF();
+        aColor.G = c.greenF();
+        aColor.B = c.blueF();
+        group->SetColor(aColor);
         if( _PTR(SObject) aSObject = SMESH::ObjectToSObject( group ) )
           anEntryList.append( aSObject->GetID().c_str() );
+      }
     }
   }
   SMESHGUI::Modified();