diff options
Diffstat (limited to 'lib/gui/einputnumber.h')
| -rw-r--r-- | lib/gui/einputnumber.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/lib/gui/einputnumber.h b/lib/gui/einputnumber.h new file mode 100644 index 00000000..c4f3013f --- /dev/null +++ b/lib/gui/einputnumber.h @@ -0,0 +1,35 @@ +#ifndef __lib_gui_einputnumber_h +#define __lib_gui_einputnumber_h + +#include <lib/gui/einput.h> + +class eInputContentNumber: public eInputContent +{ + DECLARE_REF(eInputContentNumber); +public: + eInputContentNumber(int cur, int min, int max); + + void getDisplay(std::string &res, int &cursor); + void moveCursor(int dir); + int haveKey(int code, int overwrite); + void deleteChar(int dir); + int isValid(); + + void validate(); + + void setValue(int num); + int getValue(); + +private: + void recalcLen(); + + void insertDigit(int pos, int dig); + + int m_value; + int m_cursor, m_len; + + int m_min, m_max; +}; + + +#endif |
