Sync with trunk r43123
[reactos.git] / rosapps / dflat32 / watch.c
1 /* ----------- watch.c ----------- */
2
3 #include "dflat.h"
4
5 int DfWatchIconProc(DFWINDOW wnd, DFMESSAGE msg, DF_PARAM p1, DF_PARAM p2)
6 {
7 int rtn;
8 switch (msg) {
9 case DFM_CREATE_WINDOW:
10 rtn = DfDefaultWndProc(wnd, msg, p1, p2);
11 DfSendMessage(wnd, DFM_CAPTURE_MOUSE, 0, 0);
12 DfSendMessage(wnd, DFM_CAPTURE_KEYBOARD, 0, 0);
13 return rtn;
14 case DFM_PAINT:
15 DfSetStandardColor(wnd);
16 DfWriteLine(wnd, " R ", 1, 1, FALSE);
17 return TRUE;
18 case DFM_BORDER:
19 rtn = DfDefaultWndProc(wnd, msg, p1, p2);
20 DfWriteLine(wnd, "Í", 2, 0, FALSE);
21 return rtn;
22 case MOUSE_MOVED:
23 DfSendMessage(wnd, DFM_HIDE_WINDOW, 0, 0);
24 DfSendMessage(wnd, DFM_MOVE, p1, p2);
25 DfSendMessage(wnd, DFM_SHOW_WINDOW, 0, 0);
26 return TRUE;
27 case DFM_CLOSE_WINDOW:
28 DfSendMessage(wnd, DFM_RELEASE_MOUSE, 0, 0);
29 DfSendMessage(wnd, DFM_RELEASE_KEYBOARD, 0, 0);
30 break;
31 default:
32 break;
33 }
34 return DfDefaultWndProc(wnd, msg, p1, p2);
35 }
36
37 DFWINDOW DfWatchIcon(void)
38 {
39 int mx, my;
40 DFWINDOW wnd;
41
42 /* this won't work !! */
43 // DfSendMessage(NULL, DFM_CURRENT_MOUSE_CURSOR,
44 // (DF_PARAM) &mx, (DF_PARAM) &my);
45
46 mx = 0;//DF_SCREENWIDTH / 2;
47 my = 0;//DF_SCREENHEIGHT / 2;
48 wnd = DfDfCreateWindow(
49 DF_BOX,
50 NULL,
51 mx, my, 3, 5,
52 NULL,NULL,
53 DfWatchIconProc,
54 DF_VISIBLE | DF_HASBORDER | DF_SHADOW | DF_SAVESELF);
55 return wnd;
56 }
57
58 /* EOF */