-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
// 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
aView->SetSelectionEnabled( isEnabled );
}
}
+
+ if(!isEnabled) {
+ //clear current selection in the viewer
+ bool blocked = blockSignals( true );
+ if ( SUIT_ViewManager* aViewMgr = getViewManager() ) {
+ if( SVTK_ViewWindow* aViewWindow = dynamic_cast<SVTK_ViewWindow*>( aViewMgr->getActiveView() ) ){
+ if( SVTK_Selector* aSelector = aViewWindow->GetSelector() ) {
+ if(SVTK_View* aView = aViewWindow->getView()){
+ aSelector->ClearIObjects();
+ aView->onSelectionChanged();
+ }
+ }
+ }
+ }
+ blockSignals( blocked );
+ }
+
}
/*!
Erase all presentations
\param forced - removes all objects from view
*/
-void SVTK_Viewer::EraseAll( const bool forced )
+void SVTK_Viewer::EraseAll( SALOME_Displayer* d, const bool forced )
{
// Temporarily commented to avoid awful dependecy on SALOMEDS
// TODO: better mechanism of storing display/erse status in a study
}
}
}
+
+ SALOME_View::EraseAll( d, forced );
+
Repaint();
}
*/
SALOME_Prs* SVTK_Viewer::CreatePrs( const char* entry )
{
- SVTK_Prs* prs = new SVTK_Prs();
+ SVTK_Prs* prs = new SVTK_Prs( entry );
if ( entry ) {
if(SVTK_ViewWindow* aViewWindow = dynamic_cast<SVTK_ViewWindow*>(getViewManager()->getActiveView()))
if(SVTK_View* aView = aViewWindow->getView()){