source: vendor/w32api/3.6/include/commctrl.h

Last change on this file was 2720, checked in by bird, 19 years ago

w32api v3.6

File size: 115.0 KB
Line 
1#ifndef _COMMCTRL_H
2#define _COMMCTRL_H
3#if __GNUC__ >= 3
4#pragma GCC system_header
5#endif
6
7#include <prsht.h>
8#ifdef __cplusplus
9extern "C" {
10#endif
11#ifndef _WIN32_IE
12/* define _WIN32_IE if you really want it */
13#if 0
14#define _WIN32_IE 0x0300
15#endif
16#endif
17
18#ifndef SNDMSG
19#ifdef __cplusplus
20#define SNDMSG ::SendMessage
21#else
22#define SNDMSG SendMessage
23#endif
24#endif /* ifndef SNDMSG */
25
26#define DRAGLISTMSGSTRING TEXT("commctrl_DragListMsg")
27#define HOTKEY_CLASSA "msctls_hotkey32"
28#define HOTKEY_CLASSW L"msctls_hotkey32"
29#define PROGRESS_CLASSA "msctls_progress32"
30#define PROGRESS_CLASSW L"msctls_progress32"
31#define STATUSCLASSNAMEA "msctls_statusbar32"
32#define STATUSCLASSNAMEW L"msctls_statusbar32"
33#define TOOLBARCLASSNAMEA "ToolbarWindow32"
34#define TOOLBARCLASSNAMEW L"ToolbarWindow32"
35#define TOOLTIPS_CLASSA "tooltips_class32"
36#define TOOLTIPS_CLASSW L"tooltips_class32"
37#define TRACKBAR_CLASSA "msctls_trackbar32"
38#define TRACKBAR_CLASSW L"msctls_trackbar32"
39#define UPDOWN_CLASSA "msctls_updown32"
40#define UPDOWN_CLASSW L"msctls_updown32"
41#define ANIMATE_CLASSA "SysAnimate32"
42#define ANIMATE_CLASSW L"SysAnimate32"
43#define DATETIMEPICK_CLASSW L"SysDateTimePick32"
44#define DATETIMEPICK_CLASSA "SysDateTimePick32"
45#define MONTHCAL_CLASSW L"SysMonthCal32"
46#define MONTHCAL_CLASSA "SysMonthCal32"
47#define REBARCLASSNAMEW L"ReBarWindow32"
48#define REBARCLASSNAMEA "ReBarWindow32"
49#define WC_COMBOBOXEXW L"ComboBoxEx32"
50#define WC_COMBOBOXEXA "ComboBoxEx32"
51#define WC_IPADDRESSW L"SysIPAddress32"
52#define WC_IPADDRESSA "SysIPAddress32"
53#define WC_LISTVIEWA "SysListView32"
54#define WC_LISTVIEWW L"SysListView32"
55#define WC_TABCONTROLA "SysTabControl32"
56#define WC_TABCONTROLW L"SysTabControl32"
57#define WC_TREEVIEWA "SysTreeView32"
58#define WC_TREEVIEWW L"SysTreeView32"
59#define WC_HEADERA "SysHeader32"
60#define WC_HEADERW L"SysHeader32"
61#define WC_PAGESCROLLERW L"SysPager"
62#define WC_PAGESCROLLERA "SysPager"
63#define WC_NATIVEFONTCTLW L"NativeFontCtl"
64#define WC_NATIVEFONTCTLA "NativeFontCtl"
65#define WC_BUTTONA "Button"
66#define WC_BUTTONW L"Button"
67#define WC_STATICA "Static"
68#define WC_STATICW L"Static"
69#define WC_EDITA "Edit"
70#define WC_EDITW L"Edit"
71#define WC_LISTBOXA "ListBox"
72#define WC_LISTBOXW L"ListBox"
73#define WC_COMBOBOXA "ComboBox"
74#define WC_COMBOBOXW L"ComboBox"
75#define WC_SCROLLBARA "ScrollBar"
76#define WC_SCROLLBARW L"ScrollBar"
77
78#ifdef UNICODE
79#define HOTKEY_CLASS HOTKEY_CLASSW
80#define PROGRESS_CLASS PROGRESS_CLASSW
81#define STATUSCLASSNAME STATUSCLASSNAMEW
82#define TOOLBARCLASSNAME TOOLBARCLASSNAMEW
83#define TOOLTIPS_CLASS TOOLTIPS_CLASSW
84#define TRACKBAR_CLASS TRACKBAR_CLASSW
85#define UPDOWN_CLASS UPDOWN_CLASSW
86#define ANIMATE_CLASS ANIMATE_CLASSW
87#define DATETIMEPICK_CLASS DATETIMEPICK_CLASSW
88#define MONTHCAL_CLASS MONTHCAL_CLASSW
89#define REBARCLASSNAME REBARCLASSNAMEW
90#define WC_COMBOBOXEX WC_COMBOBOXEXW
91#define WC_HEADER WC_HEADERW
92#define WC_IPADDRESS WC_IPADDRESSW
93#define WC_LISTVIEW WC_LISTVIEWW
94#define WC_TABCONTROL WC_TABCONTROLW
95#define WC_TREEVIEW WC_TREEVIEWW
96#define WC_PAGESCROLLER WC_PAGESCROLLERW
97#define WC_NATIVEFONTCTL WC_NATIVEFONTCTLW
98#define WC_BUTTON WC_BUTTONW
99#define WC_STATIC WC_STATICW
100#define WC_EDIT WC_EDITW
101#define WC_LISTBOX WC_LISTBOXW
102#define WC_COMBOBOX WC_COMBOBOXW
103#define WC_SCROLLBAR WC_SCROLLBARW
104#else
105#define ANIMATE_CLASS ANIMATE_CLASSA
106#define HOTKEY_CLASS HOTKEY_CLASSA
107#define PROGRESS_CLASS PROGRESS_CLASSA
108#define STATUSCLASSNAME STATUSCLASSNAMEA
109#define TOOLBARCLASSNAME TOOLBARCLASSNAMEA
110#define TOOLTIPS_CLASS TOOLTIPS_CLASSA
111#define TRACKBAR_CLASS TRACKBAR_CLASSA
112#define UPDOWN_CLASS UPDOWN_CLASSA
113#define DATETIMEPICK_CLASS DATETIMEPICK_CLASSA
114#define MONTHCAL_CLASS MONTHCAL_CLASSA
115#define REBARCLASSNAME REBARCLASSNAMEA
116#define WC_COMBOBOXEX WC_COMBOBOXEXA
117#define WC_HEADER WC_HEADERA
118#define WC_IPADDRESS WC_IPADDRESSA
119#define WC_LISTVIEW WC_LISTVIEWA
120#define WC_TABCONTROL WC_TABCONTROLA
121#define WC_TREEVIEW WC_TREEVIEWA
122#define WC_PAGESCROLLER WC_PAGESCROLLERA
123#define WC_NATIVEFONTCTL WC_NATIVEFONTCTLA
124#define WC_BUTTON WC_BUTTONA
125#define WC_STATIC WC_STATICA
126#define WC_EDIT WC_EDITA
127#define WC_LISTBOX WC_LISTBOXA
128#define WC_COMBOBOX WC_COMBOBOXA
129#define WC_SCROLLBAR WC_SCROLLBARA
130#endif
131
132#if (_WIN32_IE >= 0x0500)
133#if (_WIN32_WINNT >= 0x0501)
134#define COMCTL32_VERSION 6
135#else
136#define COMCTL32_VERSION 5
137#endif
138#endif
139
140#define LVM_FIRST 0x1000
141#define TV_FIRST 0x1100
142#define HDM_FIRST 0x1200
143#define ACM_OPENA (WM_USER+100)
144#define ACM_PLAY (WM_USER+101)
145#define ACM_STOP (WM_USER+102)
146#define ACM_OPENW (WM_USER+103)
147#define ACN_START 1
148#define ACN_STOP 2
149#define CBEIF_TEXT 0x00000001
150#define CBEIF_IMAGE 0x00000002
151#define CBEIF_SELECTEDIMAGE 0x00000004
152#define CBEIF_OVERLAY 0x00000008
153#define CBEIF_INDENT 0x00000010
154#define CBEIF_LPARAM 0x00000020
155#define CBEIF_DI_SETITEM 0x10000000
156#define CBEN_INSERTITEM (CBEN_FIRST - 1)
157#define CBEN_DELETEITEM (CBEN_FIRST - 2)
158#define CBEN_BEGINEDIT (CBEN_FIRST - 4)
159#define CBEN_ENDEDITA (CBEN_FIRST - 5)
160#define CBEN_ENDEDITW (CBEN_FIRST - 6)
161#define CBENF_KILLFOCUS 1
162#define CBENF_RETURN 2
163#define CBENF_ESCAPE 3
164#define CBENF_DROPDOWN 4
165#define CBEMAXSTRLEN 260
166#define DL_BEGINDRAG 1157
167#define DL_CANCELDRAG 1160
168#define DL_DRAGGING 1158
169#define DL_DROPPED 1159
170#define DL_CURSORSET 0
171#define DL_STOPCURSOR 1
172#define DL_COPYCURSOR 2
173#define DL_MOVECURSOR 3
174#define CCS_TOP 1
175#define CCS_NOMOVEY 2
176#define CCS_BOTTOM 3
177#define CCS_NORESIZE 4
178#define CCS_NOPARENTALIGN 8
179#define CCS_ADJUSTABLE 32
180#define CCS_NODIVIDER 64
181#if (_WIN32_IE >= 0x0300)
182#define CCS_VERT 128
183#define CCS_LEFT 129
184#define CCS_NOMOVEX 130
185#define CCS_RIGHT 131
186#endif
187#define ACS_CENTER 0x0001
188#define ACS_TRANSPARENT 0x0002
189#define ACS_AUTOPLAY 0x0004
190#define ACS_TIMER 0x0008
191#define PGS_VERT 0x00000000
192#define PGS_HORZ 0x00000001
193#define PGS_AUTOSCROLL 0x00000002
194#define PGS_DRAGNDROP 0x00000004
195#define CMB_MASKED 2
196#define MINSYSCOMMAND SC_SIZE
197#define SBT_OWNERDRAW 0x1000
198#define SBT_NOBORDERS 256
199#define SBT_POPOUT 512
200#define SBT_RTLREADING 1024
201#define SB_SETTEXTA (WM_USER+1)
202#define SB_SETTEXTW (WM_USER+11)
203#define SB_GETTEXTA (WM_USER+2)
204#define SB_GETTEXTW (WM_USER+13)
205#define SB_GETTEXTLENGTHA (WM_USER+3)
206#define SB_GETTEXTLENGTHW (WM_USER+12)
207#define SB_SETPARTS (WM_USER+4)
208#define SB_GETPARTS (WM_USER+6)
209#define SB_GETBORDERS (WM_USER+7)
210#define SB_SETMINHEIGHT (WM_USER+8)
211#define SB_SIMPLE (WM_USER+9)
212#define SB_GETRECT (WM_USER+10)
213#define MSGF_COMMCTRL_BEGINDRAG 0x4200
214#define MSGF_COMMCTRL_SIZEHEADER 0x4201
215#define MSGF_COMMCTRL_DRAGSELECT 0x4202
216#define MSGF_COMMCTRL_TOOLBARCUST 0x4203
217#define ILC_COLOR 0
218#define ILC_COLOR4 4
219#define ILC_COLOR8 8
220#define ILC_COLOR16 16
221#define ILC_COLOR24 24
222#define ILC_COLOR32 32
223#define ILC_COLORDDB 254
224#define ILC_MASK 1
225#define ILC_PALETTE 2048
226#define ILCF_MOVE 0
227#define ILCF_SWAP 1
228#define ILS_NORMAL 0
229#define ILS_GLOW 1
230#define ILS_SHADOW 2
231#define ILS_SATURATE 4
232#define ILS_ALPHA 8
233#define ILD_BLEND25 2
234#define ILD_BLEND50 4
235#define ILD_SELECTED 4
236#define ILD_BLEND 4
237#define ILD_FOCUS 2
238#define ILD_MASK 16
239#define ILD_NORMAL 0
240#define ILD_TRANSPARENT 1
241#define ILD_IMAGE 0x0020
242#define ILD_ROP 0x0040
243#define ILD_OVERLAYMASK 0x0F00
244#define ILD_PRESERVEALPHA 0x1000
245#define ILD_SCALE 0x2000
246#define ILD_DPISCALE 0x4000
247#define HDS_HORZ 0
248#define HDS_BUTTONS 2
249#define HDS_HIDDEN 8
250#if (_WIN32_IE > 0x0300)
251#define HDS_HOTTRACK 4
252#define HDS_DRAGDROP 0x0040
253#define HDS_FULLDRAG 0x0080
254#endif /* _WIN32_IE > 0x0300 */
255#if (_WIN32_IE >= 0x0500)
256#define HDS_FILTERBAR 0x0100
257#endif /* _WIN32_IE >= 0x0500 */
258#define NM_FIRST 0
259#define NM_LAST ((UINT)-99)
260#define LVN_FIRST ((UINT)-100)
261#define LVN_LAST ((UINT)-199)
262#define HDN_FIRST ((UINT)-300)
263#define HDN_LAST ((UINT)-399)
264#define TVN_FIRST ((UINT)-400)
265#define TVN_LAST ((UINT)-499)
266#define TTN_FIRST ((UINT)-520)
267#define TTN_LAST ((UINT)-549)
268#define TCN_FIRST ((UINT)-550)
269#define TCN_LAST ((UINT)-580)
270#ifndef CDN_FIRST
271#define CDN_FIRST ((UINT)-601) /* also in commdlg.h */
272#define CDN_LAST ((UINT)-699)
273#endif
274#define TBN_FIRST ((UINT)-700)
275#define TBN_LAST ((UINT)-720)
276#define UDN_FIRST ((UINT)-721)
277#define UDN_LAST ((UINT)-740)
278#if (_WIN32_IE >= 0x0300)
279#define RBN_FIRST ((UINT)-831)
280#define RBN_LAST ((UINT)-859)
281#define MCN_FIRST ((UINT)-750)
282#define MCN_LAST ((UINT)-759)
283#define DTN_FIRST ((UINT)-760)
284#define DTN_LAST ((UINT)-799)
285#define CBEN_FIRST ((UINT)-800)
286#define CBEN_LAST ((UINT)-830)
287#endif /* _WIN32_IE */
288#if (_WIN32_IE >= 0x0400)
289#define IPN_FIRST ((UINT)-860)
290#define IPN_LAST ((UINT)-879)
291#define IPN_FIELDCHANGED (IPN_FIRST-0)
292#define SBN_FIRST ((UINT)-880U)
293#define SBN_LAST ((UINT)-899U)
294#define PGN_FIRST ((UINT)-900U)
295#define PGN_LAST ((UINT)-950U)
296#define PGN_SCROLL (PGN_FIRST-1)
297#define PGN_CALCSIZE (PGN_FIRST-2)
298#endif /* _WIN32_IE >= 0x0400 */
299#define HDI_WIDTH 1
300#define HDI_HEIGHT 1
301#define HDI_TEXT 2
302#define HDI_FORMAT 4
303#define HDI_LPARAM 8
304#define HDI_BITMAP 16
305#if (_WIN32_IE >= 0x0300)
306#define HDI_IMAGE 32
307#define HDI_DI_SETITEM 64
308#define HDI_ORDER 128
309#endif
310#define CBES_EX_NOEDITIMAGE 0x00000001
311#define CBES_EX_NOEDITIMAGEINDENT 0x00000002
312#define CBES_EX_PATHWORDBREAKPROC 0x00000004
313#if (_WIN32_IE >= 0x0400)
314#define CBES_EX_NOSIZELIMIT 0x00000008
315#define CBES_EX_CASESENSITIVE 0x00000010
316#define CBEN_GETDISPINFOA (CBEN_FIRST - 0)
317#define CBEN_GETDISPINFOW (CBEN_FIRST - 7)
318#define CBEN_DRAGBEGINA (CBEN_FIRST - 8)
319#define CBEN_DRAGBEGINW (CBEN_FIRST - 9)
320#endif /* _WIN32_IE >= 0x0400 */
321#if (_WIN32_IE >= 0x0500)
322#define HDI_FILTER 256
323#endif
324#define HDF_LEFT 0
325#define HDF_RIGHT 1
326#define HDF_CENTER 2
327#define HDF_JUSTIFYMASK 3
328#define HDF_RTLREADING 4
329#define HDF_OWNERDRAW 0x8000
330#define HDF_STRING 0x4000
331#define HDF_BITMAP 0x2000
332#if (_WIN32_IE >= 0x0300)
333#define HDF_BITMAP_ON_RIGHT 0x1000
334#define HDF_IMAGE 0x0800
335#endif
336#define HDM_GETITEMCOUNT HDM_FIRST
337#define HDM_INSERTITEMA (HDM_FIRST+1)
338#define HDM_INSERTITEMW (HDM_FIRST+10)
339#define HDM_DELETEITEM (HDM_FIRST+2)
340#define HDM_GETITEMA (HDM_FIRST+3)
341#define HDM_GETITEMW (HDM_FIRST+11)
342#define HDM_SETITEMA (HDM_FIRST+4)
343#define HDM_SETITEMW (HDM_FIRST+12)
344#define HDM_LAYOUT (HDM_FIRST+5)
345#if (_WIN32_IE >= 0x0300)
346#define HDM_GETITEMRECT (HDM_FIRST+7)
347#define HDM_SETIMAGELIST (HDM_FIRST+8)
348#define HDM_GETIMAGELIST (HDM_FIRST+9)
349#define HDM_ORDERTOINDEX (HDM_FIRST+15)
350#define HDM_CREATEDRAGIMAGE (HDM_FIRST+16)
351#define HDM_GETORDERARRAY (HDM_FIRST+17)
352#define HDM_SETORDERARRAY (HDM_FIRST+18)
353#define HDM_SETHOTDIVIDER (HDM_FIRST+19)
354#endif
355#if (_WIN32_IE >= 0x0400)
356#define HDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
357#define HDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
358#endif
359#define HHT_NOWHERE 1
360#define HHT_ONHEADER 2
361#define HHT_ONDIVIDER 4
362#define HHT_ONDIVOPEN 8
363#define HHT_ABOVE 256
364#define HHT_BELOW 512
365#define HHT_TORIGHT 1024
366#define HHT_TOLEFT 2048
367#define HDM_HITTEST (HDM_FIRST+6)
368#define HDN_ITEMCHANGINGA (HDN_FIRST-0)
369#define HDN_ITEMCHANGINGW (HDN_FIRST-20)
370#define HDN_ITEMCHANGEDA (HDN_FIRST-1)
371#define HDN_ITEMCHANGEDW (HDN_FIRST-21)
372#define HDN_ITEMCLICKA (HDN_FIRST-2)
373#define HDN_ITEMCLICKW (HDN_FIRST-22)
374#define HDN_ITEMDBLCLICKA (HDN_FIRST-3)
375#define HDN_ITEMDBLCLICKW (HDN_FIRST-23)
376#define HDN_DIVIDERDBLCLICKA (HDN_FIRST-5)
377#define HDN_DIVIDERDBLCLICKW (HDN_FIRST-25)
378#define HDN_BEGINTRACKA (HDN_FIRST-6)
379#define HDN_BEGINTRACKW (HDN_FIRST-26)
380#define HDN_ENDTRACKA (HDN_FIRST-7)
381#define HDN_ENDTRACKW (HDN_FIRST-27)
382#define HDN_TRACKA (HDN_FIRST-8)
383#define HDN_TRACKW (HDN_FIRST-28)
384#if _WIN32_IE >= 0x0300
385#define HDN_ENDDRAG (HDN_FIRST-11)
386#define HDN_BEGINDRAG (HDN_FIRST-10)
387#define HDN_GETDISPINFOA (HDN_FIRST-9)
388#define HDN_GETDISPINFOW (HDN_FIRST-29)
389#endif
390#if (_WIN32_IE >= 0x0400)
391#define HICF_OTHER 0x00
392#define HICF_MOUSE 0x01
393#define HICF_ARROWKEYS 0x02
394#define HICF_ACCELERATOR 0x04
395#define HICF_DUPACCEL 0x08
396#define HICF_ENTERING 0x10
397#define HICF_LEAVING 0x20
398#define HICF_RESELECT 0x40
399#define HICF_LMOUSE 0x80
400#define HICF_TOGGLEDROPDOWN 0x100
401#endif /* _WIN32_IE >= 0x0400 */
402#define IPM_CLEARADDRESS (WM_USER+100)
403#define IPM_SETADDRESS (WM_USER+101)
404#define IPM_GETADDRESS (WM_USER+102)
405#define IPM_SETRANGE (WM_USER+103)
406#define IPM_SETFOCUS (WM_USER+104)
407#define IPM_ISBLANK (WM_USER+105)
408#if (_WIN32_IE >= 0x0500)
409#define I_INDENTCALLBACK (-1)
410#define I_IMAGENONE (-2)
411#endif
412#define CMB_MASKED 2
413#define TBSTATE_CHECKED 1
414#define TBSTATE_PRESSED 2
415#define TBSTATE_ENABLED 4
416#define TBSTATE_HIDDEN 8
417#define TBSTATE_INDETERMINATE 16
418#define TBSTATE_WRAP 32
419#if (_WIN32_IE >= 0x0300)
420#define TBSTATE_ELLIPSES 0x40
421#endif
422#if (_WIN32_IE >= 0x0400)
423#define TBSTATE_MARKED 0x0080
424#endif
425#define TBSTYLE_BUTTON 0
426#define TBSTYLE_SEP 1
427#define TBSTYLE_CHECK 2
428#define TBSTYLE_GROUP 4
429#define TBSTYLE_CHECKGROUP (TBSTYLE_GROUP|TBSTYLE_CHECK)
430#if (_WIN32_IE >= 0x0300)
431#define TBSTYLE_DROPDOWN 8
432#endif
433#if (_WIN32_IE >= 0x0400)
434#define TBSTYLE_AUTOSIZE 16
435#define TBSTYLE_NOPREFIX 32
436#endif
437#define TBSTYLE_TOOLTIPS 256
438#define TBSTYLE_WRAPABLE 512
439#define TBSTYLE_ALTDRAG 1024
440#if (_WIN32_IE >= 0x0300)
441#define TBSTYLE_FLAT 2048
442#define TBSTYLE_LIST 4096
443#define TBSTYLE_CUSTOMERASE 8192
444#endif
445#if (_WIN32_IE >= 0x0400)
446#define TBSTYLE_REGISTERDROP 0x4000
447#define TBSTYLE_TRANSPARENT 0x8000
448#define TBSTYLE_EX_DRAWDDARROWS 0x00000001
449#endif /* _WIN32_IE >= 0x0400 */
450#if (_WIN32_IE >= 0x0501)
451#define TBSTYLE_EX_MIXEDBUTTONS 8
452#define TBSTYLE_EX_HIDECLIPPEDBUTTONS 16
453#endif /* _WIN32_IE >= 0x0501 */
454#if (_WIN32_WINNT >= 0x0501)
455#define TBSTYLE_EX_DOUBLEBUFFER 0x80
456#endif /* _WIN32_WINNT >= 0x0501 */
457#if (_WIN32_IE >= 0x0500)
458#define BTNS_BUTTON TBSTYLE_BUTTON
459#define BTNS_SEP TBSTYLE_SEP
460#define BTNS_CHECK TBSTYLE_CHECK
461#define BTNS_GROUP TBSTYLE_GROUP
462#define BTNS_CHECKGROUP TBSTYLE_CHECKGROUP
463#define BTNS_DROPDOWN TBSTYLE_DROPDOWN
464#define BTNS_AUTOSIZE TBSTYLE_AUTOSIZE
465#define BTNS_NOPREFIX TBSTYLE_NOPREFIX
466#define BTNS_WHOLEDROPDOWN 0x0080
467#endif /* _WIN32_IE >= 0x0500 */
468#if _WIN32_IE >= 0x0501
469#define BTNS_SHOWTEXT 0x0040
470#endif
471#if (_WIN32_IE >= 0x0400)
472#define TBCDRF_NOEDGES 0x10000
473#define TBCDRF_HILITEHOTTRACK 0x20000
474#define TBCDRF_NOOFFSET 0x40000
475#define TBCDRF_NOMARK 0x80000
476#define TBCDRF_NOETCHEDEFFECT 0x100000
477#endif /* _WIN32_IE >= 0x0400 */
478#define HINST_COMMCTRL ((HINSTANCE)-1)
479#define IDB_STD_SMALL_COLOR 0
480#define IDB_STD_LARGE_COLOR 1
481#define IDB_VIEW_SMALL_COLOR 4
482#define IDB_VIEW_LARGE_COLOR 5
483#if (_WIN32_IE >= 0x0300)
484#define IDB_HIST_SMALL_COLOR 8
485#define IDB_HIST_LARGE_COLOR 9
486#endif
487#define STD_CUT 0
488#define STD_COPY 1
489#define STD_PASTE 2
490#define STD_UNDO 3
491#define STD_REDOW 4
492#define STD_DELETE 5
493#define STD_FILENEW 6
494#define STD_FILEOPEN 7
495#define STD_FILESAVE 8
496#define STD_PRINTPRE 9
497#define STD_PROPERTIES 10
498#define STD_HELP 11
499#define STD_FIND 12
500#define STD_REPLACE 13
501#define STD_PRINT 14
502#define VIEW_LARGEICONS 0
503#define VIEW_SMALLICONS 1
504#define VIEW_LIST 2
505#define VIEW_DETAILS 3
506#define VIEW_SORTNAME 4
507#define VIEW_SORTSIZE 5
508#define VIEW_SORTDATE 6
509#define VIEW_SORTTYPE 7
510#define VIEW_PARENTFOLDER 8
511#define VIEW_NETCONNECT 9
512#define VIEW_NETDISCONNECT 10
513#define VIEW_NEWFOLDER 11
514#define TB_ENABLEBUTTON (WM_USER+1)
515#define TB_CHECKBUTTON (WM_USER+2)
516#define TB_PRESSBUTTON (WM_USER+3)
517#define TB_HIDEBUTTON (WM_USER+4)
518#define TB_INDETERMINATE (WM_USER+5)
519#if (_WIN32_IE >= 0x0400)
520#define TB_MARKBUTTON (WM_USER+6)
521#endif
522#define TB_ISBUTTONENABLED (WM_USER+9)
523#define TB_ISBUTTONCHECKED (WM_USER+10)
524#define TB_ISBUTTONPRESSED (WM_USER+11)
525#define TB_ISBUTTONHIDDEN (WM_USER+12)
526#define TB_ISBUTTONINDETERMINATE (WM_USER+13)
527#if (_WIN32_IE >= 0x0400)
528#define TB_ISBUTTONHIGHLIGHTED (WM_USER+14)
529#endif
530#define TB_SETSTATE (WM_USER+17)
531#define TB_GETSTATE (WM_USER+18)
532#define TB_ADDBITMAP (WM_USER+19)
533#if (_WIN32_IE >= 0x0400)
534#define TB_ADDBUTTONSA (WM_USER+20)
535#define TB_INSERTBUTTONA (WM_USER+21)
536#else
537#define TB_ADDBUTTONS (WM_USER+20)
538#define TB_INSERTBUTTON (WM_USER+21)
539#endif
540#define TB_DELETEBUTTON (WM_USER+22)
541#define TB_GETBUTTON (WM_USER+23)
542#define TB_BUTTONCOUNT (WM_USER+24)
543#define TB_COMMANDTOINDEX (WM_USER+25)
544#define TB_SAVERESTOREA (WM_USER+26)
545#define TB_SAVERESTOREW (WM_USER+76)
546#define TB_CUSTOMIZE (WM_USER+27)
547#define TB_ADDSTRINGA (WM_USER+28)
548#define TB_ADDSTRINGW (WM_USER+77)
549#define TB_GETITEMRECT (WM_USER+29)
550#define TB_BUTTONSTRUCTSIZE (WM_USER+30)
551#define TB_SETBUTTONSIZE (WM_USER+31)
552#define TB_SETBITMAPSIZE (WM_USER+32)
553#define TB_AUTOSIZE (WM_USER+33)
554#define TB_GETTOOLTIPS (WM_USER+35)
555#define TB_SETTOOLTIPS (WM_USER+36)
556#define TB_SETPARENT (WM_USER+37)
557#define TB_SETROWS (WM_USER+39)
558#define TB_GETROWS (WM_USER+40)
559#define TB_GETBITMAPFLAGS (WM_USER+41)
560#define TB_SETCMDID (WM_USER+42)
561#define TB_CHANGEBITMAP (WM_USER+43)
562#define TB_GETBITMAP (WM_USER+44)
563#define TB_GETBUTTONTEXTA (WM_USER+45)
564#define TB_GETBUTTONTEXTW (WM_USER+75)
565#define TB_REPLACEBITMAP (WM_USER+46)
566#define TB_GETBUTTONSIZE (WM_USER+58)
567#define TB_SETBUTTONWIDTH (WM_USER+59)
568#if (_WIN32_IE >= 0x0300)
569#define TB_SETINDENT (WM_USER+47)
570#define TB_SETIMAGELIST (WM_USER+48)
571#define TB_GETIMAGELIST (WM_USER+49)
572#define TB_LOADIMAGES (WM_USER+50)
573#define TB_GETRECT (WM_USER+51)
574#define TB_SETHOTIMAGELIST (WM_USER+52)
575#define TB_GETHOTIMAGELIST (WM_USER+53)
576#define TB_SETDISABLEDIMAGELIST (WM_USER+54)
577#define TB_GETDISABLEDIMAGELIST (WM_USER+55)
578#define TB_SETSTYLE (WM_USER+56)
579#define TB_GETSTYLE (WM_USER+57)
580#define TB_GETBUTTONSIZE (WM_USER+58)
581#define TB_SETBUTTONWIDTH (WM_USER+59)
582#define TB_SETMAXTEXTROWS (WM_USER+60)
583#define TB_GETTEXTROWS (WM_USER+61)
584#endif
585#if _WIN32_IE >= 0x400
586#define TB_GETOBJECT (WM_USER+62)
587#define TB_GETBUTTONINFOW (WM_USER+63)
588#define TB_SETBUTTONINFOW (WM_USER+64)
589#define TB_GETBUTTONINFOA (WM_USER+65)
590#define TB_SETBUTTONINFOA (WM_USER+66)
591#define TB_INSERTBUTTONW (WM_USER+67)
592#define TB_ADDBUTTONSW (WM_USER+68)
593#define TB_HITTEST (WM_USER+69)
594#define TB_SETEXTENDEDSTYLE (WM_USER+84)
595#define TB_GETEXTENDEDSTYLE (WM_USER+85)
596#define TB_SETDRAWTEXTFLAGS (WM_USER+70)
597#define TB_GETHOTITEM (WM_USER+71)
598#define TB_SETHOTITEM (WM_USER+72)
599#define TB_SETANCHORHIGHLIGHT (WM_USER+73)
600#define TB_GETANCHORHIGHLIGHT (WM_USER+74)
601#define TB_MAPACCELERATORA (WM_USER+78)
602#define TB_GETINSERTMARK (WM_USER+79)
603#define TB_SETINSERTMARK (WM_USER+80)
604#define TB_INSERTMARKHITTEST (WM_USER+81)
605#define TB_MOVEBUTTON (WM_USER+82)
606#define TB_GETMAXSIZE (WM_USER+83)
607#define TB_SETEXTENDEDSTYLE (WM_USER+84)
608#define TB_GETEXTENDEDSTYLE (WM_USER+85)
609#define TB_GETPADDING (WM_USER+86)
610#define TB_SETPADDING (WM_USER+87)
611#define TB_SETINSERTMARKCOLOR (WM_USER+88)
612#define TB_GETINSERTMARKCOLOR (WM_USER+89)
613#define TB_MAPACCELERATORW (WM_USER+90)
614#define TB_GETSTRINGW (WM_USER+91)
615#define TB_GETSTRINGA (WM_USER+92)
616#define TB_SETCOLORSCHEME CCM_SETCOLORSCHEME
617#define TB_GETCOLORSCHEME CCM_GETCOLORSCHEME
618#define TB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
619#define TB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
620#endif
621#define TBBF_LARGE 1
622#define TBN_GETBUTTONINFOA (TBN_FIRST-0)
623#define TBN_BEGINDRAG (TBN_FIRST-1)
624#define TBN_ENDDRAG (TBN_FIRST-2)
625#define TBN_BEGINADJUST (TBN_FIRST-3)
626#define TBN_ENDADJUST (TBN_FIRST-4)
627#define TBN_RESET (TBN_FIRST-5)
628#define TBN_QUERYINSERT (TBN_FIRST-6)
629#define TBN_QUERYDELETE (TBN_FIRST-7)
630#define TBN_TOOLBARCHANGE (TBN_FIRST-8)
631#define TBN_CUSTHELP (TBN_FIRST-9)
632#if (_WIN32_IE >= 0x0300)
633#define TBN_DROPDOWN (TBN_FIRST-10)
634#endif
635#if (_WIN32_IE >= 0x0400)
636#define TBN_HOTITEMCHANGE (TBN_FIRST-13)
637#define TBN_DRAGOUT (TBN_FIRST-14)
638#define TBN_DELETINGBUTTON (TBN_FIRST-15)
639#define TBN_GETDISPINFOA (TBN_FIRST-16)
640#define TBN_GETDISPINFOW (TBN_FIRST-17)
641#define TBN_GETINFOTIPA (TBN_FIRST-18)
642#define TBN_GETINFOTIPW (TBN_FIRST-19)
643#define TBN_GETBUTTONINFOW (TBN_FIRST-20)
644#endif
645#if (_WIN32_IE >= 0x0500)
646#define TBN_RESTORE (TBN_FIRST-21)
647#define TBN_SAVE (TBN_FIRST-22)
648#define TBN_INITCUSTOMIZE (TBN_FIRST-23)
649#define TBNRF_HIDEHELP 1
650#define TBNRF_ENDCUSTOMIZE 2
651#define TBNF_IMAGE 1
652#define TBNF_TEXT 2
653#define TBNF_DI_SETITEM 0x10000000
654#endif /* _WIN32_IE >= 0x0500 */
655#define TTS_ALWAYSTIP 1
656#define TTS_NOPREFIX 2
657#if( _WIN32_IE >= 0x0500 )
658#define TTS_NOANIMATE 0x10
659#define TTS_NOFADE 0x20
660#define TTS_BALLOON 0x40
661#define TTS_CLOSE 0x80
662#endif /* _WIN32_IE >= 0x0500 */
663#define TTF_IDISHWND 1
664#define TTF_CENTERTIP 2
665#define TTF_RTLREADING 4
666#define TTF_SUBCLASS 16
667#if (_WIN32_IE >= 0x0300)
668#define TTF_TRACK 0x0020
669#define TTF_ABSOLUTE 0x0080
670#define TTF_TRANSPARENT 0x0100
671#if (_WIN32_IE >= 0x0501)
672#define TTF_PARSELINKS 0x1000
673#endif
674#define TTF_DI_SETITEM 0x8000
675#define TBCD_TICS 1
676#define TBCD_THUMB 2
677#define TBCD_CHANNEL 3
678#endif /* _WIN32_IE >= 0x0300 */
679#if (_WIN32_IE >= 0x0400)
680#define TBDDRET_DEFAULT 0
681#define TBDDRET_NODEFAULT 1
682#define TBDDRET_TREATPRESSED 2
683#define TBIMHT_AFTER 1
684#define TBIMHT_BACKGROUND 2
685#endif
686#define TTDT_AUTOMATIC 0
687#define TTDT_RESHOW 1
688#define TTDT_AUTOPOP 2
689#define TTDT_INITIAL 3
690#define TTM_ACTIVATE (WM_USER+1)
691#define TTM_SETDELAYTIME (WM_USER+3)
692#define TTM_ADDTOOLA (WM_USER+4)
693#define TTM_ADDTOOLW (WM_USER+50)
694#define TTM_DELTOOLA (WM_USER+5)
695#define TTM_DELTOOLW (WM_USER+51)
696#define TTM_NEWTOOLRECTA (WM_USER+6)
697#define TTM_NEWTOOLRECTW (WM_USER+52)
698#define TTM_RELAYEVENT (WM_USER+7)
699#define TTM_GETTOOLINFOA (WM_USER+8)
700#define TTM_GETTOOLINFOW (WM_USER+53)
701#define TTM_SETTOOLINFOA (WM_USER+9)
702#define TTM_SETTOOLINFOW (WM_USER+54)
703#define TTM_HITTESTA (WM_USER+10)
704#define TTM_HITTESTW (WM_USER+55)
705#define TTM_GETTEXTA (WM_USER+11)
706#define TTM_GETTEXTW (WM_USER+56)
707#define TTM_UPDATETIPTEXTA (WM_USER+12)
708#define TTM_UPDATETIPTEXTW (WM_USER+57)
709#define TTM_GETTOOLCOUNT (WM_USER+13)
710#define TTM_ENUMTOOLSA (WM_USER+14)
711#define TTM_ENUMTOOLSW (WM_USER+58)
712#define TTM_GETCURRENTTOOLA (WM_USER+15)
713#define TTM_GETCURRENTTOOLW (WM_USER+59)
714#define TTM_WINDOWFROMPOINT (WM_USER+16)
715#if (_WIN32_IE >= 0x0300)
716#define TTM_TRACKACTIVATE (WM_USER+17)
717#define TTM_TRACKPOSITION (WM_USER+18)
718#define TTM_SETTIPBKCOLOR (WM_USER+19)
719#define TTM_SETTIPTEXTCOLOR (WM_USER+20)
720#define TTM_GETDELAYTIME (WM_USER+21)
721#define TTM_GETTIPBKCOLOR (WM_USER+22)
722#define TTM_GETTIPTEXTCOLOR (WM_USER+23)
723#define TTM_SETMAXTIPWIDTH (WM_USER+24)
724#define TTM_GETMAXTIPWIDTH (WM_USER+25)
725#define TTM_SETMARGIN (WM_USER+26)
726#define TTM_GETMARGIN (WM_USER+27)
727#define TTM_POP (WM_USER+28)
728#endif /* _WIN32_IE */
729#if (_WIN32_IE >= 0x0400) /* IE4.0 ??? */
730#define TTM_UPDATE (WM_USER+29)
731#define TTM_GETBUBBLESIZE (WM_USER+30)
732#define TTM_ADJUSTRECT (WM_USER+31)
733#define TTM_SETTITLEA (WM_USER+32)
734#define TTM_SETTITLEW (WM_USER+33)
735#endif
736#define TTN_GETDISPINFOA (TTN_FIRST - 0)
737#define TTN_GETDISPINFOW (TTN_FIRST - 10)
738#define TTN_NEEDTEXTA TTN_GETDISPINFOA
739#define TTN_NEEDTEXTW TTN_GETDISPINFOW
740#define TTN_SHOW (TTN_FIRST-1)
741#define TTN_POP (TTN_FIRST-2)
742#define UD_MAXVAL 0x7fff
743#define UD_MINVAL (-UD_MAXVAL)
744#define UDN_DELTAPOS (UDN_FIRST-1)
745#define UDS_WRAP 1
746#define UDS_SETBUDDYINT 2
747#define UDS_ALIGNRIGHT 4
748#define UDS_ALIGNLEFT 8
749#define UDS_AUTOBUDDY 16
750#define UDS_ARROWKEYS 32
751#define UDS_HORZ 64
752#define UDS_NOTHOUSANDS 128
753#if ( _WIN32_IE >= 0x0300 )
754#define UDS_HOTTRACK 0x0100
755#endif /* _WIN32_IE >= 0x0300 */
756#define UDM_SETRANGE (WM_USER+101)
757#define UDM_GETRANGE (WM_USER+102)
758#define UDM_SETPOS (WM_USER+103)
759#define UDM_GETPOS (WM_USER+104)
760#define UDM_SETBUDDY (WM_USER+105)
761#define UDM_GETBUDDY (WM_USER+106)
762#define UDM_SETACCEL (WM_USER+107)
763#define UDM_GETACCEL (WM_USER+108)
764#define UDM_SETBASE (WM_USER+109)
765#define UDM_GETBASE (WM_USER+110)
766#if (_WIN32_IE >= 0x0400)
767#define UDM_SETRANGE32 (WM_USER+111)
768#define UDM_GETRANGE32 (WM_USER+112)
769#define UDM_SETPOS32 (WM_USER+113)
770#define UDM_GETPOS32 (WM_USER+114)
771#endif
772#if (_WIN32_IE >= 0x0500)
773#define UDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
774#define UDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
775#endif
776#define SB_SETTEXTA (WM_USER+1)
777#define SB_SETTEXTW (WM_USER+11)
778#define SB_GETTEXTA (WM_USER+2)
779#define SB_GETTEXTW (WM_USER+13)
780#define SB_GETTEXTLENGTHA (WM_USER+3)
781#define SB_GETTEXTLENGTHW (WM_USER+12)
782#define SB_SETPARTS (WM_USER+4)
783#define SB_GETPARTS (WM_USER+6)
784#define SB_GETBORDERS (WM_USER+7)
785#define SB_SETMINHEIGHT (WM_USER+8)
786#define SB_SIMPLE (WM_USER+9)
787#define SB_GETRECT (WM_USER+10)
788#define SBT_OWNERDRAW 0x1000
789#define SBT_NOBORDERS 256
790#define SBT_POPOUT 512
791#define SBT_RTLREADING 1024
792#if( _WIN32_IE >= 0x0400 )
793#define SBT_TOOLTIPS 0x0800
794#define SBN_SIMPLEMODECHANGE (SBN_FIRST)
795#endif /* _WIN32_IE >= 0x0400 */
796#define TBS_AUTOTICKS 1
797#define TBS_VERT 2
798#define TBS_HORZ 0
799#define TBS_TOP 4
800#define TBS_BOTTOM 0
801#define TBS_LEFT 4
802#define TBS_RIGHT 0
803#define TBS_BOTH 8
804#define TBS_NOTICKS 16
805#define TBS_ENABLESELRANGE 32
806#define TBS_FIXEDLENGTH 64
807#define TBS_NOTHUMB 128
808#if (_WIN32_IE >= 0x0300)
809#define TBS_TOOLTIPS 0x0100
810#define TBTS_TOP 0
811#define TBTS_LEFT 1
812#define TBTS_BOTTOM 2
813#define TBTS_RIGHT 3
814#endif
815#if (_WIN32_IE >= 0x0500)
816#define TBS_REVERSED 0x0200
817#endif
818#if (_WIN32_IE >= 0x0501)
819#define TBS_DOWNISLEFT 0x0400
820#endif
821#if _WIN32_IE >= 0x400
822#define TBIF_BYINDEX 0x80000000
823#define TBIF_COMMAND 32
824#define TBIF_IMAGE 1
825#define TBIF_LPARAM 16
826#define TBIF_SIZE 64
827#define TBIF_STATE 4
828#define TBIF_STYLE 8
829#define TBIF_TEXT 2
830#endif
831#define TBM_GETPOS (WM_USER)
832#define TBM_GETRANGEMIN (WM_USER+1)
833#define TBM_GETRANGEMAX (WM_USER+2)
834#define TBM_GETTIC (WM_USER+3)
835#define TBM_SETTIC (WM_USER+4)
836#define TBM_SETPOS (WM_USER+5)
837#define TBM_SETRANGE (WM_USER+6)
838#define TBM_SETRANGEMIN (WM_USER+7)
839#define TBM_SETRANGEMAX (WM_USER+8)
840#define TBM_CLEARTICS (WM_USER+9)
841#define TBM_SETSEL (WM_USER+10)
842#define TBM_SETSELSTART (WM_USER+11)
843#define TBM_SETSELEND (WM_USER+12)
844#define TBM_GETPTICS (WM_USER+14)
845#define TBM_GETTICPOS (WM_USER+15)
846#define TBM_GETNUMTICS (WM_USER+16)
847#define TBM_GETSELSTART (WM_USER+17)
848#define TBM_GETSELEND (WM_USER+18)
849#define TBM_CLEARSEL (WM_USER+19)
850#define TBM_SETTICFREQ (WM_USER+20)
851#define TBM_SETPAGESIZE (WM_USER+21)
852#define TBM_GETPAGESIZE (WM_USER+22)
853#define TBM_SETLINESIZE (WM_USER+23)
854#define TBM_GETLINESIZE (WM_USER+24)
855#define TBM_GETTHUMBRECT (WM_USER+25)
856#define TBM_GETCHANNELRECT (WM_USER+26)
857#define TBM_SETTHUMBLENGTH (WM_USER+27)
858#define TBM_GETTHUMBLENGTH (WM_USER+28)
859#define TBM_SETTOOLTIPS (WM_USER+29)
860#define TBM_GETTOOLTIPS (WM_USER+30)
861#define TBM_SETTIPSIDE (WM_USER+31)
862#define TBM_SETBUDDY (WM_USER+32)
863#define TBM_GETBUDDY (WM_USER+33)
864#define TBM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
865#define TBM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
866#define TB_LINEUP 0
867#define TB_LINEDOWN 1
868#define TB_PAGEUP 2
869#define TB_PAGEDOWN 3
870#define TB_THUMBPOSITION 4
871#define TB_THUMBTRACK 5
872#define TB_TOP 6
873#define TB_BOTTOM 7
874#define TB_ENDTRACK 8
875#define HOTKEYF_SHIFT 1
876#define HOTKEYF_CONTROL 2
877#define HOTKEYF_ALT 4
878#define HOTKEYF_EXT 8
879#define HKCOMB_NONE 1
880#define HKCOMB_S 2
881#define HKCOMB_C 4
882#define HKCOMB_A 8
883#define HKCOMB_SC 16
884#define HKCOMB_SA 32
885#define HKCOMB_CA 64
886#define HKCOMB_SCA 128
887#define HKM_SETHOTKEY (WM_USER+1)
888#define HKM_GETHOTKEY (WM_USER+2)
889#define HKM_SETRULES (WM_USER+3)
890#define PBM_SETRANGE (WM_USER+1)
891#define PBM_SETPOS (WM_USER+2)
892#define PBM_DELTAPOS (WM_USER+3)
893#define PBM_SETSTEP (WM_USER+4)
894#define PBM_STEPIT (WM_USER+5)
895#define PBM_SETRANGE32 1030
896#define PBM_GETRANGE 1031
897#define PBM_GETPOS 1032
898#define PBM_SETBARCOLOR 1033
899#define PBM_SETBKCOLOR CCM_SETBKCOLOR
900#define PBS_SMOOTH 1
901#define PBS_VERTICAL 4
902#define LVS_ICON 0
903#define LVS_REPORT 1
904#define LVS_SMALLICON 2
905#define LVS_LIST 3
906#define LVS_TYPEMASK 3
907#define LVS_SINGLESEL 4
908#define LVS_SHOWSELALWAYS 8
909#define LVS_SORTASCENDING 16
910#define LVS_SORTDESCENDING 32
911#define LVS_SHAREIMAGELISTS 64
912#define LVS_NOLABELWRAP 128
913#define LVS_AUTOARRANGE 256
914#define LVS_EDITLABELS 512
915#define LVS_NOSCROLL 0x2000
916#define LVS_TYPESTYLEMASK 0xfc00
917#define LVS_ALIGNTOP 0
918#define LVS_ALIGNLEFT 0x800
919#define LVS_ALIGNMASK 0xc00
920#define LVS_OWNERDRAWFIXED 0x400
921#define LVS_NOCOLUMNHEADER 0x4000
922#define LVS_NOSORTHEADER 0x8000
923#if (_WIN32_IE >= 0x0300)
924#define CDIS_CHECKED 8
925#define CDIS_DEFAULT 32
926#define CDIS_DISABLED 4
927#define CDIS_FOCUS 16
928#define CDIS_GRAYED 2
929#define CDIS_HOT 64
930#define CDIS_SELECTED 1
931#define CDIS_MARKED 128
932#define CDIS_INDETERMINATE 256
933#if (_WIN32_WINNT >= 0x0501)
934#define CDIS_SHOWKEYBOARDCUES 512
935#endif
936#define CDDS_POSTERASE 4
937#define CDDS_POSTPAINT 2
938#define CDDS_PREERASE 3
939#define CDDS_PREPAINT 1
940#define CDDS_ITEM 65536
941#define CDDS_ITEMPOSTERASE 65540
942#define CDDS_ITEMPOSTPAINT 65538
943#define CDDS_ITEMPREERASE 65539
944#define CDDS_ITEMPREPAINT 65537
945#if (_WIN32_IE >= 0x0400)
946#define CDDS_SUBITEM 0x20000
947#endif
948#define CDRF_DODEFAULT 0x00
949#define CDRF_NOTIFYITEMDRAW 0x20
950#define CDRF_NOTIFYSUBITEMDRAW 0x20
951#define CDRF_NOTIFYITEMERASE 0x80
952#define CDRF_NOTIFYPOSTERASE 0x40
953#define CDRF_NOTIFYPOSTPAINT 0x10
954#define CDRF_NEWFONT 0x02
955#define CDRF_SKIPDEFAULT 0x04
956#if (_WIN32_IE >= 0x0400)
957#define LVBKIF_SOURCE_NONE 0x00000000
958#define LVBKIF_SOURCE_HBITMAP 0x00000001
959#define LVBKIF_SOURCE_URL 0x00000002
960#define LVBKIF_SOURCE_MASK 0x00000003
961#define LVBKIF_STYLE_NORMAL 0x00000000
962#define LVBKIF_STYLE_TILE 0x00000010
963#define LVBKIF_STYLE_MASK 0x00000010
964#endif /* _WIN32_IE >=0x0400 */
965#if (_WIN32_WINNT >= 0x501)
966#define LVBKIF_FLAG_TILEOFFSET 0x00000100
967#define LVBKIF_TYPE_WATERMARK 0x10000000
968#endif /* _WIN32_WINNT >= 0x501 */
969#define LVS_OWNERDATA 4096
970#define LVS_EX_CHECKBOXES 4
971#define LVS_EX_FULLROWSELECT 32
972#define LVS_EX_GRIDLINES 1
973#define LVS_EX_HEADERDRAGDROP 16
974#define LVS_EX_ONECLICKACTIVATE 64
975#define LVS_EX_SUBITEMIMAGES 2
976#define LVS_EX_TRACKSELECT 8
977#define LVS_EX_TWOCLICKACTIVATE 128
978#define LVSICF_NOINVALIDATEALL 0x00000001
979#define LVSICF_NOSCROLL 0x00000002
980#if( _WIN32_IE >= 0x0400 )
981#define LVS_EX_FLATSB 0x00000100
982#define LVS_EX_REGIONAL 0x00000200
983#define LVS_EX_INFOTIP 0x00000400
984#define LVS_EX_UNDERLINEHOT 0x00000800
985#define LVS_EX_UNDERLINECOLD 0x00001000
986#define LVS_EX_MULTIWORKAREAS 0x00002000
987#endif /* _WIN32_IE >=0x0400 */
988#if( _WIN32_IE >= 0x0500 )
989#define LVS_EX_LABELTIP 0x00004000
990#define LVS_EX_BORDERSELECT 0x00008000
991#endif /* _WIN32_IE >= 0x0500 */
992#endif /* _WIN32_IE >= 0x0300 */
993#define LVSIL_NORMAL 0
994#define LVSIL_SMALL 1
995#define LVSIL_STATE 2
996#define LVM_GETBKCOLOR LVM_FIRST
997#define LVM_SETBKCOLOR (LVM_FIRST+1)
998#define LVM_GETIMAGELIST (LVM_FIRST+2)
999#define LVM_SETIMAGELIST (LVM_FIRST+3)
1000#define LVM_GETITEMCOUNT (LVM_FIRST+4)
1001#define LVIF_TEXT 1
1002#define LVIF_IMAGE 2
1003#define LVIF_PARAM 4
1004#define LVIF_STATE 8
1005#if (_WIN32_IE >= 0x0300)
1006#define LVIF_INDENT 16
1007#define LVIF_NORECOMPUTE 2048
1008#endif
1009#if (_WIN32_WINNT >= 0x0501)
1010#define LVIF_GROUPID 128
1011#define LVIF_COLUMNS 256
1012#endif
1013#define LVIS_FOCUSED 1
1014#define LVIS_SELECTED 2
1015#define LVIS_CUT 4
1016#define LVIS_DROPHILITED 8
1017#define LVIS_OVERLAYMASK 0xF00
1018#define LVIS_STATEIMAGEMASK 0xF000
1019#define LPSTR_TEXTCALLBACKW ((LPWSTR)-1)
1020#define LPSTR_TEXTCALLBACKA ((LPSTR)-1)
1021#define I_IMAGECALLBACK (-1)
1022#define LVM_GETITEMA (LVM_FIRST+5)
1023#define LVM_GETITEMW (LVM_FIRST+75)
1024#define LVM_SETITEMA (LVM_FIRST+6)
1025#define LVM_SETITEMW (LVM_FIRST+76)
1026#define LVM_INSERTITEMA (LVM_FIRST+7)
1027#define LVM_INSERTITEMW (LVM_FIRST+77)
1028#define LVM_DELETEITEM (LVM_FIRST+8)
1029#define LVM_DELETEALLITEMS (LVM_FIRST+9)
1030#define LVM_GETCALLBACKMASK (LVM_FIRST+10)
1031#define LVM_SETCALLBACKMASK (LVM_FIRST+11)
1032#if( _WIN32_IE >= 0x0400 )
1033#define LVM_SETBKIMAGEA (LVM_FIRST + 68)
1034#define LVM_SETBKIMAGEW (LVM_FIRST + 138)
1035#define LVM_GETBKIMAGEA (LVM_FIRST + 69)
1036#define LVM_GETBKIMAGEW (LVM_FIRST + 139)
1037#define LV_MAX_WORKAREAS 16
1038#define LVM_SETWORKAREAS (LVM_FIRST+65)
1039#define LVM_GETWORKAREAS (LVM_FIRST+70)
1040#define LVM_GETNUMBEROFWORKAREAS (LVM_FIRST+73)
1041#define LVM_GETSELECTIONMARK (LVM_FIRST+66)
1042#define LVM_SETSELECTIONMARK (LVM_FIRST+67)
1043#define LVM_SETHOVERTIME (LVM_FIRST+71)
1044#define LVM_GETHOVERTIME (LVM_FIRST+72)
1045#define LVM_SETTOOLTIPS (LVM_FIRST+74)
1046#define LVM_GETTOOLTIPS (LVM_FIRST+78)
1047#define LVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
1048#define LVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
1049#endif /* _WIN32_IE >= 0x0400 */
1050#define LVNI_ALL 0
1051#define LVNI_FOCUSED 1
1052#define LVNI_SELECTED 2
1053#define LVNI_CUT 4
1054#define LVNI_DROPHILITED 8
1055#define LVNI_ABOVE 256
1056#define LVNI_BELOW 512
1057#define LVNI_TOLEFT 1024
1058#define LVNI_TORIGHT 2048
1059#define LVM_GETNEXTITEM (LVM_FIRST+12)
1060#define LVFI_PARAM 1
1061#define LVFI_STRING 2
1062#define LVFI_PARTIAL 8
1063#define LVFI_WRAP 32
1064#define LVFI_NEARESTXY 64
1065#define LVIF_DI_SETITEM 0x1000
1066#define LVM_FINDITEMA (LVM_FIRST+13)
1067#define LVM_FINDITEMW (LVM_FIRST+83)
1068#define LVIR_BOUNDS 0
1069#define LVIR_ICON 1
1070#define LVIR_LABEL 2
1071#define LVIR_SELECTBOUNDS 3
1072#define LVM_GETITEMRECT (LVM_FIRST+14)
1073#define LVM_SETITEMPOSITION (LVM_FIRST+15)
1074#define LVM_GETITEMPOSITION (LVM_FIRST+16)
1075#define LVM_GETSTRINGWIDTHA (LVM_FIRST+17)
1076#define LVM_GETSTRINGWIDTHW (LVM_FIRST+87)
1077#define LVHT_NOWHERE 1
1078#define LVHT_ONITEMICON 2
1079#define LVHT_ONITEMLABEL 4
1080#define LVHT_ONITEMSTATEICON 8
1081#define LVHT_ONITEM (LVHT_ONITEMICON|LVHT_ONITEMLABEL|LVHT_ONITEMSTATEICON)
1082#define LVHT_ABOVE 8
1083#define LVHT_BELOW 16
1084#define LVHT_TORIGHT 32
1085#define LVHT_TOLEFT 64
1086#define LVM_HITTEST (LVM_FIRST+18)
1087#define LVM_ENSUREVISIBLE (LVM_FIRST+19)
1088#define LVM_SCROLL (LVM_FIRST+20)
1089#define LVM_REDRAWITEMS (LVM_FIRST+21)
1090#define LVA_DEFAULT 0
1091#define LVA_ALIGNLEFT 1
1092#define LVA_ALIGNTOP 2
1093#define LVA_SNAPTOGRID 5
1094#define LVM_ARRANGE (LVM_FIRST+22)
1095#define LVM_EDITLABELA (LVM_FIRST+23)
1096#define LVM_EDITLABELW (LVM_FIRST+118)
1097#define LVM_GETEDITCONTROL (LVM_FIRST+24)
1098#define LVCF_FMT 1
1099#define LVCF_WIDTH 2
1100#define LVCF_TEXT 4
1101#define LVCF_SUBITEM 8
1102#if (_WIN32_IE >= 0x0300)
1103#define LVCF_IMAGE 16
1104#define LVCF_ORDER 32
1105#endif
1106#define LVCFMT_LEFT 0
1107#define LVCFMT_RIGHT 1
1108#define LVCFMT_CENTER 2
1109#define LVCFMT_JUSTIFYMASK 3
1110#if (_WIN32_IE >= 0x0300)
1111#define LVCFMT_BITMAP_ON_RIGHT 4096
1112#define LVCFMT_COL_HAS_IMAGES 32768
1113#define LVCFMT_IMAGE 2048
1114#endif
1115#define LVM_GETCOLUMNA (LVM_FIRST+25)
1116#define LVM_GETCOLUMNW (LVM_FIRST+95)
1117#define LVM_SETCOLUMNA (LVM_FIRST+26)
1118#define LVM_SETCOLUMNW (LVM_FIRST+96)
1119#define LVM_INSERTCOLUMNA (LVM_FIRST+27)
1120#define LVM_INSERTCOLUMNW (LVM_FIRST+97)
1121#define LVM_DELETECOLUMN (LVM_FIRST+28)
1122#define LVM_GETCOLUMNWIDTH (LVM_FIRST+29)
1123#define LVSCW_AUTOSIZE (-1)
1124#define LVSCW_AUTOSIZE_USEHEADER (-2)
1125#define LVM_SETCOLUMNWIDTH (LVM_FIRST+30)
1126#define LVM_CREATEDRAGIMAGE (LVM_FIRST+33)
1127#define LVM_GETVIEWRECT (LVM_FIRST+34)
1128#define LVM_GETTEXTCOLOR (LVM_FIRST+35)
1129#define LVM_SETTEXTCOLOR (LVM_FIRST+36)
1130#define LVM_GETTEXTBKCOLOR (LVM_FIRST+37)
1131#define LVM_SETTEXTBKCOLOR (LVM_FIRST+38)
1132#define LVM_GETTOPINDEX (LVM_FIRST+39)
1133#define LVM_GETCOUNTPERPAGE (LVM_FIRST+40)
1134#define LVM_GETORIGIN (LVM_FIRST+41)
1135#define LVM_GETORIGIN (LVM_FIRST+41)
1136#define LVM_UPDATE (LVM_FIRST+42)
1137#define LVM_SETITEMSTATE (LVM_FIRST+43)
1138#define LVM_GETITEMSTATE (LVM_FIRST+44)
1139#define LVM_GETITEMTEXTA (LVM_FIRST+45)
1140#define LVM_GETITEMTEXTW (LVM_FIRST+115)
1141#define LVM_SETITEMTEXTA (LVM_FIRST+46)
1142#define LVM_SETITEMTEXTW (LVM_FIRST+116)
1143#define LVM_SETITEMCOUNT (LVM_FIRST+47)
1144#define LVM_SORTITEMS (LVM_FIRST+48)
1145#define LVM_SETITEMPOSITION32 (LVM_FIRST+49)
1146#define LVM_GETSELECTEDCOUNT (LVM_FIRST+50)
1147#define LVM_GETITEMSPACING (LVM_FIRST+51)
1148#define LVM_GETISEARCHSTRINGA (LVM_FIRST+52)
1149#define LVM_GETISEARCHSTRINGW (LVM_FIRST+117)
1150#if (_WIN32_IE >= 0x0300)
1151#define LVM_APPROXIMATEVIEWRECT (LVM_FIRST+64)
1152#define LVM_SETEXTENDEDLISTVIEWSTYLE (LVM_FIRST+54)
1153#define LVM_GETEXTENDEDLISTVIEWSTYLE (LVM_FIRST+55)
1154#define LVM_SETCOLUMNORDERARRAY (LVM_FIRST+58)
1155#define LVM_GETCOLUMNORDERARRAY (LVM_FIRST+59)
1156#define LVM_GETHEADER (LVM_FIRST+31)
1157#define LVM_GETHOTCURSOR (LVM_FIRST+63)
1158#define LVM_GETHOTITEM (LVM_FIRST+61)
1159#define LVM_GETSUBITEMRECT (LVM_FIRST+56)
1160#define LVM_SETHOTCURSOR (LVM_FIRST+62)
1161#define LVM_SETHOTITEM (LVM_FIRST+60)
1162#define LVM_SETICONSPACING (LVM_FIRST+53)
1163#define LVM_SUBITEMHITTEST (LVM_FIRST+57)
1164#endif
1165#define LVN_ITEMCHANGING LVN_FIRST
1166#define LVN_ITEMCHANGED (LVN_FIRST-1)
1167#define LVN_INSERTITEM (LVN_FIRST-2)
1168#define LVN_DELETEITEM (LVN_FIRST-3)
1169#define LVN_DELETEALLITEMS (LVN_FIRST-4)
1170#define LVN_BEGINLABELEDITA (LVN_FIRST-5)
1171#define LVN_BEGINLABELEDITW (LVN_FIRST-75)
1172#define LVN_ENDLABELEDITA (LVN_FIRST-6)
1173#define LVN_ENDLABELEDITW (LVN_FIRST-76)
1174#define LVN_COLUMNCLICK (LVN_FIRST-8)
1175#define LVN_BEGINDRAG (LVN_FIRST-9)
1176#define LVN_BEGINRDRAG (LVN_FIRST-11)
1177#define LVN_GETDISPINFOA (LVN_FIRST-50)
1178#define LVN_GETDISPINFOW (LVN_FIRST-77)
1179#define LVN_SETDISPINFOA (LVN_FIRST-51)
1180#define LVN_SETDISPINFOW (LVN_FIRST-78)
1181#define LVN_KEYDOWN (LVN_FIRST-55)
1182#if (_WIN32_IE >= 0x0400)
1183#define LVN_GETINFOTIPA (LVN_FIRST-57)
1184#define LVN_GETINFOTIPW (LVN_FIRST-58)
1185#define LVKF_ALT 0x0001
1186#define LVKF_CONTROL 0x0002
1187#define LVKF_SHIFT 0x0004
1188#define LVGIT_UNFOLDED 1
1189#endif
1190#define TVS_HASBUTTONS 1
1191#define TVS_HASLINES 2
1192#define TVS_LINESATROOT 4
1193#define TVS_EDITLABELS 8
1194#define TVS_DISABLEDRAGDROP 16
1195#define TVS_SHOWSELALWAYS 32
1196#if (_WIN32_IE >= 0x0300)
1197#define TVS_CHECKBOXES 256
1198#define TVS_NOTOOLTIPS 128
1199#define TVS_RTLREADING 64
1200#define TVS_TRACKSELECT 512
1201#endif
1202#if (_WIN32_IE >= 0x0400)
1203#define TVS_FULLROWSELECT 4096
1204#define TVS_INFOTIP 2048
1205#define TVS_NONEVENHEIGHT 16384
1206#define TVS_NOSCROLL 8192
1207#define TVS_SINGLEEXPAND 1024
1208#endif
1209#if( _WIN32_IE >= 0x0500 )
1210#define TVS_NOHSCROLL 0x8000
1211#endif /* _WIN32_IE >= 0x0500 */
1212#define TVIF_TEXT 1
1213#define TVIF_IMAGE 2
1214#define TVIF_PARAM 4
1215#define TVIF_STATE 8
1216#define TVIF_HANDLE 16
1217#define TVIF_SELECTEDIMAGE 32
1218#define TVIF_CHILDREN 64
1219#if (_WIN32_IE >= 0x0400)
1220#define TVIF_INTEGRAL 0x0080
1221#endif /* _WIN32_IE >= 0x0400 */
1222#define TVIS_FOCUSED 1
1223#define TVIS_SELECTED 2
1224#define TVIS_CUT 4
1225#define TVIS_DROPHILITED 8
1226#define TVIS_BOLD 16
1227#define TVIS_EXPANDED 32
1228#define TVIS_EXPANDEDONCE 64
1229#define TVIS_OVERLAYMASK 0xF00
1230#define TVIS_STATEIMAGEMASK 0xF000
1231#define TVIS_USERMASK 0xF000
1232#define I_CHILDRENCALLBACK (-1)
1233#define TVI_ROOT ((HTREEITEM)0xFFFF0000)
1234#define TVI_FIRST ((HTREEITEM)0xFFFF0001)
1235#define TVI_LAST ((HTREEITEM)0xFFFF0002)
1236#define TVI_SORT ((HTREEITEM)0xFFFF0003)
1237#define TVSIL_NORMAL 0
1238#define TVSIL_STATE 2
1239#define TVM_INSERTITEMA TV_FIRST
1240#define TVM_INSERTITEMW (TV_FIRST+50)
1241#define TVM_DELETEITEM (TV_FIRST+1)
1242#define TVM_EXPAND (TV_FIRST+2)
1243#define TVM_GETITEMRECT (TV_FIRST+4)
1244#define TVM_GETCOUNT (TV_FIRST+5)
1245#define TVM_GETINDENT (TV_FIRST+6)
1246#define TVM_SETINDENT (TV_FIRST+7)
1247#define TVM_GETIMAGELIST (TV_FIRST+8)
1248#define TVM_SETIMAGELIST (TV_FIRST+9)
1249#define TVM_GETNEXTITEM (TV_FIRST+10)
1250#define TVM_SELECTITEM (TV_FIRST+11)
1251#define TVM_GETITEMA (TV_FIRST+12)
1252#define TVM_GETITEMW (TV_FIRST+62)
1253#define TVM_SETITEMA (TV_FIRST+13)
1254#define TVM_SETITEMW (TV_FIRST+63)
1255#define TVM_EDITLABELA (TV_FIRST+14)
1256#define TVM_EDITLABELW (TV_FIRST+65)
1257#define TVM_GETEDITCONTROL (TV_FIRST+15)
1258#define TVM_GETVISIBLECOUNT (TV_FIRST+16)
1259#define TVM_HITTEST (TV_FIRST+17)
1260#define TVM_CREATEDRAGIMAGE (TV_FIRST+18)
1261#define TVM_SORTCHILDREN (TV_FIRST+19)
1262#define TVM_ENSUREVISIBLE (TV_FIRST+20)
1263#define TVM_SORTCHILDRENCB (TV_FIRST+21)
1264#define TVM_ENDEDITLABELNOW (TV_FIRST+22)
1265#define TVM_GETISEARCHSTRINGA (TV_FIRST+23)
1266#define TVM_GETISEARCHSTRINGW (TV_FIRST+64)
1267#if (_WIN32_IE >= 0x0300)
1268#define TVM_GETTOOLTIPS (TV_FIRST+25)
1269#define TVM_SETTOOLTIPS (TV_FIRST+24)
1270#endif
1271#if (_WIN32_IE >= 0x0400)
1272#define TVM_GETBKCOLOR (TV_FIRST+31)
1273#define TVM_GETINSERTMARKCOLOR (TV_FIRST+38)
1274#define TVM_GETITEMHEIGHT (TV_FIRST+28)
1275#define TVM_GETSCROLLTIME (TV_FIRST+34)
1276#define TVM_GETTEXTCOLOR (TV_FIRST+32)
1277#define TVM_SETBKCOLOR (TV_FIRST+29)
1278#define TVM_SETINSERTMARK (TV_FIRST+26)
1279#define TVM_SETINSERTMARKCOLOR (TV_FIRST+37)
1280#define TVM_SETITEMHEIGHT (TV_FIRST+27)
1281#define TVM_SETSCROLLTIME (TV_FIRST+33)
1282#define TVM_SETTEXTCOLOR (TV_FIRST+30)
1283#define TVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
1284#define TVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
1285#endif
1286#if (_WIN32_IE >= 0x0500)
1287#define TVM_GETITEMSTATE (TV_FIRST+39)
1288#define TVM_SETLINECOLOR (TV_FIRST+40)
1289#define TVM_GETLINECOLOR (TV_FIRST+41)
1290#endif
1291#define TVE_COLLAPSE 1
1292#define TVE_EXPAND 2
1293#define TVE_TOGGLE 3
1294#define TVE_COLLAPSERESET 0x8000
1295#if (_WIN32_IE >= 0x0300)
1296#define TVE_EXPANDPARTIAL 0x4000
1297#endif
1298#define TVC_UNKNOWN 0
1299#define TVC_BYMOUSE 1
1300#define TVC_BYKEYBOARD 2
1301#define TVGN_ROOT 0
1302#define TVGN_NEXT 1
1303#define TVGN_PREVIOUS 2
1304#define TVGN_PARENT 3
1305#define TVGN_CHILD 4
1306#define TVGN_FIRSTVISIBLE 5
1307#define TVGN_NEXTVISIBLE 6
1308#define TVGN_PREVIOUSVISIBLE 7
1309#define TVGN_DROPHILITE 8
1310#define TVGN_CARET 9
1311#if (_WIN32_IE >= 0x0400)
1312#define TVGN_LASTVISIBLE 10
1313#endif
1314#define TVN_SELCHANGINGA (TVN_FIRST-1)
1315#define TVN_SELCHANGINGW (TVN_FIRST-50)
1316#define TVN_SELCHANGEDA (TVN_FIRST-2)
1317#define TVN_SELCHANGEDW (TVN_FIRST-51)
1318#define TVN_GETDISPINFOA (TVN_FIRST-3)
1319#define TVN_GETDISPINFOW (TVN_FIRST-52)
1320#define TVN_SETDISPINFOA (TVN_FIRST-4)
1321#define TVN_SETDISPINFOW (TVN_FIRST-53)
1322#define TVN_ITEMEXPANDINGA (TVN_FIRST-5)
1323#define TVN_ITEMEXPANDINGW (TVN_FIRST-54)
1324#define TVN_ITEMEXPANDEDA (TVN_FIRST-6)
1325#define TVN_ITEMEXPANDEDW (TVN_FIRST-55)
1326#define TVN_BEGINDRAGA (TVN_FIRST-7)
1327#define TVN_BEGINDRAGW (TVN_FIRST-56)
1328#define TVN_BEGINRDRAGA (TVN_FIRST-8)
1329#define TVN_BEGINRDRAGW (TVN_FIRST-57)
1330#define TVN_DELETEITEMA (TVN_FIRST-9)
1331#define TVN_DELETEITEMW (TVN_FIRST-58)
1332#define TVN_BEGINLABELEDITA (TVN_FIRST-10)
1333#define TVN_BEGINLABELEDITW (TVN_FIRST-59)
1334#define TVN_ENDLABELEDITA (TVN_FIRST-11)
1335#define TVN_ENDLABELEDITW (TVN_FIRST-60)
1336#define TVN_KEYDOWN (TVN_FIRST-12)
1337#if (_WIN32_IE >= 0x0400)
1338#define TVN_GETINFOTIPA (TVN_FIRST-13)
1339#define TVN_GETINFOTIPW (TVN_FIRST-14)
1340#define TVN_SINGLEEXPAND (TVN_FIRST-15)
1341#define TVNRET_DEFAULT 0
1342#define TVNRET_SKIPOLD 1
1343#define TVNRET_SKIPNEW 2
1344#endif /* _WIN32_IE >= 0x0400 */
1345#define TVIF_DI_SETITEM 0x1000
1346#define TVHT_NOWHERE 1
1347#define TVHT_ONITEMICON 2
1348#define TVHT_ONITEMLABEL 4
1349#define TVHT_ONITEM (TVHT_ONITEMICON|TVHT_ONITEMLABEL|TVHT_ONITEMSTATEICON)
1350#define TVHT_ONITEMINDENT 8
1351#define TVHT_ONITEMBUTTON 16
1352#define TVHT_ONITEMRIGHT 32
1353#define TVHT_ONITEMSTATEICON 64
1354#define TVHT_ABOVE 256
1355#define TVHT_BELOW 512
1356#define TVHT_TORIGHT 1024
1357#define TVHT_TOLEFT 2048
1358#define TCHT_NOWHERE 1
1359#define TCHT_ONITEMICON 2
1360#define TCHT_ONITEMLABEL 4
1361#define TCHT_ONITEM (TCHT_ONITEMICON|TCHT_ONITEMLABEL)
1362#define TCS_FORCEICONLEFT 16
1363#define TCS_FORCELABELLEFT 32
1364#define TCS_TABS 0
1365#define TCS_BUTTONS 256
1366#define TCS_SINGLELINE 0
1367#define TCS_MULTILINE 512
1368#define TCS_RIGHTJUSTIFY 0
1369#define TCS_FIXEDWIDTH 1024
1370#define TCS_RAGGEDRIGHT 2048
1371#define TCS_FOCUSONBUTTONDOWN 0x1000
1372#define TCS_OWNERDRAWFIXED 0x2000
1373#define TCS_TOOLTIPS 0x4000
1374#define TCS_FOCUSNEVER 0x8000
1375#if (_WIN32_IE >= 0x0300)
1376#define TCS_BOTTOM 2
1377#define TCS_RIGHT 2
1378#define TCS_VERTICAL 128
1379#define TCS_SCROLLOPPOSITE 0x0001
1380#define TCS_HOTTRACK 0x0040
1381#define TCS_MULTISELECT 0x0004
1382#endif
1383#if( _WIN32_IE >= 0x0400 )
1384#define TCS_FLATBUTTONS 0x0008
1385#define TCS_EX_FLATSEPARATORS 0x00000001
1386#define TCS_EX_REGISTERDROP 0x00000002
1387#endif /* _WIN32_IE >= 0x0400 */
1388#define TCIF_TEXT 1
1389#define TCIF_IMAGE 2
1390#define TCIF_RTLREADING 4
1391#define TCIF_PARAM 8
1392#if (_WIN32_IE >= 0x0400)
1393#define TCIF_STATE 16
1394#endif
1395#define TCIS_BUTTONPRESSED 1
1396#if (_WIN32_IE >= 0x0400)
1397#define TCIS_HIGHLIGHTED 2
1398#endif
1399#define TCM_FIRST 0x1300
1400#define TCM_GETIMAGELIST (TCM_FIRST+2)
1401#define TCM_SETIMAGELIST (TCM_FIRST+3)
1402#define TCM_GETITEMCOUNT (TCM_FIRST+4)
1403#define TCM_GETITEMA (TCM_FIRST+5)
1404#define TCM_GETITEMW (TCM_FIRST+60)
1405#define TCM_SETITEMA (TCM_FIRST+6)
1406#define TCM_SETITEMW (TCM_FIRST+61)
1407#define TCM_INSERTITEMA (TCM_FIRST+7)
1408#define TCM_INSERTITEMW (TCM_FIRST+62)
1409#define TCM_DELETEITEM (TCM_FIRST+8)
1410#define TCM_DELETEALLITEMS (TCM_FIRST+9)
1411#define TCM_GETITEMRECT (TCM_FIRST+10)
1412#define TCM_GETCURSEL (TCM_FIRST+11)
1413#define TCM_SETCURSEL (TCM_FIRST+12)
1414#define TCM_HITTEST (TCM_FIRST+13)
1415#define TCM_SETITEMEXTRA (TCM_FIRST+14)
1416
1417#define TCM_ADJUSTRECT (TCM_FIRST+40)
1418#define TCM_SETITEMSIZE (TCM_FIRST+41)
1419#define TCM_REMOVEIMAGE (TCM_FIRST+42)
1420#define TCM_SETPADDING (TCM_FIRST+43)
1421#define TCM_GETROWCOUNT (TCM_FIRST+44)
1422#define TCM_GETTOOLTIPS (TCM_FIRST+45)
1423#define TCM_SETTOOLTIPS (TCM_FIRST+46)
1424#define TCM_GETCURFOCUS (TCM_FIRST+47)
1425#define TCM_SETCURFOCUS (TCM_FIRST+48)
1426#define TCM_SETMINTABWIDTH (TCM_FIRST + 49)
1427#define TCM_DESELECTALL (TCM_FIRST + 50)
1428#if (_WIN32_IE >=0x0400)
1429#define TCM_HIGHLIGHTITEM (TCM_FIRST + 51)
1430#define TCM_SETEXTENDEDSTYLE (TCM_FIRST + 52)
1431#define TCM_GETEXTENDEDSTYLE (TCM_FIRST + 53)
1432#define TCM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
1433#define TCM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
1434#endif /* _WIN32_IE >=0x0400 */
1435#define TCN_KEYDOWN TCN_FIRST
1436#define TCN_SELCHANGE (TCN_FIRST-1)
1437#define TCN_SELCHANGING (TCN_FIRST-2)
1438#define NM_OUTOFMEMORY (NM_FIRST-1)
1439#define NM_CLICK (NM_FIRST-2)
1440#define NM_DBLCLK (NM_FIRST-3)
1441#define NM_RETURN (NM_FIRST-4)
1442#define NM_RCLICK (NM_FIRST-5)
1443#define NM_RDBLCLK (NM_FIRST-6)
1444#define NM_SETFOCUS (NM_FIRST-7)
1445#define NM_KILLFOCUS (NM_FIRST-8)
1446#define NM_CUSTOMDRAW (NM_FIRST-12)
1447#define NM_HOVER (NM_FIRST-13)
1448#define NM_NCHITTEST (NM_FIRST-14)
1449#define NM_KEYDOWN (NM_FIRST-15)
1450#define NM_RELEASEDCAPTURE (NM_FIRST-16)
1451#define NM_SETCURSOR (NM_FIRST-17)
1452#define NM_CHAR (NM_FIRST-18)
1453#define NM_TOOLTIPSCREATED (NM_FIRST-19)
1454#define SBARS_SIZEGRIP 256
1455#define CCM_FIRST 0x2000
1456#define CCM_LAST (CCM_FIRST+0x200)
1457#define CCM_SETBKCOLOR 8193
1458#define CCM_SETCOLORSCHEME 8194
1459#define CCM_GETCOLORSCHEME 8195
1460#define CCM_GETDROPTARGET 8196
1461#define CCM_SETUNICODEFORMAT 8197
1462#define CCM_GETUNICODEFORMAT 8198
1463#define CCM_SETVERSION 0x2007
1464#define CCM_GETVERSION 0x2008
1465#define CCM_SETNOTIFYWINDOW 0x2009
1466#if (_WIN32_WINNT >= 0x0501)
1467#define CCM_SETWINDOWTHEME 0x200b
1468#define CCM_DPISCALE 0x200c
1469#endif
1470#define ICC_LISTVIEW_CLASSES 1
1471#define ICC_TREEVIEW_CLASSES 2
1472#define ICC_BAR_CLASSES 4
1473#define ICC_TAB_CLASSES 8
1474#define ICC_UPDOWN_CLASS 16
1475#define ICC_PROGRESS_CLASS 32
1476#define ICC_HOTKEY_CLASS 64
1477#define ICC_ANIMATE_CLASS 128
1478#define ICC_WIN95_CLASSES 255
1479#define ICC_DATE_CLASSES 256
1480#define ICC_USEREX_CLASSES 512
1481#define ICC_COOL_CLASSES 1024
1482#if (_WIN32_IE >= 0x0400)
1483#define ICC_INTERNET_CLASSES 2048
1484#define ICC_PAGESCROLLER_CLASS 4096
1485#define ICC_NATIVEFNTCTL_CLASS 8192
1486#define INFOTIPSIZE 1024
1487#endif /* _WIN32_IE */
1488#if (_WIN32_WINNT >= 0x501)
1489#define ICC_STANDARD_CLASSES 0x00004000
1490#define ICC_LINK_CLASS 0x00008000
1491#endif
1492#define GDTR_MIN 1
1493#define GDTR_MAX 2
1494#define GMR_VISIBLE 0
1495#define GMR_DAYSTATE 1
1496#define GDT_ERROR -1
1497#define GDT_VALID 0
1498#define GDT_NONE 1
1499#define DTS_UPDOWN 1
1500#define DTS_SHOWNONE 2
1501#define DTS_SHORTDATEFORMAT 0
1502#define DTS_LONGDATEFORMAT 4
1503#define DTS_TIMEFORMAT 9
1504#define DTS_APPCANPARSE 16
1505#define DTS_RIGHTALIGN 32
1506#if ( _WIN32_IE >= 0x500 )
1507#define DTS_SHORTDATECENTURYFORMAT 0x000C
1508#endif /* _WIN32_IE >= 0x500 */
1509#define MCS_DAYSTATE 1
1510#define MCS_MULTISELECT 2
1511#define MCS_WEEKNUMBERS 4
1512#if (_WIN32_IE >= 0x0400)
1513#define MCS_NOTODAYCIRCLE 0x0008
1514#define MCS_NOTODAY 0x0010
1515#else /* _WIN32_IE >= 0x0400 */
1516#define MCS_NOTODAY 0x0008
1517#endif /* _WIN32_IE >= 0x0400 */
1518#define DTM_GETSYSTEMTIME 0x1001
1519#define DTM_SETSYSTEMTIME 0x1002
1520#define DTM_GETRANGE 0x1003
1521#define DTM_SETRANGE 0x1004
1522#define DTM_SETFORMATA 0x1005
1523#define DTM_SETFORMATW 0x1050
1524#define DTM_SETMCCOLOR 0x1006
1525#define DTM_GETMCCOLOR 0x1007
1526#define DTM_GETMONTHCAL 0x1008
1527#define DTM_SETMCFONT 0x1009
1528#define DTM_GETMCFONT 0x100a
1529#define DTN_USERSTRINGA ((UINT)-758)
1530#define DTN_USERSTRINGW ((UINT)-745)
1531#define DTN_WMKEYDOWNA ((UINT)-757)
1532#define DTN_WMKEYDOWNW ((UINT)-744)
1533#define DTN_FORMATA ((UINT)-756)
1534#define DTN_FORMATW ((UINT)-743)
1535#define DTN_FORMATQUERYA ((UINT)-755)
1536#define DTN_FORMATQUERYW ((UINT)-742)
1537#define DTN_DROPDOWN ((UINT)-754)
1538#define DTN_CLOSEUP ((UINT)-753)
1539#define DTN_DATETIMECHANGE ((UINT)-759)
1540#define MCM_GETCURSEL 0x1001
1541#define MCM_SETCURSEL 0x1002
1542#define MCM_GETMAXSELCOUNT 0x1003
1543#define MCM_SETMAXSELCOUNT 0x1004
1544#define MCM_GETSELRANGE 0x1005
1545#define MCM_SETSELRANGE 0x1006
1546#define MCM_GETMONTHRANGE 0x1007
1547#define MCM_SETDAYSTATE 0x1008
1548#define MCM_GETMINREQRECT 0x1009
1549#define MCM_SETCOLOR 0x100a
1550#define MCM_GETCOLOR 0x100b
1551#define MCM_SETTODAY 0x100c
1552#define MCM_GETTODAY 0x100d
1553#define MCM_HITTEST 0x100e
1554#define MCM_SETFIRSTDAYOFWEEK 0x100f
1555#define MCM_GETFIRSTDAYOFWEEK 0x1010
1556#define MCM_GETRANGE 0x1011
1557#define MCM_SETRANGE 0x1012
1558#define MCM_GETMONTHDELTA 0x1013
1559#define MCM_SETMONTHDELTA 0x1014
1560#define MCM_GETMAXTODAYWIDTH 0x1015
1561#define MCM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
1562#define MCM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
1563#define MCN_SELCHANGE ((UINT)-749)
1564#define MCN_GETDAYSTATE ((UINT)-747)
1565#define MCN_SELECT ((UINT)-746)
1566#define ODT_HEADER 100
1567#define ODT_TAB 101
1568#define ODT_LISTVIEW 102
1569#define SB_SETBKCOLOR 0x2001
1570#if (_WIN32_IE >= 0x0300)
1571#define SB_ISSIMPLE 1038
1572#define MCSC_BACKGROUND 0
1573#define MCSC_TEXT 1
1574#define MCSC_TITLEBK 2
1575#define MCSC_TITLETEXT 3
1576#define MCSC_MONTHBK 4
1577#define MCSC_TRAILINGTEXT 5
1578#endif
1579#if (_WIN32_IE >= 0x0400)
1580#define MCHT_TITLE 0x10000
1581#define MCHT_CALENDAR 0x20000
1582#define MCHT_TODAYLINK 0x30000
1583#define MCHT_NEXT 0x1000000
1584#define MCHT_PREV 0x2000000
1585#define MCHT_NOWHERE 0x00
1586#define MCHT_TITLEBK (MCHT_TITLE)
1587#define MCHT_TITLEMONTH (MCHT_TITLE | 0x0001)
1588#define MCHT_TITLEYEAR (MCHT_TITLE | 0x0002)
1589#define MCHT_TITLEBTNNEXT (MCHT_TITLE | MCHT_NEXT | 0x0003)
1590#define MCHT_TITLEBTNPREV (MCHT_TITLE | MCHT_PREV | 0x0003)
1591#define MCHT_CALENDARBK (MCHT_CALENDAR)
1592#define MCHT_CALENDARDATE (MCHT_CALENDAR | 0x0001)
1593#define MCHT_CALENDARDATENEXT (MCHT_CALENDARDATE | MCHT_NEXT)
1594#define MCHT_CALENDARDATEPREV (MCHT_CALENDARDATE | MCHT_PREV)
1595#define MCHT_CALENDARDAY (MCHT_CALENDAR | 0x0002)
1596#define MCHT_CALENDARWEEKNUM (MCHT_CALENDAR | 0x0003)
1597#endif /* _WIN32_IE >= 0x0400 */
1598#define RBS_TOOLTIPS 256
1599#define RBS_VARHEIGHT 512
1600#define RBS_BANDBORDERS 1024
1601#define RBS_FIXEDORDER 2048
1602#define RBIM_IMAGELIST 1
1603#define RB_SETCOLORSCHEME CCM_SETCOLORSCHEME
1604#define RB_GETCOLORSCHEME CCM_GETCOLORSCHEME
1605#define RBBS_BREAK 0x0001
1606#define RBBS_FIXEDSIZE 0x0002
1607#define RBBS_CHILDEDGE 0x0004
1608#define RBBS_HIDDEN 0x0008
1609#define RBBS_NOVERT 0x0010
1610#define RBBS_FIXEDBMP 0x0020
1611#define RBBS_VARIABLEHEIGHT 0x0040
1612#define RBBS_GRIPPERALWAYS 0x0080
1613#define RBBS_NOGRIPPER 0x0100
1614#if (_WIN32_IE >= 0x0500)
1615#define RBBS_USECHEVRON 0x0200
1616#if (_WIN32_IE >= 0x0501)
1617#define RBBS_HIDETITLE 0x0400
1618#define RBBS_TOPALIGN 0x0800
1619#endif /* _WIN32_IE >= 0x0501 */
1620#endif /* _WIN32_IE >= 0x0500 */
1621#define RBBIM_STYLE 1
1622#define RBBIM_COLORS 2
1623#define RBBIM_TEXT 4
1624#define RBBIM_IMAGE 8
1625#define RBBIM_CHILD 16
1626#define RBBIM_CHILDSIZE 32
1627#define RBBIM_SIZE 64
1628#define RBBIM_BACKGROUND 128
1629#define RBBIM_ID 256
1630#define RB_INSERTBANDA (WM_USER+1)
1631#define RB_INSERTBANDW (WM_USER+10)
1632#define RB_DELETEBAND (WM_USER+2)
1633#define RB_GETBARINFO (WM_USER+3)
1634#define RB_SETBARINFO (WM_USER+4)
1635#define RB_GETBANDCOUNT (WM_USER+12)
1636#define RB_GETROWCOUNT (WM_USER+13)
1637#define RB_GETROWHEIGHT (WM_USER+14)
1638#define RB_SETBANDINFOA (WM_USER+6)
1639#define RB_SETBANDINFOW (WM_USER+11)
1640#define RB_SETPARENT (WM_USER+7)
1641#define RBN_HEIGHTCHANGE RBN_FIRST
1642#if (_WIN32_IE >= 0x0300)
1643#define LVN_ODCACHEHINT (LVN_FIRST-13)
1644#define LVN_ODFINDITEMA (LVN_FIRST-52)
1645#define LVN_ODFINDITEMW (LVN_FIRST-79)
1646#define LVN_ITEMACTIVATE (LVN_FIRST-14)
1647#define LVN_ODSTATECHANGED (LVN_FIRST-15)
1648#ifdef UNICODE
1649#define LVN_ODFINDITEM LVN_ODFINDITEMW
1650#else
1651#define LVN_ODFINDITEM LVN_ODFINDITEMA
1652#endif
1653#endif /* _WIN32_IE */
1654#if (_WIN32_IE >= 0x0400)
1655#define SB_SETICON 1039
1656#define SB_SETTIPTEXTA 1040
1657#define SB_SETTIPTEXTW 1041
1658#define SB_GETTIPTEXTA 1042
1659#define SB_GETTIPTEXTW 1043
1660#define SB_GETICON 1044
1661#define SB_SETUNICODEFORMAT 0x2005
1662#define SB_GETUNICODEFORMAT 0x2006
1663#define PGF_INVISIBLE 0
1664#define PGF_NORMAL 1
1665#define PGF_GRAYED 2
1666#define PGF_DEPRESSED 4
1667#define PGF_HOT 8
1668#define PGB_TOPORLEFT 0
1669#define PGB_BOTTOMORRIGHT 1
1670#define PGF_SCROLLUP 1
1671#define PGF_SCROLLDOWN 2
1672#define PGF_SCROLLLEFT 4
1673#define PGF_SCROLLRIGHT 8
1674#define PGK_SHIFT 1
1675#define PGK_CONTROL 2
1676#define PGK_MENU 4
1677#define PGF_CALCWIDTH 1
1678#define PGF_CALCHEIGHT 2
1679#define PGM_FIRST 0x1400
1680#define PGM_SETCHILD (PGM_FIRST+1)
1681#define PGM_RECALCSIZE (PGM_FIRST+2)
1682#define PGM_FORWARDMOUSE (PGM_FIRST+3)
1683#define PGM_SETBKCOLOR (PGM_FIRST+4)
1684#define PGM_GETBKCOLOR (PGM_FIRST+5)
1685#define PGM_SETBORDER (PGM_FIRST+6)
1686#define PGM_GETBORDER (PGM_FIRST+7)
1687#define PGM_SETPOS (PGM_FIRST+8)
1688#define PGM_GETPOS (PGM_FIRST+9)
1689#define PGM_SETBUTTONSIZE (PGM_FIRST+10)
1690#define PGM_GETBUTTONSIZE (PGM_FIRST+11)
1691#define PGM_GETBUTTONSTATE (PGM_FIRST+12)
1692#define PGM_GETDROPTARGET CCM_GETDROPTARGET
1693
1694#define RBS_REGISTERDROP 4096
1695#define RBS_AUTOSIZE 8192
1696#define RBS_VERTICALGRIPPER 16384
1697#define RBS_DBLCLKTOGGLE 32768
1698#define RBBIM_IDEALSIZE 512
1699#define RBBIM_LPARAM 1024
1700#define RBBIM_HEADERSIZE 2048
1701#define RB_HITTEST (WM_USER+8)
1702#define RB_GETRECT (WM_USER+9)
1703#define RB_IDTOINDEX (WM_USER+16)
1704#define RB_GETTOOLTIPS (WM_USER+17)
1705#define RB_SETTOOLTIPS (WM_USER+18)
1706#define RB_SETBKCOLOR (WM_USER+19)
1707#define RB_GETBKCOLOR (WM_USER+20)
1708#define RB_SETTEXTCOLOR (WM_USER+21)
1709#define RB_GETTEXTCOLOR (WM_USER+22)
1710#define RB_SIZETORECT (WM_USER+23)
1711#define RB_BEGINDRAG (WM_USER+24)
1712#define RB_ENDDRAG (WM_USER+25)
1713#define RB_DRAGMOVE (WM_USER+26)
1714#define RB_GETBARHEIGHT (WM_USER+27)
1715#define RB_GETBANDINFOW (WM_USER+28)
1716#define RB_GETBANDINFOA (WM_USER+29)
1717#define RB_MINIMIZEBAND (WM_USER+30)
1718#define RB_MAXIMIZEBAND (WM_USER+31)
1719#define RB_GETDROPTARGET CCM_GETDROPTARGET
1720#define RB_GETBANDBORDERS (WM_USER+34)
1721#define RB_SHOWBAND (WM_USER+35)
1722#define RB_SETPALETTE (WM_USER+37)
1723#define RB_GETPALETTE (WM_USER+38)
1724#define RB_MOVEBAND (WM_USER+39)
1725#define RB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
1726#define RB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
1727#define RBN_GETOBJECT (RBN_FIRST-1)
1728#define RBN_LAYOUTCHANGED (RBN_FIRST-2)
1729#define RBN_AUTOSIZE (RBN_FIRST-3)
1730#define RBN_BEGINDRAG (RBN_FIRST-4)
1731#define RBN_ENDDRAG (RBN_FIRST-5)
1732#define RBN_DELETINGBAND (RBN_FIRST-6)
1733#define RBN_DELETEDBAND (RBN_FIRST-7)
1734#define RBN_CHILDSIZE (RBN_FIRST-8)
1735#define RBNM_ID 1
1736#define RBNM_STYLE 2
1737#define RBNM_LPARAM 4
1738#define RBHT_NOWHERE 1
1739#define RBHT_CAPTION 2
1740#define RBHT_CLIENT 3
1741#define RBHT_GRABBER 4
1742#ifdef UNICODE
1743#define SB_SETTIPTEXT SB_SETTIPTEXTW
1744#define SB_GETTIPTEXT SB_GETTIPTEXTW
1745#define RB_GETBANDINFO RB_GETBANDINFOW
1746#else
1747#define SB_SETTIPTEXT SB_SETTIPTEXTA
1748#define SB_GETTIPTEXT SB_GETTIPTEXTA
1749#define RB_GETBANDINFO RB_GETBANDINFOA
1750#endif
1751#else
1752#define RB_GETBANDINFO (WM_USER+5)
1753#endif /* _WIN32_IE >= 0x0400 */
1754#define CBEM_INSERTITEMA (WM_USER + 1)
1755#define CBEM_SETIMAGELIST (WM_USER + 2)
1756#define CBEM_GETIMAGELIST (WM_USER + 3)
1757#define CBEM_GETITEMA (WM_USER + 4)
1758#define CBEM_SETITEMA (WM_USER + 5)
1759#define CBEM_DELETEITEM CB_DELETESTRING
1760#define CBEM_GETCOMBOCONTROL (WM_USER + 6)
1761#define CBEM_GETEDITCONTROL (WM_USER + 7)
1762#define CBEM_SETEXSTYLE (WM_USER + 8)
1763#define CBEM_GETEXSTYLE (WM_USER + 9)
1764#if (_WIN32_IE >= 0x0400)
1765#define CBEM_SETEXTENDEDSTYLE (WM_USER + 14)
1766#define CBEM_GETEXTENDEDSTYLE (WM_USER + 9)
1767#define CBEM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
1768#define CBEM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
1769#endif /* _WIN32_IE >= 0x0400 */
1770#define CBEM_HASEDITCHANGED (WM_USER + 10)
1771#define CBEM_INSERTITEMW (WM_USER + 11)
1772#define CBEM_SETITEMW (WM_USER + 12)
1773#define CBEM_GETITEMW (WM_USER + 13)
1774#define DA_LAST 0x7fffffff
1775#define DPA_APPEND 0x7fffffff
1776#define DPA_ERR -1
1777#define DSA_APPEND 0x7fffffff
1778#define DSA_ERR -1
1779#define DPAS_SORTED 1
1780#define DPAS_INSERTBEFORE 2
1781#define DPAS_INSERTAFTER 4
1782#if (_WIN32_IE >= 0x400)
1783#define WSB_PROP_CYVSCROLL 1
1784#define WSB_PROP_CXHSCROLL 2
1785#define WSB_PROP_CYHSCROLL 4
1786#define WSB_PROP_CXVSCROLL 8
1787#define WSB_PROP_CXHTHUMB 16
1788#define WSB_PROP_CYVTHUMB 32
1789#define WSB_PROP_VBKGCOLOR 64
1790#define WSB_PROP_HBKGCOLOR 128
1791#define WSB_PROP_VSTYLE 256
1792#define WSB_PROP_HSTYLE 512
1793#define WSB_PROP_WINSTYLE 1024
1794#define WSB_PROP_PALETTE 2048
1795#define WSB_PROP_MASK 0xfff
1796#define FSB_FLAT_MODE 2
1797#define FSB_ENCARTA_MODE 1
1798#define FSB_REGULAR_MODE 0
1799#endif /* _WIN32_IE >= 0x400 */
1800
1801#ifndef RC_INVOKED
1802typedef struct tagCOMBOBOXEXITEMA{
1803 UINT mask;
1804 int iItem;
1805 LPSTR pszText;
1806 int cchTextMax;
1807 int iImage;
1808 int iSelectedImage;
1809 int iOverlay;
1810 int iIndent;
1811 LPARAM lParam;
1812} COMBOBOXEXITEMA, *PCOMBOBOXEXITEMA;
1813typedef COMBOBOXEXITEMA CONST *PCCOMBOEXITEMA;
1814typedef struct tagCOMBOBOXEXITEMW{
1815 UINT mask;
1816 int iItem;
1817 LPWSTR pszText;
1818 int cchTextMax;
1819 int iImage;
1820 int iSelectedImage;
1821 int iOverlay;
1822 int iIndent;
1823 LPARAM lParam;
1824} COMBOBOXEXITEMW, *PCOMBOBOXEXITEMW;
1825typedef COMBOBOXEXITEMW CONST *PCCOMBOEXITEMW;
1826#if (_WIN32_IE >= 0x0400)
1827typedef struct {
1828 NMHDR hdr;
1829 COMBOBOXEXITEMA ceItem;
1830} NMCOMBOBOXEXA, *PNMCOMBOBOXEXA;
1831typedef struct {
1832 NMHDR hdr;
1833 COMBOBOXEXITEMW ceItem;
1834} NMCOMBOBOXEXW, *PNMCOMBOBOXEXW;
1835typedef struct {
1836 NMHDR hdr;
1837 int iItemid;
1838 WCHAR szText[CBEMAXSTRLEN];
1839}NMCBEDRAGBEGINW, *LPNMCBEDRAGBEGINW, *PNMCBEDRAGBEGINW;
1840typedef struct {
1841 NMHDR hdr;
1842 int iItemid;
1843 char szText[CBEMAXSTRLEN];
1844}NMCBEDRAGBEGINA, *LPNMCBEDRAGBEGINA, *PNMCBEDRAGBEGINA;
1845typedef struct tagNMIPADDRESS{
1846 NMHDR hdr;
1847 int iField;
1848 int iValue;
1849} NMIPADDRESS, *LPNMIPADDRESS;
1850typedef struct tagLVKEYDOWN {
1851 NMHDR hdr;
1852 WORD wVKey;
1853 UINT flags;
1854} NMLVKEYDOWN, *LPNMLVKEYDOWN;
1855typedef struct {
1856 NMHDR hdr;
1857 DWORD dwFlag;
1858 int iWidth;
1859 int iHeight;
1860} NMPGCALCSIZE, *LPNMPGCALCSIZE;
1861typedef struct {
1862 NMHDR hdr;
1863 BOOL fwKeys;
1864 RECT rcParent;
1865 int iDir;
1866 int iXpos;
1867 int iYpos;
1868 int iScroll;
1869} NMPGSCROLL, *LPNMPGSCROLL;
1870typedef struct tagNMSELCHANGE {
1871 NMHDR nmhdr;
1872 SYSTEMTIME stSelStart;
1873 SYSTEMTIME stSelEnd;
1874} NMSELCHANGE, *LPNMSELCHANGE;
1875typedef struct tagNMTBHOTITEM {
1876 NMHDR hdr;
1877 int idOld;
1878 int idNew;
1879 DWORD dwFlags;
1880} NMTBHOTITEM, *LPNMTBHOTITEM;
1881typedef struct {
1882 NMHDR hdr;
1883 DWORD dwMask;
1884 int idCommand;
1885 DWORD_PTR lParam;
1886 int iImage;
1887 LPSTR pszText;
1888 int cchText;
1889} NMTBDISPINFOA, *LPNMTBDISPINFOA;
1890typedef struct {
1891 NMHDR hdr;
1892 DWORD dwMask;
1893 int idCommand;
1894 DWORD_PTR lParam;
1895 int iImage;
1896 LPWSTR pszText;
1897 int cchText;
1898} NMTBDISPINFOW, *LPNMTBDISPINFOW;
1899typedef struct tagNMTBGETINFOTIPA
1900{
1901 NMHDR hdr;
1902 LPSTR pszText;
1903 int cchTextMax;
1904 int iItem;
1905 LPARAM lParam;
1906} NMTBGETINFOTIPA, *LPNMTBGETINFOTIPA;
1907typedef struct tagNMTBGETINFOTIPW
1908{
1909 NMHDR hdr;
1910 LPWSTR pszText;
1911 int cchTextMax;
1912 int iItem;
1913 LPARAM lParam;
1914} NMTBGETINFOTIPW, *LPNMTBGETINFOTIPW;
1915typedef struct tagNMMOUSE {
1916 NMHDR hdr;
1917 DWORD_PTR dwItemSpec;
1918 DWORD_PTR dwItemData;
1919 POINT pt;
1920 LPARAM dwHitInfo;
1921} NMMOUSE, *LPNMMOUSE;
1922#endif /*_WIN32_IE >= 0x0400 */
1923#if (_WIN32_IE >= 0x0401)
1924typedef struct tagNMTOOLTIPSCREATED
1925{
1926 NMHDR hdr;
1927 HWND hwndToolTips;
1928} NMTOOLTIPSCREATED, *LPNMTOOLTIPSCREATED;
1929#endif
1930typedef struct tagNMDATETIMECHANGE
1931{
1932 NMHDR nmhdr;
1933 DWORD dwFlags;
1934 SYSTEMTIME st;
1935} NMDATETIMECHANGE, *LPNMDATETIMECHANGE;
1936typedef struct {
1937 NMHDR hdr;
1938 BOOL fChanged;
1939 int iNewSelection;
1940 WCHAR szText[CBEMAXSTRLEN];
1941 int iWhy;
1942} NMCBEENDEDITW, *LPNMCBEENDEDITW, *PNMCBEENDEDITW;
1943typedef struct {
1944 NMHDR hdr;
1945 BOOL fChanged;
1946 int iNewSelection;
1947 char szText[CBEMAXSTRLEN];
1948 int iWhy;
1949} NMCBEENDEDITA, *LPNMCBEENDEDITA,*PNMCBEENDEDITA;
1950typedef struct _COLORMAP {
1951 COLORREF from;
1952 COLORREF to;
1953} COLORMAP,*LPCOLORMAP;
1954typedef struct {
1955 UINT uNotification;
1956 HWND hWnd;
1957 POINT ptCursor;
1958} DRAGLISTINFO,*LPDRAGLISTINFO;
1959typedef struct _TBBUTTON {
1960 int iBitmap;
1961 int idCommand;
1962 BYTE fsState;
1963 BYTE fsStyle;
1964 BYTE bReserved[2];
1965 DWORD dwData;
1966 int iString;
1967} TBBUTTON,*PTBBUTTON,*LPTBBUTTON;
1968typedef const TBBUTTON *LPCTBBUTTON;
1969#if _WIN32_IE >= 0x400
1970typedef struct {
1971 UINT cbSize;
1972 DWORD dwMask;
1973 int idCommand;
1974 int iImage;
1975 BYTE fsState;
1976 BYTE fsStyle;
1977 WORD cx;
1978 DWORD lParam;
1979 LPSTR pszText;
1980 int cchText;
1981} TBBUTTONINFOA, *LPTBBUTTONINFOA;
1982typedef struct {
1983 UINT cbSize;
1984 DWORD dwMask;
1985 int idCommand;
1986 int iImage;
1987 BYTE fsState;
1988 BYTE fsStyle;
1989 WORD cx;
1990 DWORD lParam;
1991 LPWSTR pszText;
1992 int cchText;
1993} TBBUTTONINFOW, *LPTBBUTTONINFOW;
1994typedef struct {
1995 int iButton;
1996 DWORD dwFlags;
1997} TBINSERTMARK, *LPTBINSERTMARK;
1998typedef struct tagLVBKIMAGEA {
1999 ULONG ulFlags;
2000 HBITMAP hbm;
2001 LPSTR pszImage;
2002 UINT cchImageMax;
2003 int xOffsetPercent;
2004 int yOffsetPercent;
2005} LVBKIMAGEA, *LPLVBKIMAGEA;
2006typedef struct tagLVBKIMAGEW {
2007 ULONG ulFlags;
2008 HBITMAP hbm;
2009 LPWSTR pszImage;
2010 UINT cchImageMax;
2011 int xOffsetPercent;
2012 int yOffsetPercent;
2013} LVBKIMAGEW, *LPLVBKIMAGEW;
2014#endif /* _WIN32_IE >= 0x400 */
2015typedef struct {
2016 NMHDR hdr;
2017 int iItem;
2018 TBBUTTON tbButton;
2019 int cchText;
2020 LPTSTR pszText;
2021} TBNOTIFY,*LPTBNOTIFY;
2022typedef struct {
2023 HKEY hkr;
2024 LPCTSTR pszSubKey;
2025 LPCTSTR pszValueName;
2026} TBSAVEPARAMS;
2027typedef struct _IMAGEINFO {
2028 HBITMAP hbmImage;
2029 HBITMAP hbmMask;
2030 int Unused1;
2031 int Unused2;
2032 RECT rcImage;
2033} IMAGEINFO, *LPIMAGEINFO;
2034typedef struct _IMAGELIST *HIMAGELIST;
2035typedef struct _HDITEMA {
2036 UINT mask;
2037 int cxy;
2038 LPSTR pszText;
2039 HBITMAP hbm;
2040 int cchTextMax;
2041 int fmt;
2042 LPARAM lParam;
2043#if (_WIN32_IE >= 0x0300)
2044 int iImage;
2045 int iOrder;
2046#endif
2047#if (_WIN32_IE >= 0x0500)
2048 UINT type;
2049 LPVOID pvFilter;
2050#endif
2051} HDITEMA, * LPHDITEMA;
2052typedef struct _HDITEMW {
2053 UINT mask;
2054 int cxy;
2055 LPWSTR pszText;
2056 HBITMAP hbm;
2057 int cchTextMax;
2058 int fmt;
2059 LPARAM lParam;
2060#if (_WIN32_IE >= 0x0300)
2061 int iImage;
2062 int iOrder;
2063#endif
2064#if (_WIN32_IE >= 0x0500)
2065 UINT type;
2066 LPVOID pvFilter;
2067#endif
2068} HDITEMW, * LPHDITEMW;
2069/* for backward compatability */
2070#define HD_ITEMA HDITEMA
2071#define HD_ITEMW HDITEMW
2072#define HD_ITEM HDITEM
2073typedef struct _HD_LAYOUT {
2074 RECT *prc;
2075 WINDOWPOS *pwpos;
2076} HDLAYOUT, *LPHDLAYOUT;
2077#define HD_LAYOUT HDLAYOUT /* backward compatability */
2078typedef struct _HD_HITTESTINFO {
2079 POINT pt;
2080 UINT flags;
2081 int iItem;
2082} HD_HITTESTINFO, *LPHDHITTESTINFO;
2083typedef struct _HD_NOTIFYA {
2084 NMHDR hdr;
2085 int iItem;
2086 int iButton;
2087 HD_ITEMA *pitem;
2088} HD_NOTIFYA;
2089typedef struct _HD_NOTIFYW {
2090 NMHDR hdr;
2091 int iItem;
2092 int iButton;
2093 HD_ITEMW *pitem;
2094} HD_NOTIFYW;
2095/* FIXME: NMHEADER structure (base for all events of the comctl controls)
2096 is the same as HD_NOTIFY depending on the value of _WIN32_IE macro.
2097 I'm defining both for now. */
2098typedef struct _NMHEADERA {
2099 NMHDR hdr;
2100 int iItem;
2101 int iButton;
2102 HD_ITEMA* pitem;
2103} NMHEADERA, *LPNMHEADERA;
2104
2105typedef struct _NMHEADERW {
2106 NMHDR hdr;
2107 int iItem;
2108 int iButton;
2109 HD_ITEMW* pitem;
2110} NMHEADERW, *LPNMHEADERW;
2111#ifdef UNICODE
2112#define NMHEADER NMHEADERW
2113#define LPNMHEADER LPNMHEADERW
2114#else
2115#define NMHEADER NMHEADERA
2116#define LPNMHEADER LPNMHEADERA
2117#endif
2118/* End FIXME. */
2119typedef struct tagNMHDDISPINFOA {
2120 NMHDR hdr;
2121 int iItem;
2122 UINT mask;
2123 LPSTR pszText;
2124 int cchTextMax;
2125 int iImage;
2126 LPARAM lParam;
2127} NMHDDISPINFOA, *LPNMHDDISPINFOA;
2128typedef struct tagNMHDDISPINFOW {
2129 NMHDR hdr;
2130 int iItem;
2131 UINT mask;
2132 LPWSTR pszText;
2133 int cchTextMax;
2134 int iImage;
2135 LPARAM lParam;
2136} NMHDDISPINFOW, *LPNMHDDISPINFOW;
2137typedef struct tagNMCUSTOMDRAWINFO {
2138 NMHDR hdr;
2139 DWORD dwDrawStage;
2140 HDC hdc;
2141 RECT rc;
2142 DWORD dwItemSpec;
2143 UINT uItemState;
2144 LPARAM lItemlParam;
2145} NMCUSTOMDRAW, *LPNMCUSTOMDRAW;
2146typedef struct tagNMLVCUSTOMDRAW {
2147 NMCUSTOMDRAW nmcd;
2148 COLORREF clrText;
2149 COLORREF clrTextBk;
2150#if _WIN32_IE >= 0x0400
2151 int iSubItem;
2152#endif
2153} NMLVCUSTOMDRAW, *LPNMLVCUSTOMDRAW;
2154#if (_WIN32_IE >= 0x0400)
2155typedef struct tagNMLVGETINFOTIPA
2156{
2157 NMHDR hdr;
2158 DWORD dwFlags;
2159 LPSTR pszText;
2160 int cchTextMax;
2161 int iItem;
2162 int iSubItem;
2163 LPARAM lParam;
2164} NMLVGETINFOTIPA, *LPNMLVGETINFOTIPA;
2165typedef struct tagNMLVGETINFOTIPW
2166{
2167 NMHDR hdr;
2168 DWORD dwFlags;
2169 LPWSTR pszText;
2170 int cchTextMax;
2171 int iItem;
2172 int iSubItem;
2173 LPARAM lParam;
2174} NMLVGETINFOTIPW, *LPNMLVGETINFOTIPW;
2175#endif /* _WIN32_IE >= 0x0400 */
2176typedef struct tagNMTVCUSTOMDRAW {
2177 NMCUSTOMDRAW nmcd;
2178 COLORREF clrText;
2179 COLORREF clrTextBk;
2180#if _WIN32_IE >= 0x0400
2181 int iLevel;
2182#endif
2183} NMTVCUSTOMDRAW, *LPNMTVCUSTOMDRAW;
2184#if (_WIN32_IE >= 0x400)
2185typedef struct _NMTBCUSTOMDRAW {
2186 NMCUSTOMDRAW nmcd;
2187 HBRUSH hbrMonoDither;
2188 HBRUSH hbrLines;
2189 HPEN hpenLines;
2190 COLORREF clrText;
2191 COLORREF clrMark;
2192 COLORREF clrTextHighlight;
2193 COLORREF clrBtnFace;
2194 COLORREF clrBtnHighlight;
2195 COLORREF clrHighlightHotTrack;
2196 RECT rcText;
2197 int nStringBkMode;
2198 int nHLStringBkMode;
2199#if (_WIN32_WINNT >= 0x0501)
2200 int iListGap;
2201#endif
2202} NMTBCUSTOMDRAW, * LPNMTBCUSTOMDRAW;
2203typedef struct tagNMITEMACTIVATE {
2204 NMHDR hdr;
2205 int iItem;
2206 int iSubItem;
2207 UINT uNewState;
2208 UINT uOldState;
2209 UINT uChanged;
2210 POINT ptAction;
2211 LPARAM lParam;
2212 UINT uKeyFlags;
2213} NMITEMACTIVATE, *LPNMITEMACTIVATE;
2214#endif /* _WIN32_IE >= 0x0400 */
2215typedef struct tagTBADDBITMAP {
2216 HINSTANCE hInst;
2217 UINT nID;
2218} TBADDBITMAP,*LPTBADDBITMAP;
2219typedef struct tagTBSAVEPARAMSA {
2220 HKEY hkr;
2221 LPCSTR pszSubKey;
2222 LPCSTR pszValueName;
2223} TBSAVEPARAMSA;
2224typedef struct tagTBSAVEPARAMSW {
2225 HKEY hkr;
2226 LPCWSTR pszSubKey;
2227 LPCWSTR pszValueName;
2228} TBSAVEPARAMSW;
2229typedef struct {
2230 HINSTANCE hInstOld;
2231 UINT nIDOld;
2232 HINSTANCE hInstNew;
2233 UINT nIDNew;
2234 int nButtons;
2235} TBREPLACEBITMAP,*LPTBREPLACEBITMAP;
2236typedef struct tagNMTOOLBARA {
2237 NMHDR hdr;
2238 int iItem;
2239 TBBUTTON tbButton;
2240 int cchText;
2241 LPSTR pszText;
2242#if (_WIN32_IE >= 0x500)
2243 RECT rcButton;
2244#endif
2245} NMTOOLBARA, *LPNMTOOLBARA;
2246#define TBNOTIFYA NMTOOLBARA
2247#define LPTBNOTIFYA LPNMTOOLBARA
2248typedef struct tagNMTOOLBARW {
2249 NMHDR hdr;
2250 int iItem;
2251 TBBUTTON tbButton;
2252 int cchText;
2253 LPWSTR pszText;
2254#if (_WIN32_IE >= 0x500)
2255 RECT rcButton;
2256#endif
2257} NMTOOLBARW, *LPNMTOOLBARW;
2258#define TBNOTIFYW NMTOOLBARW
2259#define LPTBNOTIFYW LPNMTOOLBARW
2260typedef struct tagTOOLINFOA {
2261 UINT cbSize;
2262 UINT uFlags;
2263 HWND hwnd;
2264 UINT uId;
2265 RECT rect;
2266 HINSTANCE hinst;
2267 LPSTR lpszText;
2268#if (_WIN32_IE >= 0x0300)
2269 LPARAM lParam;
2270#endif
2271} TTTOOLINFOA,*LPTTTOOLINFOA,*PTOOLINFOA;
2272#define TOOLINFOA TTTOOLINFOA
2273#define LPTOOLINFOA LPTTTOOLINFOA
2274#define TTTOOLINFOA_V1_SIZE CCSIZEOF_STRUCT(TTTOOLINFOA, lpszText)
2275#define TTTOOLINFOA_V2_SIZE CCSIZEOF_STRUCT(TTTOOLINFOA, lParam)
2276#define TTTOOLINFOA_V3_SIZE CCSIZEOF_STRUCT(TTTOOLINFOA, lpReserved)
2277typedef struct tagTOOLINFOW {
2278 UINT cbSize;
2279 UINT uFlags;
2280 HWND hwnd;
2281 UINT uId;
2282 RECT rect;
2283 HINSTANCE hinst;
2284 LPWSTR lpszText;
2285#if (_WIN32_IE >= 0x0300)
2286 LPARAM lParam;
2287#endif
2288} TTTOOLINFOW,*LPTTTOOLINFOW,*PTOOLINFOW;
2289#define TOOLINFOW TTTOOLINFOW
2290#define LPTOOLINFOW LPTTTOOLINFOW
2291#define TTTOOLINFOW_V1_SIZE CCSIZEOF_STRUCT(TTTOOLINFOW, lpszText)
2292#define TTTOOLINFOW_V2_SIZE CCSIZEOF_STRUCT(TTTOOLINFOW, lParam)
2293#define TTTOOLINFOW_V3_SIZE CCSIZEOF_STRUCT(TTTOOLINFOW, lpReserved)
2294typedef struct _TT_HITTESTINFOA {
2295 HWND hwnd;
2296 POINT pt;
2297 TOOLINFOA ti;
2298} TTHITTESTINFOA,*LPTTHITTESTINFOA;
2299#define LPHITTESTINFOA LPTTHITTESTINFOA
2300typedef struct _TT_HITTESTINFOW {
2301 HWND hwnd;
2302 POINT pt;
2303 TOOLINFOW ti;
2304} TTHITTESTINFOW,*LPTTHITTESTINFOW;
2305#define LPHITTESTINFOW LPTTHITTESTINFOW
2306typedef struct tagNMTTDISPINFOA {
2307 NMHDR hdr;
2308 LPSTR lpszText;
2309 char szText[80];
2310 HINSTANCE hinst;
2311 UINT uFlags;
2312#if (_WIN32_IE >= 0x0300)
2313 LPARAM lParam;
2314#endif
2315} NMTTDISPINFOA, *LPNMTTDISPINFOA;
2316#define TOOLTIPTEXTA NMTTDISPINFOA
2317#define LPTOOLTIPTEXTA LPNMTTDISPINFOA
2318typedef struct tagNMTTDISPINFOW {
2319 NMHDR hdr;
2320 LPWSTR lpszText;
2321 WCHAR szText[80];
2322 HINSTANCE hinst;
2323 UINT uFlags;
2324#if (_WIN32_IE >= 0x0300)
2325 LPARAM lParam;
2326#endif
2327} NMTTDISPINFOW, *LPNMTTDISPINFOW;
2328#define TOOLTIPTEXTW NMTTDISPINFOW
2329#define LPTOOLTIPTEXTW LPNMTTDISPINFOW
2330typedef struct _UDACCEL {
2331 UINT nSec;
2332 UINT nInc;
2333} UDACCEL,*LPUDACCEL;
2334typedef struct _NM_UPDOWN {
2335 NMHDR hdr;
2336 int iPos;
2337 int iDelta;
2338} NMUPDOWN,*LPNMUPDOWN;
2339/* for backward compatability */
2340#define NM_UPDOWN NMUPDOWN
2341#define LPNM_UPDOWN LPNMUPDOWN
2342typedef struct _LVITEMA {
2343 UINT mask;
2344 int iItem;
2345 int iSubItem;
2346 UINT state;
2347 UINT stateMask;
2348 LPSTR pszText;
2349 int cchTextMax;
2350 int iImage;
2351 LPARAM lParam;
2352#if (_WIN32_IE >= 0x0300)
2353 int iIndent;
2354#endif
2355#if (_WIN32_WINNT >= 0x0501)
2356 int iGroupId;
2357 UINT cColumns;
2358 PUINT puColumns;
2359#endif
2360} LVITEMA, FAR *LPLVITEMA;
2361#define _LV_ITEMA _LVITEMA
2362#define LV_ITEMA LVITEMA
2363typedef struct _LVITEMW {
2364 UINT mask;
2365 int iItem;
2366 int iSubItem;
2367 UINT state;
2368 UINT stateMask;
2369 LPWSTR pszText;
2370 int cchTextMax;
2371 int iImage;
2372 LPARAM lParam;
2373#if (_WIN32_IE >= 0x0300)
2374 int iIndent;
2375#endif
2376#if (_WIN32_WINNT >= 0x0501)
2377 int iGroupId;
2378 UINT cColumns;
2379 PUINT puColumns;
2380#endif
2381} LVITEMW, FAR *LPLVITEMW;
2382#define _LV_ITEMW _LVITEMW
2383#define LV_ITEMW LVITEMW
2384typedef struct tagLVFINDINFOA {
2385 UINT flags;
2386 LPCSTR psz;
2387 LPARAM lParam;
2388 POINT pt;
2389 UINT vkDirection;
2390} LVFINDINFOA, FAR* LPFINDINFOA;
2391#define _LV_FINDINFOA tagLVFINDINFOA
2392#define LV_FINDINFOA LVFINDINFOA
2393typedef struct tagLVFINDINFOW {
2394 UINT flags;
2395 LPCWSTR psz;
2396 LPARAM lParam;
2397 POINT pt;
2398 UINT vkDirection;
2399} LVFINDINFOW, FAR* LPFINDINFOW;
2400#define _LV_FINDINFOW tagLVFINDINFOW
2401#define LV_FINDINFOW LVFINDINFOW
2402typedef struct tagNMLVFINDITEMA {
2403 NMHDR hdr;
2404 int iStart;
2405 LVFINDINFOA lvfi;
2406} NMLVFINDITEMA, *PNMLVFINDITEMA, FAR *LPNMLVFINDITEMA;
2407#define _NMLVFINDITEMA tagNMLVFINDITEMA
2408typedef struct tagNMLVFINDITEMW {
2409 NMHDR hdr;
2410 int iStart;
2411 LVFINDINFOW lvfi;
2412} NMLVFINDITEMW, *PNMLVFINDITEMW, FAR *LPNMLVFINDITEMW;
2413#define _NMLVFINDITEMW tagNMLVFINDITEMW
2414typedef struct _LVHITTESTINFO {
2415 POINT pt;
2416 UINT flags;
2417 int iItem;
2418#if (_WIN32_IE >= 0x0300)
2419 int iSubItem;
2420#endif
2421} LVHITTESTINFO, FAR *LPLVHITTESTINFO;
2422#define _LV_HITTESTINFO _LVHITTESTINFO
2423#define LV_HITTESTINFO LVHITTESTINFO
2424typedef struct _LVCOLUMNA {
2425 UINT mask;
2426 int fmt;
2427 int cx;
2428 LPSTR pszText;
2429 int cchTextMax;
2430 int iSubItem;
2431#if (_WIN32_IE >= 0x0300)
2432 int iImage;
2433 int iOrder;
2434#endif
2435} LVCOLUMNA, FAR *LPLVCOLUMNA;
2436#define _LV_COLUMNA _LVCOLUMNA
2437#define LV_COLUMNA LVCOLUMNA
2438typedef struct _LVCOLUMNW {
2439 UINT mask;
2440 int fmt;
2441 int cx;
2442 LPWSTR pszText;
2443 int cchTextMax;
2444 int iSubItem;
2445#if (_WIN32_IE >= 0x0300)
2446 int iImage;
2447 int iOrder;
2448#endif
2449} LVCOLUMNW, FAR *LPLVCOLUMNW;
2450#define _LV_COLUMNW _LVCOLUMNW
2451#define LV_COLUMNW LVCOLUMNW
2452typedef int(CALLBACK *PFNLVCOMPARE)(LPARAM,LPARAM,LPARAM);
2453typedef struct tagNMLISTVIEW {
2454 NMHDR hdr;
2455 int iItem;
2456 int iSubItem;
2457 UINT uNewState;
2458 UINT uOldState;
2459 UINT uChanged;
2460 POINT ptAction;
2461 LPARAM lParam;
2462} NMLISTVIEW, *LPNMLISTVIEW;
2463/* for backward compatability */
2464#define _NM_LISTVIEW tagNMLISTVIEW
2465#define NM_LISTVIEW NMLISTVIEW
2466#define LPNM_LISTVIEW LPNMLISTVIEW
2467typedef struct tagNMLVDISPINFOA {
2468 NMHDR hdr;
2469 LV_ITEMA item;
2470} NMLVDISPINFOA, FAR *LPNMLVDISPINFOA;
2471#define _LV_DISPINFOA tagNMLVDISPINFOA
2472#define LV_DISPINFOA NMLVDISPINFOA
2473typedef struct tagNMLVDISPINFOW {
2474 NMHDR hdr;
2475 LV_ITEMW item;
2476} NMLVDISPINFOW, FAR *LPNMLVDISPINFOW;
2477#define _LV_DISPINFOW tagNMLVDISPINFOW
2478#define LV_DISPINFOW NMLVDISPINFOW
2479typedef struct _LV_KEYDOWN {
2480 NMHDR hdr;
2481 WORD wVKey;
2482 UINT flags;
2483} LV_KEYDOWN;
2484typedef struct tagNMLVCACHEHINT {
2485 NMHDR hdr;
2486 int iFrom;
2487 int iTo;
2488} NMLVCACHEHINT, *PNMLVCACHEHINT;
2489#define NM_CACHEHINT NMLVCACHEHINT
2490typedef struct _TREEITEM *HTREEITEM;
2491typedef struct tagTVITEMA {
2492 UINT mask;
2493 HTREEITEM hItem;
2494 UINT state;
2495 UINT stateMask;
2496 LPSTR pszText;
2497 int cchTextMax;
2498 int iImage;
2499 int iSelectedImage;
2500 int cChildren;
2501 LPARAM lParam;
2502} TVITEMA,*LPTVITEMA;
2503#define _TV_ITEMA tagTVITEMA
2504#define TV_ITEMA TVITEMA
2505#define LPTV_ITEMA LPTVITEMA
2506typedef struct tagTVITEMW {
2507 UINT mask;
2508 HTREEITEM hItem;
2509 UINT state;
2510 UINT stateMask;
2511 LPWSTR pszText;
2512 int cchTextMax;
2513 int iImage;
2514 int iSelectedImage;
2515 int cChildren;
2516 LPARAM lParam;
2517} TVITEMW,*LPTVITEMW;
2518#define _TV_ITEMW tagTVITEMW
2519#define TV_ITEMW TVITEMW
2520#define LPTV_ITEMW LPTVITEMW
2521#if (_WIN32_IE >= 0x0400)
2522typedef struct tagTVITEMEXA {
2523 UINT mask;
2524 HTREEITEM hItem;
2525 UINT state;
2526 UINT stateMask;
2527 LPSTR pszText;
2528 int cchTextMax;
2529 int iImage;
2530 int iSelectedImage;
2531 int cChildren;
2532 LPARAM lParam;
2533 int iIntegral;
2534} TVITEMEXA, *LPTVITEMEXA;
2535typedef struct tagTVITEMEXW {
2536 UINT mask;
2537 HTREEITEM hItem;
2538 UINT state;
2539 UINT stateMask;
2540 LPWSTR pszText;
2541 int cchTextMax;
2542 int iImage;
2543 int iSelectedImage;
2544 int cChildren;
2545 LPARAM lParam;
2546 int iIntegral;
2547} TVITEMEXW, *LPTVITEMEXW;
2548#endif /* _WIN32_IE >= 0x0400 */
2549typedef struct tagTVINSERTSTRUCTA {
2550 HTREEITEM hParent;
2551 HTREEITEM hInsertAfter;
2552#if (_WIN32_IE >= 0x0400)
2553 _ANONYMOUS_UNION union {
2554 TVITEMEXA itemex;
2555 TV_ITEMA item;
2556 } DUMMYUNIONNAME;
2557#else
2558 TV_ITEMA item;
2559#endif
2560} TVINSERTSTRUCTA,*LPTVINSERTSTRUCTA;
2561#define _TV_INSERTSTRUCTA tagTVINSERTSTRUCTA
2562#define TV_INSERTSTRUCTA TVINSERTSTRUCTA
2563#define LPTV_INSERTSTRUCTA LPTVINSERTSTRUCTA
2564typedef struct tagTVINSERTSTRUCTW {
2565 HTREEITEM hParent;
2566 HTREEITEM hInsertAfter;
2567#if (_WIN32_IE >= 0x0400)
2568 _ANONYMOUS_UNION union {
2569 TVITEMEXW itemex;
2570 TV_ITEMW item;
2571 } DUMMYUNIONNAME;
2572#else
2573 TV_ITEMW item;
2574#endif
2575} TVINSERTSTRUCTW,*LPTVINSERTSTRUCTW;
2576#define _TV_INSERTSTRUCTW tagTVINSERTSTRUCTW
2577#define TV_INSERTSTRUCTW TVINSERTSTRUCTW
2578#define LPTV_INSERTSTRUCTW LPTVINSERTSTRUCTW
2579typedef struct tagTVHITTESTINFO {
2580 POINT pt;
2581 UINT flags;
2582 HTREEITEM hItem;
2583} TVHITTESTINFO, *LPTVHITTESTINFO;
2584#define _TV_HITTESTINFO tagTVHITTESTINFO
2585#define TV_HITTESTINFO TVHITTESTINFO
2586#define LPTV_HITTESTINFO LPTVHITTESTINFO
2587typedef int(CALLBACK *PFNTVCOMPARE)(LPARAM,LPARAM,LPARAM);
2588typedef struct tagTVSORTCB {
2589 HTREEITEM hParent;
2590 PFNTVCOMPARE lpfnCompare;
2591 LPARAM lParam;
2592} TVSORTCB,*LPTVSORTCB;
2593#define _TV_SORTCB tagTVSORTCB
2594#define TV_SORTCB TVSORTCB
2595#define LPTV_SORTCB LPTVSORTCB
2596typedef struct tagNMTREEVIEWA {
2597 NMHDR hdr;
2598 UINT action;
2599 TV_ITEMA itemOld;
2600 TV_ITEMA itemNew;
2601 POINT ptDrag;
2602} NMTREEVIEWA,*LPNMTREEVIEWA;
2603#define _NM_TREEVIEWA tagNMTREEVIEWA
2604#define NM_TREEVIEWA NMTREEVIEWA
2605#define LPNM_TREEVIEWA LPNMTREEVIEWA
2606typedef struct tagNMTREEVIEWW {
2607 NMHDR hdr;
2608 UINT action;
2609 TV_ITEMW itemOld;
2610 TV_ITEMW itemNew;
2611 POINT ptDrag;
2612} NMTREEVIEWW,*LPNMTREEVIEWW;
2613#define _NM_TREEVIEWW tagNMTREEVIEWW
2614#define NM_TREEVIEWW NMTREEVIEWW
2615#define LPNM_TREEVIEWW LPNMTREEVIEWW
2616typedef struct tagNMTVDISPINFOA {
2617 NMHDR hdr;
2618 TVITEMA item;
2619} NMTVDISPINFOA, *LPNMTVDISPINFOA;
2620#define _TV_DISPINFOA tagNMTVDISPINFOA
2621#define TV_DISPINFOA NMTVDISPINFOA
2622typedef struct tagNMTVDISPINFOW {
2623 NMHDR hdr;
2624 TVITEMW item;
2625} NMTVDISPINFOW, *LPNMTVDISPINFOW;
2626#define _TV_DISPINFOW tagNMTVDISPINFOW
2627#define TV_DISPINFOW NMTVDISPINFOW
2628#if (_WIN32_IE >= 0x0400)
2629typedef struct tagNMTVGETINFOTIPA {
2630 NMHDR hdr;
2631 LPSTR pszText;
2632 int cchTextMax;
2633 HTREEITEM hItem;
2634 LPARAM lParam;
2635} NMTVGETINFOTIPA, *LPNMTVGETINFOTIPA;
2636typedef struct tagNMTVGETINFOTIPW {
2637 NMHDR hdr;
2638 LPWSTR pszText;
2639 int cchTextMax;
2640 HTREEITEM hItem;
2641 LPARAM lParam;
2642} NMTVGETINFOTIPW, *LPNMTVGETINFOTIPW;
2643#endif
2644typedef struct _TV_KEYDOWN {
2645 NMHDR hdr;
2646 WORD wVKey;
2647 UINT flags;
2648} TV_KEYDOWN;
2649typedef struct _TC_ITEMHEADERA {
2650 UINT mask;
2651 UINT lpReserved1;
2652 UINT lpReserved2;
2653 LPSTR pszText;
2654 int cchTextMax;
2655 int iImage;
2656} TC_ITEMHEADERA;
2657typedef struct _TC_ITEMHEADERW {
2658 UINT mask;
2659 UINT lpReserved1;
2660 UINT lpReserved2;
2661 LPWSTR pszText;
2662 int cchTextMax;
2663 int iImage;
2664} TC_ITEMHEADERW;
2665typedef struct tagTCITEMA {
2666 UINT mask;
2667#if (_WIN32_IE >= 0x0300)
2668 DWORD dwState;
2669 DWORD dwStateMask;
2670#else
2671 UINT lpReserved1;
2672 UINT lpReserved2;
2673#endif
2674 LPSTR pszText;
2675 int cchTextMax;
2676 int iImage;
2677 LPARAM lParam;
2678} TCITEMA, *LPTCITEMA;
2679#define TC_ITEMA TCITEMA
2680typedef struct tagTCITEMW {
2681 UINT mask;
2682#if (_WIN32_IE >= 0x0300)
2683 DWORD dwState;
2684 DWORD dwStateMask;
2685#else
2686 UINT lpReserved1;
2687 UINT lpReserved2;
2688#endif
2689 LPWSTR pszText;
2690 int cchTextMax;
2691 int iImage;
2692 LPARAM lParam;
2693} TCITEMW, *LPTCITEMW;
2694#define TC_ITEMW TCITEMW
2695typedef struct tagTCHITTESTINFO {
2696 POINT pt;
2697 UINT flags;
2698} TCHITTESTINFO, *LPTCHITTESTINFO;
2699#define TC_HITTESTINFO TCHITTESTINFO
2700#define LPTC_HITTESTINFO LPTCHITTESTINFO
2701typedef struct _TC_KEYDOWN {
2702 NMHDR hdr;
2703 WORD wVKey;
2704 UINT flags;
2705} TC_KEYDOWN;
2706#if (_WIN32_IE >= 0x0300)
2707typedef struct tagINITCOMMONCONTROLSEX {
2708 DWORD dwSize;
2709 DWORD dwICC;
2710} INITCOMMONCONTROLSEX,*LPINITCOMMONCONTROLSEX;
2711#endif
2712typedef struct tagPBRANGE {
2713 int iLow;
2714 int iHigh;
2715} PBRANGE,*PPBRANGE;
2716typedef struct tagCOLORSCHEME {
2717 DWORD dwSize;
2718 COLORREF clrBtnHighlight;
2719 COLORREF clrBtnShadow;
2720} COLORSCHEME,*LPCOLORSCHEME;
2721typedef struct tagMCHITTESTINFO {
2722 UINT cbSize;
2723 POINT pt;
2724 UINT uHit;
2725 SYSTEMTIME st;
2726}MCHITTESTINFO, *PMCHITTESTINFO;
2727typedef DWORD MONTHDAYSTATE;
2728typedef MONTHDAYSTATE *LPMONTHDAYSTATE;
2729typedef struct tagNMDAYSTATE {
2730 NMHDR nmhdr;
2731 SYSTEMTIME stStart;
2732 int cDayState;
2733 LPMONTHDAYSTATE prgDayState;
2734}NMDAYSTATE,*LPNMDAYSTATE;
2735typedef struct tagREBARINFO {
2736 UINT cbSize;
2737 UINT fMask;
2738 HIMAGELIST himl;
2739} REBARINFO,*LPREBARINFO;
2740typedef struct tagREBARBANDINFOA {
2741 UINT cbSize;
2742 UINT fMask;
2743 UINT fStyle;
2744 COLORREF clrFore;
2745 COLORREF clrBack;
2746 LPSTR lpText;
2747 UINT cch;
2748 int iImage;
2749 HWND hwndChild;
2750 UINT cxMinChild;
2751 UINT cyMinChild;
2752 UINT cx;
2753 HBITMAP hbmBack;
2754 UINT wID;
2755#if (_WIN32_IE >= 0x0400)
2756 UINT cyChild;
2757 UINT cyMaxChild;
2758 UINT cyIntegral;
2759 UINT cxIdeal;
2760 LPARAM lParam;
2761 UINT cxHeader;
2762#endif
2763} REBARBANDINFOA,*LPREBARBANDINFOA;
2764typedef struct tagREBARBANDINFOW {
2765 UINT cbSize;
2766 UINT fMask;
2767 UINT fStyle;
2768 COLORREF clrFore;
2769 COLORREF clrBack;
2770 LPWSTR lpText;
2771 UINT cch;
2772 int iImage;
2773 HWND hwndChild;
2774 UINT cxMinChild;
2775 UINT cyMinChild;
2776 UINT cx;
2777 HBITMAP hbmBack;
2778 UINT wID;
2779#if (_WIN32_IE >= 0x0400)
2780 UINT cyChild;
2781 UINT cyMaxChild;
2782 UINT cyIntegral;
2783 UINT cxIdeal;
2784 LPARAM lParam;
2785 UINT cxHeader;
2786#endif
2787} REBARBANDINFOW,*LPREBARBANDINFOW;
2788typedef REBARBANDINFOA const *LPCREBARBANDINFOA;
2789typedef REBARBANDINFOW const *LPCREBARBANDINFOW;
2790#define REBARBANDINFOA_V3_SIZE CCSIZEOF_STRUCT(REBARBANDINFOA,wID)
2791#define REBARBANDINFOW_V3_SIZE CCSIZEOF_STRUCT(REBARBANDINFOW, wID)
2792#if (_WIN32_IE >= 0x0300)
2793typedef struct tagIMAGELISTDRAWPARAMS {
2794 DWORD cbSize;
2795 HIMAGELIST himl;
2796 int i;
2797 HDC hdcDst;
2798 int x;
2799 int y;
2800 int cx;
2801 int cy;
2802 int xBitmap;
2803 int yBitmap;
2804 COLORREF rgbBk;
2805 COLORREF rgbFg;
2806 UINT fStyle;
2807 DWORD dwRop;
2808#if (_WIN32_WINNT >= 0x0501)
2809 DWORD fState;
2810 DWORD Frame;
2811 COLORREF crEffect;
2812#endif
2813} IMAGELISTDRAWPARAMS,*LPIMAGELISTDRAWPARAMS;
2814#endif /* (_WIN32_IE >= 0x0300) */
2815#if (_WIN32_IE >= 0x0400)
2816typedef struct tagNMREBARCHILDSIZE {
2817 NMHDR hdr;
2818 UINT uBand;
2819 UINT wID;
2820 RECT rcChild;
2821 RECT rcBand;
2822} NMREBARCHILDSIZE,*LPNMREBARCHILDSIZE;
2823typedef struct tagNMREBAR {
2824 NMHDR hdr;
2825 DWORD dwMask;
2826 UINT uBand;
2827 UINT fStyle;
2828 UINT wID;
2829 LPARAM lParam;
2830} NMREBAR,*LPNMREBAR;
2831typedef struct tagNMRBAUTOSIZE {
2832 NMHDR hdr;
2833 BOOL fChanged;
2834 RECT rcTarget;
2835 RECT rcActual;
2836} NMRBAUTOSIZE,*LPNMRBAUTOSIZE;
2837#if (_WIN32_IE >= 0x0500)
2838typedef struct tagNMREBARCHEVRON {
2839 NMHDR hdr;
2840 UINT uBand;
2841 UINT wID;
2842 LPARAM lParam;
2843 RECT rc;
2844 LPARAM lParamNM;
2845} NMREBARCHEVRON, *LPNMREBARCHEVRON;
2846#endif
2847typedef struct _RB_HITTESTINFO {
2848 POINT pt;
2849 UINT flags;
2850 int iBand;
2851} RBHITTESTINFO,*LPRBHITTESTINFO;
2852#endif
2853typedef struct _DSA *HDSA;
2854typedef struct _DPA *HDPA;
2855typedef INT (CALLBACK *PFNDPAENUMCALLBACK)(PVOID,PVOID);
2856typedef INT (CALLBACK *PFNDSAENUMCALLBACK)(PVOID,PVOID);
2857typedef INT (CALLBACK *PFNDPACOMPARE)(PVOID,PVOID,LPARAM);
2858#if (_WIN32_WINNT >= 0x0501)
2859typedef LRESULT (CALLBACK *SUBCLASSPROC)(HWND,UINT,WPARAM,LPARAM,UINT_PTR,DWORD_PTR);
2860#endif /* _WIN32_WINNT >= 0x0501 */
2861
2862#define INDEXTOOVERLAYMASK(i) ((i)<<8)
2863#define INDEXTOSTATEIMAGEMASK(i) ((i)<<12)
2864#define HANDLE_WM_NOTIFY(h,w,l,f) (f)((h),(int)(w),(NMHDR*)(l))
2865#define FORWARD_WM_NOTIFY(h,i,p,f) (LRESULT)(f)((h),WM_NOTIFY,(WPARAM)(int)(i),(LPARAM)(NMHDR*)(p))
2866#define CCSIZEOF_STRUCT(s,m) (((int)((PBYTE)(&((s*)0)->m)-((PBYTE)((s*)0))))+sizeof(((s*)0)->m))
2867#define MAKEIPADDRESS(b1,b2,b3,b4) ((LPARAM)(((DWORD)(b1)<<24)+((DWORD)(b2)<<16)+((DWORD)(b3)<<8)+((DWORD)(b4))))
2868#define MAKEIPRANGE(low,high) ((LPARAM)(WORD)(((BYTE)(high)<<8)+(BYTE)(low)))
2869#define FIRST_IPADDRESS(a) ((a>>24) & 0xff)
2870#define SECOND_IPADDRESS(a) ((a>>16) & 0xff)
2871#define THIRD_IPADDRESS(a) ((a>>8) & 0xff)
2872#define FOURTH_IPADDRESS(a) (a & 0xff)
2873#define Animate_Create(w,i,s,hI) CreateWindow(ANIMATE_CLASS,NULL,s,0,0,0,0,w,(HMENU)(i),hI,NULL)
2874#define Animate_Open(w,f) (BOOL)SNDMSG(w,ACM_OPEN,0,(LPARAM)f)
2875#define Animate_OpenEx(w,h,s) (BOOL)SNDMSG(w,ACM_OPEN,(WPARAM)h,(LPARAM)(LPTSTR)(s))
2876#define Animate_Play(w,f,t,r) (BOOL)SNDMSG(w,ACM_PLAY,(r),(LPARAM)MAKELONG(f,t))
2877#define Animate_Stop(w) (BOOL)SNDMSG(w,ACM_STOP,0,0)
2878#define Animate_Close(w) Animate_Open(w,NULL)
2879#define Animate_Seek(w,f) Animate_Play(w,f,f,1)
2880HBITMAP WINAPI CreateMappedBitmap(HINSTANCE,int,UINT,LPCOLORMAP,int);
2881HWND WINAPI CreateStatusWindowA(LONG,LPCSTR,HWND,UINT);
2882HWND WINAPI CreateStatusWindowW(LONG,LPCWSTR,HWND,UINT);
2883HWND WINAPI CreateToolbarEx(HWND,DWORD,UINT,int,HINSTANCE,UINT,LPCTBBUTTON,int,int,int,int,int,UINT);
2884HWND WINAPI CreateUpDownControl(DWORD,int,int,int,int,HWND,int,HINSTANCE,HWND,int,int,int);
2885#define DateTime_GetMonthCal(hwnd) SNDMSG(hwnd, DTM_GETMONTHCAL, 0, 0)
2886#define DateTime_GetMonthCalColor(hwnd, icolor) SNDMSG(hwnd, DTM_GETMONTHCAL, (WPARAM)icolor,0)
2887#define DateTime_GetMonthCalFont(hwnd) SNDMSG(hwnd,DTM_GETMCFONT,0,0)
2888#define DateTime_GetRange(hwnd,lpsystimearray) SNDMSG(hwnd,DTM_GETRANGE,0,(LPARAM)lpsystimearray)
2889#define DateTime_GetSystemtime(hwnd,lpsystime) SNDMSG(hwnd,DTM_GETSYSTEMTIME,0,(LPARAM)lpsystime)
2890#define DateTime_SetFormat(hwnd,lpszformat) SNDMSG(hwnd,DTM_SETFORMAT,0,(LPARAM)lpszformat)
2891#define DateTime_SetMonthCalColor(hwnd,icolor,clr) SNDMSG(hwnd,DTM_SETMCCOLOR,(WPARAM)icolor,(LPARAM)clr)
2892#define DateTime_SetMonthCalFont(hwnd,hfont,lparam) SNDMSG(hwnd,DTM_SETMCFONT,(WPARAM)hfont,(LPARAM)lparam)
2893#define DateTime_SetRange(hwnd,flags,lpsystimearray) SNDMSG(hwnd,DTM_SETRANGE,(WPARAM)flags,(LPARAM)lpsystimearray)
2894#define DateTime_SetSystemtime(hwnd,flag,lpsystime) SNDMSG(hwnd,DTM_SETSYSTEMTIME,(WPARAM)flag,(LPARAM)lpsystime)
2895void WINAPI DrawInsert(HWND,HWND,int);
2896void WINAPI DrawStatusTextA(HDC,LPRECT,LPCSTR,UINT);
2897void WINAPI DrawStatusTextW(HDC,LPRECT,LPCWSTR,UINT);
2898void WINAPI GetEffectiveClientRect(HWND,LPRECT,LPINT);
2899#define Header_GetItemCount(w) (int)SNDMSG((w),HDM_GETITEMCOUNT,0,0)
2900#define Header_InsertItem(w,i,phdi) (int)SNDMSG((w),HDM_INSERTITEM,(WPARAM)(int)(i),(LPARAM)(const HD_ITEM*)(phdi))
2901#define Header_DeleteItem(w,i) (BOOL)SNDMSG((w),HDM_DELETEITEM,(WPARAM)(int)(i),0)
2902#define Header_GetItem(w,i,phdi) (BOOL)SNDMSG((w),HDM_GETITEM,(WPARAM)(int)(i),(LPARAM)(HD_ITEM*)(phdi))
2903#define Header_SetItem(w,i,phdi) (BOOL)SNDMSG((w),HDM_SETITEM,(WPARAM)(int)(i),(LPARAM)(const HD_ITEM*)(phdi))
2904#define Header_Layout(w,l) (BOOL)SNDMSG((w),HDM_LAYOUT,0,(LPARAM)(HD_LAYOUT*)(l))
2905#if (_WIN32_IE >= 0x0300)
2906#define Header_OrderToIndex(w,o) (int)SNDMSG((w),HDM_ORDERTOINDEX,(WPARAM)(o),0)
2907#define Header_GetItemRect(w,i,r) (BOOL)SNDMSG((w),HDM_GETITEMRECT,(WPARAM)(i),(LPARAM)(r))
2908#define Header_GetOrderArray(w,l,a) (BOOL)SNDMSG((w),HDM_GETORDERARRAY,(WPARAM)(l),(LPARAM)(a))
2909#define Header_SetOrderArray(w,l,a) (BOOL)SNDMSG((w),HDM_SETORDERARRAY,(WPARAM)(l),(LPARAM)(a))
2910#define Header_CreateDragImage(w, i) (HIMAGELIST)SNDMSG((w), HDM_CREATEDRAGIMAGE, (WPARAM)i, 0)
2911#define Header_SetImageList(w,l) (HIMAGELIST)SNDMSG((w), HDM_SETIMAGELIST, 0, (LPARAM)l)
2912#define Header_GetImageList(w) (HIMAGELIST)SNDMSG((w),HDM_GETIMAGELIST,0,0)
2913#endif
2914#if (_WIN32_IE >= 0x0400)
2915#define Header_GetUnicodeFormat(w) (BOOL)SNDMSG((w),HDM_GETUNICODEFORMAT,0,0)
2916#define Header_SetUnicodeFormat(w,f) (BOOL)SNDMSG((w),HDM_SETUNICODEFORMAT,(WPARAM)(f),0)
2917#endif
2918HDSA WINAPI DSA_Create(INT,INT);
2919BOOL WINAPI DSA_Destroy(HDSA);
2920VOID WINAPI DSA_DestroyCallback(HDSA,PFNDSAENUMCALLBACK,PVOID);
2921PVOID WINAPI DSA_GetItemPtr(HDSA,INT);
2922INT WINAPI DSA_InsertItem(HDSA,INT,PVOID);
2923HDPA WINAPI DPA_Create(INT);
2924BOOL WINAPI DPA_Destroy(HDPA);
2925PVOID WINAPI DPA_DeletePtr(HDPA,INT);
2926BOOL WINAPI DPA_DeleteAllPtrs(HDPA);
2927VOID WINAPI DPA_EnumCallback(HDPA,PFNDPAENUMCALLBACK,PVOID);
2928VOID WINAPI DPA_DestroyCallback(HDPA,PFNDPAENUMCALLBACK,PVOID);
2929BOOL WINAPI DPA_SetPtr(HDPA,INT,PVOID);
2930INT WINAPI DPA_InsertPtr(HDPA,INT,PVOID);
2931PVOID WINAPI DPA_GetPtr(HDPA,INT_PTR);
2932BOOL WINAPI DPA_Sort(HDPA,PFNDPACOMPARE,LPARAM);
2933INT WINAPI DPA_Search(HDPA,PVOID,INT,PFNDPACOMPARE,LPARAM,UINT);
2934BOOL WINAPI Str_SetPtrW(LPWSTR*,LPCWSTR);
2935#if (_WIN32_IE >= 0x0400)
2936BOOL WINAPI FlatSB_EnableScrollBar(HWND,INT,UINT);
2937BOOL WINAPI FlatSB_ShowScrollBar(HWND,INT,BOOL);
2938BOOL WINAPI FlatSB_GetScrollRange(HWND,INT,LPINT,LPINT);
2939BOOL WINAPI FlatSB_GetScrollInfo(HWND,INT,LPSCROLLINFO);
2940INT WINAPI FlatSB_GetScrollPos(HWND,INT);
2941BOOL WINAPI FlatSB_GetScrollProp(HWND,INT,LPINT);
2942#ifdef _WIN64
2943BOOL WINAPI FlatSB_GetScrollPropPtr(HWND,INT,PINT_PTR);
2944#else
2945#define FlatSB_GetScrollPropPtr FlatSB_GetScrollProp
2946#endif
2947INT WINAPI FlatSB_SetScrollPos(HWND,INT,INT,BOOL);
2948INT WINAPI FlatSB_SetScrollInfo(HWND,INT,LPSCROLLINFO,BOOL);
2949INT WINAPI FlatSB_SetScrollRange(HWND,INT,INT,INT,BOOL);
2950BOOL WINAPI FlatSB_SetScrollProp(HWND,UINT,INT_PTR,BOOL);
2951#define FlatSB_SetScrollPropPtr FlatSB_SetScrollProp
2952BOOL WINAPI InitializeFlatSB(HWND);
2953HRESULT WINAPI UninitializeFlatSB(HWND);
2954#endif /* _WIN32_IE >= 0x0400 */
2955#if (_WIN32_WINNT >= 0x0501)
2956BOOL WINAPI SetWindowSubclass(HWND,SUBCLASSPROC,UINT_PTR,DWORD_PTR);
2957BOOL WINAPI GetWindowSubclass(HWND,SUBCLASSPROC,UINT_PTR,DWORD_PTR*);
2958BOOL WINAPI RemoveWindowSubclass(HWND,SUBCLASSPROC,UINT_PTR);
2959LRESULT WINAPI DefSubclassProc(HWND,UINT,WPARAM,LPARAM);
2960INT WINAPI DrawShadowText(HDC,LPCWSTR,UINT,RECT*,DWORD,COLORREF,COLORREF,INT,INT);
2961#endif /* _WIN32_WINNT >= 0x0501 */
2962int WINAPI ImageList_Add(HIMAGELIST,HBITMAP,HBITMAP);
2963#define ImageList_AddIcon(l,i) ImageList_ReplaceIcon(l,-1,i)
2964int WINAPI ImageList_AddMasked(HIMAGELIST,HBITMAP,COLORREF);
2965BOOL WINAPI ImageList_BeginDrag(HIMAGELIST,int,int,int);
2966HIMAGELIST WINAPI ImageList_Create(int,int,UINT,int,int);
2967BOOL WINAPI ImageList_Destroy(HIMAGELIST);
2968BOOL WINAPI ImageList_DragEnter(HWND,int,int);
2969BOOL WINAPI ImageList_DragLeave(HWND);
2970BOOL WINAPI ImageList_DragMove(int,int);
2971BOOL WINAPI ImageList_DragShowNolock(BOOL);
2972BOOL WINAPI ImageList_Draw(HIMAGELIST,int,HDC,int,int,UINT);
2973BOOL WINAPI ImageList_DrawEx(HIMAGELIST,int,HDC,int,int,int,int,COLORREF,COLORREF,UINT);
2974void WINAPI ImageList_EndDrag(VOID);
2975#define ImageList_ExtractIcon(h,l,i) ImageList_GetIcon(l,i,0)
2976COLORREF WINAPI ImageList_GetBkColor(HIMAGELIST);
2977HIMAGELIST WINAPI ImageList_GetDragImage(LPPOINT,LPPOINT);
2978HICON WINAPI ImageList_GetIcon(HIMAGELIST,int,UINT);
2979BOOL WINAPI ImageList_GetIconSize(HIMAGELIST,int*,int*);
2980int WINAPI ImageList_GetImageCount(HIMAGELIST);
2981BOOL WINAPI ImageList_GetImageInfo(HIMAGELIST,int,IMAGEINFO*);
2982#define ImageList_LoadBitmap(h,l,x,G,M) ImageList_LoadImage(h,l,x,G,M,IMAGE_BITMAP,0)
2983HIMAGELIST WINAPI ImageList_LoadImageA(HINSTANCE,LPCSTR,int,int,COLORREF,UINT,UINT);
2984HIMAGELIST WINAPI ImageList_LoadImageW(HINSTANCE,LPCWSTR,int,int,COLORREF,UINT,UINT);
2985HIMAGELIST WINAPI ImageList_Merge(HIMAGELIST,int,HIMAGELIST,int,int,int);
2986BOOL WINAPI ImageList_Remove(HIMAGELIST,int);
2987#define ImageList_RemoveAll(l) ImageList_Remove(l,-1)
2988BOOL WINAPI ImageList_Replace(HIMAGELIST,int,HBITMAP,HBITMAP);
2989int WINAPI ImageList_ReplaceIcon(HIMAGELIST,int,HICON);
2990COLORREF WINAPI ImageList_SetBkColor(HIMAGELIST,COLORREF);
2991BOOL WINAPI ImageList_SetDragCursorImage(HIMAGELIST,int,int,int);
2992BOOL WINAPI ImageList_SetIconSize(HIMAGELIST,int,int);
2993BOOL WINAPI ImageList_SetOverlayImage(HIMAGELIST,int,int);
2994#ifdef _OBJIDL_H
2995HIMAGELIST WINAPI ImageList_Read(LPSTREAM);
2996BOOL WINAPI ImageList_Write(HIMAGELIST,LPSTREAM);
2997#endif
2998#if (_WIN32_IE >= 0x0400)
2999HIMAGELIST WINAPI ImageList_Duplicate(HIMAGELIST himl);
3000#endif
3001void WINAPI InitCommonControls(void);
3002#if (_WIN32_IE >= 0x0300)
3003BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX);
3004#endif
3005int WINAPI LBItemFromPt(HWND,POINT,BOOL);
3006#define ListView_GetBkColor(w) (COLORREF)SNDMSG((w),LVM_GETBKCOLOR,0,0)
3007#define ListView_GetImageList(w,i) (HIMAGELIST)SNDMSG((w),LVM_GETIMAGELIST,(i),0)
3008#define ListView_GetItemCount(w) (int)SNDMSG((w),LVM_GETITEMCOUNT,0,0)
3009#define ListView_GetItem(w,i) (BOOL)SNDMSG((w),LVM_GETITEM,0,(LPARAM)(i))
3010#define ListView_SetBkColor(w,c) (BOOL)SNDMSG((w),LVM_SETBKCOLOR,0,(LPARAM)c)
3011#define ListView_SetImageList(w,h,i) (HIMAGELIST)(UINT)SNDMSG((w),LVM_SETIMAGELIST,(i),(LPARAM)(h))
3012#define ListView_SetItem(w,i) (BOOL)SNDMSG((w),LVM_SETITEM,0,(LPARAM)(const LV_ITEM*)(i))
3013#define ListView_InsertItem(w,i) (int)SNDMSG((w),LVM_INSERTITEM,0,(LPARAM)(const LV_ITEM*)(i))
3014#define ListView_DeleteItem(w,i) (BOOL)SNDMSG((w),LVM_DELETEITEM,i,0)
3015#define ListView_DeleteAllItems(w) (BOOL)SNDMSG((w),LVM_DELETEALLITEMS,0,0)
3016#define ListView_GetCallbackMask(w) (BOOL)SNDMSG((w),LVM_GETCALLBACKMASK,0,0)
3017#define ListView_SetCallbackMask(w,m) (BOOL)SNDMSG((w),LVM_SETCALLBACKMASK,m,0)
3018#define ListView_GetNextItem(w,i,f) (int)SNDMSG((w),LVM_GETNEXTITEM,i,MAKELPARAM((f),0))
3019#define ListView_FindItem(w,i,p) (int)SNDMSG((w), LVM_FINDITEM,(WPARAM)i,(LPARAM)(const LV_FINDINFO*)(p))
3020#define ListView_GetItemRect(w,i,p,c) (BOOL)SNDMSG((w),LVM_GETITEMRECT,i,((p)?(((LPRECT)(p))->left=(c),(LPARAM)(LPRECT)(p)):0))
3021#define ListView_SetItemPosition(w,i,x,y) (BOOL)SNDMSG((w),LVM_SETITEMPOSITION,i,MAKELPARAM(x,y))
3022#define ListView_GetItemPosition(w,i,p) (BOOL)SNDMSG((w),LVM_GETITEMPOSITION,i,(LPARAM)p)
3023#define ListView_GetItemSpacing(w,f) (DWORD)SNDMSG((w),LVM_GETITEMSPACING,f,0)
3024#define ListView_GetStringWidth(w,s) (int)SNDMSG((w),LVM_GETSTRINGWIDTH,0,(LPARAM)s)
3025#define ListView_HitTest(w,p) (int)SNDMSG((w),LVM_HITTEST,0,(LPARAM)(LV_HITTESTINFO*)(p))
3026#define ListView_EnsureVisible(w,i,f) (BOOL)SNDMSG((w),LVM_ENSUREVISIBLE,i,MAKELPARAM((f),0))
3027#define ListView_Scroll(w,dx,dy) (BOOL)SNDMSG((w),LVM_SCROLL,dx,dy)
3028#define ListView_RedrawItems(w,f,l) (BOOL)SNDMSG((w),LVM_REDRAWITEMS,f,l)
3029#define ListView_Arrange(w,c) (BOOL)SNDMSG((w),LVM_ARRANGE,c,0)
3030#define ListView_EditLabel(w,i) (HWND)SNDMSG((w),LVM_EDITLABEL,i,0)
3031#define ListView_GetEditControl(w) (HWND)SNDMSG((w),LVM_GETEDITCONTROL,0,0)
3032#define ListView_GetColumn(w,i,p) (BOOL)SNDMSG((w),LVM_GETCOLUMN,i,(LPARAM)(LV_COLUMN*)(p))
3033#define ListView_SetColumn(w,i,p) (BOOL)SNDMSG((w),LVM_SETCOLUMN,i,(LPARAM)(const LV_COLUMN*)(p))
3034#define ListView_InsertColumn(w,i,p) (int)SNDMSG((w),LVM_INSERTCOLUMN,i,(LPARAM)(const LV_COLUMN*)(p))
3035#define ListView_DeleteColumn(w,i) (BOOL)SNDMSG((w),LVM_DELETECOLUMN,i,0)
3036#define ListView_GetColumnWidth(w,i) (int)SNDMSG((w),LVM_GETCOLUMNWIDTH,i,0)
3037#define ListView_SetColumnWidth(w,i,x) (BOOL)SNDMSG((w),LVM_SETCOLUMNWIDTH,i,MAKELPARAM((x),0))
3038#define ListView_CreateDragImage(w,i,p) (HIMAGELIST)SNDMSG((w),LVM_CREATEDRAGIMAGE,i,(LPARAM)(LPPOINT)(p))
3039#define ListView_GetViewRect(w,p) (BOOL)SNDMSG((w),LVM_GETVIEWRECT,0,(LPARAM)(LPRECT)(p))
3040#define ListView_GetTextColor(w) (COLORREF)SNDMSG((w),LVM_GETTEXTCOLOR,0,0)
3041#define ListView_SetTextColor(w,c) (BOOL)SNDMSG((w),LVM_SETTEXTCOLOR,0,(LPARAM)(COLORREF)(c))
3042#define ListView_GetTextBkColor(w) (COLORREF)SNDMSG((w),LVM_GETTEXTBKCOLOR,0,0)
3043#define ListView_SetTextBkColor(w,c) (BOOL)SNDMSG((w),LVM_SETTEXTBKCOLOR,0,(LPARAM)(COLORREF)(c))
3044#define ListView_GetTopIndex(w) (int)SNDMSG((w),LVM_GETTOPINDEX,0,0)
3045#define ListView_GetCountPerPage(w) (int)SNDMSG((w),LVM_GETCOUNTPERPAGE,0,0)
3046#define ListView_GetOrigin(w,p) (BOOL)SNDMSG((w),LVM_GETORIGIN,0,(LPARAM)(POINT*)(p))
3047#define ListView_GetOrigin(w,p) (BOOL)SNDMSG((w),LVM_GETORIGIN,0,(LPARAM)(POINT*)(p))
3048#define ListView_Update(w,i) (BOOL)SNDMSG((w),LVM_UPDATE,i,0)
3049#define ListView_SetItemState(w,i,d,m) \
3050{ \
3051 LV_ITEM _lvi;\
3052 _lvi.stateMask=m;\
3053 _lvi.state=d;\
3054 SNDMSG((w),LVM_SETITEMSTATE,i,(LPARAM)(LV_ITEM*)&_lvi);\
3055}
3056#define ListView_GetItemState(w,i,m) (UINT)SNDMSG((w),LVM_GETITEMSTATE,i,m)
3057#define ListView_GetItemText(w,i,iS,s,n) \
3058{ \
3059 LV_ITEM _lvi;\
3060 _lvi.iSubItem=iS;\
3061 _lvi.cchTextMax=n;\
3062 _lvi.pszText=s;\
3063 SNDMSG((w),LVM_GETITEMTEXT,i,(LPARAM)(LV_ITEM*)&_lvi);\
3064}
3065#define ListView_SetItemText(w,i,iS,s) \
3066{ \
3067 LV_ITEM _lvi;\
3068 _lvi.iSubItem=iS;\
3069 _lvi.pszText=s;\
3070 SNDMSG((w),LVM_SETITEMTEXT,i,(LPARAM)(LV_ITEM*)&_lvi);\
3071}
3072#define ListView_SetItemCount(w,n) SNDMSG((w),LVM_SETITEMCOUNT,n,0)
3073#define ListView_SortItems(w,f,l) (BOOL)SNDMSG((w),LVM_SORTITEMS,l,(LPARAM)f)
3074#define ListView_SetItemPosition32(w,i,x,y) \
3075{ \
3076 POINT p={x,y}; \
3077 SNDMSG((w),LVM_SETITEMPOSITION32,i,(LPARAM)&p);\
3078}
3079#define ListView_GetSelectedCount(w) (UINT)SNDMSG((w),LVM_GETSELECTEDCOUNT,0,0)
3080#define ListView_GetCheckState(w,i) ((((UINT)(SNDMSG((w),LVM_GETITEMSTATE,(WPARAM)(i),LVIS_STATEIMAGEMASK)))>>12)-1)
3081#define ListView_SetCheckState(w,i,f) ListView_SetItemState(w,i,INDEXTOSTATEIMAGEMASK((f)+1),LVIS_STATEIMAGEMASK)
3082#define ListView_GetISearchString(w, lpsz) (BOOL)SNDMSG((w), LVM_GETISEARCHSTRING, 0, (LPARAM) (LPTSTR)(lpsz))
3083
3084#if (_WIN32_WINNT >= 0x0501)
3085#define ComboBox_SetMinVisible(w,i) (BOOL)SNDMSG((w), CB_SETMINVISIBLE, (WPARAM)(i), 0);
3086#define ComboBox_GetMinVisible(w) (int)SNDMSG((w), CB_GETMINVISIBLE, 0, 0);
3087#endif
3088
3089BOOL WINAPI MakeDragList(HWND);
3090void WINAPI MenuHelp(UINT,WPARAM,LPARAM,HMENU,HINSTANCE,HWND,PUINT);
3091#define MonthCal_GetColor(hwnd,icolor) SNDMSG(hwnd,MCM_GETCOLOR,(WPARAM)icolor,(LPARAM)0)
3092#define MonthCal_GetCurSel(hwnd,lpsystime) SNDMSG(hwnd,MCM_GETCURSEL,0,(LPARAM)lpsystime)
3093#define MonthCal_GetFirstDayOfWeek(hwnd) SNDMSG(hwnd,MCM_GETFIRSTDAYOFWEEK,0,0)
3094#define MonthCal_GetMaxSelCount(hwnd) SNDMSG(hwnd,MCM_GETMAXSELCOUNT,0,0)
3095#define MonthCal_GetMaxTodayWidth(hwnd) SNDMSG(hwnd,MCM_GETMAXTODAYWIDTH,0,0)
3096#define MonthCal_GetMinReqRect(hwnd,lpRectInfo) SNDMSG(hwnd,MCM_GETMINREQRECT,0,(LPARAM)lpRectInfo)
3097#define MonthCal_GetMonthDelta(hwnd) SNDMSG(hwnd,MCM_GETMONTHDELTA,0,0)
3098#define MonthCal_GetMonthRange(hwnd,flag,systimearray) SNDMSG(hwnd,MCM_GETMONTHRANGE,(WPARAM)flag,(LPARAM)systimearray)
3099#define MonthCal_GetRange(hwnd,systimearray) SNDMSG(hwnd,MCM_GETRANGE,0,(LPARAM)systimearray)
3100#define MonthCal_GetSelRange(hwnd,systimearray) SNDMSG(hwnd,MCM_GETSELRANGE,0,(LPARAM)systimearray)
3101#define MonthCal_GetToday(hwnd,systime) SNDMSG(hwnd,MCM_GETTODAY,0,(LPARAM)systime)
3102#define MonthCal_GetUnicodeFormat(hwnd) SNDMSG(hwnd,MCM_GETUNICODEFORMAT,0,0)
3103#define MonthCal_HitTest(hwnd,pmchittest) SNDMSG(hwnd,MCM_HITTEST,0,(LPARAM)pmchittest)
3104#define MonthCal_SetColor(hwnd,icolor,clr) SNDMSG(hwnd,MCM_SETCOLOR,(WPARAM)icolor,(LPARAM)clr)
3105#define MonthCal_SetCurSel(hwnd,lpsystime) SNDMSG(hwnd,MCM_SETCURSEL,0,(LPARAM)lpsystime)
3106#define MonthCal_SetDayState(hwnd,imonths,lpdatestatearray) SNDMSG(hwnd,MCM_SETDAYSTATE,(WPARAM)imonths,(LPARAM)lpdatestatearray)
3107#define MonthCal_SetFirstDayOfWeek(hwnd,iday) SNDMSG(hwnd,MCM_SETFIRSTDAYOFWEEK,0,(LPARAM)iday)
3108#define MonthCal_SetMaxSelCount(hwnd,imax) SNDMSG(hwnd,MCM_SETMAXSELCOUNT,(WPARAM)imax,0)
3109#define MonthCal_SetMonthDelta(hwnd,idelta) SNDMSG(hwnd,MCM_SETMONTHDELTA,(WPARAM)idelta,0)
3110#define MonthCal_SetSelRange(hwnd,systimearray) SNDMSG(hwnd,MCM_SETSELRANGE,0,(LPARAM)systimearray)
3111#define MonthCal_SetToday(hwnd,systime) SNDMSG(hwnd,MCM_SETTODAY,0,(LPARAM)systime)
3112#define MonthCal_SetUnicodeFormat(hwnd,unicode) SNDMSG(hwnd,MCM_SETUNICODEFORMAT,(WPARAM)unicode,0)
3113#define MonthCal_SetRange(w,f,st) (BOOL)SNDMSG((w),MCM_SETRANGE,(WPARAM)(f),(LPARAM)(st))
3114BOOL WINAPI ShowHideMenuCtl(HWND,UINT,PINT);
3115#define TabCtrl_GetItem(w,i,p) (BOOL)SNDMSG((w),TCM_GETITEM,i,(LPARAM)(TC_ITEM*)(p))
3116#define TabCtrl_SetItem(w,i,p) (BOOL)SNDMSG((w),TCM_SETITEM,i,(LPARAM)(TC_ITEM*)(p))
3117#define TabCtrl_InsertItem(w,i,p) (int)SNDMSG((w),TCM_INSERTITEM,i,(LPARAM)(const TC_ITEM*)(p))
3118#define TabCtrl_DeleteItem(w,i) (BOOL)SNDMSG((w),TCM_DELETEITEM,i,0)
3119#define TabCtrl_DeleteAllItems(w) (BOOL)SNDMSG((w),TCM_DELETEALLITEMS,0,0)
3120#define TabCtrl_GetItemRect(w,i,p) (BOOL)SNDMSG((w),TCM_GETITEMRECT,i,(LPARAM)(LPRECT)(p))
3121#define TabCtrl_GetCurSel(w) (int)SNDMSG((w),TCM_GETCURSEL,0,0)
3122#define TabCtrl_SetCurSel(w,i) (int)SNDMSG((w),TCM_SETCURSEL,i,0)
3123#define TabCtrl_HitTest(w,p) (int)SNDMSG((w),TCM_HITTEST,0,(LPARAM)(TC_HITTESTINFO*)(p))
3124#define TabCtrl_SetItemExtra(w,c) (BOOL)SNDMSG((w),TCM_SETITEMEXTRA,c,0)
3125#define TabCtrl_AdjustRect(w,b,p) (int)SNDMSG((w),TCM_ADJUSTRECT,b,(LPARAM)(LPRECT)p)
3126#define TabCtrl_SetItemSize(w,x,y) (DWORD)SNDMSG((w),TCM_SETITEMSIZE,0,MAKELPARAM(x,y))
3127#define TabCtrl_RemoveImage(w,i) (void)SNDMSG((w),TCM_REMOVEIMAGE,i,0)
3128#define TabCtrl_SetPadding(w,x,y) (void)SNDMSG((w),TCM_SETPADDING,0,MAKELPARAM(x,y))
3129#define TabCtrl_GetRowCount(w) (int)SNDMSG((w),TCM_GETROWCOUNT,0,0)
3130#define TabCtrl_GetToolTips(w) (HWND)SNDMSG((w),TCM_GETTOOLTIPS,0,0)
3131#define TabCtrl_SetToolTips(w,t) (void)SNDMSG((w),TCM_SETTOOLTIPS,(WPARAM)t,0)
3132#define TabCtrl_GetCurFocus(w) (int)SNDMSG((w),TCM_GETCURFOCUS,0,0)
3133#define TabCtrl_SetCurFocus(w,i) (void)SNDMSG((w),TCM_SETCURFOCUS,i,0)
3134#define TabCtrl_GetImageList(w) (HIMAGELIST)SNDMSG((w),TCM_GETIMAGELIST,0,0)
3135#define TabCtrl_SetImageList(w,h) (HIMAGELIST)SNDMSG((w),TCM_SETIMAGELIST,0,(LPARAM)(UINT)(h))
3136#define TabCtrl_GetItemCount(w) (int)SNDMSG((w),TCM_GETITEMCOUNT,0,0)
3137BOOL WINAPI _TrackMouseEvent(LPTRACKMOUSEEVENT);
3138#define TreeView_InsertItem(w,i) (HTREEITEM)SNDMSG((w),TVM_INSERTITEM,0,(LPARAM)(LPTV_INSERTSTRUCT)(i))
3139#define TreeView_DeleteItem(w,i) (BOOL)SNDMSG((w),TVM_DELETEITEM,0,(LPARAM)(HTREEITEM)(i))
3140#define TreeView_DeleteAllItems(w) (BOOL)SNDMSG((w),TVM_DELETEITEM,0,(LPARAM)TVI_ROOT)
3141#define TreeView_Expand(w,i,c) (BOOL)SNDMSG((w),TVM_EXPAND,c,(LPARAM)(HTREEITEM)(i))
3142#define TreeView_GetItemRect(w,i,p,c) (*(HTREEITEM*)p=(i),(BOOL)SNDMSG((w),TVM_GETITEMRECT,c,(LPARAM)(LPRECT)(p)))
3143#define TreeView_GetCount(w) (UINT)SNDMSG((w),TVM_GETCOUNT,0,0)
3144#define TreeView_GetIndent(w) (UINT)SNDMSG((w),TVM_GETINDENT,0,0)
3145#define TreeView_SetIndent(w,i) (BOOL)SNDMSG((w),TVM_SETINDENT,i,0)
3146#define TreeView_GetImageList(w,i) (HIMAGELIST)SNDMSG((w),TVM_GETIMAGELIST,i,0)
3147#define TreeView_SetImageList(w,h,i) (HIMAGELIST)SNDMSG((w),TVM_SETIMAGELIST,i,(LPARAM)(HIMAGELIST)(h))
3148#define TreeView_GetNextItem(w,i,c) (HTREEITEM)SNDMSG((w),TVM_GETNEXTITEM,c,(LPARAM)(HTREEITEM)(i))
3149#define TreeView_GetChild(w,i) TreeView_GetNextItem(w,i,TVGN_CHILD)
3150#define TreeView_GetNextSibling(w,i) TreeView_GetNextItem(w,i,TVGN_NEXT)
3151#define TreeView_GetPrevSibling(w,i) TreeView_GetNextItem(w,i,TVGN_PREVIOUS)
3152#define TreeView_GetParent(w,i) TreeView_GetNextItem(w,i,TVGN_PARENT)
3153#define TreeView_GetFirstVisible(w) TreeView_GetNextItem(w,NULL,TVGN_FIRSTVISIBLE)
3154#define TreeView_GetNextVisible(w,i) TreeView_GetNextItem(w,i,TVGN_NEXTVISIBLE)
3155#define TreeView_GetPrevVisible(w,i) TreeView_GetNextItem(w,i,TVGN_PREVIOUSVISIBLE)
3156#define TreeView_GetSelection(w) TreeView_GetNextItem(w,NULL,TVGN_CARET)
3157#define TreeView_GetDropHilight(w) TreeView_GetNextItem(w,NULL,TVGN_DROPHILITE)
3158#define TreeView_GetRoot(w) TreeView_GetNextItem(w,NULL,TVGN_ROOT)
3159#define TreeView_Select(w,i,c) (BOOL)SNDMSG((w),TVM_SELECTITEM,c,(LPARAM)(HTREEITEM)(i))
3160#define TreeView_SelectItem(w,i) TreeView_Select(w,i,TVGN_CARET)
3161#define TreeView_SelectDropTarget(w,i) TreeView_Select(w,i,TVGN_DROPHILITE)
3162#define TreeView_SelectSetFirstVisible(w,i) TreeView_Select(w,i,TVGN_FIRSTVISIBLE)
3163#define TreeView_GetItem(w,i) (BOOL)SNDMSG((w),TVM_GETITEM,0,(LPARAM)(TV_ITEM*)(i))
3164#define TreeView_SetItem(w,i) (BOOL)SNDMSG((w),TVM_SETITEM,0,(LPARAM)(const TV_ITEM*)(i))
3165#define TreeView_EditLabel(w,i) (HWND)SNDMSG((w),TVM_EDITLABEL,0,(LPARAM)(HTREEITEM)(i))
3166#define TreeView_GetEditControl(w) (HWND)SNDMSG((w),TVM_GETEDITCONTROL,0,0)
3167#define TreeView_GetVisibleCount(w) (UINT)SNDMSG((w),TVM_GETVISIBLECOUNT,0,0)
3168#define TreeView_HitTest(w,p) (HTREEITEM)SNDMSG((w),TVM_HITTEST,0,(LPARAM)(LPTV_HITTESTINFO)(p))
3169#define TreeView_CreateDragImage(w,i) (HIMAGELIST)SNDMSG((w),TVM_CREATEDRAGIMAGE,0,(LPARAM)(HTREEITEM)(i))
3170#define TreeView_SortChildren(w,i,r) (BOOL)SNDMSG((w),TVM_SORTCHILDREN,r,(LPARAM)(HTREEITEM)(i))
3171#define TreeView_EnsureVisible(w,i) (BOOL)SNDMSG((w),TVM_ENSUREVISIBLE,0,(LPARAM)(HTREEITEM)(i))
3172#define TreeView_SortChildrenCB(w,s,r) (BOOL)SNDMSG((w),TVM_SORTCHILDRENCB,r,(LPARAM)(LPTVSORTCB)(s))
3173#define TreeView_EndEditLabelNow(w,f) (BOOL)SNDMSG((w),TVM_ENDEDITLABELNOW,f,0)
3174#define TreeView_GetISearchString(w,s) (BOOL)SNDMSG((w),TVM_GETISEARCHSTRING,0,(LPARAM)s)
3175#if (_WIN32_IE >= 0x0300)
3176#define ListView_ApproximateViewRect(w,iw,ih,i) (DWORD)SNDMSG((w),LVM_APPROXIMATEVIEWRECT,(i),MAKELPARAM((iw),(ih)))
3177#define ListView_SetExtendedListViewStyle(w,s) (DWORD)SNDMSG((w),LVM_SETEXTENDEDLISTVIEWSTYLE,0,(s))
3178#define ListView_GetExtendedListViewStyle(w) (DWORD)SNDMSG((w),LVM_GETEXTENDEDLISTVIEWSTYLE,0,0)
3179#define ListView_SetColumnOrderArray(w,i,a) (BOOL)SNDMSG((w),LVM_SETCOLUMNORDERARRAY,(WPARAM)(i),(LPARAM)(LPINT)(a))
3180#define ListView_GetColumnOrderArray(w,i,a) (BOOL)SNDMSG((w),LVM_GETCOLUMNORDERARRAY,(WPARAM)(i),(LPARAM)(LPINT)(a))
3181#define ListView_GetHeader(w) (HWND)SNDMSG((w),LVM_GETHEADER,0,0)
3182#define ListView_GetHotCursor(w) (HCURSOR)SNDMSG((w),LVM_GETHOTCURSOR,0,0)
3183#define ListView_GetHotItem(w) (INT)SNDMSG((w),LVM_GETHOTITEM,0,0)
3184#define ListView_GetSubItemRect(w,i,is,c,p) (BOOL)SNDMSG((w),LVM_GETSUBITEMRECT,(WPARAM)(int)(i),((p)?(((LPRECT)(p))->left=(c),(((LPRECT)(p))->top=(is)),(LPARAM)(LPRECT)(p)):0))
3185#define ListView_SetHotCursor(w,c) (HCURSOR)SNDMSG((w),LVM_SETHOTCURSOR,0,(LPARAM)(c))
3186#define ListView_SetHotItem(w,i) (int)SNDMSG((w),LVM_SETHOTITEM,(WPARAM)(i),0)
3187#define ListView_SetIconSpacing(w,x,y) (DWORD)SNDMSG((w),LVM_SETICONSPACING,0,MAKELONG(x,y))
3188#define ListView_SubItemHitTest(w,p) (int)SNDMSG((w),LVM_SUBITEMHITTEST,0,(LPARAM)(LPLVHITTESTINFO)(p))
3189#define ListView_SetItemCountEx(w, i, f) SNDMSG((w), LVM_SETITEMCOUNT, (WPARAM)(i), (LPARAM)(f))
3190WINBOOL WINAPI ImageList_SetImageCount(HIMAGELIST,UINT);
3191WINBOOL WINAPI ImageList_Copy(HIMAGELIST,int,HIMAGELIST,int,UINT);
3192WINBOOL WINAPI ImageList_DrawIndirect(IMAGELISTDRAWPARAMS*);
3193#define TabCtrl_SetMinTabWidth(hwnd, x) SNDMSG((hwnd), TCM_SETMINTABWIDTH, 0, x)
3194#define TabCtrl_DeselectAll(hwnd, fExcludeFocus) SNDMSG((hwnd), TCM_DESELECTALL, fExcludeFocus, 0)
3195#define TreeView_GetToolTips(w) (HWND)SNDMSG((w),TVM_GETTOOLTIPS,0,0)
3196#define TreeView_SetToolTips(w,wt) (HWND)SNDMSG((w),TVM_SETTOOLTIPS,(WPARAM)(wt),0)
3197#endif
3198#if (_WIN32_IE >= 0x0400)
3199#define ListView_GetBkImage(h,plvbki) (BOOL)SNDMSG((h), LVM_GETBKIMAGE, 0, (LPARAM)(plvbki))
3200#define ListView_SetBkImage(h, plvbki) (BOOL)SNDMSG((h), LVM_SETBKIMAGE, 0, (LPARAM)(plvbki))
3201#define ListView_SetExtendedListViewStyleEx(w,m,s) (DWORD)SNDMSG((w),LVM_SETEXTENDEDLISTVIEWSTYLE,(m),(s))
3202#define ListView_SetWorkAreas(w,n,r) (BOOL)SNDMSG((w),LVM_SETWORKAREAS,(WPARAM)(n),(LPARAM)(RECT *)(r))
3203#define ListView_GetWorkAreas(w,n,r) (BOOL)SNDMSG((w),LVM_GETWORKAREAS,(WPARAM)(n),(LPARAM)(RECT *)(r))
3204#define ListView_GetNumberOfWorkAreas(w,n) (BOOL)SNDMSG((w),LVM_GETNUMBEROFWORKAREAS,0,(LPARAM)(UINT *)(n))
3205#define ListView_SetHoverTime(w,t) (DWORD)SNDMSG((w),LVM_SETHOVERTIME,0,(LPARAM)(t))
3206#define ListView_GetHoverTime(w) (DWORD)SNDMSG((w),LVM_GETHOVERTIME,0,0)
3207#define ListView_GetSelectionMark(w) (INT)SNDMSG((w),LVM_GETSELECTIONMARK,0,0)
3208#define ListView_SetSelectionMark(w,i) (INT)SNDMSG((w),LVM_SETSELECTIONMARK,0,(LPARAM)(i))
3209#define ListView_SetToolTips(w,n) (HWND)SNDMSG((w),LVM_SETTOOLTIPS,(WPARAM)(n),0)
3210#define ListView_GetToolTips(w) (HWND)SNDMSG((w),LVM_GETTOOLTIPS,0,0)
3211#define ListView_SetUnicodeFormat(w, f) (BOOL)SNDMSG((w), LVM_SETUNICODEFORMAT, (WPARAM)(f), 0)
3212#define ListView_GetUnicodeFormat(w) (BOOL)SNDMSG((w), LVM_GETUNICODEFORMAT, 0, 0)
3213#define TabCtrl_HighlightItem(hwnd, i, fHighlight) SNDMSG((hwnd), TCM_HIGHLIGHTITEM, (WPARAM)i, (LPARAM)MAKELONG (fHighlight, 0))
3214#define TabCtrl_SetExtendedStyle(hwnd, dw) SNDMSG((hwnd), TCM_SETEXTENDEDSTYLE, 0, dw)
3215#define TabCtrl_GetExtendedStyle(hwnd) SNDMSG((hwnd), TCM_GETEXTENDEDSTYLE, 0, 0)
3216#define TabCtrl_SetUnicodeFormat(hwnd, fUnicode) SNDMSG((hwnd), TCM_SETUNICODEFORMAT, (WPARAM)(fUnicode), 0)
3217#define TabCtrl_GetUnicodeFormat(hwnd) SNDMSG((hwnd), TCM_GETUNICODEFORMAT, 0, 0)
3218#define TreeView_GetBkColor(w) (COLORREF)SNDMSG((w),TVM_GETBKCOLOR,0,0)
3219#define TreeView_GetInsertMarkColor(w) (COLORREF)SNDMSG((w),TVM_GETINSERTMARKCOLOR,0,0)
3220#define TreeView_GetItemHeight(w) (int)SNDMSG((w),TVM_GETITEMHEIGHT,0,0)
3221#define TreeView_GetScrollTime(w) (UINT)SNDMSG((w),TVM_GETSCROLLTIME,0,0)
3222#define TreeView_GetTextColor(w) (COLORREF)SNDMSG((w),TVM_GETTEXTCOLOR,0,0)
3223#define TreeView_SetBkColor(w,c) (COLORREF)SNDMSG((w),TVM_SETBKCOLOR,0,(LPARAM)(c))
3224#define TreeView_SetInsertMarkColor(w,c) (COLORREF)SNDMSG((w),TVM_SETINSERTMARKCOLOR,0,(LPARAM)(c))
3225#define TreeView_SetItemHeight(w,h) (int)SNDMSG((w),TVM_SETITEMHEIGHT,(WPARAM)(h),0)
3226#define TreeView_SetScrollTime(w,t) (UINT)SNDMSG((w),TVM_SETSCROLLTIME,(WPARAM)(UINT)(t),0)
3227#define TreeView_SetTextColor(w,c) (COLORREF)SNDMSG((w),TVM_SETTEXTCOLOR,0,(LPARAM)(c))
3228#define TreeView_SetInsertMark(w,i,a) (BOOL)SNDMSG((w),TVM_SETINSERTMARK,(WPARAM)(a),(LPARAM)(i))
3229#define TreeView_SetUnicodeFormat(w,u) (BOOL)SNDMSG((w),TVM_SETUNICODEFORMAT,(WPARAM)(u),0)
3230#define TreeView_GetUnicodeFormat(w) (BOOL)SNDMSG((w),TVM_GETUNICODEFORMAT,0,0)
3231#define TreeView_GetLastVisible(w) TreeView_GetNextItem(w,NULL,TVGN_LASTVISIBLE)
3232#endif
3233#if (_WIN32_IE >= 0x0500)
3234#define TreeView_GetItemState(w,i,m) (UINT)SNDMSG((w),TVM_GETITEMSTATE,(WPARAM)(i),(LPARAM)(m))
3235#define TreeView_SetItemState(w,i,d,m) \
3236{ \
3237 TVITEM _tvi;\
3238 _tvi.mask=TVIF_STATE;\
3239 _tvi.hItem=i; \
3240 _tvi.stateMask=m;\
3241 _tvi.state=d;\
3242 SNDMSG((w),TVM_SETITEM,0,(LPARAM)(TVITEM*)&_tvi);\
3243}
3244#endif
3245
3246#ifdef UNICODE
3247typedef HDITEMW HDITEM;
3248typedef TOOLINFOW TOOLINFO,*PTOOLINFO,*LPTOOLINFO;
3249typedef TTHITTESTINFOW TTHITTESTINFO,*LPHITTESTINFO,*LPTTHITTESTINFO;
3250typedef TOOLTIPTEXTW TOOLTIPTEXT,*LPTOOLTIPTEXT;
3251typedef NMTTDISPINFOW NMTTDISPINFO, *LPNMTTDISPINFO;
3252typedef TV_ITEMW TV_ITEM,*LPTV_ITEM;
3253typedef TVITEMW TVITEM,*LPTVITEM;
3254#if (_WIN32_IE >= 0x0400)
3255typedef TVITEMEXW TVITEMEX,*LPTVITEMEX;
3256#endif
3257typedef TV_INSERTSTRUCTW TV_INSERTSTRUCT,*LPTV_INSERTSTRUCT;
3258typedef TVINSERTSTRUCTW TVINSERTSTRUCT,*LPTVINSERTSTRUCT;
3259typedef NM_TREEVIEWW NM_TREEVIEW,*LPNM_TREEVIEW;
3260typedef NMTREEVIEWW NMTREEVIEW,*LPNMTREEVIEW;
3261typedef NMHDDISPINFOW NMHDDISPINFO, *LPNMHDDISPINFO;
3262#define ACM_OPEN ACM_OPENW
3263#define COMBOBOXEXITEM COMBOBOXEXITEMW
3264#define PCOMBOBOXEXITEM PCOMBOBOXEXITEMW
3265#define PCCOMBOBOXEXITEM PCCOMBOBOXEXITEMW
3266#define CBEM_INSERTITEM CBEM_INSERTITEMW
3267#define CBEM_SETITEM CBEM_SETITEMW
3268#define CBEM_GETITEM CBEM_GETITEMW
3269#define CBEN_ENDEDIT CBEN_ENDEDITW
3270#define NMCBEENDEDIT NMCBEENDEDITW
3271#define LPNMCBEENDEDIT LPNMCBEENDEDITW
3272#define PNMCBEENDEDIT PNMCBEENDEDITW
3273#if _WIN32_IE >= 0x0400
3274#define NMCOMBOBOXEX NMCOMBOBOXEXW
3275#define PNMCOMBOBOXEX PNMCOMBOBOXEXW
3276#define CBEN_GETDISPINFO CBEN_GETDISPINFOW
3277#define CBEN_DRAGBEGIN CBEN_DRAGBEGINW
3278#define NMCBEDRAGBEGIN NMCBEDRAGBEGINW
3279#define LPNMCBEDRAGBEGIN LPNMCBEDRAGBEGINW
3280#define PNMCBEDRAGBEGIN PNMCBEDRAGBEGINW
3281#endif /* _WIN32_IE >= 0x0400 */
3282#define SB_GETTEXT SB_GETTEXTW
3283#define SB_SETTEXT SB_SETTEXTW
3284#define SB_GETTEXTLENGTH SB_GETTEXTLENGTHW
3285#define HDM_INSERTITEM HDM_INSERTITEMW
3286#define HDM_GETITEM HDM_GETITEMW
3287#define HDM_SETITEM HDM_SETITEMW
3288#define HDN_ITEMCHANGING HDN_ITEMCHANGINGW
3289#define HDN_ITEMCHANGED HDN_ITEMCHANGEDW
3290#define HDN_ITEMCLICK HDN_ITEMCLICKW
3291#define HDN_ITEMDBLCLICK HDN_ITEMDBLCLICKW
3292#define HDN_DIVIDERDBLCLICK HDN_DIVIDERDBLCLICKW
3293#define HDN_BEGINTRACK HDN_BEGINTRACKW
3294#define HDN_ENDTRACK HDN_ENDTRACKW
3295#define HDN_TRACK HDN_TRACKW
3296#if (_WIN32_IE >= 0x0300)
3297#define HDN_GETDISPINFO HDN_GETDISPINFOW
3298#endif
3299#define HD_NOTIFY HD_NOTIFYW
3300#define TBSAVEPARAMS TBSAVEPARAMSW
3301#define TB_GETBUTTONTEXT TB_GETBUTTONTEXTW
3302#define TB_SAVERESTORE TB_SAVERESTOREW
3303#define TB_ADDSTRING TB_ADDSTRINGW
3304#define TBN_GETBUTTONINFO TBN_GETBUTTONINFOW
3305#if _WIN32_IE >= 0x400
3306#define TB_GETBUTTONINFO TB_GETBUTTONINFOW
3307#define TB_SETBUTTONINFO TB_SETBUTTONINFOW
3308#define TB_INSERTBUTTON TB_INSERTBUTTONW
3309#define TB_ADDBUTTONS TB_ADDBUTTONSW
3310#define TB_MAPACCELERATOR TB_MAPACCELERATORW
3311#define TB_GETSTRING TB_GETSTRINGW
3312#define TBBUTTONINFO TBBUTTONINFOW
3313#define LPTBBUTTONINFO LPTBBUTTONINFOW
3314#define TBN_GETDISPINFO TBN_GETDISPINFOW
3315#define NMTBDISPINFO NMTBDISPINFOW
3316#define LPNMTBDISPINFO LPNMTBDISPINFOW
3317#define NMTBGETINFOTIP NMTBGETINFOTIPW
3318#define LPNMTBGETINFOTIP LPNMTBGETINFOTIPW
3319#endif
3320#define TBNOTIFY TBNOTIFYW
3321#define LPTBNOTIFY LPTBNOTIFYW
3322#define NMTOOLBAR NMTOOLBARW
3323#define LPNMTOOLBAR LPNMTOOLBARW
3324#define TTM_ADDTOOL TTM_ADDTOOLW
3325#define TTM_DELTOOL TTM_DELTOOLW
3326#define TTM_NEWTOOLRECT TTM_NEWTOOLRECTW
3327#define TTM_GETTOOLINFO TTM_GETTOOLINFOW
3328#define TTM_SETTOOLINFO TTM_SETTOOLINFOW
3329#define TTM_HITTEST TTM_HITTESTW
3330#define TTM_GETTEXT TTM_GETTEXTW
3331#define TTM_UPDATETIPTEXT TTM_UPDATETIPTEXTW
3332#define TTM_ENUMTOOLS TTM_ENUMTOOLSW
3333#define TTM_GETCURRENTTOOL TTM_GETCURRENTTOOLW
3334#define TTN_NEEDTEXT TTN_NEEDTEXTW
3335#define TTN_GETDISPINFO TTN_GETDISPINFOW
3336#define SB_GETTEXT SB_GETTEXTW
3337#define SB_SETTEXT SB_SETTEXTW
3338#define SB_GETTEXTLENGTH SB_GETTEXTLENGTHW
3339#define LV_ITEM LV_ITEMW
3340#define LVITEM LVITEMW
3341#define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKW
3342#if _WIN32_IE >= 0x0400
3343#define LVBKIMAGE LVBKIMAGEW
3344#define LPLVBKIMAGE LPLVBKIMAGEW
3345#define LVM_SETBKIMAGE LVM_SETBKIMAGEW
3346#define LVM_GETBKIMAGE LVM_GETBKIMAGEW
3347#endif /* _WIN32_IE >= 0x400 */
3348#define LVM_GETITEM LVM_GETITEMW
3349#define LVM_SETITEM LVM_SETITEMW
3350#define LVM_INSERTITEM LVM_INSERTITEMW
3351#define LV_FINDINFO LV_FINDINFOW
3352#define LVFINDINFO LVFINDINFOW
3353#define LPFINDINFO LPFINDINFOW
3354#define NMLVFINDITEM NMLVFINDITEMW
3355#define PNMLVFINDITEM PNMLVFINDITEMW
3356#define LPNMLVFINDITEM LPNMLVFINDITEMW
3357#define LVM_FINDITEM LVM_FINDITEMW
3358#define LVM_GETSTRINGWIDTH LVM_GETSTRINGWIDTHW
3359#define LVM_EDITLABEL LVM_EDITLABELW
3360#define LV_COLUMN LV_COLUMNW
3361#define LVCOLUMN LVCOLUMNW
3362#define LVM_GETCOLUMN LVM_GETCOLUMNW
3363#define LVM_SETCOLUMN LVM_SETCOLUMNW
3364#define LVM_INSERTCOLUMN LVM_INSERTCOLUMNW
3365#define LVM_GETITEMTEXT LVM_GETITEMTEXTW
3366#define LVM_SETITEMTEXT LVM_SETITEMTEXTW
3367#define LVM_GETISEARCHSTRING LVM_GETISEARCHSTRINGW
3368#define LVN_BEGINLABELEDIT LVN_BEGINLABELEDITW
3369#define LVN_ENDLABELEDIT LVN_ENDLABELEDITW
3370#define LVN_GETDISPINFO LVN_GETDISPINFOW
3371#define LVN_SETDISPINFO LVN_SETDISPINFOW
3372#define LVN_GETINFOTIP LVN_GETINFOTIPW
3373#define NMLVGETINFOTIP NMLVGETINFOTIPW
3374#define LPNMLVGETINFOTIP LPNMLVGETINFOTIPW
3375#define LV_DISPINFO LV_DISPINFOW
3376#define NMLVDISPINFO NMLVDISPINFOW
3377#define LPNMLVDISPINFO LPNMLVDISPINFOW
3378#define TVM_INSERTITEM TVM_INSERTITEMW
3379#define TVM_GETITEM TVM_GETITEMW
3380#define TVM_SETITEM TVM_SETITEMW
3381#define TVM_EDITLABEL TVM_EDITLABELW
3382#define TVM_GETISEARCHSTRING TVM_GETISEARCHSTRINGW
3383#define TV_DISPINFO NMTVDISPINFOW
3384#define NMTVDISPINFO NMTVDISPINFOW
3385#define LPNMTVDISPINFO LPNMTVDISPINFOW
3386#if (_WIN32_IE >= 0x0400)
3387#define NMTVGETINFOTIP NMTVGETINFOTIPW
3388#define LPNMTVGETINFOTIP LPNMTVGETINFOTIPW
3389#define TVN_GETINFOTIP TVN_GETINFOTIPW
3390#endif
3391#define TVN_SELCHANGING TVN_SELCHANGINGW
3392#define TVN_SELCHANGED TVN_SELCHANGEDW
3393#define TVN_GETDISPINFO TVN_GETDISPINFOW
3394#define TVN_SETDISPINFO TVN_SETDISPINFOW
3395#define TVN_ITEMEXPANDING TVN_ITEMEXPANDINGW
3396#define TVN_ITEMEXPANDED TVN_ITEMEXPANDEDW
3397#define TVN_BEGINDRAG TVN_BEGINDRAGW
3398#define TVN_BEGINRDRAG TVN_BEGINRDRAGW
3399#define TVN_DELETEITEM TVN_DELETEITEMW
3400#define TVN_BEGINLABELEDIT TVN_BEGINLABELEDITW
3401#define TVN_ENDLABELEDIT TVN_ENDLABELEDITW
3402#define TC_ITEMHEADER TC_ITEMHEADERW
3403#define TC_ITEM TC_ITEMW
3404#define TCITEM TCITEMW
3405#define LPTCITEM LPTCITEMW
3406#define TCM_GETITEM TCM_GETITEMW
3407#define TCM_SETITEM TCM_SETITEMW
3408#define TCM_INSERTITEM TCM_INSERTITEMW
3409#define CreateStatusWindow CreateStatusWindowW
3410#define DrawStatusText DrawStatusTextW
3411#define ImageList_LoadImage ImageList_LoadImageW
3412#define DTM_SETFORMAT DTM_SETFORMATW
3413#define DTN_USERSTRING DTN_USERSTRINGW
3414#define DTN_WMKEYDOWN DTN_WMKEYDOWNW
3415#define DTN_FORMAT DTN_FORMATW
3416#define DTN_FORMATQUERY DTN_FORMATQUERYW
3417typedef REBARBANDINFOW REBARBANDINFO,*LPREBARBANDINFO;
3418#define LPCREBARBANDINFO LPCREBARBANDINFOW
3419#define REBARBANDINFO_V3_SIZE REBARBANDINFOW_V3_SIZE
3420#define RB_INSERTBAND RB_INSERTBANDW
3421#define RB_SETBANDINFO RB_SETBANDINFOW
3422#else /* UNICODE */
3423typedef HDITEMA HDITEM;
3424typedef TOOLINFOA TOOLINFO,*PTOOLINFO,*LPTOOLINFO;
3425typedef TTHITTESTINFOA TTHITTESTINFO,*LPHITTESTINFO,*LPTTHITTESTINFO;
3426typedef TOOLTIPTEXTA TOOLTIPTEXT,*LPTOOLTIPTEXT;
3427typedef NMTTDISPINFOA NMTTDISPINFO, *LPNMTTDISPINFO;
3428typedef TV_ITEMA TV_ITEM,*LPTV_ITEM;
3429typedef TVITEMA TVITEM,*LPTVITEM;
3430#if (_WIN32_IE >= 0x0400)
3431typedef TVITEMEXA TVITEMEX,*LPTVITEMEX;
3432#endif
3433typedef TV_INSERTSTRUCTA TV_INSERTSTRUCT,*LPTV_INSERTSTRUCT;
3434typedef TVINSERTSTRUCTA TVINSERTSTRUCT,*LPTVINSERTSTRUCT;
3435typedef NM_TREEVIEWA NM_TREEVIEW,*LPNM_TREEVIEW;
3436typedef NMTREEVIEWA NMTREEVIEW,*LPNMTREEVIEW;
3437typedef NMHDDISPINFOW NMHDDISPINFO, *LPNMHDDISPINFO;
3438#define ACM_OPEN ACM_OPENA
3439#define COMBOBOXEXITEM COMBOBOXEXITEMA
3440#define PCOMBOBOXEXITEM PCOMBOBOXEXITEMA
3441#define PCCOMBOBOXEXITEM PCCOMBOBOXEXITEMA
3442#define CBEM_INSERTITEM CBEM_INSERTITEMA
3443#define CBEM_SETITEM CBEM_SETITEMA
3444#define CBEM_GETITEM CBEM_GETITEMA
3445#define CBEN_ENDEDIT CBEN_ENDEDITA
3446#define NMCBEENDEDIT NMCBEENDEDITA
3447#define LPNMCBEENDEDIT LPNMCBEENDEDITA
3448#define PNMCBEENDEDIT PNMCBEENDEDITA
3449#if _WIN32_IE >= 0x0400
3450#define TB_GETBUTTONINFO TB_GETBUTTONINFOA
3451#define TB_SETBUTTONINFO TB_SETBUTTONINFOA
3452#define TB_INSERTBUTTON TB_INSERTBUTTONA
3453#define TB_ADDBUTTONS TB_ADDBUTTONSA
3454#define TB_MAPACCELERATOR TB_MAPACCELERATORA
3455#define TB_GETSTRING TB_GETSTRINGA
3456#define NMCOMBOBOXEX NMCOMBOBOXEXA
3457#define PNMCOMBOBOXEX PNMCOMBOBOXEXA
3458#define CBEN_DRAGBEGIN CBEN_DRAGBEGINA
3459#define CBEN_GETDISPINFO CBEN_GETDISPINFOA
3460#define NMCBEDRAGBEGIN NMCBEDRAGBEGINA
3461#define LPNMCBEDRAGBEGIN LPNMCBEDRAGBEGINA
3462#define PNMCBEDRAGBEGIN PNMCBEDRAGBEGINA
3463#define TBN_GETDISPINFO TBN_GETDISPINFOA
3464#define NMTBDISPINFO NMTBDISPINFOA
3465#define LPNMTBDISPINFO LPNMTBDISPINFOA
3466#define NMTBGETINFOTIP NMTBGETINFOTIPA
3467#define LPNMTBGETINFOTIP LPNMTBGETINFOTIPA
3468#endif /* _WIN32_IE >= 0x0400 */
3469#define SB_GETTEXT SB_GETTEXTA
3470#define SB_SETTEXT SB_SETTEXTA
3471#define SB_GETTEXTLENGTH SB_GETTEXTLENGTHA
3472#define HDM_INSERTITEM HDM_INSERTITEMA
3473#define HDM_GETITEM HDM_GETITEMA
3474#define HDM_SETITEM HDM_SETITEMA
3475#define HDN_ITEMCHANGING HDN_ITEMCHANGINGA
3476#define HDN_ITEMCHANGED HDN_ITEMCHANGEDA
3477#define HDN_ITEMCLICK HDN_ITEMCLICKA
3478#define HDN_ITEMDBLCLICK HDN_ITEMDBLCLICKA
3479#define HDN_DIVIDERDBLCLICK HDN_DIVIDERDBLCLICKA
3480#define HDN_BEGINTRACK HDN_BEGINTRACKA
3481#define HDN_ENDTRACK HDN_ENDTRACKA
3482#define HDN_TRACK HDN_TRACKA
3483#if (_WIN32_IE >= 0x0300)
3484#define HDN_GETDISPINFO HDN_GETDISPINFOA
3485#endif
3486#define HD_NOTIFY HD_NOTIFYA
3487#define TBSAVEPARAMS TBSAVEPARAMSA
3488#define TB_GETBUTTONTEXT TB_GETBUTTONTEXTA
3489#define TB_SAVERESTORE TB_SAVERESTOREA
3490#define TB_ADDSTRING TB_ADDSTRINGA
3491#define TBN_GETBUTTONINFO TBN_GETBUTTONINFOA
3492#if _WIN32_IE >= 0x400
3493#define TBBUTTONINFO TBBUTTONINFOA
3494#define LPTBBUTTONINFO LPTBBUTTONINFOA
3495#endif
3496#define TBNOTIFY TBNOTIFYA
3497#define LPTBNOTIFY LPTBNOTIFYA
3498#define NMTOOLBAR NMTOOLBARA
3499#define LPNMTOOLBAR LPNMTOOLBARA
3500#define TTM_ADDTOOL TTM_ADDTOOLA
3501#define TTM_DELTOOL TTM_DELTOOLA
3502#define TTM_NEWTOOLRECT TTM_NEWTOOLRECTA
3503#define TTM_GETTOOLINFO TTM_GETTOOLINFOA
3504#define TTM_SETTOOLINFO TTM_SETTOOLINFOA
3505#define TTM_HITTEST TTM_HITTESTA
3506#define TTM_GETTEXT TTM_GETTEXTA
3507#define TTM_UPDATETIPTEXT TTM_UPDATETIPTEXTA
3508#define TTM_ENUMTOOLS TTM_ENUMTOOLSA
3509#define TTM_GETCURRENTTOOL TTM_GETCURRENTTOOLA
3510#define TTN_NEEDTEXT TTN_NEEDTEXTA
3511#define TTN_GETDISPINFO TTN_GETDISPINFOA
3512#define SB_GETTEXT SB_GETTEXTA
3513#define SB_SETTEXT SB_SETTEXTA
3514#define SB_GETTEXTLENGTH SB_GETTEXTLENGTHA
3515#define LV_ITEM LV_ITEMA
3516#define LVITEM LVITEMA
3517#define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKA
3518#if _WIN32_IE >= 0x0400
3519#define LVBKIMAGE LVBKIMAGEA
3520#define LPLVBKIMAGE LPLVBKIMAGEA
3521#define LVM_SETBKIMAGE LVM_SETBKIMAGEA
3522#define LVM_GETBKIMAGE LVM_GETBKIMAGEA
3523#endif /* _WIN32_IE >= 0x0400 */
3524#define LVM_GETITEM LVM_GETITEMA
3525#define LVM_SETITEM LVM_SETITEMA
3526#define LVM_INSERTITEM LVM_INSERTITEMA
3527#define LV_FINDINFO LV_FINDINFOA
3528#define LVFINDINFO LVFINDINFOA
3529#define LPFINDINFO LPFINDINFOA
3530#define NMLVFINDITEM NMLVFINDITEMA
3531#define PNMLVFINDITEM PNMLVFINDITEMA
3532#define LPNMLVFINDITEM LPNMLVFINDITEMA
3533#define LVM_FINDITEM LVM_FINDITEMA
3534#define LVM_GETSTRINGWIDTH LVM_GETSTRINGWIDTHA
3535#define LVM_EDITLABEL LVM_EDITLABELA
3536#define LV_COLUMN LV_COLUMNA
3537#define LVCOLUMN LVCOLUMNA
3538#define LVM_GETCOLUMN LVM_GETCOLUMNA
3539#define LVM_SETCOLUMN LVM_SETCOLUMNA
3540#define LVM_INSERTCOLUMN LVM_INSERTCOLUMNA
3541#define LVM_GETITEMTEXT LVM_GETITEMTEXTA
3542#define LVM_SETITEMTEXT LVM_SETITEMTEXTA
3543#define LVM_GETISEARCHSTRING LVM_GETISEARCHSTRINGA
3544#define LVN_BEGINLABELEDIT LVN_BEGINLABELEDITA
3545#define LVN_ENDLABELEDIT LVN_ENDLABELEDITA
3546#define LVN_GETDISPINFO LVN_GETDISPINFOA
3547#define LVN_SETDISPINFO LVN_SETDISPINFOA
3548#define LVN_GETINFOTIP LVN_GETINFOTIPA
3549#define NMLVGETINFOTIP NMLVGETINFOTIPA
3550#define LPNMLVGETINFOTIP LPNMLVGETINFOTIPA
3551#define LV_DISPINFO LV_DISPINFOA
3552#define NMLVDISPINFO NMLVDISPINFOA
3553#define LPNMLVDISPINFO LPNMLVDISPINFOA
3554#define TVM_INSERTITEM TVM_INSERTITEMA
3555#define TVM_GETITEM TVM_GETITEMA
3556#define TVM_SETITEM TVM_SETITEMA
3557#define TVM_EDITLABEL TVM_EDITLABELA
3558#define TVM_GETISEARCHSTRING TVM_GETISEARCHSTRINGA
3559#define TV_DISPINFO NMTVDISPINFOA
3560#define NMTVDISPINFO NMTVDISPINFOA
3561#define LPNMTVDISPINFO LPNMTVDISPINFOA
3562#if (_WIN32_IE >= 0x0400)
3563#define NMTVGETINFOTIP NMTVGETINFOTIPA
3564#define LPNMTVGETINFOTIP LPNMTVGETINFOTIPA
3565#define TVN_GETINFOTIP TVN_GETINFOTIPA
3566#endif
3567#define TVN_SELCHANGING TVN_SELCHANGINGA
3568#define TVN_SELCHANGED TVN_SELCHANGEDA
3569#define TVN_GETDISPINFO TVN_GETDISPINFOA
3570#define TVN_SETDISPINFO TVN_SETDISPINFOA
3571#define TVN_ITEMEXPANDING TVN_ITEMEXPANDINGA
3572#define TVN_ITEMEXPANDED TVN_ITEMEXPANDEDA
3573#define TVN_BEGINDRAG TVN_BEGINDRAGA
3574#define TVN_BEGINRDRAG TVN_BEGINRDRAGA
3575#define TVN_DELETEITEM TVN_DELETEITEMA
3576#define TVN_BEGINLABELEDIT TVN_BEGINLABELEDITA
3577#define TVN_ENDLABELEDIT TVN_ENDLABELEDITA
3578#define TC_ITEMHEADER TC_ITEMHEADERA
3579#define TC_ITEM TC_ITEMA
3580#define TCITEM TCITEMA
3581#define LPTCITEM LPTCITEMA
3582#define TCM_GETITEM TCM_GETITEMA
3583#define TCM_SETITEM TCM_SETITEMA
3584#define TCM_INSERTITEM TCM_INSERTITEMA
3585#define CreateStatusWindow CreateStatusWindowA
3586#define DrawStatusText DrawStatusTextA
3587#define ImageList_LoadImage ImageList_LoadImageA
3588#define DTM_SETFORMAT DTM_SETFORMATA
3589#define DTN_USERSTRING DTN_USERSTRINGA
3590#define DTN_WMKEYDOWN DTN_WMKEYDOWNA
3591#define DTN_FORMAT DTN_FORMATA
3592#define DTN_FORMATQUERY DTN_FORMATQUERYA
3593typedef REBARBANDINFOA REBARBANDINFO,*LPREBARBANDINFO;
3594#define LPCREBARBANDINFO LPCREBARBANDINFOA
3595#define REBARBANDINFO_V3_SIZE REBARBANDINFOA_V3_SIZE
3596#define RB_INSERTBAND RB_INSERTBANDA
3597#define RB_SETBANDINFO RB_SETBANDINFOA
3598#endif
3599#endif /* RC_INVOKED */
3600
3601#ifdef __cplusplus
3602}
3603#endif
3604#endif
Note: See TracBrowser for help on using the repository browser.