1 #ifndef __CPEXTENSIONS__VISUALIZATION__BASEINTERACTORSTYLE__H__
2 #define __CPEXTENSIONS__VISUALIZATION__BASEINTERACTORSTYLE__H__
4 #include <cpExtensions/cpExtensions_Export.h>
6 #include <vtkInteractorStyle.h>
10 namespace Visualization
14 class cpExtensions_EXPORT BaseInteractorStyle
15 : public vtkInteractorStyle
18 typedef BaseInteractorStyle Self;
19 vtkTypeMacro( BaseInteractorStyle, vtkInteractorStyle );
25 ButtonID_Middle = 0x02,
32 void DelegateTDxEvent( unsigned long event, void* calldata );
34 // Possible mouse motion events
35 virtual void OnMouseMove( ) { }
36 virtual void OnMouseWheelForward( ) { }
37 virtual void OnMouseWheelBackward( ) { }
39 // Possible mouse click-related events
40 virtual void OnLeftButtonDown( ) { }
41 virtual void OnLeftButtonUp( ) { }
42 virtual void OnLeftClick( ) { }
43 virtual void OnLeftDoubleClick( ) { }
44 virtual void OnMiddleButtonDown( ) { }
45 virtual void OnMiddleButtonUp( ) { }
46 virtual void OnMiddleClick( ) { }
47 virtual void OnMiddleDoubleClick( ) { }
48 virtual void OnRightButtonDown( ) { }
49 virtual void OnRightButtonUp( ) { }
50 virtual void OnRightClick( ) { }
51 virtual void OnRightDoubleClick( ) { }
53 // Keyboard-related events
54 virtual void OnChar( ) { }
55 virtual void OnKeyDown( ) { }
56 virtual void OnKeyUp( ) { }
57 virtual void OnKeyPress( ) { }
58 virtual void OnKeyRelease( ) { }
61 virtual void OnExpose( ) { }
62 virtual void OnConfigure( ) { }
63 virtual void OnEnter( ) { }
64 virtual void OnLeave( ) { }
67 inline void StartState( int newstate ) { }
68 inline void StopState( ) { }
69 inline void StartAnimate( ) { }
70 inline void StopAnimate( ) { }
71 inline void StartRotate( ) { }
72 inline void EndRotate( ) { }
73 inline void StartZoom( ) { }
74 inline void EndZoom( ) { }
75 inline void StartPan( ) { }
76 inline void EndPan( ) { }
77 inline void StartSpin( ) { }
78 inline void EndSpin( ) { }
79 inline void StartDolly( ) { }
80 inline void EndDolly( ) { }
81 inline void StartUniformScale( ) { }
82 inline void EndUniformScale( ) { }
83 inline void StartTimer( ) { }
84 inline void EndTimer( ) { }
85 inline void StartTwoPointer( ) { }
86 inline void EndTwoPointer( ) { }
87 inline void OnTimer( ) { }
90 BaseInteractorStyle( );
91 virtual ~BaseInteractorStyle( );
93 static void _ProcessEvents(
101 // Purposely not implemented
102 BaseInteractorStyle( const Self& );
103 Self& operator=( const Self& );
106 static const long MAX_DOUBLE_CLICK;
117 #endif // __CPEXTENSIONS__VISUALIZATION__BASEINTERACTORSTYLE__H__