#ifndef __CPPLUGINS__EXTENSIONS__VISUALIZATION__IMAGEINTERACTORSTYLE__H__
#define __CPPLUGINS__EXTENSIONS__VISUALIZATION__IMAGEINTERACTORSTYLE__H__
+#include <vector>
+
#include <vtkInteractorStyleImage.h>
#include <vtkOrientationMarkerWidget.h>
#include <vtkPropPicker.h>
ImageSliceActors* slice_actors,
MPRActors* mpr_actors = NULL
);
+ void AssociateInteractor( vtkRenderWindowInteractor* interactor );
void SetModeToNavigation( );
void SetModeToDeformation( );
// they might be called from OnTimer, they do not have mouse coord
// parameters (use interactor's GetEventPosition and
// GetLastEventPosition)
- virtual void Rotate( );
- virtual void Pan( );
- virtual void Spin( );
- virtual void Zoom( );
+
+ virtual void Rotate( ) { }
+ virtual void Spin( ) { }
+ virtual void Zoom( ) { }
+ virtual void Pick( ) { }
+ virtual void Slice( ) { }
virtual void WindowLevel( );
- virtual void Pick( );
- virtual void Slice( );
// Interaction mode entry points used internally.
+ virtual void StartPick( ) { }
+ virtual void EndPick( ) { }
+ virtual void StartSlice( ) { }
+ virtual void EndSlice( ) { }
virtual void StartWindowLevel( );
virtual void EndWindowLevel( );
- virtual void StartPick( );
- virtual void EndPick( );
- virtual void StartSlice( );
- virtual void EndSlice( );
+
+ // New events
+ virtual void StartCursorMoving( );
+ virtual void EndCursorMoving( );
protected:
ImageInteractorStyle( );
virtual ~ImageInteractorStyle( );
+ void _RenderAssociateInteractors( );
bool _PickPosition( double pos[ 3 ] );
void _UpdateCursor( );
vtkSmartPointer< vtkOrientationMarkerWidget > OrientationWidget;
vtkSmartPointer< vtkPropPicker > PropPicker;
+ std::vector< vtkRenderWindowInteractor* > AssociatedInteractors;
+
+ bool CursorMoving;
+
public:
static const int SliceEvent;
};