MeVisLabToolboxReference
|
00001 // **InsertLicense** code 00002 //---------------------------------------------------------------------------------- 00004 00009 //---------------------------------------------------------------------------------- 00010 00011 00012 #ifndef __CSOTransformAction_H 00013 #define __CSOTransformAction_H 00014 00015 00016 #include <SoPointingAction.h> 00017 00018 class SoView2DCSOExtensibleEditor; 00019 class SoCSOTransformEditor; 00020 00021 ML_START_NAMESPACE 00022 class CSO; 00023 class CSOList; 00024 ML_END_NAMESPACE 00025 00027 00028 class CSOTransformAction : public SoPointingAction 00029 { 00030 public: 00031 00032 CSOTransformAction(SoView2DCSOExtensibleEditor* editor); 00033 00034 virtual bool isSensitiveAt(const SoPointerPosition& pos); 00035 virtual void startPressAt(const SoPointerPosition& pos); 00036 virtual void dragMoveTo(const SoPointerPosition& pos); 00037 virtual SoPointingAction* endPress(int clickCount); 00038 virtual int getCurrentCursor(SoViewerProxy* ) const; 00039 00040 protected: 00041 00042 void initializeMembers(); 00043 00044 bool isEligibleForPicking(SoCSOTransformEditor* editor) const; 00045 00046 SoView2DCSOExtensibleEditor* _editor; 00047 00048 ml::CSO* _activeCSO; 00049 ml::CSOList* _activeCSOList; 00050 SoCSOTransformEditor* _transformEditor; 00051 00052 int _cursorShape; 00053 }; 00054 00056 00057 #endif // __CSOTransformAction_H 00058