X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_PreviewDlg.cxx;h=254e8b0fa37476f3846a6d8a1844472629af4369;hb=494cae92368d8ad49b1cd4a15200d4921d65af1e;hp=0a9bf6842499a8ab605b2e2d8cd96df17e2601ad;hpb=bd4e115a78b52e3fbc016e5e30bb0e19b2a9e7d6;p=modules%2Fsmesh.git diff --git a/src/SMESHGUI/SMESHGUI_PreviewDlg.cxx b/src/SMESHGUI/SMESHGUI_PreviewDlg.cxx index 0a9bf6842..254e8b0fa 100644 --- a/src/SMESHGUI/SMESHGUI_PreviewDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_PreviewDlg.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2013 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 @@ -123,3 +123,107 @@ bool SMESHGUI_PreviewDlg::isApplyAndClose() const { return myIsApplyAndClose; } + + +//================================================================================= +// class : SMESHGUI_SMESHGUI_MultiPreviewDlg() +// purpose : +//================================================================================= +SMESHGUI_MultiPreviewDlg::SMESHGUI_MultiPreviewDlg( SMESHGUI* theModule ) : + mySMESHGUI( theModule ), + QDialog( SMESH::GetDesktop( theModule ) ), + myIsApplyAndClose( false ) +{ +} + +//================================================================================= +// function : ~SMESHGUI_MultiPreviewDlg() +// purpose : Destroys the object and frees any allocated resources +//================================================================================= +SMESHGUI_MultiPreviewDlg::~SMESHGUI_MultiPreviewDlg() +{ + qDeleteAll( mySimulationList ); +} + +//================================================================================= +// function : showPreview +// purpose : Show preview in the viewer +//================================================================================= +void SMESHGUI_MultiPreviewDlg::showPreview() +{ + for ( int i = 0; i < mySimulationList.count(); i++ ) + mySimulationList[i]->SetVisibility( true ); +} + +//================================================================================= +// function : hidePreview +// purpose : Hide preview in the viewer +//================================================================================= +void SMESHGUI_MultiPreviewDlg::hidePreview() +{ + for ( int i = 0; i < mySimulationList.count(); i++ ) + mySimulationList[i]->SetVisibility( false ); +} + +//================================================================================= +// function : connectPreviewControl +// purpose : Connect the preview check box +//================================================================================= +void SMESHGUI_MultiPreviewDlg::connectPreviewControl() +{ + connect( myPreviewCheckBox, SIGNAL( toggled( bool ) ), this, SLOT( onDisplaySimulation( bool ) ) ); +} + + +//================================================================================= +// function : toDisplaySimulation +// purpose : +//================================================================================= +void SMESHGUI_MultiPreviewDlg::toDisplaySimulation() +{ + onDisplaySimulation( true ); +} + +//================================================================================= +// function : onDisplaySimulation +// purpose : +//================================================================================= +void SMESHGUI_MultiPreviewDlg::onDisplaySimulation( bool toDisplayPreview ) +{ + //Empty implementation here +} + +//================================================================ +// Function : setIsApplyAndClose +// Purpose : Set value of the flag indicating that the dialog is +// accepted by Apply & Close button +//================================================================ +void SMESHGUI_MultiPreviewDlg::setIsApplyAndClose( const bool theFlag ) +{ + myIsApplyAndClose = theFlag; +} + +//================================================================ +// Function : isApplyAndClose +// Purpose : Get value of the flag indicating that the dialog is +// accepted by Apply & Close button +//================================================================ +bool SMESHGUI_MultiPreviewDlg::isApplyAndClose() const +{ + return myIsApplyAndClose; +} + +//================================================================ +// Function : setSimulationPreview +// Purpose : +//================================================================ +void SMESHGUI_MultiPreviewDlg::setSimulationPreview( QList& theMeshPreviewStruct ) +{ + hidePreview(); + qDeleteAll( mySimulationList ); + mySimulationList.clear(); + for ( int i = 0; i < theMeshPreviewStruct.count(); i++ ) { + mySimulationList << new SMESHGUI_MeshEditPreview( SMESH::GetViewWindow( mySMESHGUI ) ); + mySimulationList[i]->SetData( theMeshPreviewStruct[i].operator->() ); + } +}