X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_Displayer.cxx;h=4f1a2457e8bdd42d5aa90010a4548e5712012402;hb=71d173d51a36d3a3ad7b51972b5be88c2df9865e;hp=f1ddb5b2ded3269ac299aa0c5f5a60ecbd6bad7f;hpb=40793ae45e14edfdc3aa185537e495f2c905b3c7;p=modules%2Fsmesh.git diff --git a/src/SMESHGUI/SMESHGUI_Displayer.cxx b/src/SMESHGUI/SMESHGUI_Displayer.cxx index f1ddb5b2d..4f1a2457e 100644 --- a/src/SMESHGUI/SMESHGUI_Displayer.cxx +++ b/src/SMESHGUI/SMESHGUI_Displayer.cxx @@ -30,12 +30,13 @@ #include "SMESHGUI_VTKUtils.h" #include +#include #include #include -SMESHGUI_Displayer::SMESHGUI_Displayer( SalomeApp_Study* st ) -: SalomeApp_Displayer(), - myStudy( st ) +SMESHGUI_Displayer::SMESHGUI_Displayer( SalomeApp_Application* app ) +: LightApp_Displayer(), + myApp( app ) { } @@ -57,11 +58,11 @@ SALOME_Prs* SMESHGUI_Displayer::buildPresentation( const QString& entry, SALOME_ SUIT_ViewWindow* wnd = vtk_viewer->getViewManager()->getActiveView(); SMESH_Actor* anActor = SMESH::FindActorByEntry( wnd, entry.latin1() ); if( !anActor ) - anActor = SMESH::CreateActor( myStudy->studyDS(), entry.latin1(), true ); + anActor = SMESH::CreateActor( study()->studyDS(), entry.latin1(), true ); if( anActor ) { SMESH::DisplayActor( wnd, anActor ); - prs = SalomeApp_Displayer::buildPresentation( entry.latin1(), aViewFrame ); + prs = LightApp_Displayer::buildPresentation( entry.latin1(), aViewFrame ); } if( prs ) UpdatePrs( prs ); @@ -72,3 +73,13 @@ SALOME_Prs* SMESHGUI_Displayer::buildPresentation( const QString& entry, SALOME_ return prs; } + +SalomeApp_Study* SMESHGUI_Displayer::study() const +{ + return dynamic_cast( myApp->activeStudy() ); +} + +bool SMESHGUI_Displayer::canBeDisplayed( const QString& /*entry*/, const QString& viewer_type ) const +{ + return viewer_type==SVTK_Viewer::Type(); +}