vtkInteractorStyleBaseView.h
Go to the documentation of this file.00001 #ifndef VTKINTERACTORSTYLEBASEVIEW_H_
00002 #define VTKINTERACTORSTYLEBASEVIEW_H_
00003
00004
00005 #include "wxVtkBaseView.h"
00006 #include <vector>
00007
00008
00009
00010
00011 class InteractorStyleMaracas;
00012
00013
00014 class creaMaracasVisu_EXPORT vtkInteractorStyleBaseView : public vtkInteractorStyleImage
00015 {
00016 public:
00017 vtkInteractorStyleBaseView();
00018 ~vtkInteractorStyleBaseView();
00019 static vtkInteractorStyleBaseView *New();
00020 virtual void OnChar();
00021 virtual void OnMouseMove();
00022 virtual void OnLeftButtonDown();
00023 virtual void OnLeftButtonUp();
00024 virtual void OnMiddleButtonDown();
00025 virtual void OnMiddleButtonUp();
00026 virtual void OnRightButtonDown();
00027 virtual void OnRightButtonUp();
00028
00029 virtual void OnLeftDClick();
00030 virtual void OnRightDClick();
00031 virtual void OnMiddleDClick();
00032 virtual void OnMouseWheel();
00033
00034 virtual void TransformCoordinate(double &X, double &Y, double &Z);
00035
00036 void AddInteractorStyleMaracas(InteractorStyleMaracas* interactorStyleMaracas);
00037 void RemoveInteractorStyleMaracas(InteractorStyleMaracas* interactorStyleMaracas);
00038 void InsertInteractorStyleMaracas(int pos, InteractorStyleMaracas* interactorStyleMaracas);
00039 void CallLstInteractorStyleMaracas(int type);
00040
00041
00042
00043 wxVtkBaseView *GetWxVtk2DBaseView();
00044 wxVtkBaseView *GetWxVtk3DBaseView();
00045
00046 void SetwxVtkBaseView(wxVtkBaseView *wxvtkbaseview);
00047 void SetActiveAllInteractors(bool ok);
00048
00049 void SetRefresh_waiting();
00050 void SetParent_refresh_waiting();
00051 void AddParentToReport(wxEvtHandler* parentToReport);
00052
00053 bool GetRefresh_waiting();
00054 bool GetParent_refresh_waiting();
00055 wxEvtHandler* GetParentToReport(int i);
00056
00057 void EvaluateToRefresh();
00058 void BlockRefresh();
00059 void UnBlockRefresh();
00060
00061 protected:
00062 std::vector< InteractorStyleMaracas* > _lstInteractorStyleMaracas;
00063
00064 private:
00065 bool _blockRefresh;
00066 bool _refresh_waiting;
00067 bool _parent_refresh_waiting;
00068 wxVtkBaseView *_wxvtkbaseview;
00069 std::vector<wxEvtHandler*> _lstParentToReport;
00070 };
00071
00072 #endif