X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDCalc%2Fcmp%2FMEDPresentationManager_i.txx;h=4c66cfc719180ee00e429e0cb41b9bb7d9403de7;hb=80657e4615027595184835a4c2f3d5548dc1b18d;hp=79eee1a5c4b796d24808f6566dfbf060dda0ea5a;hpb=5eacf7c93d407e264431f3c973156450e9ab1f40;p=modules%2Fmed.git diff --git a/src/MEDCalc/cmp/MEDPresentationManager_i.txx b/src/MEDCalc/cmp/MEDPresentationManager_i.txx index 79eee1a5c..4c66cfc71 100644 --- a/src/MEDCalc/cmp/MEDPresentationManager_i.txx +++ b/src/MEDCalc/cmp/MEDPresentationManager_i.txx @@ -17,13 +17,20 @@ // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -#ifndef _MED_PRESENTATION_MANAGER_I_TPP_ -#define _MED_PRESENTATION_MANAGER_I_TPP_ +#ifndef _MED_PRESENTATION_MANAGER_I_TXX_ +#define _MED_PRESENTATION_MANAGER_I_TXX_ template MEDPresentation::TypeID MEDPresentationManager_i::_makePresentation(PresentationParameters params) { + // Replace = Remove then add + if (params.viewMode == MEDCALC::VIEW_MODE_REPLACE) { + MEDPresentation::TypeID currentPresentationId = _getActivePresentationId(); + if (currentPresentationId > -1) + removePresentation(currentPresentationId); + } + // Create a new presentation instance PresentationType* presentation = NULL; try { @@ -40,4 +47,17 @@ MEDPresentationManager_i::_makePresentation(PresentationParameters params) return newID; } -#endif // _MED_PRESENTATION_MANAGER_I_TPP_ +template +void +MEDPresentationManager_i::_updatePresentation(MEDPresentation::TypeID presentationID, PresentationParameters params) +{ + MEDPresentation* presentation = _getPresentation(presentationID); + if (!presentation) { + std::cerr << "_updatePresentation(): presentation not found!!" << std::endl; + return; + } + + presentation->updatePipeline(params); +} + +#endif // _MED_PRESENTATION_MANAGER_I_TXX_