Re: commctrl.h (+ other headers) patch
"Filip Navara" <xnavara-VIXq6x/[email protected]> Sat, 23 Aug 2003 13:25:59 +0200
| Newsgroups | gmane.comp.gnu.mingw.patches |
|---|---|
| Message-ID | <004001c36969$554b8100$754ab13e@hornet> |
It took me a good hour to revisit the patch and fix all mine _WIN32_IE detections. I also tried to avoid the reordering, it was caused by my attemps to guess some values. The attachment contains my diff against the CVS and also my updated (with push/poppack) Video For Windows header. Next time I will double-check my patches before submit. Sorry FiN ----- Original Message ----- From: "Danny Smith" <[email protected]> To: <[email protected]> Sent: Saturday, August 23, 2003 7:17 AM Subject: Re: [MinGW-patches] commctrl.h (+ other headers) patch > > ----- Original Message ----- > From: "Filip Navara" > > > I tried compiling comctl32.dll from Wine with w32api and this patch is > the > > result of my work. Hope, it will get the way into w32api 2.4 :) > > > > FiN <xnavara-VIXq6x/[email protected]> > > > > REFERENCES: > > Mostly MSDN and sometimes guessing & testing. If you want URLs for > online > > MSDN I can create and post it, but it would involve lot of work :( > > > > CHANGLOG (Also in attachment): > > > > 2003-08-22 Filip Navara <xnavara-VIXq6x/[email protected]> > > * include/commctrl.h (ILCF_MOVE, ILCF_SWAP, ILS_GLOW, ILS_SHADOW, > > ILS_SATURATE, ILS_ALPHA, ILD_NORMAL, ILD_BLEND, ILD_IMAGE, ILD_ROP, > > ILD_OVERLAYMASK, ILD_PRESERVEALPHA, ILD_SCALE, ILD_DPISCALE, > > HDS_HOTTRACK, > > HDS_DRAGDROP, HDS_FULLDRAG, HDS_FILTERBAR, SBN_FIRST, SBN_LAST, > > HDM_SETIMAGELIST, HDM_GETIMAGELIST, HDM_CREATEDRAGIMAGE, > > HDM_SETHOTDIVIDER, > > HDM_GETUNICODEFORMAT, HDM_SETUNICODEFORMAT, HICF_OTHER, > HICF_MOUSE, > > HICF_ARROWKEYS, HICF_ACCELERATOR, HICF_DUPACCEL, HICF_ENTERING, > > HICF_LEAVING, HICF_RESELECT, HICF_LMOUSE, HICF_TOGGLEDROPDOWN, > > TBSTATE_MARKED, TBSTYLE_EX_MIXEDBUTTONS, > TBSTYLE_EX_HIDECLIPPEDBUTTONS, > > TBSTYLE_EX_DOUBLEBUFFER, TBCDRF_NOEDGES, TBCDRF_HILITEHOTTRACK, > > TBCDRF_NOOFFSET, TBCDRF_NOMARK, TBCDRF_NOETCHEDEFFECT, > > IDB_HIST_SMALL_COLOR, > > IDB_HIST_LARGE_COLOR, TB_ISBUTTONHIGHLIGHTED, TB_REPLACEBITMAP, > > TB_SETINDENT, TB_SETIMAGELIST, TB_GETIMAGELIST, TB_LOADIMAGES, > > TB_GETRECT, > > TB_SETHOTIMAGELIST, TB_GETHOTIMAGELIST, TB_SETDISABLEDIMAGELIST, > > TB_GETDISABLEDIMAGELIST, TB_SETSTYLE, TB_GETSTYLE, > TB_GETBUTTONSIZE, > > TB_SETBUTTONWIDTH, TB_SETMAXTEXTROWS, TB_GETTEXTROWS, > TB_GETOBJECT, > > TB_GETBUTTONINFOW, TB_GETBUTTONINFOA, TB_SETBUTTONINFOA, > > TB_INSERTBUTTONW, > > TB_ADDBUTTONSW, TB_HITTEST, TB_GETHOTITEM, TB_SETHOTITEM, > > TB_SETANCHORHIGHLIGHT, TB_GETANCHORHIGHLIGHT, TB_MAPACCELERATORA, > > TB_GETINSERTMARK, TB_SETINSERTMARK, TB_INSERTMARKHITTEST, > TB_MOVEBUTTON, > > TB_GETMAXSIZE, TB_SETEXTENDEDSTYLE, TB_GETEXTENDEDSTYLE, > TB_GETPADDING, > > TB_SETPADDING, TB_SETINSERTMARKCOLOR, TB_GETINSERTMARKCOLOR, > > TB_MAPACCELERATORW, TB_SETCOLORSCHEME, TB_GETCOLORSCHEME, > > TB_SETUNICODEFORMAT, TB_GETUNICODEFORMAT, TBN_DROPDOWN, > > TBN_HOTITEMCHANGE, > > TBN_DRAGOUT, TBN_DELETINGBUTTON, TBN_GETDISPINFOA, > TBN_GETDISPINFOW, > > TBN_GETINFOTIPA, TBN_GETINFOTIPW, TBN_RESTORE, TBN_SAVE, > > TBN_INITCUSTOMIZE, > > TBNRF_HIDEHELP, TBNRF_ENDCUSTOMIZE, TBNF_IMAGE, TBNF_TEXT, > > TBNF_DI_SETITEM, > > TTM_TRACKACTIVATE, TTM_TRACKPOSITION, TTM_SETTIPBKCOLOR, > > TTM_GETBUBBLESIZE, > > TTM_ADJUSTRECT, TTM_SETTITLEA, TTM_SETTITLEW, UDM_SETPOS32, > > UDM_GETPOS32, > > UDM_SETUNICODEFORMAT, UDM_GETUNICODEFORMAT, SBN_SIMPLEMODECHANGE, > > TBS_DOWNISLEFT, TBTS_TOP, TBTS_LEFT, TBTS_BOTTOM, TBTS_RIGHT, > TBCD_TICS, > > TBCD_THUMB, TBCD_CHANNEL, TTF_TRACK, TTF_ABSOLUTE, > TTF_TRANSPARENT, > > TTF_PARSELINKS, TTF_DI_SETITEM, TBDDRET_DEFAULT, > TBDDRET_NODEFAULT, > > TBDDRET_TREATPRESSED, TBIMHT_AFTER, TBIMHT_BACKGROUND, > I_INDENTCALLBACK, > > I_IMAGENONE, CDIS_MARKED, CDIS_INDETERMINATE, CDIS_SHOWKEYBOARDCUES, > > CDDS_SUBITEM, LVIF_INDENT, LVIF_NORECOMPUTE, LVIF_GROUPID, > LVIF_COLUMNS, > > LV_MAX_WORKAREAS, LVM_SETWORKAREAS, LVM_GETWORKAREAS, > > LVM_GETNUMBEROFWORKAREAS, LVM_GETSELECTIONMARK, > LVM_SETSELECTIONMARK, > > LVM_SETHOVERTIME, LVM_GETHOVERTIME, LVM_SETTOOLTIPS, > LVM_GETTOOLTIPS, > > LVN_GETINFOTIPA, LVN_GETINFOTIPW, LVGIT_UNFOLDED, > TVM_GETITEMSTATE, > > TVM_SETLINECOLOR, TVM_GETLINECOLOR, TVM_SETUNICODEFORMAT, > > TVM_GETUNICODEFORMAT, TVE_EXPANDPARTIAL, TVGN_LASTVISIBLE, > > TVN_GETINFOTIPA, > > TVN_GETINFOTIPW, TVN_SINGLEEXPAND, TVNRET_DEFAULT, TVNRET_SKIPOLD, > > TVNRET_SKIPNEW, TCIF_STATE, NM_TOOLTIPSCREATED, CCM_FIRST, > CCM_LAST, > > CCM_SETVERSION, CCM_GETVERSION, CCM_SETNOTIFYWINDOW, > CCM_SETWINDOWTHEME, > > CCM_DPISCALE, MCM_GETMAXTODAYWIDTH, MCHT_TITLE, MCHT_CALENDAR, > > MCHT_TODAYLINK, MCHT_NEXT, MCHT_PREV, MCHT_NOWHERE, MCHT_TITLEBK, > > MCHT_TITLEMONTH, MCHT_TITLEYEAR, MCHT_TITLEBTNNEXT, > MCHT_TITLEBTNPREV, > > MCHT_CALENDARBK, MCHT_CALENDARDATE, MCHT_CALENDARDATENEXT, > > MCHT_CALENDARDATEPREV, MCHT_CALENDARDAY, MCHT_CALENDARWEEKNUM, > PGS_VERT, > > PGS_HORZ, PGS_AUTOSCROLL, PGS_DRAGNDROP, PGF_INVISIBLE, > PGF_NORMAL, > > PGF_GRAYED, PGF_DEPRESSED, PGF_HOT, PGB_TOPORLEFT, > PGB_BOTTOMORRIGHT, > > PGF_SCROLLUP, PGF_SCROLLDOWN, PGF_SCROLLLEFT, PGF_SCROLLRIGHT, > > PGK_SHIFT, > > PGK_CONTROL, PGK_MENU, PGF_CALCWIDTH, PGF_CALCHEIGHT, PGM_FIRST, > > PGM_SETCHILD, PGM_RECALCSIZE, PGM_FORWARDMOUSE, PGM_SETBKCOLOR, > > PGM_GETBKCOLOR, PGM_SETBORDER, PGM_GETBORDER, PGM_SETPOS, > PGM_GETPOS, > > PGM_SETBUTTONSIZE, PGM_GETBUTTONSIZE, PGM_GETBUTTONSTATE, > > PGM_GETDROPTARGET, > > PGN_FIRST, PGN_LAST, PGN_SCROLL, PGN_CALCSIZE, > TTTOOLINFOA_V1_SIZE, > > TTTOOLINFOA_V2_SIZE, TTTOOLINFOA_V3_SIZE, TreeView_GetItemState, > > ListView_SetWorkAreas, ListView_GetWorkAreas, > > ListView_GetNumberOfWorkAreas, > > ListView_SetHoverTime, ListView_GetHoverTime, > ListView_GetSelectionMark, > > ListView_SetSelectionMark, ListView_SetToolTips, > ListView_GetToolTips, > > TreeView_SetInsertMark, TreeView_SetUnicodeFormat, > > TreeView_GetUnicodeFormat, TB_GETBUTTONINFO, TB_SETBUTTONINFO, > > TB_INSERTBUTTON, TB_ADDBUTTONS, TB_MAPACCELERATOR, > TBN_GETDISPINFO, > > NMTBDISPINFO, LPNMTBDISPINFO, LVN_GETINFOTIP, NMLVGETINFOTIP, > > LPNMLVGETINFOTIP, TCITEM, LPTCITEM, TB_GETBUTTONINFO, > TB_SETBUTTONINFO, > > TB_INSERTBUTTON, TB_ADDBUTTONS, TB_MAPACCELERATOR, > TBN_GETDISPINFO, > > NMTBDISPINFO, LPNMTBDISPINFO, LVN_GETINFOTIP, NMLVGETINFOTIP, > > LPNMLVGETINFOTIP, TCITEM, LPTCITEM): Defined. > > * include/commctrl.h (IPN_FIRST, IPN_LAST, TB_ADDBUTTONS, > TB_INSERTBUTTON, > > TBS_TOOLTIPS, TBS_REVERSED, INFOTIPSIZE, HDF_JUSTIFYMASK, > ODT_LISTVIEW, > > CCSIZEOF_STRUCT): Fixed definitions. > > * include/commctrl.h (LVITEMW, _TC_ITEMA, _TC_ITEMW, TCITEM, > > IMAGELISTDRAWPARAMS): Fixed structures. > > * include/commctrl.h (HIMAGELIST, HTREEITEM): Converted to pointers. > > * include/commctrl.h (NMLVKEYDOWN, LPNMLVKEYDOWN, NMPGCALCSIZE, > > LPNMPGCALCSIZE, NMPGSCROLL, LPNMPGSCROLL, NMSELCHANGE, LPNMSELCHANGE, > > NMTBHOTITEM, LPNMTBHOTITEM, NMTBDISPINFOA, LPNMTBDISPINFOA, > > NMTBDISPINFOW, > > LPNMTBDISPINFOW, NMMOUSE, LPNMMOUSE, NMDATETIMECHANGE, > > LPNMDATETIMECHANGE, > > NMTOOLTIPSCREATED, LPNMTOOLTIPSCREATED, TBINSERTMARK, > LPTBINSERTMARK, > > LPHDHITTESTINFO, NMLVGETINFOTIPA, LPNMLVGETINFOTIPA, > NMLVGETINFOTIPW, > > LPNMLVGETINFOTIPW, NMTBCUSTOMDRAW, LPNMTBCUSTOMDRAW, TTTOOLINFOA, > > LPTTTOOLINFOA, TTTOOLINFOW, LPTTTOOLINFOW, LPTTHITTESTINFOA, > > LPTTHITTESTINFOW, LPLVFINDINFOA, LPLVFINDINFOW, LPLVHITTESTINFO, > > TCITEMA, > > LPTCITEMA, TCITEMW, LPTCITEMW, LPTTHITTESTINFO): Declared. > > > > > The patch against commcrtl.h did not apply cleanly to CVS version (1st > hunk failed). > Can you make patch against CVS, please. > > Also, for the nonce, please use numeric constants for the _WIN32_IE > guards. I'm not sure if your > _WIN32_IE >= _IE5 > really means > _WIN32_IE >= 0x0500 > or > _WIN32_IE >= 0x0501 > > Finally, please try to keep patches easier to review (and thus easier to > approve) by _not_ reordering statements when reordering is not > necessary. If you think rearrangement is a good idea in its own right, > do that as a separate patch with separate justification. > > Thanks > > Danny > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: VM Ware > With VMware you can run multiple operating systems on a single machine. > WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines > at the same time. Free trial click here:http://www.vmware.com/wl/offer/358/0 > _______________________________________________ > MinGW-patches mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/mingw-patches >
patch2.diff
(application/octet-stream, 33.9 KB)
Index: src/winsup/w32api/include/commctrl.h
===================================================================
RCS file: /cvs/src/src/winsup/w32api/include/commctrl.h,v
retrieving revision 1.38
diff -u -r1.38 commctrl.h
--- src/winsup/w32api/include/commctrl.h 18 Aug 2003 09:43:24 -0000 1.38
+++ src/winsup/w32api/include/commctrl.h 23 Aug 2003 11:20:30 -0000
@@ -215,6 +215,13 @@
#define ILC_COLORDDB 254
#define ILC_MASK 1
#define ILC_PALETTE 2048
+#define ILCF_MOVE 0
+#define ILCF_SWAP 1
+#define ILS_NORMAL 0
+#define ILS_GLOW 1
+#define ILS_SHADOW 2
+#define ILS_SATURATE 4
+#define ILS_ALPHA 8
#define ILD_BLEND25 2
#define ILD_BLEND50 4
#define ILD_SELECTED 4
@@ -223,9 +230,23 @@
#define ILD_MASK 16
#define ILD_NORMAL 0
#define ILD_TRANSPARENT 1
+#define ILD_IMAGE 0x20
+#define ILD_ROP 0x40
+#define ILD_OVERLAYMASK 0xF00
+#define ILD_PRESERVEALPHA 0x1000
+#define ILD_SCALE 0x2000
+#define ILD_DPISCALE 0x4000
#define HDS_HORZ 0
#define HDS_BUTTONS 2
#define HDS_HIDDEN 8
+#if (_WIN32_IE > 0x300)
+#define HDS_HOTTRACK 4
+#define HDS_DRAGDROP 0x40
+#define HDS_FULLDRAG 0x80
+#endif /* _WIN32_IE > 0x300 */
+#if (_WIN32_IE > 0x500)
+#define HDS_FILTERBAR 0x100
+#endif /* _WIN32_IE > 0x500 */
#define NM_FIRST 0
#define NM_LAST ((UINT)-99)
#define LVN_FIRST ((UINT)-100)
@@ -257,8 +278,12 @@
#define CBEN_LAST ((UINT)-830)
#endif /* _WIN32_IE */
#if (_WIN32_IE >= 0x0400)
-#define IPN_FIRST (-860)
-#define IPN_LAST (-879)
+#define IPN_FIRST ((UINT)-860)
+#define IPN_LAST ((UINT)-879)
+#define SBN_FIRST ((UINT)-880U)
+#define SBN_LAST ((UINT)-899U)
+#define PGN_FIRST ((UINT)-900U)
+#define PGN_LAST ((UINT)-950U)
#define IPN_FIELDCHANGED (IPN_FIRST-0)
#endif /* _WIN32_IE >= 0x0400 */
#define HDI_WIDTH 1
@@ -289,7 +314,7 @@
#define HDF_LEFT 0
#define HDF_RIGHT 1
#define HDF_CENTER 2
-#define HDF_JUSTIFYMASK3
+#define HDF_JUSTIFYMASK 3
#define HDF_RTLREADING 4
#define HDF_OWNERDRAW 0x8000
#define HDF_STRING 0x4000
@@ -309,9 +334,17 @@
#define HDM_LAYOUT (HDM_FIRST+5)
#if (_WIN32_IE >= 0x0300)
#define HDM_GETITEMRECT (HDM_FIRST+7)
+#define HDM_SETIMAGELIST (HDM_FIRST+8)
+#define HDM_GETIMAGELIST (HDM_FIRST+9)
#define HDM_ORDERTOINDEX (HDM_FIRST+15)
+#define HDM_CREATEDRAGIMAGE (HDM_FIRST+16)
#define HDM_GETORDERARRAY (HDM_FIRST+17)
#define HDM_SETORDERARRAY (HDM_FIRST+18)
+#define HDM_SETHOTDIVIDER (HDM_FIRST+19)
+#endif
+#if (_WIN32_IE >= 0x0400)
+#define HDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
+#define HDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
#endif
#define HHT_NOWHERE 1
#define HHT_ONHEADER 2
@@ -344,12 +377,28 @@
#define HDN_GETDISPINFOA (HDN_FIRST-9)
#define HDN_GETDISPINFOW (HDN_FIRST-29)
#endif
+#if (_WIN32_IE >= 0x0400)
+#define HICF_OTHER 0x00
+#define HICF_MOUSE 0x01
+#define HICF_ARROWKEYS 0x02
+#define HICF_ACCELERATOR 0x04
+#define HICF_DUPACCEL 0x08
+#define HICF_ENTERING 0x10
+#define HICF_LEAVING 0x20
+#define HICF_RESELECT 0x40
+#define HICF_LMOUSE 0x80
+#define HICF_TOGGLEDROPDOWN 0x100
+#endif /* _WIN32_IE >= 0x0400 */
#define IPM_CLEARADDRESS (WM_USER+100)
#define IPM_SETADDRESS (WM_USER+101)
#define IPM_GETADDRESS (WM_USER+102)
#define IPM_SETRANGE (WM_USER+103)
#define IPM_SETFOCUS (WM_USER+104)
#define IPM_ISBLANK (WM_USER+105)
+#if (_WIN32_IE >= 0x0500)
+#define I_INDENTCALLBACK (-1)
+#define I_IMAGENONE (-2)
+#endif
#define CMB_MASKED 2
#define TBSTATE_CHECKED 1
#define TBSTATE_PRESSED 2
@@ -357,6 +406,9 @@
#define TBSTATE_HIDDEN 8
#define TBSTATE_INDETERMINATE 16
#define TBSTATE_WRAP 32
+#if (_WIN32_IE >= 0x0400)
+#define TBSTATE_MARKED 0x80
+#endif
#define TBSTYLE_BUTTON 0
#define TBSTYLE_SEP 1
#define TBSTYLE_CHECK 2
@@ -382,11 +434,29 @@
#define TBSTYLE_TRANSPARENT 0x8000
#define TBSTYLE_EX_DRAWDDARROWS 0x00000001
#endif /* _WIN32_IE >= 0x0400 */
+#if (_WIN32_IE >= 0x0501)
+#define TBSTYLE_EX_MIXEDBUTTONS 8
+#define TBSTYLE_EX_HIDECLIPPEDBUTTONS 16
+#endif /* _WIN32_IE >= 0x0501 */
+#if (_WIN32_WINNT >= _WXP)
+#define TBSTYLE_EX_DOUBLEBUFFER 0x80
+#endif /* _WIN32_WINNT >= _WXP */
#define HINST_COMMCTRL ((HINSTANCE)-1)
+#if (_WIN32_IE >= _IE4)
+#define TBCDRF_NOEDGES 0x10000
+#define TBCDRF_HILITEHOTTRACK 0x20000
+#define TBCDRF_NOOFFSET 0x40000
+#define TBCDRF_NOMARK 0x80000
+#define TBCDRF_NOETCHEDEFFECT 0x100000
+#endif /* _WIN32_IE >= _IE4 */
#define IDB_STD_SMALL_COLOR 0
#define IDB_STD_LARGE_COLOR 1
#define IDB_VIEW_SMALL_COLOR 4
#define IDB_VIEW_LARGE_COLOR 5
+#if (_WIN32_IE >= 0x0300)
+#define IDB_HIST_SMALL_COLOR 8
+#define IDB_HIST_LARGE_COLOR 9
+#endif
#define STD_CUT 0
#define STD_COPY 1
#define STD_PASTE 2
@@ -424,11 +494,19 @@
#define TB_ISBUTTONPRESSED (WM_USER+11)
#define TB_ISBUTTONHIDDEN (WM_USER+12)
#define TB_ISBUTTONINDETERMINATE (WM_USER+13)
+#if (_WIN32_IE >= 0x0400)
+#define TB_ISBUTTONHIGHLIGHTED (WM_USER+14)
+#endif
#define TB_SETSTATE (WM_USER+17)
#define TB_GETSTATE (WM_USER+18)
#define TB_ADDBITMAP (WM_USER+19)
+#if (_WIN32_IE >= 0x0400)
+#define TB_ADDBUTTONSA (WM_USER+20)
+#define TB_INSERTBUTTONA (WM_USER+21)
+#else
#define TB_ADDBUTTONS (WM_USER+20)
#define TB_INSERTBUTTON (WM_USER+21)
+#endif
#define TB_DELETEBUTTON (WM_USER+22)
#define TB_GETBUTTON (WM_USER+23)
#define TB_BUTTONCOUNT (WM_USER+24)
@@ -457,15 +535,59 @@
#define TB_REPLACEBITMAP (WM_USER+46)
#define TB_GETBUTTONSIZE (WM_USER+58)
#define TB_SETBUTTONWIDTH (WM_USER+59)
+#if (_WIN32_IE >= 0x0300)
+#define TB_SETINDENT (WM_USER+47)
+#define TB_SETIMAGELIST (WM_USER+48)
+#define TB_GETIMAGELIST (WM_USER+49)
+#define TB_LOADIMAGES (WM_USER+50)
+#define TB_GETRECT (WM_USER+51)
+#define TB_SETHOTIMAGELIST (WM_USER+52)
+#define TB_GETHOTIMAGELIST (WM_USER+53)
+#define TB_SETDISABLEDIMAGELIST (WM_USER+54)
+#define TB_GETDISABLEDIMAGELIST (WM_USER+55)
+#define TB_SETSTYLE (WM_USER+56)
+#define TB_GETSTYLE (WM_USER+57)
+#define TB_GETBUTTONSIZE (WM_USER+58)
+#define TB_SETBUTTONWIDTH (WM_USER+59)
+#define TB_SETMAXTEXTROWS (WM_USER+60)
+#define TB_GETTEXTROWS (WM_USER+61)
+#endif
#if _WIN32_IE >= 0x400
-#define TB_SETBUTTONINFO (WM_USER+66)
+#define TB_GETOBJECT (WM_USER+62)
+#define TB_GETBUTTONINFOW (WM_USER+63)
+#define TB_SETBUTTONINFOW (WM_USER+64)
+#define TB_GETBUTTONINFOA (WM_USER+65)
+#define TB_SETBUTTONINFOA (WM_USER+66)
+#define TB_INSERTBUTTONW (WM_USER+67)
+#define TB_ADDBUTTONSW (WM_USER+68)
+#define TB_HITTEST (WM_USER+69)
#define TB_SETEXTENDEDSTYLE (WM_USER+84)
#define TB_GETEXTENDEDSTYLE (WM_USER+85)
#define TB_SETDRAWTEXTFLAGS (WM_USER+70)
+#define TB_GETHOTITEM (WM_USER+71)
+#define TB_SETHOTITEM (WM_USER+72)
+#define TB_SETANCHORHIGHLIGHT (WM_USER+73)
+#define TB_GETANCHORHIGHLIGHT (WM_USER+74)
+#define TB_MAPACCELERATORA (WM_USER+78)
+#define TB_GETINSERTMARK (WM_USER+79)
+#define TB_SETINSERTMARK (WM_USER+80)
+#define TB_INSERTMARKHITTEST (WM_USER+81)
+#define TB_MOVEBUTTON (WM_USER+82)
+#define TB_GETMAXSIZE (WM_USER+83)
+#define TB_SETEXTENDEDSTYLE (WM_USER+84)
+#define TB_GETEXTENDEDSTYLE (WM_USER+85)
+#define TB_GETPADDING (WM_USER+86)
+#define TB_SETPADDING (WM_USER+87)
+#define TB_SETINSERTMARKCOLOR (WM_USER+88)
+#define TB_GETINSERTMARKCOLOR (WM_USER+89)
+#define TB_MAPACCELERATORW (WM_USER+90)
+#define TB_SETCOLORSCHEME CCM_SETCOLORSCHEME
+#define TB_GETCOLORSCHEME CCM_GETCOLORSCHEME
+#define TB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
+#define TB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
#endif
#define TBBF_LARGE 1
#define TBN_GETBUTTONINFOA (TBN_FIRST-0)
-#define TBN_GETBUTTONINFOW (TBN_FIRST-20)
#define TBN_BEGINDRAG (TBN_FIRST-1)
#define TBN_ENDDRAG (TBN_FIRST-2)
#define TBN_BEGINADJUST (TBN_FIRST-3)
@@ -475,6 +597,29 @@
#define TBN_QUERYDELETE (TBN_FIRST-7)
#define TBN_TOOLBARCHANGE (TBN_FIRST-8)
#define TBN_CUSTHELP (TBN_FIRST-9)
+#if (_WIN32_IE >= 0x0300)
+#define TBN_DROPDOWN (TBN_FIRST-10)
+#endif
+#if (_WIN32_IE >= 0x0400)
+#define TBN_HOTITEMCHANGE (TBN_FIRST-13)
+#define TBN_DRAGOUT (TBN_FIRST-14)
+#define TBN_DELETINGBUTTON (TBN_FIRST-15)
+#define TBN_GETDISPINFOA (TBN_FIRST-16)
+#define TBN_GETDISPINFOW (TBN_FIRST-17)
+#define TBN_GETINFOTIPA (TBN_FIRST-18)
+#define TBN_GETINFOTIPW (TBN_FIRST-19)
+#define TBN_GETBUTTONINFOW (TBN_FIRST-20)
+#endif
+#if (_WIN32_IE >= 0x0500)
+#define TBN_RESTORE (TBN_FIRST-21)
+#define TBN_SAVE (TBN_FIRST-22)
+#define TBN_INITCUSTOMIZE (TBN_FIRST-23)
+#define TBNRF_HIDEHELP 1
+#define TBNRF_ENDCUSTOMIZE 2
+#define TBNF_IMAGE 1
+#define TBNF_TEXT 2
+#define TBNF_DI_SETITEM 0x10000000
+#endif /* _WIN32_IE >= 0x0500 */
#define TTS_ALWAYSTIP 1
#define TTS_NOPREFIX 2
#if( _WIN32_IE >= 0x0500 )
@@ -487,6 +632,25 @@
#define TTF_CENTERTIP 2
#define TTF_RTLREADING 4
#define TTF_SUBCLASS 16
+#if (_WIN32_IE >= 0x0300)
+#define TTF_TRACK 0x0020
+#define TTF_ABSOLUTE 0x0080
+#define TTF_TRANSPARENT 0x0100
+#if (_WIN32_IE >= 0x0501)
+#define TTF_PARSELINKS 0x1000
+#endif
+#define TTF_DI_SETITEM 0x8000
+#define TBCD_TICS 1
+#define TBCD_THUMB 2
+#define TBCD_CHANNEL 3
+#endif /* _WIN32_IE >= 0x0300 */
+#if (_WIN32_IE >= 0x0400)
+#define TBDDRET_DEFAULT 0
+#define TBDDRET_NODEFAULT 1
+#define TBDDRET_TREATPRESSED 2
+#define TBIMHT_AFTER 1
+#define TBIMHT_BACKGROUND 2
+#endif
#define TTDT_AUTOMATIC 0
#define TTDT_RESHOW 1
#define TTDT_AUTOPOP 2
@@ -510,7 +674,7 @@
#define TTM_GETTEXTW (WM_USER+56)
#define TTM_UPDATETIPTEXTA (WM_USER+12)
#define TTM_UPDATETIPTEXTW (WM_USER+57)
-#define TTM_GETTOOLCOUNT (WM_USER +13)
+#define TTM_GETTOOLCOUNT (WM_USER+13)
#define TTM_ENUMTOOLSA (WM_USER+14)
#define TTM_ENUMTOOLSW (WM_USER+58)
#define TTM_GETCURRENTTOOLA (WM_USER+15)
@@ -532,6 +696,10 @@
#endif /* _WIN32_IE */
#if (_WIN32_IE >= 0x0400) /* IE4.0 ??? */
#define TTM_UPDATE (WM_USER+29)
+#define TTM_GETBUBBLESIZE (WM_USER+30)
+#define TTM_ADJUSTRECT (WM_USER+31)
+#define TTM_SETTITLEA (WM_USER+32)
+#define TTM_SETTITLEW (WM_USER+33)
#endif
#define TTN_GETDISPINFOA (TTN_FIRST - 0)
#define TTN_GETDISPINFOW (TTN_FIRST - 10)
@@ -563,6 +731,16 @@
#define UDM_GETACCEL (WM_USER+108)
#define UDM_SETBASE (WM_USER+109)
#define UDM_GETBASE (WM_USER+110)
+#if (_WIN32_IE >= 0x0400)
+#define UDM_SETRANGE32 (WM_USER+111)
+#define UDM_GETRANGE32 (WM_USER+112)
+#define UDM_SETPOS32 (WM_USER+113)
+#define UDM_GETPOS32 (WM_USER+114)
+#endif
+#if (_WIN32_IE >= 0x0500)
+#define UDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
+#define UDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
+#endif
#define SB_SETTEXTA (WM_USER+1)
#define SB_SETTEXTW (WM_USER+11)
#define SB_GETTEXTA (WM_USER+2)
@@ -581,6 +759,7 @@
#define SBT_RTLREADING 1024
#if( _WIN32_IE >= 0x0400 )
#define SBT_TOOLTIPS 0x0800
+#define SBN_SIMPLEMODECHANGE (SBN_FIRST)
#endif /* _WIN32_IE >= 0x0400 */
#define TBS_AUTOTICKS 1
#define TBS_VERT 2
@@ -594,8 +773,19 @@
#define TBS_ENABLESELRANGE 32
#define TBS_FIXEDLENGTH 64
#define TBS_NOTHUMB 128
-#define TBS_TOOLTIPS 0x0100
-#define TBS_REVERSED 0x0200
+#if (_WIN32_IE >= 0x0300)
+#define TBS_TOOLTIPS 0x100
+#define TBTS_TOP 0
+#define TBTS_LEFT 1
+#define TBTS_BOTTOM 2
+#define TBTS_RIGHT 3
+#endif
+#if (_WIN32_IE >= 0x0500)
+#define TBS_REVERSED 0x200
+#endif
+#if (_WIN32_IE >= 0x0501)
+#define TBS_DOWNISLEFT 0x0400
+#endif
#if _WIN32_IE >= 0x400
#define TBIF_BYINDEX -2147483648
#define TBIF_COMMAND 32
@@ -703,8 +893,7 @@
#define HDS_DRAGDROP 0x0040
#define HDS_FULLDRAG 0x0080
#define HDS_FILTERBAR 0x0100
-/* FIXME: missing CDIS_INDETERMINATE,CDIS_MARKED,
- CDDS_SUBITEM, CDRF_NOTIFYSUBITEMDRAW */
+/* FIXME: missing CDRF_NOTIFYSUBITEMDRAW */
#define CDIS_CHECKED 8
#define CDIS_DEFAULT 32
#define CDIS_DISABLED 4
@@ -712,6 +901,11 @@
#define CDIS_GRAYED 2
#define CDIS_HOT 64
#define CDIS_SELECTED 1
+#define CDIS_MARKED 128
+#define CDIS_INDETERMINATE 256
+#if (_WIN32_WINNT >= _WXP)
+#define CDIS_SHOWKEYBOARDCUES 512
+#endif
#define CDDS_POSTERASE 4
#define CDDS_POSTPAINT 2
#define CDDS_PREERASE 3
@@ -721,6 +915,9 @@
#define CDDS_ITEMPOSTPAINT 65538
#define CDDS_ITEMPREERASE 65539
#define CDDS_ITEMPREPAINT 65537
+#if (_WIN32_IE >= 0x0400)
+#define CDDS_SUBITEM 0x20000
+#endif
#define CDRF_DODEFAULT 0
#define CDRF_NOTIFYITEMDRAW 32
#define CDRF_NOTIFYITEMERASE 128
@@ -777,6 +974,14 @@
#define LVIF_IMAGE 2
#define LVIF_PARAM 4
#define LVIF_STATE 8
+#if (_WIN32_IE >= 0x0300)
+#define LVIF_INDENT 16
+#define LVIF_NORECOMPUTE 2048
+#endif
+#if (_WIN32_WINNT >= _WXP)
+#define LVIF_GROUPID 128
+#define LVIF_COLUMNS 256
+#endif
#define LVIS_FOCUSED 1
#define LVIS_SELECTED 2
#define LVIS_CUT 4
@@ -801,7 +1006,17 @@
#define LVM_SETBKIMAGEW (LVM_FIRST + 138)
#define LVM_GETBKIMAGEA (LVM_FIRST + 69)
#define LVM_GETBKIMAGEW (LVM_FIRST + 139)
-#endif /* _WIN32_IE >=0x0400 */
+#define LV_MAX_WORKAREAS 16
+#define LVM_SETWORKAREAS (LVM_FIRST+65)
+#define LVM_GETWORKAREAS (LVM_FIRST+70)
+#define LVM_GETNUMBEROFWORKAREAS (LVM_FIRST+73)
+#define LVM_GETSELECTIONMARK (LVM_FIRST+66)
+#define LVM_SETSELECTIONMARK (LVM_FIRST+67)
+#define LVM_SETHOVERTIME (LVM_FIRST+71)
+#define LVM_GETHOVERTIME (LVM_FIRST+72)
+#define LVM_SETTOOLTIPS (LVM_FIRST+74)
+#define LVM_GETTOOLTIPS (LVM_FIRST+78)
+#endif /* _WIN32_IE >= 0x0400 */
#define LVNI_ALL 0
#define LVNI_FOCUSED 1
#define LVNI_SELECTED 2
@@ -935,9 +1150,12 @@
#define LVN_SETDISPINFOW (LVN_FIRST-78)
#define LVN_KEYDOWN (LVN_FIRST-55)
#if (_WIN32_IE >= 0x0400)
+#define LVN_GETINFOTIPA (LVN_FIRST-57)
+#define LVN_GETINFOTIPW (LVN_FIRST-58)
#define LVKF_ALT 0x0001
#define LVKF_CONTROL 0x0002
#define LVKF_SHIFT 0x0004
+#define LVGIT_UNFOLDED 1
#endif
#define TVS_HASBUTTONS 1
#define TVS_HASLINES 2
@@ -1032,11 +1250,21 @@
#define TVM_SETITEMHEIGHT (TV_FIRST+27)
#define TVM_SETSCROLLTIME (TV_FIRST+33)
#define TVM_SETTEXTCOLOR (TV_FIRST+30)
+#define TVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
+#define TVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
+#endif
+#if (_WIN32_IE >= 0x0500)
+#define TVM_GETITEMSTATE (TV_FIRST+39)
+#define TVM_SETLINECOLOR (TV_FIRST+40)
+#define TVM_GETLINECOLOR (TV_FIRST+41)
#endif
#define TVE_COLLAPSE 1
#define TVE_EXPAND 2
#define TVE_TOGGLE 3
#define TVE_COLLAPSERESET 0x8000
+#if (_WIN32_IE >= 0x0300)
+#define TVE_EXPANDPARTIAL 0x4000
+#endif
#define TVC_UNKNOWN 0
#define TVC_BYMOUSE 1
#define TVC_BYKEYBOARD 2
@@ -1050,6 +1278,9 @@
#define TVGN_PREVIOUSVISIBLE 7
#define TVGN_DROPHILITE 8
#define TVGN_CARET 9
+#if (_WIN32_IE >= 0x0400)
+#define TVGN_LASTVISIBLE 10
+#endif
#define TVN_SELCHANGINGA (TVN_FIRST-1)
#define TVN_SELCHANGINGW (TVN_FIRST-50)
#define TVN_SELCHANGEDA (TVN_FIRST-2)
@@ -1073,6 +1304,14 @@
#define TVN_ENDLABELEDITA (TVN_FIRST-11)
#define TVN_ENDLABELEDITW (TVN_FIRST-60)
#define TVN_KEYDOWN (TVN_FIRST-12)
+#if (_WIN32_IE >= 0x0400)
+#define TVN_GETINFOTIPA (TVN_FIRST-13)
+#define TVN_GETINFOTIPW (TVN_FIRST-14)
+#define TVN_SINGLEEXPAND (TVN_FIRST-15)
+#define TVNRET_DEFAULT 0
+#define TVNRET_SKIPOLD 1
+#define TVNRET_SKIPNEW 2
+#endif /* _WIN32_IE >= 0x0400 */
#define TVIF_DI_SETITEM 0x1000
#define TVHT_NOWHERE 1
#define TVHT_ONITEMICON 2
@@ -1120,6 +1359,9 @@
#define TCIF_IMAGE 2
#define TCIF_RTLREADING 4
#define TCIF_PARAM 8
+#if (_WIN32_IE >= 0x0400)
+#define TCIF_STATE 16
+#endif
#define TCM_FIRST 0x1300
#define TCM_GETIMAGELIST (TCM_FIRST+2)
#define TCM_SETIMAGELIST (TCM_FIRST+3)
@@ -1174,13 +1416,23 @@
#define NM_RELEASEDCAPTURE (NM_FIRST-16)
#define NM_SETCURSOR (NM_FIRST-17)
#define NM_CHAR (NM_FIRST-18)
+#define NM_TOOLTIPSCREATED (NM_FIRST-19)
#define SBARS_SIZEGRIP 256
+#define CCM_FIRST 0x2000
+#define CCM_LAST (CCM_FIRST+0x200)
#define CCM_SETBKCOLOR 8193
#define CCM_SETCOLORSCHEME 8194
#define CCM_GETCOLORSCHEME 8195
#define CCM_GETDROPTARGET 8196
#define CCM_SETUNICODEFORMAT 8197
#define CCM_GETUNICODEFORMAT 8198
+#define CCM_SETVERSION 0x2007
+#define CCM_GETVERSION 0x2008
+#define CCM_SETNOTIFYWINDOW 0x2009
+#if (_WIN32_WINNT >= _WXP)
+#define CCM_SETWINDOWTHEME 0x200b
+#define CCM_DPISCALE 0x200c
+#endif
#define ICC_LISTVIEW_CLASSES 1
#define ICC_TREEVIEW_CLASSES 2
#define ICC_BAR_CLASSES 4
@@ -1197,7 +1449,7 @@
#define ICC_INTERNET_CLASSES 2048
#define ICC_PAGESCROLLER_CLASS 4096
#define ICC_NATIVEFNTCTL_CLASS 8192
-#define INFOTIPSIZE
+#define INFOTIPSIZE 1024
#endif /* _WIN32_IE */
#define GDTR_MIN 1
#define GDTR_MAX 2
@@ -1267,12 +1519,13 @@
#define MCM_SETRANGE 0x1012
#define MCM_GETMONTHDELTA 0x1013
#define MCM_SETMONTHDELTA 0x1014
+#define MCM_GETMAXTODAYWIDTH 0x1015
#define MCN_SELCHANGE ((UINT)-749)
#define MCN_GETDAYSTATE ((UINT)-747)
#define MCN_SELECT ((UINT)-746)
#define ODT_HEADER 100
#define ODT_TAB 101
-#define ODT_LISTVIEW
+#define ODT_LISTVIEW 102
#define SB_SETBKCOLOR 0x2001
#if (_WIN32_IE >= 0x0300)
#define SB_ISSIMPLE 1038
@@ -1283,6 +1536,25 @@
#define MCSC_MONTHBK 4
#define MCSC_TRAILINGTEXT 5
#endif
+#if (_WIN32_IE >= 0x0400)
+#define MCHT_TITLE 0x10000
+#define MCHT_CALENDAR 0x20000
+#define MCHT_TODAYLINK 0x30000
+#define MCHT_NEXT 0x1000000
+#define MCHT_PREV 0x2000000
+#define MCHT_NOWHERE 0x00
+#define MCHT_TITLEBK (MCHT_TITLE)
+#define MCHT_TITLEMONTH (MCHT_TITLE | 0x0001)
+#define MCHT_TITLEYEAR (MCHT_TITLE | 0x0002)
+#define MCHT_TITLEBTNNEXT (MCHT_TITLE | MCHT_NEXT | 0x0003)
+#define MCHT_TITLEBTNPREV (MCHT_TITLE | MCHT_PREV | 0x0003)
+#define MCHT_CALENDARBK (MCHT_CALENDAR)
+#define MCHT_CALENDARDATE (MCHT_CALENDAR | 0x0001)
+#define MCHT_CALENDARDATENEXT (MCHT_CALENDARDATE | MCHT_NEXT)
+#define MCHT_CALENDARDATEPREV (MCHT_CALENDARDATE | MCHT_PREV)
+#define MCHT_CALENDARDAY (MCHT_CALENDAR | 0x0002)
+#define MCHT_CALENDARWEEKNUM (MCHT_CALENDAR | 0x0003)
+#endif /* _WIN32_IE >= 0x0400 */
#define RBS_TOOLTIPS 256
#define RBS_VARHEIGHT 512
#define RBS_BANDBORDERS 1024
@@ -1340,6 +1612,44 @@
#define SB_GETICON 1044
#define SB_SETUNICODEFORMAT 0x2005
#define SB_GETUNICODEFORMAT 0x2006
+#define PGS_VERT 0
+#define PGS_HORZ 1
+#define PGS_AUTOSCROLL 2
+#define PGS_DRAGNDROP 4
+#define PGF_INVISIBLE 0
+#define PGF_NORMAL 1
+#define PGF_GRAYED 2
+#define PGF_DEPRESSED 4
+#define PGF_HOT 8
+#define PGB_TOPORLEFT 0
+#define PGB_BOTTOMORRIGHT 1
+#define PGF_SCROLLUP 1
+#define PGF_SCROLLDOWN 2
+#define PGF_SCROLLLEFT 4
+#define PGF_SCROLLRIGHT 8
+#define PGK_SHIFT 1
+#define PGK_CONTROL 2
+#define PGK_MENU 4
+#define PGF_CALCWIDTH 1
+#define PGF_CALCHEIGHT 2
+#define PGM_FIRST 0x1400
+#define PGM_SETCHILD (PGM_FIRST+1)
+#define PGM_RECALCSIZE (PGM_FIRST+2)
+#define PGM_FORWARDMOUSE (PGM_FIRST+3)
+#define PGM_SETBKCOLOR (PGM_FIRST+4)
+#define PGM_GETBKCOLOR (PGM_FIRST+5)
+#define PGM_SETBORDER (PGM_FIRST+6)
+#define PGM_GETBORDER (PGM_FIRST+7)
+#define PGM_SETPOS (PGM_FIRST+8)
+#define PGM_GETPOS (PGM_FIRST+9)
+#define PGM_SETBUTTONSIZE (PGM_FIRST+10)
+#define PGM_GETBUTTONSIZE (PGM_FIRST+11)
+#define PGM_GETBUTTONSTATE (PGM_FIRST+12)
+#define PGM_GETDROPTARGET CCM_GETDROPTARGET
+#define PGN_FIRST (0U-900U)
+#define PGN_LAST (0U-950U)
+#define PGN_SCROLL (PGN_FIRST-1)
+#define PGN_CALCSIZE (PGN_FIRST-2)
#define RBS_REGISTERDROP 4096
#define RBS_AUTOSIZE 8192
#define RBS_VERTICALGRIPPER 16384
@@ -1473,7 +1783,76 @@
int iField;
int iValue;
} NMIPADDRESS, *LPNMIPADDRESS;
-#endif /*_WIN32_IE >= 0x0400*/
+typedef struct tagLVKEYDOWN {
+ NMHDR hdr;
+ WORD wVKey;
+ UINT flags;
+} NMLVKEYDOWN, *LPNMLVKEYDOWN;
+typedef struct {
+ NMHDR hdr;
+ DWORD dwFlag;
+ int iWidth;
+ int iHeight;
+} NMPGCALCSIZE, *LPNMPGCALCSIZE;
+typedef struct {
+ NMHDR hdr;
+ BOOL fwKeys;
+ RECT rcParent;
+ int iDir;
+ int iXpos;
+ int iYpos;
+ int iScroll;
+} NMPGSCROLL, *LPNMPGSCROLL;
+typedef struct tagNMSELCHANGE {
+ NMHDR nmhdr;
+ SYSTEMTIME stSelStart;
+ SYSTEMTIME stSelEnd;
+} NMSELCHANGE, *LPNMSELCHANGE;
+typedef struct tagNMTBHOTITEM {
+ NMHDR hdr;
+ int idOld;
+ int idNew;
+ DWORD dwFlags;
+} NMTBHOTITEM, *LPNMTBHOTITEM;
+typedef struct {
+ NMHDR hdr;
+ DWORD dwMask;
+ int idCommand;
+ DWORD_PTR lParam;
+ int iImage;
+ LPSTR pszText;
+ int cchText;
+} NMTBDISPINFOA, *LPNMTBDISPINFOA;
+typedef struct {
+ NMHDR hdr;
+ DWORD dwMask;
+ int idCommand;
+ DWORD_PTR lParam;
+ int iImage;
+ LPWSTR pszText;
+ int cchText;
+} NMTBDISPINFOW, *LPNMTBDISPINFOW;
+typedef struct tagNMMOUSE {
+ NMHDR hdr;
+ DWORD_PTR dwItemSpec;
+ DWORD_PTR dwItemData;
+ POINT pt;
+ LPARAM dwHitInfo;
+} NMMOUSE, *LPNMMOUSE;
+#endif /*_WIN32_IE >= 0x0400 */
+#if (_WIN32_IE >= 0x0401)
+typedef struct tagNMTOOLTIPSCREATED
+{
+ NMHDR hdr;
+ HWND hwndToolTips;
+} NMTOOLTIPSCREATED, *LPNMTOOLTIPSCREATED;
+#endif
+typedef struct tagNMDATETIMECHANGE
+{
+ NMHDR nmhdr;
+ DWORD dwFlags;
+ SYSTEMTIME st;
+} NMDATETIMECHANGE, *LPNMDATETIMECHANGE;
typedef struct {
NMHDR hdr;
BOOL fChanged;
@@ -1532,6 +1911,10 @@
LPWSTR pszText;
int cchText;
} TBBUTTONINFOW, *LPTBBUTTONINFOW;
+typedef struct {
+ int iButton;
+ DWORD dwFlags;
+} TBINSERTMARK, *LPTBINSERTMARK;
typedef struct tagLVBKIMAGEA {
ULONG ulFlags;
HBITMAP hbm;
@@ -1567,8 +1950,8 @@
int Unused1;
int Unused2;
RECT rcImage;
-} IMAGEINFO;
-DECLARE_HANDLE(HIMAGELIST);
+} IMAGEINFO, *LPIMAGEINFO;
+typedef struct _IMAGELIST *HIMAGELIST;
typedef struct _HDITEMA {
UINT mask;
int cxy;
@@ -1616,7 +1999,7 @@
POINT pt;
UINT flags;
int iItem;
-} HD_HITTESTINFO;
+} HD_HITTESTINFO, *LPHDHITTESTINFO;
typedef struct _HD_NOTIFYA {
NMHDR hdr;
int iItem;
@@ -1688,6 +2071,28 @@
int iSubItem;
#endif
} NMLVCUSTOMDRAW, *LPNMLVCUSTOMDRAW;
+#if (_WIN32_IE >= 0x0400)
+typedef struct tagNMLVGETINFOTIPA
+{
+ NMHDR hdr;
+ DWORD dwFlags;
+ LPSTR pszText;
+ int cchTextMax;
+ int iItem;
+ int iSubItem;
+ LPARAM lParam;
+} NMLVGETINFOTIPA, *LPNMLVGETINFOTIPA;
+typedef struct tagNMLVGETINFOTIPW
+{
+ NMHDR hdr;
+ DWORD dwFlags;
+ LPWSTR pszText;
+ int cchTextMax;
+ int iItem;
+ int iSubItem;
+ LPARAM lParam;
+} NMLVGETINFOTIPW, *LPNMLVGETINFOTIPW;
+#endif /* _WIN32_IE >= 0x0400 */
typedef struct tagNMTVCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
COLORREF clrText;
@@ -1697,6 +2102,24 @@
#endif
} NMTVCUSTOMDRAW, *LPNMTVCUSTOMDRAW;
#if (_WIN32_IE >= 0x400)
+typedef struct _NMTBCUSTOMDRAW {
+ NMCUSTOMDRAW nmcd;
+ HBRUSH hbrMonoDither;
+ HBRUSH hbrLines;
+ HPEN hpenLines;
+ COLORREF clrText;
+ COLORREF clrMark;
+ COLORREF clrTextHighlight;
+ COLORREF clrBtnFace;
+ COLORREF clrBtnHighlight;
+ COLORREF clrHighlightHotTrack;
+ RECT rcText;
+ int nStringBkMode;
+ int nHLStringBkMode;
+#if (_WIN32_WINNT >= _WXP)
+ int iListGap;
+#endif
+} NMTBCUSTOMDRAW, * LPNMTBCUSTOMDRAW;
typedef struct tagNMITEMACTIVATE {
NMHDR hdr;
int iItem;
@@ -1765,7 +2188,10 @@
#if (_WIN32_IE >= 0x0300)
LPARAM lParam;
#endif
-} TOOLINFOA,*PTOOLINFOA,*LPTOOLINFOA;
+} TOOLINFOA,TTTOOLINFOA,*LPTTTOOLINFOA,*PTOOLINFOA,*LPTOOLINFOA;
+#define TTTOOLINFOA_V1_SIZE CCSIZEOF_STRUCT(TTTOOLINFOA, lpszText)
+#define TTTOOLINFOA_V2_SIZE CCSIZEOF_STRUCT(TTTOOLINFOA, lParam)
+#define TTTOOLINFOA_V3_SIZE CCSIZEOF_STRUCT(TTTOOLINFOA, lpReserved)
typedef struct tagTOOLINFOW {
UINT cbSize;
UINT uFlags;
@@ -1777,17 +2203,20 @@
#if (_WIN32_IE >= 0x0300)
LPARAM lParam;
#endif
-} TOOLINFOW,*PTOOLINFOW,*LPTOOLINFOW;
+} TOOLINFOW,TTTOOLINFOW,*LPTTTOOLINFOW,*PTOOLINFOW,*LPTOOLINFOW;
+#define TTTOOLINFOW_V1_SIZE CCSIZEOF_STRUCT(TTTOOLINFOW, lpszText)
+#define TTTOOLINFOW_V2_SIZE CCSIZEOF_STRUCT(TTTOOLINFOW, lParam)
+#define TTTOOLINFOW_V3_SIZE CCSIZEOF_STRUCT(TTTOOLINFOW, lpReserved)
typedef struct _TT_HITTESTINFOA {
HWND hwnd;
POINT pt;
TOOLINFOA ti;
-} TTHITTESTINFOA,*LPHITTESTINFOA;
+} TTHITTESTINFOA,*LPHITTESTINFOA,*LPTTHITTESTINFOA;
typedef struct _TT_HITTESTINFOW {
HWND hwnd;
POINT pt;
TOOLINFOW ti;
-} TTHITTESTINFOW,*LPHITTESTINFOW;
+} TTHITTESTINFOW,*LPHITTESTINFOW,*LPTTHITTESTINFOW;
typedef struct tagNMTTDISPINFOA {
NMHDR hdr;
LPSTR lpszText;
@@ -1853,6 +2282,11 @@
#if (_WIN32_IE >= 0x0300)
int iIndent;
#endif
+#if (_WIN32_WINNT >= _WXP)
+ int iGroupId;
+ UINT cColumns;
+ PUINT puColumns;
+#endif
} LVITEMW, FAR *LPLVITEMW;
#define _LV_ITEMW _LVITEMW
#define LV_ITEMW LVITEMW
@@ -1862,7 +2296,7 @@
LPARAM lParam;
POINT pt;
UINT vkDirection;
-} LVFINDINFOA, FAR* LPFINDINFOA;
+} LVFINDINFOA, FAR* LPFINDINFOA, FAR* LPLVFINDINFOA;
#define _LV_FINDINFOA tagLVFINDINFOA
#define LV_FINDINFOA LVFINDINFOA
typedef struct tagLVFINDINFOW {
@@ -1871,7 +2305,7 @@
LPARAM lParam;
POINT pt;
UINT vkDirection;
-} LVFINDINFOW, FAR* LPFINDINFOW;
+} LVFINDINFOW, FAR* LPFINDINFOW, FAR* LPLVFINDINFOW;
#define _LV_FINDINFOW tagLVFINDINFOW
#define LV_FINDINFOW LVFINDINFOW
typedef struct _LVHITTESTINFO {
@@ -1881,7 +2315,7 @@
#if (_WIN32_IE >= 0x0300)
int iSubItem;
#endif
-} LVHITTESTINFO;
+} LVHITTESTINFO, FAR *LPLVHITTESTINFO;
#define _LV_HITTESTINFO _LVHITTESTINFO
#define LV_HITTESTINFO LVHITTESTINFO
typedef struct _LVCOLUMNA {
@@ -1950,7 +2384,7 @@
int iTo;
} NMLVCACHEHINT, *PNMLVCACHEHINT;
#define NM_CACHEHINT NMLVCACHEHINT
-DECLARE_HANDLE(HTREEITEM);
+typedef struct _TREEITEM *HTREEITEM;
typedef struct tagTVITEMA {
UINT mask;
HTREEITEM hItem;
@@ -2111,22 +2545,32 @@
} TC_ITEMHEADERW;
typedef struct _TC_ITEMA {
UINT mask;
- UINT lpReserved1;
- UINT lpReserved2;
+#if (_WIN32_IE >= 0x0300)
+ DWORD dwState;
+ DWORD dwStateMask;
+#else
+ UINT lpReserved1;
+ UINT lpReserved2;
+#endif
LPSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
-} TC_ITEMA;
+} TC_ITEMA, TCITEMA, *LPTCITEMA;
typedef struct _TC_ITEMW {
UINT mask;
- UINT lpReserved1;
- UINT lpReserved2;
+#if (_WIN32_IE >= 0x0300)
+ DWORD dwState;
+ DWORD dwStateMask;
+#else
+ UINT lpReserved1;
+ UINT lpReserved2;
+#endif
LPWSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
-} TC_ITEMW;
+} TC_ITEMW, TCITEMW, *LPTCITEMW;
typedef struct _TC_HITTESTINFO {
POINT pt;
UINT flags;
@@ -2151,24 +2595,6 @@
COLORREF clrBtnHighlight;
COLORREF clrBtnShadow;
} COLORSCHEME,*LPCOLORSCHEME;
-typedef struct tagTCITEM {
- UINT mask;
-#if (_WIN32_IE >= 0x0300)
- DWORD dwState;
- DWORD dwStateMask;
-#else
- UINT lpReserved1;
- UINT lpReserved2;
-#endif
-#ifdef UNICODE
- LPWSTR pszText;
-#else
- LPSTR pszText;
-#endif
- int cchTextMax;
- int iImage;
- LPARAM lParam;
-} TCITEM,*LPTCITEM;
typedef struct tagMCHITTESTINFO {
UINT cbSize;
POINT pt;
@@ -2261,6 +2687,11 @@
COLORREF rgbFg;
UINT fStyle;
DWORD dwRop;
+#if (_WIN32_WINNT >= _WXP)
+ DWORD fState;
+ DWORD Frame;
+ COLORREF crEffect;
+#endif
} IMAGELISTDRAWPARAMS,*LPIMAGELISTDRAWPARAMS;
#endif /* (_WIN32_IE >= 0x0300) */
#if (_WIN32_IE >= 0x0400)
@@ -2306,7 +2737,7 @@
#define INDEXTOSTATEIMAGEMASK(i) ((i)<<12)
#define HANDLE_WM_NOTIFY(h,w,l,f) (f)((h),(int)(w),(NMHDR*)(l))
#define FORWARD_WM_NOTIFY(h,i,p,f) (LRESULT)(f)((h),WM_NOTIFY,(WPARAM)(int)(i),(LPARAM)(NMHDR*)(p))
-#define CCSIZEOF_STRUCT(n,m) (((int)((PBYTE)(&((s*)0)->m)-((PBYTE)((s*)0))))+sizeof(((s*)0)->m))
+#define CCSIZEOF_STRUCT(s,m) (((int)((PBYTE)(&((s*)0)->m)-((PBYTE)((s*)0))))+sizeof(((s*)0)->m))
#define MAKEIPADDRESS(b1,b2,b3,b4) ((LPARAM)(((DWORD)(b1)<<24)+((DWORD)(b2)<<16)+((DWORD)(b3)<<8)+((DWORD)(b4))))
#define MAKEIPRANGE(low,high) ((LPARAM)(WORD)(((BYTE)(high)<<8)+(BYTE)(low)))
#define FIRST_IPADDRESS(a) ((a>>24) & 0xff)
@@ -2576,6 +3007,15 @@
#define ListView_GetBkImage(h,plvbki) (BOOL)SNDMSG((h), LVM_GETBKIMAGE, 0, (LPARAM)(plvbki))
#define ListView_SetBkImage(h, plvbki) (BOOL)SNDMSG((h), LVM_SETBKIMAGE, 0, (LPARAM)(plvbki))
#define ListView_SetExtendedListViewStyleEx(w,m,s) (DWORD)SNDMSG((w),LVM_SETEXTENDEDLISTVIEWSTYLE,(m),(s))
+#define ListView_SetWorkAreas(w,n,r) (BOOL)SNDMSG((w),LVM_SETWORKAREAS,(WPARAM)(n),(LPARAM)(RECT *)(r))
+#define ListView_GetWorkAreas(w,n,r) (BOOL)SNDMSG((w),LVM_GETWORKAREAS,(WPARAM)(n),(LPARAM)(RECT *)(r))
+#define ListView_GetNumberOfWorkAreas(w,n) (BOOL)SNDMSG((w),LVM_GETNUMBEROFWORKAREAS,0,(LPARAM)(UINT *)(pnWorkAreas))
+#define ListView_SetHoverTime(w,t) (DWORD)SNDMSG((w),LVM_SETHOVERTIME,0,(LPARAM)(t))
+#define ListView_GetHoverTime(w) (DWORD)SNDMSG((w),LVM_GETHOVERTIME,0,0)
+#define ListView_GetSelectionMark(w) (INT)SNDMSG((w),LVM_GETSELECTIONMARK,0,0)
+#define ListView_SetSelectionMark(w,i) (INT)SNDMSG((w),LVM_SETSELECTIONMARK,0,(LPARAM)(i))
+#define ListView_SetToolTips(w,n) (HWND)SNDMSG((w),LVM_SETTOOLTIPS,(WPARAM)(n),0)
+#define ListView_GetToolTips(w) (HWND)SNDMSG((w),LVM_GETTOOLTIPS,0,0)
#define TabCtrl_HighlightItem(hwnd, i, fHighlight) SNDMSG((hwnd), TCM_HIGHLIGHTITEM, (WPARAM)i, (LPARAM)MAKELONG (fHighlight, 0))
#define TabCtrl_SetExtendedStyle(hwnd, dw) SNDMSG((hwnd), TCM_SETEXTENDEDSTYLE, 0, dw)
#define TabCtrl_GetExtendedStyle(hwnd) SNDMSG((hwnd), TCM_GETEXTENDEDSTYLE, 0, 0)
@@ -2591,12 +3031,18 @@
#define TreeView_SetItemHeight(w,h) (int)SNDMSG((w),TVM_SETITEMHEIGHT,(WPARAM)(h),0)
#define TreeView_SetScrollTime(w,t) (UINT)SNDMSG((w),TVM_SETSCROLLTIME,(WPARAM)(UINT)(t),0)
#define TreeView_SetTextColor(w,c) (COLORREF)SNDMSG((w),TVM_SETTEXTCOLOR,0,(LPARAM)(c))
+#define TreeView_SetInsertMark(w,i,a) (BOOL)SNDMSG((w),TVM_SETINSERTMARK,(WPARAM)(a),(LPARAM)(i))
+#define TreeView_SetUnicodeFormat(w,u) (BOOL)SNDMSG((w),TVM_SETUNICODEFORMAT,(WPARAM)(u),0)
+#define TreeView_GetUnicodeFormat(w) (BOOL)SNDMSG((w),TVM_GETUNICODEFORMAT,0,0)
+#endif
+#if (_WIN32_IE >= 0x0500)
+#define TreeView_GetItemState(w,i,m) (UINT)SNDMSG((w),TVM_GETITEMSTATE,(WPARAM)(i),(LPARAM)(m))
#endif
#ifdef UNICODE
typedef HDITEMW HDITEM;
typedef TOOLINFOW TOOLINFO,*PTOOLINFO,*LPTOOLINFO;
-typedef TTHITTESTINFOW TTHITTESTINFO,*LPHITTESTINFO;
+typedef TTHITTESTINFOW TTHITTESTINFO,*LPHITTESTINFO,*LPTTHITTESTINFO;
typedef TOOLTIPTEXTW TOOLTIPTEXT,*LPTOOLTIPTEXT;
typedef NMTTDISPINFOW NMTTDISPINFO, *LPNMTTDISPINFO;
typedef TV_ITEMW TV_ITEM,*LPTV_ITEM;
@@ -2653,8 +3099,16 @@
#define TB_ADDSTRING TB_ADDSTRINGW
#define TBN_GETBUTTONINFO TBN_GETBUTTONINFOW
#if _WIN32_IE >= 0x400
+#define TB_GETBUTTONINFO TB_GETBUTTONINFOW
+#define TB_SETBUTTONINFO TB_SETBUTTONINFOW
+#define TB_INSERTBUTTON TB_INSERTBUTTONW
+#define TB_ADDBUTTONS TB_ADDBUTTONSW
+#define TB_MAPACCELERATOR TB_MAPACCELERATORW
#define TBBUTTONINFO TBBUTTONINFOW
#define LPTBBUTTONINFO LPTBBUTTONINFOW
+#define TBN_GETDISPINFO TBN_GETDISPINFOW
+#define NMTBDISPINFO NMTBDISPINFOW
+#define LPNMTBDISPINFO LPNMTBDISPINFOW
#endif
#define TBNOTIFY TBNOTIFYW
#define LPTBNOTIFY LPTBNOTIFYW
@@ -2704,6 +3158,9 @@
#define LVN_ENDLABELEDIT LVN_ENDLABELEDITW
#define LVN_GETDISPINFO LVN_GETDISPINFOW
#define LVN_SETDISPINFO LVN_SETDISPINFOW
+#define LVN_GETINFOTIP LVN_GETINFOTIPW
+#define NMLVGETINFOTIP NMLVGETINFOTIPW
+#define LPNMLVGETINFOTIP LPNMLVGETINFOTIPW
#define LV_DISPINFO LV_DISPINFOW
#define NMLVDISPINFO NMLVDISPINFOW
#define TVM_INSERTITEM TVM_INSERTITEMW
@@ -2727,6 +3184,8 @@
#define TVN_ENDLABELEDIT TVN_ENDLABELEDITW
#define TC_ITEMHEADER TC_ITEMHEADERW
#define TC_ITEM TC_ITEMW
+#define TCITEM TC_ITEMW
+#define LPTCITEM LPTCITEMW
#define TCM_GETITEM TCM_GETITEMW
#define TCM_SETITEM TCM_SETITEMW
#define TCM_INSERTITEM TCM_INSERTITEMW
@@ -2746,7 +3205,7 @@
#else /* UNICODE */
typedef HDITEMA HDITEM;
typedef TOOLINFOA TOOLINFO,*PTOOLINFO,*LPTOOLINFO;
-typedef TTHITTESTINFOA TTHITTESTINFO,*LPHITTESTINFO;
+typedef TTHITTESTINFOA TTHITTESTINFO,*LPHITTESTINFO,*LPTTHITTESTINFO;
typedef TOOLTIPTEXTA TOOLTIPTEXT,*LPTOOLTIPTEXT;
typedef NMTTDISPINFOA NMTTDISPINFO, *LPNMTTDISPINFO;
typedef TV_ITEMA TV_ITEM,*LPTV_ITEM;
@@ -2771,6 +3230,11 @@
#define LPNMCBEENDEDIT LPNMCBEENDEDITA
#define PNMCBEENDEDIT PNMCBEENDEDITA
#if _WIN32_IE >= 0x0400
+#define TB_GETBUTTONINFO TB_GETBUTTONINFOA
+#define TB_SETBUTTONINFO TB_SETBUTTONINFOA
+#define TB_INSERTBUTTON TB_INSERTBUTTONA
+#define TB_ADDBUTTONS TB_ADDBUTTONSA
+#define TB_MAPACCELERATOR TB_MAPACCELERATORA
#define NMCOMBOBOXEX NMCOMBOBOXEXA
#define PNMCOMBOBOXEX PNMCOMBOBOXEXA
#define CBEN_DRAGBEGIN CBEN_DRAGBEGINA
@@ -2778,6 +3242,9 @@
#define NMCBEDRAGBEGIN NMCBEDRAGBEGINA
#define LPNMCBEDRAGBEGIN LPNMCBEDRAGBEGINA
#define PNMCBEDRAGBEGIN PNMCBEDRAGBEGINA
+#define TBN_GETDISPINFO TBN_GETDISPINFOA
+#define NMTBDISPINFO NMTBDISPINFOA
+#define LPNMTBDISPINFO LPNMTBDISPINFOA
#endif /* _WIN32_IE >= 0x0400 */
#define SB_GETTEXT SB_GETTEXTA
#define SB_SETTEXT SB_SETTEXTA
@@ -2854,6 +3321,9 @@
#define LVN_ENDLABELEDIT LVN_ENDLABELEDITA
#define LVN_GETDISPINFO LVN_GETDISPINFOA
#define LVN_SETDISPINFO LVN_SETDISPINFOA
+#define LVN_GETINFOTIP LVN_GETINFOTIPA
+#define NMLVGETINFOTIP NMLVGETINFOTIPA
+#define LPNMLVGETINFOTIP LPNMLVGETINFOTIPA
#define LV_DISPINFO LV_DISPINFOA
#define NMLVDISPINFO NMLVDISPINFOA
#define TVM_INSERTITEM TVM_INSERTITEMA
@@ -2877,6 +3347,8 @@
#define TVN_ENDLABELEDIT TVN_ENDLABELEDITA
#define TC_ITEMHEADER TC_ITEMHEADERA
#define TC_ITEM TC_ITEMA
+#define TCITEM TC_ITEMA
+#define LPTCITEM LPTCITEMA
#define TCM_GETITEM TCM_GETITEMA
#define TCM_SETITEM TCM_SETITEMA
#define TCM_INSERTITEM TCM_INSERTITEMA
Index: src/winsup/w32api/include/prsht.h
===================================================================
RCS file: /cvs/src/src/winsup/w32api/include/prsht.h,v
retrieving revision 1.5
diff -u -r1.5 prsht.h
--- src/winsup/w32api/include/prsht.h 13 May 2003 10:53:13 -0000 1.5
+++ src/winsup/w32api/include/prsht.h 23 Aug 2003 11:20:31 -0000
@@ -31,6 +31,7 @@
#define PSH_USEHICON 2
#define PSH_USEICONID 4
#define PSH_PROPSHEETPAGE 8
+#define PSH_WIZARDHASFINISH 16
#define PSH_WIZARD 32
#define PSH_USEPSTARTPAGE 64
#define PSH_NOAPPLYNOW 128
@@ -40,7 +41,6 @@
#define PSH_RTLREADING 2048
#define PSH_WIZARDCONTEXTHELP 4096
#if (_WIN32_IE >= 0x0400)
-#define PSH_WIZARD97 8192
#define PSH_WATERMARK 32768
#define PSH_USEHBMWATERMARK 65536
#define PSH_USEHPLWATERMARK 131072
@@ -48,6 +48,14 @@
#define PSH_HEADER 524288
#define PSH_USEHBMHEADER 1048576
#define PSH_USEPAGELANG 2097152
+#endif
+#if (_WIN32_IE < 0x0500)
+#define PSH_WIZARD97 0x2000
+#endif
+#if (_WIN32_IE >= 0x0500)
+#define PSH_WIZARD97 0x1000000
+#define PSH_WIZARD_LITE 0x400000
+#define PSH_NOCONTEXTHELP 0x2000000
#endif
#define PSCB_INITIALIZED 1
#define PSCB_PRECREATE 2
Index: src/winsup/w32api/include/winuser.h
===================================================================
RCS file: /cvs/src/src/winsup/w32api/include/winuser.h,v
retrieving revision 1.46
diff -u -r1.46 winuser.h
--- src/winsup/w32api/include/winuser.h 18 Aug 2003 09:43:24 -0000 1.46
+++ src/winsup/w32api/include/winuser.h 23 Aug 2003 11:20:41 -0000
@@ -446,6 +446,10 @@
#define DFCS_ADJUSTRECT 0x2000
#define DFCS_FLAT 0x4000
#define DFCS_MONO 0x8000
+#if (WINVER >= _W2K)
+#define DFCS_TRANSPARENT 0x800
+#define DFCS_HOT 0x1000
+#endif /* WINVER >= _W2K */
#define DST_COMPLEX 0
#define DST_TEXT 1
#define DST_PREFIXTEXT 2
@@ -2168,7 +2172,7 @@
short y;
short cx;
short cy;
-} DLGTEMPLATE,*LPDLGTEMPLATE;
+} DLGTEMPLATE,*LPDLGTEMPLATE,*LPDLGTEMPLATEA,*LPDLGTEMPLATEW;
typedef const DLGTEMPLATE *LPCDLGTEMPLATE;
#pragma pack(pop)
typedef struct tagDRAWITEMSTRUCT {