X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxVTKRenderWindowInteractor.h;h=b8eb9ac42cfc243816cc490f2a316b8cbbf40204;hb=d5e0666e18ece9462fa780e06a3b3a541266363c;hp=1482efa53e780375a9fb4c4b3822a2a217eaa761;hpb=3948b92b07a8992a6d04081c9649ba63e3e7d613;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVTKRenderWindowInteractor.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVTKRenderWindowInteractor.h index 1482efa..b8eb9ac 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVTKRenderWindowInteractor.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVTKRenderWindowInteractor.h @@ -1,10 +1,35 @@ +/*# --------------------------------------------------------------------- +# +# 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: wxVTKRenderWindowInteractor.h,v $ Language: C++ - Date: $Date: 2009/05/04 07:35:43 $ - Version: $Revision: 1.2 $ + Date: $Date: 2012/11/15 14:14:35 $ + Version: $Revision: 1.5 $ Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. @@ -57,17 +82,19 @@ // Apparently since wxGTK 2.8.0 one can finally use wxWindow (just as in any // other port): +// MM: tested on 2008/04/08: experienced some heavy flickering with wx-widget 2.6.0 +// using a wxWindow instead of wxGLCanvas fixed the symptoms +//#if (!wxCHECK_VERSION(2, 6, 0)) #if (!wxCHECK_VERSION(2, 8, 0)) #define USE_WXGLCANVAS #endif - #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) -# if wxUSE_GLCANVAS +# if wxUSE_GLCANVAS # include -# else +# else # error "problem of wxGLCanvas, you need to build wxWidgets with opengl" -# endif //wxUSE_GLCANVAS +# endif //wxUSE_GLCANVAS #endif //__WXGTK__ // Motif version (renamed into wxX11 for wxWindow 2.4 and newer) @@ -83,9 +110,9 @@ class wxKeyEvent; class wxSizeEvent; #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) -class VTK_RENDERING_EXPORT wxVTKRenderWindowInteractor : public wxGLCanvas, virtual public vtkRenderWindowInteractor +class wxVTKRenderWindowInteractor : public wxGLCanvas, public vtkRenderWindowInteractor #else -class /*VTK_RENDERING_EXPORT*/ wxVTKRenderWindowInteractor : public wxWindow, virtual public vtkRenderWindowInteractor +class wxVTKRenderWindowInteractor : public wxWindow, public vtkRenderWindowInteractor #endif //__WXGTK__ { DECLARE_DYNAMIC_CLASS(wxVTKRenderWindowInteractor) @@ -100,18 +127,21 @@ class /*VTK_RENDERING_EXPORT*/ wxVTKRenderWindowInteractor : public wxWindow, vi const wxSize &size = wxDefaultSize, long style = wxWANTS_CHARS | wxNO_FULL_REPAINT_ON_RESIZE, const wxString &name = wxPanelNameStr); - //vtk ::New() + + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 + vtkTypeRevisionMacro(wxVTKRenderWindowInteractor,vtkRenderWindowInteractor); +#else + vtkTypeMacro(wxVTKRenderWindowInteractor,vtkRenderWindowInteractor); +#endif + static wxVTKRenderWindowInteractor * New(); void PrintSelf(ostream& os, vtkIndent indent); //destructor ~wxVTKRenderWindowInteractor(); -#if defined(_WIN32) - const char * wxVTKRenderWindowInteractor::GetClassName() const; -#endif //_WIN32 - - // vtkRenderWindowInteractor overrides void Initialize(); void Enable(); @@ -135,12 +165,13 @@ class /*VTK_RENDERING_EXPORT*/ wxVTKRenderWindowInteractor : public wxWindow, vi void OnLeave(wxMouseEvent &event); void OnKeyDown(wxKeyEvent &event); void OnKeyUp(wxKeyEvent &event); + void OnChar(wxKeyEvent &event); #endif void OnTimer(wxTimerEvent &event); void OnSize(wxSizeEvent &event); void OnMouseWheel(wxMouseEvent& event); - void Render()throw (char*); + void Render(); void SetRenderWhenDisabled(int newValue); // Description: