1 /* =======================================================================
2 * @author: Leonardo Florez-Valencia
3 * @email: florez-l@javeriana.edu.co
4 * =======================================================================
7 #ifndef __ivq__VTK__InteractorStyleImage__h__
8 #define __ivq__VTK__InteractorStyleImage__h__
10 #include <ivq/ivq_export.h>
13 #include <vtkInteractorStyleImage.h>
23 class IVQ_EXPORT InteractorStyleImage
24 : public vtkInteractorStyleImage
27 typedef InteractorStyleImage Self;
30 vtkTypeMacro( InteractorStyleImage, vtkInteractorStyleImage );
35 ivq::VTK::ImageViewer* GetViewer( );
36 void SetViewer( ivq::VTK::ImageViewer* v );
37 void AddOtherViewer( ivq::VTK::ImageViewer* v );
39 virtual void OnMouseMove( ) override;
40 virtual void OnLeftButtonDown( ) override;
41 virtual void OnLeftButtonUp( ) override;
42 virtual void OnMiddleButtonDown( ) override;
43 virtual void OnMiddleButtonUp( ) override;
44 virtual void OnRightButtonDown( ) override;
45 virtual void OnRightButtonUp( ) override;
46 virtual void OnMouseWheelForward( ) override;
47 virtual void OnMouseWheelBackward( ) override;
48 virtual void OnChar( ) override;
50 virtual void Rotate( ) override;
51 virtual void Spin( ) override;
54 InteractorStyleImage( );
55 virtual ~InteractorStyleImage( );
58 // Purposely not implemented.
59 InteractorStyleImage( const InteractorStyleImage& other );
60 void operator=( const InteractorStyleImage& other );
63 ivq::VTK::ImageViewer* Viewer;
64 std::set< ivq::VTK::ImageViewer* > OtherViewers;
65 double StartClick[ 2 ];
67 unsigned char PressedButton;
74 #endif // __ivq__VTK__InteractorStyleImage__h__