MeVisLabToolboxReference
|
00001 // **InsertLicense** code 00002 //---------------------------------------------------------------------------------- 00004 00009 //---------------------------------------------------------------------------------- 00010 00011 00012 #ifndef __SoCSOGeneralRendererEditorExtension_H 00013 #define __SoCSOGeneralRendererEditorExtension_H 00014 00015 #include "SoCSOEditorExtension.h" 00016 00017 00019 00020 namespace ml 00021 { 00022 class CSOList; 00023 class CSO; 00024 }; 00025 00026 class SoView2DCSOExtensibleEditor; 00027 00029 00031 class SOCSO_EXPORT SoCSOGeneralRendererEditorExtension : public SoCSOEditorExtension 00032 { 00033 SO_NODE_ABSTRACT_HEADER(SoCSOGeneralRendererEditorExtension); 00034 00035 public: 00036 00038 static void initClass(); 00039 00040 virtual void draw(const CSODrawCSOInfos& , const CSODrawView2DInfos& , SoView2DCSOExtensibleEditor* ) = 0; 00041 00042 virtual void createStartPressAt(const SoPointerPosition& ) {} 00043 virtual void createDragMoveTo(const SoPointerPosition& ) {} 00044 // returns whether to continue with this action 00045 virtual bool createEndPress(int ) { return false; } 00046 00047 virtual void selectAndMoveStartPressAt(const SoPointerPosition& ) {} 00048 virtual void selectAndMoveDragMoveTo(const SoPointerPosition& ) {} 00049 virtual SoPointingAction* selectAndMoveEndPress(int ) { return NULL; } 00050 00051 SoSFEnum colorMode; 00052 SoSFColor generalColor; 00053 SoSFFloat generalAlpha; 00054 00055 protected: 00056 00058 SoCSOGeneralRendererEditorExtension(); 00059 00060 void glSetColor(ml::CSO* cso); 00061 }; 00062 00063 #endif // __SoCSOGeneralRendererEditorExtension_H