]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
0021827: [CEA 650] TUI setColor on an object displayed in wireframe is ignored
authorvsr <vsr@opencascade.com>
Tue, 4 Sep 2012 08:47:15 +0000 (08:47 +0000)
committervsr <vsr@opencascade.com>
Tue, 4 Sep 2012 08:47:15 +0000 (08:47 +0000)
src/GEOMToolsGUI/GEOMToolsGUI_1.cxx
src/GEOM_SWIG_WITHIHM/libGEOM_Swig.cxx

index 925585ca67506a5a6336b4a64a1035356ca02dfc..5caf5d56d44e880ce0d0636b5a14edc828d73985 100644 (file)
@@ -283,6 +283,8 @@ void GEOMToolsGUI::SetColor( const QString& entry, const QColor& color, bool /*u
 
   // get active view
   SUIT_ViewWindow* window = app->desktop()->activeWindow();
+  if ( !window ) return;
+  
   bool isOCC = ( window && window->getViewManager()->getType() == OCCViewer_Viewer::Type() );
   bool isVTK = ( window && window->getViewManager()->getType() == SVTK_Viewer::Type() );
 
index f423db40ed43756c524ed1bf235dd209e7376874..616fd5097c8e9d9676321e7bed2c310da609c982 100644 (file)
@@ -463,43 +463,7 @@ void GEOM_Swig::setColor(const char* theEntry, int red, int green, int blue, boo
     virtual void Execute() {
       SUIT_Application* anApp = SUIT_Session::session()->activeApplication();
       if (!anApp) return;
-
       GEOMToolsGUI::SetColor( myEntry, QColor( myRed, myGreen, myBlue), myUpdateViewer );
-      /*
-      Handle(SALOME_InteractiveObject) anIO =
-        new SALOME_InteractiveObject(myEntry.c_str(), "GEOM", "");
-
-      if (SVTK_ViewWindow* aViewWindow = GetSVTKViewWindow(anApp)){
-        SVTK_View* aView = aViewWindow->getView();
-        QColor aColor (myRed, myGreen, myBlue);
-        aView->SetColor(anIO, aColor);
-        if (myUpdateViewer)
-          aView->Repaint();
-      } else if (OCCViewer_Viewer* occViewer = GetOCCViewer(anApp)) {
-        Handle(AIS_InteractiveContext) ic = occViewer->getAISContext();
-        SOCC_Viewer* soccViewer = dynamic_cast<SOCC_Viewer*>(occViewer);
-        if (soccViewer)
-          {
-            SALOME_Prs*   prs=      soccViewer->CreatePrs( myEntry.c_str() );
-            const SOCC_Prs* anOCCPrs = dynamic_cast<const SOCC_Prs*>( prs );
-            if ( !anOCCPrs || anOCCPrs->IsNull() )
-              return;
-
-            // get objects to be displayed
-            AIS_ListOfInteractive anAISObjects;
-            anOCCPrs->GetObjects( anAISObjects );
-            AIS_ListIteratorOfListOfInteractive ite( anAISObjects );
-            Quantity_Color CSFColor = Quantity_Color(myRed/255., myGreen/255., myBlue/255., Quantity_TOC_RGB);
-            for ( ; ite.More(); ite.Next() )
-              {
-                if(!ic->IsDisplayed(ite.Value()))continue;  //only displayed ais 
-                ite.Value()->SetColor(CSFColor);
-                if (ite.Value()->IsKind(STANDARD_TYPE(GEOM_AISShape))) Handle(GEOM_AISShape)::DownCast(ite.Value())->SetShadingColor(CSFColor);
-                ite.Value()->Redisplay(Standard_True); // as in OnColor
-              }
-            if (myUpdateViewer) occViewer->update();
-          }
-         }*/
     }
   };
   ProcessVoidEvent(new TEvent(theEntry, red, green, blue, isUpdated));