]> Creatis software - cpPlugins.git/blobdiff - lib/cpExtensions/Visualization/BaseInteractorStyle.h
Intermediary commit
[cpPlugins.git] / lib / cpExtensions / Visualization / BaseInteractorStyle.h
index 02dd1503e29fe8da240dd4423bfddee4fb9b15c8..75c85d88f7eaf97442b0a35da00a5dc6b2387732 100644 (file)
@@ -49,23 +49,25 @@ namespace cpExtensions
       void DelegateTDxEvent( unsigned long event, void* calldata );
 
       // Possible mouse motion events
-      virtual void OnMouseMove( ) { }
+      virtual void OnMouseMove( );
       virtual void OnMouseWheelForward( ) { }
       virtual void OnMouseWheelBackward( ) { }
 
       // Possible mouse click-related events
       inline ButtonID GetButtonID( ) const
       { return( this->ActiveButton ); }
-      virtual void OnLeftButtonDown( ) { }
-      virtual void OnLeftButtonUp( ) { }
+
+      virtual void OnLeftButtonDown( );
+      virtual void OnLeftButtonUp( );
+      virtual void OnMiddleButtonDown( );
+      virtual void OnMiddleButtonUp( );
+      virtual void OnRightButtonDown( );
+      virtual void OnRightButtonUp( );
+
       virtual void OnLeftClick( ) { }
       virtual void OnLeftDoubleClick( ) { }
-      virtual void OnMiddleButtonDown( ) { }
-      virtual void OnMiddleButtonUp( ) { }
       virtual void OnMiddleClick( ) { }
       virtual void OnMiddleDoubleClick( ) { }
-      virtual void OnRightButtonDown( ) { }
-      virtual void OnRightButtonUp( ) { }
       virtual void OnRightClick( ) { }
       virtual void OnRightDoubleClick( ) { }
 
@@ -82,33 +84,15 @@ namespace cpExtensions
       virtual void OnEnter( ) { }
       virtual void OnLeave( ) { }
 
-      // Unused methods
-      inline void StartState( int newstate ) { }
-      inline void StopState( ) { }
-      inline void StartAnimate( ) { }
-      inline void StopAnimate( ) { }
-      inline void StartRotate( ) { }
-      inline void EndRotate( ) { }
-      inline void StartZoom( ) { }
-      inline void EndZoom( ) { }
-      inline void StartPan( ) { }
-      inline void EndPan( ) { }
-      inline void StartSpin( ) { }
-      inline void EndSpin( ) { }
-      inline void StartDolly( ) { }
-      inline void EndDolly( ) { }
-      inline void StartUniformScale( ) { }
-      inline void EndUniformScale( ) { }
-      inline void StartTimer( ) { }
-      inline void EndTimer( ) { }
-      inline void StartTwoPointer( ) { }
-      inline void EndTwoPointer( ) { }
-      inline void OnTimer( ) { }
+      virtual void Dolly( );
+      virtual void Pan( );
 
     protected:
       BaseInteractorStyle( );
       virtual ~BaseInteractorStyle( );
 
+      virtual void _Dolly( double factor );
+
       static void _ProcessEvents(
         vtkObject* object,
         unsigned long event,
@@ -122,6 +106,7 @@ namespace cpExtensions
       Self& operator=( const Self& );
 
     protected:
+      double MotionFactor;
 
       /**
        * Button events