SleepIsDeath/gameSource/HueValuePicker.h

74 lines
1.3 KiB
C++

#ifndef HUE_VALUE_PICKER_INCLUDED
#define HUE_VALUE_PICKER_INCLUDED
#include "minorGems/graphics/openGL/gui/GUIComponentGL.h"
#include "minorGems/ui/event/ActionListenerList.h"
#include "minorGems/graphics/Image.h"
#include "color.h"
#include "BorderPanel.h"
#include "Sprite.h"
class HueValuePicker : public BorderPanel, public ActionListenerList {
public:
// w and h MUST be powers of two!
HueValuePicker( double inAnchorX, double inAnchorY,
double inWidth, double inHeight );
virtual ~HueValuePicker();
// 0-1
float getSelectedHue();
float getSelectedValue();
void setValues( float inHue, float inValue );
// override fireRedraw in GUIComponentGL
virtual void mousePressed( double inX, double inY );
virtual void mouseDragged( double inX, double inY );
virtual void mouseReleased( double inX, double inY );
virtual void fireRedraw();
// true if currently active from an on-picker press
char mPressed;
protected:
void mouseActivity( double inX, double inY );
Image *mFieldImage;
Sprite *mFieldSprite;
Sprite *mColorSpot;
float mH;
float mV;
};
#endif