1 /* ------------ spinbutt.c ------------- */
5 int DfSpinButtonProc(DFWINDOW wnd
, DFMESSAGE msg
, DF_PARAM p1
, DF_PARAM p2
)
8 DF_CTLWINDOW
*ct
= DfGetControl(wnd
);
11 case DFM_CREATE_WINDOW
:
16 rtn
= DfBaseWndProc(DF_SPINBUTTON
, wnd
, msg
, p1
, p2
);
18 DfSendMessage(NULL
, DFM_HIDE_CURSOR
, 0, 0);
19 DfSetFocusCursor(wnd
);
22 DfForeground
= DfWndBackground(wnd
);
23 DfBackground
= DfWndForeground(wnd
);
24 DfWPutch(wnd
,DF_UPSCROLLBOX
,DfWindowWidth(wnd
), 0);
25 DfWPutch(wnd
,DF_DOWNSCROLLBOX
,DfWindowWidth(wnd
)+1,0);
26 DfSetFocusCursor(wnd
);
29 if (p1
== DfGetRight(wnd
) + 1)
30 DfSendMessage(wnd
, DFM_KEYBOARD
, DF_UP
, 0);
31 else if (p1
== DfGetRight(wnd
) + 2)
32 DfSendMessage(wnd
, DFM_KEYBOARD
, DF_DN
, 0);
34 DfSendMessage(wnd
, DFM_SETFOCUS
, TRUE
, 0);
36 case DFM_LB_SETSELECTION
:
37 rtn
= DfBaseWndProc(DF_SPINBUTTON
, wnd
, msg
, p1
, p2
);
39 DfSendMessage(wnd
, DFM_PAINT
, 0, 0);
45 return DfBaseWndProc(DF_SPINBUTTON
, wnd
, msg
, p1
, p2
);