Added window text to the output generated by walk wnd debugger
[wine/multimedia.git] / documentation / common_controls
blobba7f81bc9cd952a094187ae0d4df10f837508b6a
2                   COMMON CONTROLS
3               their development status
4     and their UNDOCUMENTED features and functions
5 -----------------------------------------------------
8 1. Introduction
9 ---------------
10   The information provided herein is based on the dll version 4.72 which
11   is included in MS Internet Explorer 4.01.
13   All information about common controls should be collected in this document.
15   All Wine programmers are encouraged to add their knowledge to this document.
18 2. General Information
19 ----------------------
20   Further information about common controls can be found in the MS Platform SDK
21   and the MS Internet Client SDK (most recent). Information from these SDK's
22   will NOT be repeated here. Only information which can NOT be found in these
23   SDK's will be collected here. Some information in the SDK's mentioned above
24   is (intentionally???) WRONG. Corrections to wrong information will be
25   collected here too.
28 3. Controls
29 -----------
30   This paragraph describes the development status of the common controls.
33 3.1 Animation Control
34 ---------------------
35   Author:
36       Dummy written by Eric Kohl. <ekohl@abo.rhein-zeitung.de>
38   Status:
39       Dummy control. No functionality.
41   Notes:
42       Author needed!! Any volunteers??
45 3.2 Combo Box Ex Control
46 ------------------------
47   Author:
48       Dummy written by Eric Kohl. <ekohl@abo.rhein-zeitung.de>
50   Status:
51       Dummy control. No functionality.
53   Notes:
54       Author needed!! Any volunteers??
57 3.3 Date and Time Picker Control
58 --------------------------------
59   Status:
60       Nothing done at all.
62   Notes:
63       Author needed!! Any volunteers??
66 3.4 Drag List Box Control
67 -------------------------
68   Status:
69       Nothing done at all.
71   Notes:
72       Author needed!! Any volunteers??
75 3.5 Flat Scroll Bar Control
76 ---------------------------
77   Status:
78       Nothing done at all.
80   Notes:
81       Author needed!! Any volunteers??
84 3.6 Header Control
85 ------------------
86   Author:
87       Eric Kohl <ekohl@abo.rhein-zeitung.de>
89   Status:
90       Almost finished.
93 3.7 Hot Key Control
94 -------------------
95   Author:
96       Dummy written by Eric Kohl. <ekohl@abo.rhein-zeitung.de>
98   Status:
99       Dummy control. No functionality.
101   Notes:
102       Author needed!! Any volunteers??
105 3.8 Image List (no control)
106 ---------------------------
107   Author:
108       Eric Kohl <ekohl@abo.rhein-zeitung.de>
110   Status:
111       Almost finished.
114 3.9 IP Address Control
115 ----------------------
116   Status:
117       Dummy written by Eric Kohl.
119   Notes:
120       Author needed!! Any volunteers??
123 3.10 List View Control
124 ----------------------
125   Author:
126       Dummy written by Eric Kohl. <ekohl@abo.rhein-zeitung.de>
127       Ben Williams <biwillia@shrug.isdn.uiuc.edu>
129   Status:
130       Under construction.
132   Notes:
133       Author needed!! Any volunteers??
136 3.11 Month Calendar Control
137 ---------------------------
138   Status:
139       Nothing done at all.
141   Notes:
142       Author needed!! Any volunteers??
145 3.12 Native font control
146 ------------------------
147   Status:
148       Dummy written by Eric Kohl.
150   Notes:
151       Author needed!! Any volunteers??
154 3.13 Pager Control
155 ------------------
156   Author:
157       Dummy written by Eric Kohl.
159   Status:
160       Dummy control. No functionality.
162   Notes:
163       Author needed!! Any volunteers??
166 3.14 Progress Bar Control
167 -------------------------
168   Author:
169       Original implementation by Dimitrie O. Paun.
170       Fixes and improvements by Eric Kohl.
172   Status:
173       Almost finished (should behave like the original).
175   Notes:
176       WM_GETFONT and WM_SETFONT are not implemented yet. They seem to be
177       useless because progress bars usually don't display any textual
178       information. But if M$ implemented an undocumented flag to display
179       textual information (e.g. percentage) these messages would make sense.
182 3.15 Property Sheet
183 -------------------
184   Author:
185       Anders Carlsson <anders.carlsson@linux.nu>
187   Status:
188       - Development in progress.
189       - Not yet published.
191   Notes:
192       Tab control must be implemented first.
195 3.16 Rebar Control (Cool Bar)
196 -----------------------------
197   Author:
198       Dummy written by Eric Kohl.
200   Status:
201       Dummy control. No functionality.
203   Notes:
204       Author needed!! Any volunteers??
207 3.17 Status Bar Control
208 -----------------------
209   Author:
210       Original implementation by Bruce Milner.
211       Fixes and improvements by Eric Kohl.
213   Status:
214       Almost finished.
216   Notes:
217       - Unicode support is still missing.
218       - Tooltip integration is almost complete.
221 3.18 Tab Control
222 ----------------
223   Author:
224       Anders Carlsson <anders.carlsson@linux.nu>
226   Status:
227       - Development in progress.
230 3.19 Toolbar Control
231 --------------------
232   Author:
233       Eric Kohl <ekohl@abo.rhein-zeitung.de>
235   Status:
236       - Development in progress.
237       - Basic functionality is almost done. (dll version 4.0)
239   Notes:
240       - Bitmaps are not correctly displayed.
243 3.20 Tooltip Control
244 --------------------
245   Author:
246       Eric Kohl <ekohl@abo.rhein-zeitung.de>
248   Status:
249       - Almost finished.
251   Notes:
252       - Unicode support is still missing.
255 3.21 Trackbar Control
256 ---------------------
257   Author:
258       Dummy written by Eric Kohl <ekohl@abo.rhein-zeitung.de>
259       Alex Priem (alexp@sci.kun.nl)
261   Status:
262       Under construction.
265 3.22 Tree View Control
266 ----------------------
267   Author:
268       Dummy written by Eric Kohl.
269       Alex Priem (alexp@sci.kun.nl)
271   Status:
272       Under contstruction.
275 3.23 Updown Control
276 -------------------
277   Author:
278       Original implementation by Dimitrie O. Paun.
279       Some minor changes by Eric Kohl <ekohl@abo.rhein-zeitung.de>.
281   Status:
282       - Unknown.
284   Notes:
285       - Have a look at controls/updown.c for a list of bugs and missing
286         features.
288       - The status is unknown, because I did not have a close look at this
289         control. One test-program looked quite good, but in Win95's
290         cdplayer.exe the control does not show at all.
291       
292       Any volunteers??
295 4. Additional Information
296 -------------------------
298   Has to be written...
301 5. Undocumented features
302 ------------------------
304   There are quite a lot of undocumented functions like:
305      - DSA (Dynnamic Storage Array) functions.
306      - DPA (Dymnamic Pointer Array) functions.
307      - MRU ("Most Recently Used" List) functions.
308      - other unknown functions.
310   Have a look at relay32/comctl32.spec.
313 5.1 Dymnamic Storage Array (DSA)
314 ---------------------------------
315   The DSA functions are used to store and manage dynamic arrays of fixed size
316   memory blocks. They are used by TASKMAN.EXE, Explorer, IE4 and other
317   Programs and DLL's that are "parts of the Windows Operating System".
318   The implementation should be complete.
320   Have a look at the source code to get more information.
323 5.2 Dynamic Pointer Array (DPA)
324 ------------------------------------
325   Similar to the DSA functions, but they just store pointers. They are used by
326   Explorer, IE4 and other Programs and DLL's that are "parts of the Windows
327   Operating System". The implementation should be complete.
329   Have a look at the source code to get more information.
332 5.3 "Most Recently Used" - List (MRU)
333 -------------------------------------
334   The function 'COMCTL32_157()' could be called 'CreateMRUListEx32A()'.
335   Only stubs are implemented to keep Explorer from bailing out.
337   No more information available at this time!
340 5.4 MenuHelp
341 ------------
342   Has to be written...
345 5.5 GetEffectiveClientRect
346 --------------------------
347   Has to be written...
350 5.6 ShowHideMenuCtl
351 -------------------
352   The official documentation provided by MS is incomplete.
354   lpInfo:
355   ...
356   Both values of the first pair must be the handle to the applications main
357   menu.
358   ...
361 5.7 Other undocumented functions
362 --------------------------------
363   Several other undocumented functions are used by IE4.
365   COMCTL32_11, COMCTL_385, COMCTL32_386 and COMCTL32_388.
366   Their stubs are implemented to keep IE4 from bailing out.
369 6. Epilogue
370 -----------
371   You see, much work has still to be done. If you are interested in writing
372   a control send me an e-mail. If you like to fix bugs or add some
373   functionality send an e-mail to the author of the control.
375   Eric Kohl <ekohl@abo.rhein-zeitung.de>