Foundation classes for a basic GUI implementing simple widgets and events

Dependents:   TouchScreenGUIDemo

Widgets/SpinnerWidget.h

Committer:
duncanFrance
Date:
2016-04-22
Revision:
11:b485561aa112
Child:
12:63db16fea709

File content as of revision 11:b485561aa112:

#ifndef SIMPLEGUI_SPINNER_WIDGET_H
#define SIMPLEGUI_SPINNER_WIDGET_H

#include "BitmapWidget.h"
#include "TextWidget.h"
#include "ContainerWidget.h"
#include "GUI.h"

/**
* A spinner widget shows up and down arrows to set a value
**/
class SpinnerWidget : public ContainerWidget {
    
public:

    SpinnerWidget(GUI* gui);

    void setMin(float min);
    void setMax(float max);
    void setIncrement(float increment);
    void setValue(float value);
    void getValue();
    
    template<typename T>
    void onChange(T* tptr, void (T::*mptr)(void));

protected:

float _min, _max, _value, _increment;

BitmapWidget _upArrow;
BitmapWidget _downArrow;
TextWidget _text;

FunctionPointerArg1<void,void> _onChange;
    
    void _onUpClick();
    void _onDownClick();
    
    
};
#endif