4 #include <lib/gui/ewidget.h>
10 * \brief A widget to enter a number.
12 class eNumber
: public eDecoWidget
15 void redrawNumber(gPainter
*, int n
, const eRect
&rect
);
16 void redrawWidget(gPainter
*, const eRect
&rect
);
17 eRect
getNumberRect(int n
);
18 int eventHandler(const eWidgetEvent
&event
);
20 int len
, dspace
, space_selected
, active
;
21 gColor cursorB
, cursorF
, normalB
, normalF
;
24 int min
, max
, digit
, maxdigits
, isactive
;
28 eLabel
* tmpDescr
; // used for description Label in LCD
30 int saved_keyboard_mode
;
32 int getActive() { return active
; }
36 int setProperty(const eString
&prop
, const eString
&value
);
38 static void unpack(__u32 l
, int *t
);
39 static void pack(__u32
&l
, int *t
);
41 Signal1
<void, int*> selected
;
42 Signal0
<void> numberChanged
;
43 eNumber(eWidget
*parent
, int len
, int min
, int max
, int maxdigits
, int *init
, int isactive
=0, eWidget
* descr
=0, int grabfocus
=1, const char* deco
="eNumber" );
45 int getNumber(int f
) { if ((f
>=0) && (f
<len
)) return number
[f
]; return -1; }
47 void setFixedNum(double);
48 void setNumber(int f
, int n
);
49 void setLimits(int min
, int max
);
50 void setNumberOfFields(int n
);
51 void setMaximumDigits(int n
);
62 void setFlags(int flags
);
63 void setBase(int base
);
65 void setNumber(int n
);
67 void setDescr( eWidget
*d
) { descr
= d
; }