]> Creatis software - cpPlugins.git/blobdiff - lib/cpExtensions/Interaction/ImageSliceStyle.h
Start contour tracer widget debugging: change interactor style.
[cpPlugins.git] / lib / cpExtensions / Interaction / ImageSliceStyle.h
index f98ca2848dc1151b10c464959a4c35c9cbd6376d..0fe25813f5056a6632fe917b8cc9c4a1bdf5e3d7 100644 (file)
@@ -1,7 +1,8 @@
 #ifndef __cpExtensions__Interaction__ImageSliceStyle__h__
 #define __cpExtensions__Interaction__ImageSliceStyle__h__
 
-#include <cpExtensions/Interaction/BaseStyle.h>
+#include <cpExtensions/Config.h>
+#include <vtkInteractorStyleImage.h>
 #include <vtkSmartPointer.h>
 
 // -------------------------------------------------------------------------
@@ -10,39 +11,49 @@ class vtkPropPicker;
 // -------------------------------------------------------------------------
 namespace cpExtensions
 {
-  namespace Visualization { class ImageViewerActors; }
-
+  namespace Visualization
+  {
+    class CursorActors;
+    class WindowLevelImageActor;
+  }
   namespace Interaction
   {
     /**
      */
     class cpExtensions_EXPORT ImageSliceStyle
-      : public BaseStyle
+      : public vtkInteractorStyleImage
     {
     public:
       typedef ImageSliceStyle Self;
+      typedef cpExtensions::Visualization::CursorActors          TCursor;
+      typedef cpExtensions::Visualization::WindowLevelImageActor TWLActor;
 
     public:
-      vtkTypeMacro( ImageSliceStyle, BaseStyle );
+      vtkTypeMacro( ImageSliceStyle, vtkInteractorStyleImage );
 
     public:
       static Self* New( );
 
-      cpExtensions::Visualization::ImageViewerActors* GetActors( );
-      const cpExtensions::Visualization::ImageViewerActors* GetActors( ) const;
-      void SetActors( cpExtensions::Visualization::ImageViewerActors* actors );
-
-      // Events
       virtual void OnMouseMove( ) cpExtensions_OVERRIDE;
-      virtual void OnMouseWheelForward( ) cpExtensions_OVERRIDE;
-      virtual void OnMouseWheelBackward( ) cpExtensions_OVERRIDE;
-      virtual void OnChar( ) cpExtensions_OVERRIDE;
+
+      /* TODO
+         cpExtensions::Visualization::ImageViewerActors* GetActors( );
+         const cpExtensions::Visualization::ImageViewerActors* GetActors( ) const;
+         void SetActors( cpExtensions::Visualization::ImageViewerActors* actors );
+
+         // Events
+         virtual void OnMouseMove( ) cpExtensions_OVERRIDE;
+         virtual void OnMouseWheelForward( ) cpExtensions_OVERRIDE;
+         virtual void OnMouseWheelBackward( ) cpExtensions_OVERRIDE;
+         virtual void OnChar( ) cpExtensions_OVERRIDE;
+      */
 
     protected:
       ImageSliceStyle( );
       virtual ~ImageSliceStyle( );
 
-      virtual bool _PickPosition( int idx[ 2 ], double pos[ 3 ] ) cpExtensions_OVERRIDE;
+      virtual vtkProp* _ImageActor( int i );
+      virtual bool _PickPointOnImageActor( int idx[ 2 ], double pnt[ 3 ] );
 
     private:
       // Purposely not implemented
@@ -50,8 +61,12 @@ namespace cpExtensions
       Self& operator=( const Self& );
 
     protected:
-      vtkSmartPointer< cpExtensions::Visualization::ImageViewerActors > m_Actors;
       vtkSmartPointer< vtkPropPicker > m_PropPicker;
+      vtkSmartPointer< TWLActor > m_WLActor;
+      vtkSmartPointer< TCursor > m_Cursor;
+      /* TODO
+         vtkSmartPointer< cpExtensions::Visualization::ImageViewerActors > m_Actors;
+      */
     };
 
   } // ecapseman