MeVisLabToolboxReference
MeVisLab/Standard/Sources/Inventor/SoView2D/extensions/SoView2DSlicePan.h
Go to the documentation of this file.
00001 #ifndef __SoView2DSlicePan_H
00002 #define __SoView2DSlicePan_H
00003 //----------------------------------------------------------------------------------
00004 // **InsertLicense** code
00005 //----------------------------------------------------------------------------------
00007 
00013 //----------------------------------------------------------------------------------
00014 
00015 #ifndef __SoView2DInteractionExtension_H
00016 #include "SoView2DInteractionExtension.h"
00017 #endif
00018 
00019 //------------------------------------------------------------------
00022 class SOVIEW2D_API SoView2DSlicePan : public SoView2DInteractionExtension
00023 {
00024   SO_NODE_HEADER(SoView2DSlicePan);
00025 
00026 public:
00028   SoSFBool editX;
00030   SoSFBool editY;
00031 
00034   SoSFBool evalStarted;
00035 
00037   static void   initClass();
00038 
00040   SoView2DSlicePan();
00041 
00043   bool   evalEvent(SoView2D* view2d, View2DSliceList* slicelist,
00044     View2DEvent* ec, View2DEventPhase phase);
00045 
00046 protected:
00047   void doPan(const SbVec2f& diff, SoView2D* view2d, View2DSliceList* slicelist);
00048 
00050 
00051   virtual void startPressAt(const SoPointerPosition& pos);
00052   virtual void dragMoveTo(const SoPointerPosition& pos);
00053   virtual SoPointingAction* endPress(int clickCount);
00055 
00057   SbVec2f _oldPos;
00058 
00060   bool _started;
00061 };
00062 
00063 #endif