Added DebugBreak.
[wine] / dlls / comctl32 / flatsb.c
1 /*
2  * Flat Scrollbar control
3  *
4  * Copyright 1998, 1999 Eric Kohl
5  * Copyright 1998 Alex Priem
6  *
7  * NOTES
8  *   This is just a dummy control. An author is needed! Any volunteers?
9  *   I will only improve this control once in a while.
10  *     Eric <ekohl@abo.rhein-zeitung.de>
11  *
12  * TODO:
13  *   - All messages.
14  *   - All notifications.
15  *
16  */
17
18 #include "winbase.h"
19 #include "commctrl.h"
20 #include "flatsb.h" 
21 #include "debugtools.h"
22
23 DECLARE_DEBUG_CHANNEL(commctrl)
24 DECLARE_DEBUG_CHANNEL(datetime)
25
26
27 #define FlatSB_GetInfoPtr(hwnd) ((FLATSB_INFO*)GetWindowLongA (hwnd, 0))
28
29
30 BOOL WINAPI 
31 FlatSB_EnableScrollBar(HWND hwnd, INT dummy, UINT dummy2)
32 {
33     FIXME_(commctrl)("stub\n");
34     return 0;
35 }
36
37 BOOL WINAPI 
38 FlatSB_ShowScrollBar(HWND hwnd, INT code, BOOL flag)
39 {
40     FIXME_(commctrl)("stub\n");
41     return 0;
42 }
43
44 BOOL WINAPI 
45 FlatSB_GetScrollRange(HWND hwnd, INT code, LPINT min, LPINT max)
46 {
47     FIXME_(commctrl)("stub\n");
48     return 0;
49 }
50
51 BOOL WINAPI 
52 FlatSB_GetScrollInfo(HWND hwnd, INT code, LPSCROLLINFO info)
53 {
54     FIXME_(commctrl)("stub\n");
55     return 0;
56 }
57
58 INT WINAPI 
59 FlatSB_GetScrollPos(HWND hwnd, INT code)
60 {
61     FIXME_(commctrl)("stub\n");
62     return 0;
63 }
64
65 BOOL WINAPI 
66 FlatSB_GetScrollProp(HWND hwnd, INT propIndex, LPINT prop)
67 {
68     FIXME_(commctrl)("stub\n");
69     return 0;
70 }
71
72
73 INT WINAPI 
74 FlatSB_SetScrollPos(HWND hwnd, INT code, INT pos, BOOL fRedraw)
75 {
76     FIXME_(commctrl)("stub\n");
77     return 0;
78 }
79
80 INT WINAPI 
81 FlatSB_SetScrollInfo(HWND hwnd, INT code, LPSCROLLINFO info, BOOL fRedraw)
82 {
83     FIXME_(commctrl)("stub\n");
84     return 0;
85 }
86
87 INT WINAPI 
88 FlatSB_SetScrollRange(HWND hwnd, INT code, INT min, INT max, BOOL fRedraw)
89 {
90     FIXME_(commctrl)("stub\n");
91     return 0;
92 }
93
94 BOOL WINAPI 
95 FlatSB_SetScrollProp(HWND hwnd, UINT index, INT newValue, BOOL flag)
96 {
97     FIXME_(commctrl)("stub\n");
98     return 0;
99 }
100
101
102 BOOL WINAPI InitializeFlatSB(HWND hwnd)
103 {
104     FIXME_(commctrl)("stub\n");
105     return 0;
106 }
107
108 HRESULT WINAPI UninitializeFlatSB(HWND hwnd)
109 {
110     FIXME_(commctrl)("stub\n");
111     return 0;
112 }
113
114
115
116 static LRESULT
117 FlatSB_Create (HWND hwnd, WPARAM wParam, LPARAM lParam)
118 {
119     return 0;
120 }
121
122
123 static LRESULT
124 FlatSB_Destroy (HWND hwnd, WPARAM wParam, LPARAM lParam)
125 {
126     return 0;
127 }
128
129
130
131
132 LRESULT WINAPI
133 FlatSB_WindowProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
134 {
135     switch (uMsg)
136     {
137
138         case WM_CREATE:
139             return FlatSB_Create (hwnd, wParam, lParam);
140
141         case WM_DESTROY:
142             return FlatSB_Destroy (hwnd, wParam, lParam);
143
144         default:
145             if (uMsg >= WM_USER)
146                 ERR_(datetime)("unknown msg %04x wp=%08x lp=%08lx\n",
147                      uMsg, wParam, lParam);
148             return DefWindowProcA (hwnd, uMsg, wParam, lParam);
149     }
150     return 0;
151 }
152
153
154 VOID
155 FLATSB_Register (void)
156 {
157     WNDCLASSA wndClass;
158
159     if (GlobalFindAtomA (FLATSB_CLASSA)) return;
160
161     ZeroMemory (&wndClass, sizeof(WNDCLASSA));
162     wndClass.style         = CS_GLOBALCLASS;
163     wndClass.lpfnWndProc   = (WNDPROC)FlatSB_WindowProc;
164     wndClass.cbClsExtra    = 0;
165     wndClass.cbWndExtra    = sizeof(FLATSB_INFO *);
166     wndClass.hCursor       = LoadCursorA (0, IDC_ARROWA);
167     wndClass.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
168     wndClass.lpszClassName = FLATSB_CLASSA;
169  
170     RegisterClassA (&wndClass);
171 }
172
173
174 VOID
175 FLATSB_Unregister (void)
176 {
177     if (GlobalFindAtomA (FLATSB_CLASSA))
178         UnregisterClassA (FLATSB_CLASSA, (HINSTANCE)NULL);
179 }
180