#ifndef __CPEXTENSIONS__INTERACTION__SphereWidget__H__ #define __CPEXTENSIONS__INTERACTION__SphereWidget__H__ #include #include #include namespace cpExtensions { namespace Interaction { /** */ class cpExtensions_EXPORT SphereWidget : public vtkSphereWidget { public: typedef SphereWidget Self; vtkTypeMacro( SphereWidget, vtkSphereWidget ); typedef cpExtensions::Interaction::BaseInteractorStyle TBaseStyle; typedef TBaseStyle::TMouseCommand TMouseCommand; typedef TBaseStyle::TKeyCommand TKeyCommand; public: static Self* New( ); virtual void SetInteractor( vtkRenderWindowInteractor* rwi ); protected: SphereWidget( ); virtual ~SphereWidget( ); static void _Click( void* data, const TBaseStyle::ButtonID& button, int* idx, double* pos, bool alt, bool ctr, bool sft ); static void _DoubleClick( void* data, const TBaseStyle::ButtonID& button, int* idx, double* pos, bool alt, bool ctr, bool sft ); static void _KeyPress(void* data, const char& key); private: // Purposely not implemented SphereWidget( const Self& ); Self& operator=( const Self& ); }; } // ecapseman } // ecapseman #endif // __CPEXTENSIONS__INTERACTION__SphereWidget__H__ // eof - $RCSfile$