00001
00018 #ifndef CUI_SLIDERBAR_H
00019 #define CUI_SLIDERBAR_H
00020
00021 #include "CUI_ProgressBar.h"
00022
00024
00043 class GLGUI_ENTRY CUI_SliderBar : public CUI_ProgressBar
00044 {
00045 public:
00047 CUI_SliderBar( CUI_UI *ui = NULL, float x = 0, float y = 0, float x2 = 1, float y2 = 1,
00048 CUI_Frame *parent = NULL, IUI_Shader *shader = NULL,
00049 IUI_Shader *cursor = NULL, CUI_CoordSys *coordsys = NULL,
00050
00051 char *text = NULL, IUI_Font *font = NULL, float textscale = 0.8,
00052 IUI_Border *border = NULL,
00053
00054 float min = 0, float max = 100, float value = 5,
00055 IUI_Shader *barshader = NULL, bool displayValue = false,
00056
00057 float valueRange = 10
00058 );
00060 virtual ~CUI_SliderBar();
00061
00063 virtual bool Render( double dtime, IUI_Renderer *renderer );
00064
00066 virtual bool SetValue( float val );
00067
00069 virtual bool SetValueRange( float valueRange );
00070
00072 virtual float GetValueRange( void );
00073
00075
00076 virtual bool ProcessKey( unsigned long key );
00077
00079
00082 virtual bool IsClickable( ) { return true; }
00083
00085
00094 virtual bool Click( int &id, int &numparam, void **param );
00095
00097 virtual bool IsDraggable( ) { return true; }
00098
00100 virtual bool Drag( float x, float y, float dx, float dy, int &id, int &numparam, void **param );
00101
00103
00105 virtual void DeleteParam( void *param ) { delete [] (float*) param; };
00106
00107 protected:
00108
00110 float m_valueRange;
00111
00112 };
00113
00114 #endif