X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreawxVTKRenderWindowInteractor.cxx;h=b83bcce5c6147a0d217b64ef10809de31249c411;hb=849573af00f0997944cdc7d4c42365091cd17d13;hp=fa9d6842f4c11ec103d23ab2239349e175b363ae;hpb=f7560248febfe0a35ffa141b915bf18bd15037d9;p=crea.git diff --git a/src/creawxVTKRenderWindowInteractor.cxx b/src/creawxVTKRenderWindowInteractor.cxx index fa9d684..b83bcce 100644 --- a/src/creawxVTKRenderWindowInteractor.cxx +++ b/src/creawxVTKRenderWindowInteractor.cxx @@ -1,14 +1,37 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ +*/ + /*========================================================================= Program: Visualization Toolkit Module: $RCSfile: creawxVTKRenderWindowInteractor.cxx,v $ Language: C++ - Date: $Date: 2011/02/22 08:26:24 $ - Version: $Revision: 1.7 $ - - Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen - All rights reserved. - See Copyright.txt or http://www.kitware.com/Copyright.htm for details. + Date: $Date: 2012/11/15 10:43:26 $ + Version: $Revision: 1.11 $ This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR @@ -36,7 +59,12 @@ #include "vtkDebugLeaks.h" #ifdef __WXMAC__ -#include "vtkCarbonRenderWindow.h" +#ifdef VTK_USE_COCOA + #include "vtkCocoaRenderWindow.h" +#else + #include "vtkCarbonRenderWindow.h" +#endif + #endif //Keep this for compatibilty reason, this was introduced in wxGTK 2.4.0 @@ -134,7 +162,7 @@ BEGIN_EVENT_TABLE(creawxVTKRenderWindowInteractor, wxWindow) EVT_SIZE (creawxVTKRenderWindowInteractor::OnSize) END_EVENT_TABLE() -//EED win Compilation why??: vtkCxxRevisionMacro(creawxVTKRenderWindowInteractor, "$Revision: 1.7 $") +//EED win Compilation why??: vtkCxxRevisionMacro(creawxVTKRenderWindowInteractor, "$Revision: 1.11 $") vtkInstantiatorNewMacro(creawxVTKRenderWindowInteractor) //--------------------------------------------------------------------------- @@ -375,6 +403,14 @@ void creawxVTKRenderWindowInteractor::OnPaint(wxPaintEvent& WXUNUSED(event)) // get vtk to render to the wxWindows Render(); #ifdef __WXMAC__ + +#ifdef VTK_USE_COCOA + vtkCocoaRenderWindow* rwin = vtkCocoaRenderWindow::SafeDownCast(RenderWindow); + if( rwin ) + { + rwin->UpdateContext(); + } +#else // This solves a problem with repainting after a window resize // See also: http://sourceforge.net/mailarchive/forum.php?thread_id=31690967&forum_id=41789 vtkCarbonRenderWindow* rwin = vtkCarbonRenderWindow::SafeDownCast(RenderWindow); @@ -383,6 +419,8 @@ void creawxVTKRenderWindowInteractor::OnPaint(wxPaintEvent& WXUNUSED(event)) rwin->UpdateGLRegion(); } #endif + +#endif } //--------------------------------------------------------------------------- void creawxVTKRenderWindowInteractor::OnEraseBackground(wxEraseEvent &event) @@ -753,7 +791,7 @@ void creawxVTKRenderWindowInteractor::SetRenderWhenDisabled(int newValue) //resulting in a Render(), resulting in Update() being called whilst //still in progress. - RenderWhenDisabled = (bool)newValue; + RenderWhenDisabled = newValue != 0; } //--------------------------------------------------------------------------- //