X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FvtkInteractorStyleBaseView2D.cxx;h=5971990bd1adda41d4618b7da269478202d8d5bb;hb=d725af03e25b41e03b212c26068be2c04dacd270;hp=b33cd8e43d6476e6df1a792c862d2186727cdd0d;hpb=a4ee3758aa0477f677fb981e2c4d6e29995e8db8;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInteractorStyleBaseView2D.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInteractorStyleBaseView2D.cxx index b33cd8e..5971990 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInteractorStyleBaseView2D.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInteractorStyleBaseView2D.cxx @@ -8,18 +8,39 @@ vtkStandardNewMacro(vtkInteractorStyleBaseView2D); //--------------------------------------------------------------------------- vtkInteractorStyleBaseView2D::vtkInteractorStyleBaseView2D() { - _manualinteractorwindowlevel= new manualInteractorWindowLevel(); - AddInteractorStyleMaracas( _manualinteractorwindowlevel ); - - _vtkInteractorScrollZ = new vtkInteractorScrollZ(); - AddInteractorStyleMaracas(_vtkInteractorScrollZ); - + //////////// + // RaC 04-2010 This mechanism of adding new functionalities has to be made externally in order + // to maintain a plugin architecture. + // Remember: The manualInteractorWindowLevel changes the window level over the image + // The vtkInteractorScrollZ changes the slice with right click interaction + // This vtkInteractorStyleBaseView2D gives the minimal interaction with a 2D scene + // + // _manualinteractorwindowlevel= new manualInteractorWindowLevel(); + // AddInteractorStyleMaracas( _manualinteractorwindowlevel ); + // + // _vtkInteractorScrollZ = new vtkInteractorScrollZ(); + // AddInteractorStyleMaracas(_vtkInteractorScrollZ); + //////////// } //--------------------------------------------------------------------------- vtkInteractorStyleBaseView2D::~vtkInteractorStyleBaseView2D() { } +//--------------------------------------------------------------------------- +void vtkInteractorStyleBaseView2D::SetInteractorScrollZ(vtkInteractorScrollZ* interactorScroll) +{ + _vtkInteractorScrollZ = interactorScroll; + AddInteractorStyleMaracas(_vtkInteractorScrollZ); +} + +//--------------------------------------------------------------------------- +void vtkInteractorStyleBaseView2D::SetInteractorWindowLevel(manualInteractorWindowLevel* interactorWindowLevel) +{ + _manualinteractorwindowlevel = interactorWindowLevel; + AddInteractorStyleMaracas(_manualinteractorwindowlevel); +} + //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView2D::OnRightButtonDown() // virtual { @@ -28,7 +49,6 @@ void vtkInteractorStyleBaseView2D::OnRightButtonDown() // virtual if ((GetInteractor()->GetControlKey()==1) && (GetInteractor()->GetShiftKey()==0) ){ this->vtkInteractorStyleImage::OnRightButtonDown(); } - } //--------------------------------------------------------------------------- @@ -81,3 +101,24 @@ void vtkInteractorStyleBaseView2D::OnMiddleButtonUp () // virtual } } +//--------------------------------------------------------------------------- +void vtkInteractorStyleBaseView2D::OnMouseWheelForward () // virtual +{ + vtkInteractorStyleBaseView::OnMouseWheelForward(); + if ((GetInteractor()->GetControlKey()==0) || (GetInteractor()->GetShiftKey()==0) ) + { + this->vtkInteractorStyleImage::OnMouseWheelForward(); + } +} + +//--------------------------------------------------------------------------- +void vtkInteractorStyleBaseView2D::OnMouseWheelBackward () // virtual +{ + vtkInteractorStyleBaseView::OnMouseWheelBackward(); + if ((GetInteractor()->GetControlKey()==0) || (GetInteractor()->GetShiftKey()==0) ) + { + this->vtkInteractorStyleImage::OnMouseWheelBackward(); + } +} + +