1 // VISU VISUGUI : GUI of VISU component
3 // Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
24 // File : VisuGUI_Tools.cxx
25 // Author : Sergey Anikin
29 #include "VisuGUI_ViewTools.h"
31 #include "VISU_Actor.h"
33 #include "SVTK_ViewModel.h"
34 #include "SVTK_ViewWindow.h"
39 ErasePrs(VisuGUI* theModule,
40 VISU::Base_ptr theBase,
43 VISU::VISUType aType = theBase->GetType();
46 if (VISU::Curve_i* aCurve = dynamic_cast<VISU::Curve_i*>(VISU::GetServant(theBase).in()))
47 PlotCurve(theModule, aCurve, VISU::eErase );
50 case VISU::TCONTAINER: {
51 if (VISU::Container_i* aContainer = dynamic_cast<VISU::Container_i*>(VISU::GetServant(theBase).in()))
52 PlotContainer(theModule, aContainer, VISU::eErase );
56 if (VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(VISU::GetServant(theBase).in()))
57 PlotTable(theModule, aTable, VISU::eErase );
61 if(VISU::Prs3d_i* aPrsObject = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(theBase).in())){
62 if(aType == VISU::TGAUSSPOINTS)
63 ErasePrs3d<VVTK_Viewer>(theModule,aPrsObject,thIsUpdate);
64 else if(SUIT_ViewManager* aViewManager = theModule->getApp()->activeViewManager()){
65 QString aType = aViewManager->getType();
66 if(aType == SVTK_Viewer::Type())
67 ErasePrs3d<SVTK_Viewer>(theModule,aPrsObject,thIsUpdate);
68 else if(aType == VVTK_Viewer::Type())
69 ErasePrs3d<VVTK_Viewer>(theModule,aPrsObject,thIsUpdate);