Differences From Artifact [4681e85cdf159780]:
- File
src/win32/commctrl.d
- 2015-04-21 10:46:55 - part of checkin [4e2933c620] on branch trunk - Rebased to the latest verson dmd 2.067. Not yet verified the outcome. (user: kinaba) [annotate]
To Artifact [62776dff0a2d0b7a]:
- File
src/win32/commctrl.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
4 * Windows API header module * 4 * Windows API header module *
5 * * 5 * *
6 * Translated from MinGW API for MS-Windows 3.12 * 6 * Translated from MinGW API for MS-Windows 3.12 *
7 * * 7 * *
8 * Placed into public domain * 8 * Placed into public domain *
9 \***********************************************************************/ 9 \***********************************************************************/
10 module win32.commctrl; 10 module win32.commctrl;
11 pragma(lib, "comctl32.lib"); | 11 pragma(lib, "comctl32");
12 12
13 private import win32.w32api, win32.windef, win32.winuser; 13 private import win32.w32api, win32.windef, win32.winuser;
14 private import win32.winbase; // for SYSTEMTIME 14 private import win32.winbase; // for SYSTEMTIME
15 private import win32.objfwd; // for LPSTREAM 15 private import win32.objfwd; // for LPSTREAM
16 16
17 import win32.prsht; 17 import win32.prsht;
18 18
................................................................................................................................................................................
53 HDM_FIRST = 0x1200 53 HDM_FIRST = 0x1200
54 } 54 }
55 55
56 enum { 56 enum {
57 ACM_OPENA = WM_USER + 100, 57 ACM_OPENA = WM_USER + 100,
58 ACM_PLAY = WM_USER + 101, 58 ACM_PLAY = WM_USER + 101,
59 ACM_STOP = WM_USER + 102, 59 ACM_STOP = WM_USER + 102,
60 ACM_OPENW = WM_USER + 103 | 60 ACM_OPENW = WM_USER + 103,
> 61 ACM_ISPLAYING = WM_USER + 104
61 } 62 }
62 63
63 enum { 64 enum {
64 ACN_START = 1, 65 ACN_START = 1,
65 ACN_STOP 66 ACN_STOP
66 } 67 }
67 68
................................................................................................................................................................................
277 SBN_LAST = -899U, 278 SBN_LAST = -899U,
278 PGN_FIRST = -900U, 279 PGN_FIRST = -900U,
279 PGN_LAST = -950U, 280 PGN_LAST = -950U,
280 PGN_SCROLL = PGN_FIRST-1, 281 PGN_SCROLL = PGN_FIRST-1,
281 PGN_CALCSIZE = PGN_FIRST-2 282 PGN_CALCSIZE = PGN_FIRST-2
282 } 283 }
283 } 284 }
> 285
> 286 static if (_WIN32_IE >= 0x500) {
> 287 enum {
> 288 WMN_FIRST = -1000U,
> 289 WMN_LAST = -1200U,
> 290 }
> 291 }
> 292
> 293 static if (_WIN32_WINNT >= 0x501)
> 294 {
> 295 enum {
> 296 BCN_FIRST = -1250U,
> 297 BCN_LAST = -1350U,
> 298 }
> 299 }
> 300
> 301 static if (_WIN32_WINNT >= 0x600)
> 302 {
> 303 enum {
> 304 TRBN_FIRST = -1501U,
> 305 TRBN_LAST = -1519U,
> 306 }
> 307 }
284 308
285 enum { 309 enum {
286 HDI_WIDTH = 1, 310 HDI_WIDTH = 1,
287 HDI_HEIGHT = 1, 311 HDI_HEIGHT = 1,
288 HDI_TEXT = 2, 312 HDI_TEXT = 2,
289 HDI_FORMAT = 4, 313 HDI_FORMAT = 4,
290 HDI_LPARAM = 8, 314 HDI_LPARAM = 8,
................................................................................................................................................................................
374 } 398 }
375 } 399 }
376 static if (_WIN32_IE >= 0x400) { 400 static if (_WIN32_IE >= 0x400) {
377 enum { 401 enum {
378 HDM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT, 402 HDM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT,
379 HDM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT 403 HDM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
380 } 404 }
> 405 }
> 406 static if (_WIN32_IE >= 0x500) {
> 407 enum {
> 408 HDM_SETBITMAPMARGIN = HDM_FIRST + 20,
> 409 HDM_GETBITMAPMARGIN = HDM_FIRST + 21,
> 410 HDM_SETFILTERCHANGETIMEOUT = HDM_FIRST + 22,
> 411 HDM_EDITFILTER = HDM_FIRST + 23,
> 412 HDM_CLEARFILTER = HDM_FIRST + 24,
> 413 }
> 414 }
> 415 static if (_WIN32_IE >= 0x600) {
> 416 enum {
> 417 HDM_GETITEMDROPDOWNRECT = HDM_FIRST + 25,
> 418 HDM_GETOVERFLOWRECT = HDM_FIRST + 26,
> 419 HDM_GETFOCUSEDITEM = HDM_FIRST + 27,
> 420 HDM_SETFOCUSEDITEM = HDM_FIRST + 28,
> 421 }
381 } 422 }
382 423
383 enum { 424 enum {
384 HHT_NOWHERE = 1, 425 HHT_NOWHERE = 1,
385 HHT_ONHEADER = 2, 426 HHT_ONHEADER = 2,
386 HHT_ONDIVIDER = 4, 427 HHT_ONDIVIDER = 4,
387 HHT_ONDIVOPEN = 8, 428 HHT_ONDIVOPEN = 8,
................................................................................................................................................................................
709 TB_GETPADDING, 750 TB_GETPADDING,
710 TB_SETPADDING, 751 TB_SETPADDING,
711 TB_SETINSERTMARKCOLOR, 752 TB_SETINSERTMARKCOLOR,
712 TB_GETINSERTMARKCOLOR, 753 TB_GETINSERTMARKCOLOR,
713 TB_MAPACCELERATORW, 754 TB_MAPACCELERATORW,
714 TB_GETSTRINGW, 755 TB_GETSTRINGW,
715 TB_GETSTRINGA, // = WM_USER + 92 756 TB_GETSTRINGA, // = WM_USER + 92
> 757 TB_SETHOTITEM2 = WM_USER + 94,
> 758 TB_SETLISTGAP = WM_USER + 96,
> 759 TB_GETIMAGELISTCOUNT = WM_USER + 98,
> 760 TB_GETIDEALSIZE = WM_USER + 99,
> 761 //TB_TRANSLATEACCELERATOR = CCM_TRANSLATEACCELERATOR,
716 TB_SETCOLORSCHEME = CCM_SETCOLORSCHEME, 762 TB_SETCOLORSCHEME = CCM_SETCOLORSCHEME,
717 TB_GETCOLORSCHEME = CCM_GETCOLORSCHEME, 763 TB_GETCOLORSCHEME = CCM_GETCOLORSCHEME,
718 TB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT, 764 TB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
719 TB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT 765 TB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
720 } 766 }
721 } 767 }
> 768
> 769 static if (_WIN32_WINNT >= 0x501) {
> 770 enum {
> 771 TB_GETMETRICS = WM_USER + 101,
> 772 TB_SETMETRICS = WM_USER + 102,
> 773 }
> 774 }
> 775
> 776 static if (_WIN32_WINNT >= 0x600) {
> 777 enum {
> 778 TB_GETITEMDROPDOWNRECT = WM_USER + 103,
> 779 TB_SETPRESSEDIMAGELIST = WM_USER + 104,
> 780 TB_GETPRESSEDIMAGELIST = WM_USER + 105,
> 781 }
> 782 }
722 783
723 const TBBF_LARGE = 1; 784 const TBBF_LARGE = 1;
724 785
725 enum { 786 enum {
726 TBN_GETBUTTONINFOA = TBN_FIRST -0, 787 TBN_GETBUTTONINFOA = TBN_FIRST -0,
727 TBN_BEGINDRAG = TBN_FIRST -1, 788 TBN_BEGINDRAG = TBN_FIRST -1,
728 TBN_ENDDRAG = TBN_FIRST -2, 789 TBN_ENDDRAG = TBN_FIRST -2,
................................................................................................................................................................................
879 enum { 940 enum {
880 TTM_UPDATE = WM_USER + 29, 941 TTM_UPDATE = WM_USER + 29,
881 TTM_GETBUBBLESIZE, 942 TTM_GETBUBBLESIZE,
882 TTM_ADJUSTRECT, 943 TTM_ADJUSTRECT,
883 TTM_SETTITLEA, 944 TTM_SETTITLEA,
884 TTM_SETTITLEW // = WM_USER + 33 945 TTM_SETTITLEW // = WM_USER + 33
885 } 946 }
> 947 static if (_WIN32_IE >= 0x500)
> 948 {
> 949 alias TTM_SETTITLEW TTM_SETTITLE;
> 950 }
> 951 else
> 952 {
> 953 alias TTM_SETTITLEA TTM_SETTITLE;
> 954 }
> 955 }
> 956
> 957 static if (_WIN32_WINNT >= 0x501) {
> 958 enum {
> 959 TTM_POPUP = (WM_USER + 34),
> 960 TTM_GETTITLE = (WM_USER + 35),
> 961 }
886 } 962 }
887 963
888 enum { 964 enum {
889 TTN_GETDISPINFOA = TTN_FIRST - 0, 965 TTN_GETDISPINFOA = TTN_FIRST - 0,
890 TTN_GETDISPINFOW = TTN_FIRST - 10, 966 TTN_GETDISPINFOW = TTN_FIRST - 10,
891 TTN_NEEDTEXTA = TTN_GETDISPINFOA, 967 TTN_NEEDTEXTA = TTN_GETDISPINFOA,
892 TTN_NEEDTEXTW = TTN_GETDISPINFOW, 968 TTN_NEEDTEXTW = TTN_GETDISPINFOW,
................................................................................................................................................................................
1105 PBM_STEPIT, // = WM_USER + 5 1181 PBM_STEPIT, // = WM_USER + 5
1106 PBM_SETRANGE32 = 1030, 1182 PBM_SETRANGE32 = 1030,
1107 PBM_GETRANGE, 1183 PBM_GETRANGE,
1108 PBM_GETPOS, 1184 PBM_GETPOS,
1109 PBM_SETBARCOLOR, // = 1033 1185 PBM_SETBARCOLOR, // = 1033
1110 PBM_SETBKCOLOR = CCM_SETBKCOLOR 1186 PBM_SETBKCOLOR = CCM_SETBKCOLOR
1111 } 1187 }
> 1188
> 1189 static if (_WIN32_WINNT >= 0x501) {
> 1190 enum {
> 1191 PBM_SETMARQUEE = WM_USER + 10,
> 1192 }
> 1193 }
> 1194
> 1195 static if (_WIN32_WINNT >= 0x600) {
> 1196 enum {
> 1197 PBM_GETSTEP = WM_USER + 13,
> 1198 PBM_GETBKCOLOR,
> 1199 PBM_GETBARCOLOR,
> 1200 PBM_SETSTATE,
> 1201 PBM_GETSTATE,
> 1202 }
> 1203 }
1112 1204
1113 enum { 1205 enum {
1114 PBS_SMOOTH = 1, 1206 PBS_SMOOTH = 1,
1115 PBS_VERTICAL = 4 1207 PBS_VERTICAL = 4
1116 } 1208 }
> 1209
> 1210 static if (_WIN32_WINNT >= 0x501) {
> 1211 enum {
> 1212 PBS_MARQUEE = 8,
> 1213 }
> 1214 }
> 1215
> 1216 static if (_WIN32_WINNT >= 0x600) {
> 1217 enum {
> 1218 PBS_SMOOTHREVERSE = 16,
> 1219 }
> 1220 }
1117 1221
1118 enum { 1222 enum {
1119 LVS_ICON, 1223 LVS_ICON,
1120 LVS_REPORT, 1224 LVS_REPORT,
1121 LVS_SMALLICON, 1225 LVS_SMALLICON,
1122 LVS_LIST, // = 3 1226 LVS_LIST, // = 3
1123 LVS_TYPEMASK = 3, 1227 LVS_TYPEMASK = 3,
................................................................................................................................................................................
1254 enum { 1358 enum {
1255 LVM_GETBKCOLOR = LVM_FIRST, 1359 LVM_GETBKCOLOR = LVM_FIRST,
1256 LVM_SETBKCOLOR, 1360 LVM_SETBKCOLOR,
1257 LVM_GETIMAGELIST, 1361 LVM_GETIMAGELIST,
1258 LVM_SETIMAGELIST, 1362 LVM_SETIMAGELIST,
1259 LVM_GETITEMCOUNT, // = LVM_FIRST + 4 1363 LVM_GETITEMCOUNT, // = LVM_FIRST + 4
1260 LVM_SORTITEMSEX = LVM_FIRST + 81, 1364 LVM_SORTITEMSEX = LVM_FIRST + 81,
> 1365 LVM_GETGROUPSTATE = LVM_FIRST + 92,
> 1366 LVM_GETFOCUSEDGROUP,
> 1367 LVM_GETGROUPRECT = LVM_FIRST + 98,
1261 LVM_SETVIEW = LVM_FIRST + 142, 1368 LVM_SETVIEW = LVM_FIRST + 142,
1262 LVM_GETVIEW, // = LVM_FIRST + 143 1369 LVM_GETVIEW, // = LVM_FIRST + 143
1263 LVM_INSERTGROUP = LVM_FIRST + 145, 1370 LVM_INSERTGROUP = LVM_FIRST + 145,
1264 LVM_SETGROUPINFO = LVM_FIRST + 147, 1371 LVM_SETGROUPINFO = LVM_FIRST + 147,
1265 LVM_GETGROUPINFO = LVM_FIRST + 149, 1372 LVM_GETGROUPINFO = LVM_FIRST + 149,
1266 LVM_REMOVEGROUP, 1373 LVM_REMOVEGROUP,
1267 LVM_MOVEGROUP, // = LVM_FIRST + 151 1374 LVM_MOVEGROUP, // = LVM_FIRST + 151
> 1375 LVM_GETGROUPCOUNT,
> 1376 LVM_GETGROUPINFOBYINDEX,
> 1377 LVM_MOVEITEMTOGROUP,
1268 LVM_SETGROUPMETRICS = LVM_FIRST + 155, 1378 LVM_SETGROUPMETRICS = LVM_FIRST + 155,
1269 LVM_GETGROUPMETRICS, 1379 LVM_GETGROUPMETRICS,
1270 LVM_ENABLEGROUPVIEW, 1380 LVM_ENABLEGROUPVIEW,
1271 LVM_SORTGROUPS, 1381 LVM_SORTGROUPS,
1272 LVM_INSERTGROUPSORTED, 1382 LVM_INSERTGROUPSORTED,
1273 LVM_REMOVEALLGROUPS, 1383 LVM_REMOVEALLGROUPS,
1274 LVM_HASGROUP, 1384 LVM_HASGROUP,
................................................................................................................................................................................
1284 LVM_GETINSERTMARKCOLOR, // = LVM_FIRST + 171 1394 LVM_GETINSERTMARKCOLOR, // = LVM_FIRST + 171
1285 LVM_SETINFOTIP = LVM_FIRST + 173, 1395 LVM_SETINFOTIP = LVM_FIRST + 173,
1286 LVM_GETSELECTEDCOLUMN, 1396 LVM_GETSELECTEDCOLUMN,
1287 LVM_ISGROUPVIEWENABLED, 1397 LVM_ISGROUPVIEWENABLED,
1288 LVM_GETOUTLINECOLOR, 1398 LVM_GETOUTLINECOLOR,
1289 LVM_SETOUTLINECOLOR, // = LVM_FIRST + 177 1399 LVM_SETOUTLINECOLOR, // = LVM_FIRST + 177
1290 LVM_CANCELEDITLABEL = LVM_FIRST + 179, 1400 LVM_CANCELEDITLABEL = LVM_FIRST + 179,
> 1401 LVM_MAPINDEXTOID = LVM_FIRST + 180,
1291 LVM_MAPIDTOINDEX = LVM_FIRST + 181 | 1402 LVM_MAPIDTOINDEX = LVM_FIRST + 181,
> 1403 LVM_ISITEMVISIBLE = LVM_FIRST + 182,
1292 } 1404 }
1293 1405
1294 static if (_WIN32_WINNT >= 0x501) { 1406 static if (_WIN32_WINNT >= 0x501) {
1295 enum { 1407 enum {
1296 LVM_SETSELECTEDCOLUMN = LVM_FIRST + 140 1408 LVM_SETSELECTEDCOLUMN = LVM_FIRST + 140
1297 } 1409 }
1298 } 1410 }
> 1411
> 1412 static if (_WIN32_WINNT >= 0x600) {
> 1413 enum {
> 1414 LVM_GETEMPTYTEXT = LVM_FIRST + 204,
> 1415 LVM_GETFOOTERRECT = LVM_FIRST + 205,
> 1416 LVM_GETFOOTERINFO = LVM_FIRST + 206,
> 1417 LVM_GETFOOTERITEMRECT = LVM_FIRST + 207,
> 1418 LVM_GETFOOTERITEM = (LVM_FIRST + 208),
> 1419 LVM_GETITEMINDEXRECT = (LVM_FIRST + 209),
> 1420 LVM_SETITEMINDEXSTATE = (LVM_FIRST + 210),
> 1421 LVM_GETNEXTITEMINDEX = (LVM_FIRST + 211),
> 1422 }
> 1423 }
1299 1424
1300 enum { 1425 enum {
1301 LVIF_TEXT = 1, 1426 LVIF_TEXT = 1,
1302 LVIF_IMAGE = 2, 1427 LVIF_IMAGE = 2,
1303 LVIF_PARAM = 4, 1428 LVIF_PARAM = 4,
1304 LVIF_STATE = 8 1429 LVIF_STATE = 8
1305 } 1430 }
................................................................................................................................................................................
1612 TVIS_USERMASK = 0xF000 1737 TVIS_USERMASK = 0xF000
1613 } 1738 }
1614 1739
1615 enum { 1740 enum {
1616 I_CHILDRENCALLBACK = -1 1741 I_CHILDRENCALLBACK = -1
1617 } 1742 }
1618 1743
1619 alias HANDLE HTREEITEM; | 1744 mixin DECLARE_HANDLE!("HTREEITEM");
> 1745 mixin DECLARE_HANDLE!("HIMAGELIST");
1620 1746
> 1747 version(Win64)
> 1748 {
> 1749 const HTREEITEM
> 1750 TVI_ROOT = cast(HTREEITEM) cast(ULONG_PTR)-0x10000,
> 1751 TVI_FIRST = cast(HTREEITEM) cast(ULONG_PTR)-0xffff,
> 1752 TVI_LAST = cast(HTREEITEM) cast(ULONG_PTR)-0xfffe,
> 1753 TVI_SORT = cast(HTREEITEM) cast(ULONG_PTR)-0xfffd;
> 1754 } else {
1621 const HTREEITEM 1755 const HTREEITEM
1622 TVI_ROOT = cast(HTREEITEM) 0xFFFF0000, 1756 TVI_ROOT = cast(HTREEITEM) 0xFFFF0000,
1623 TVI_FIRST = cast(HTREEITEM) 0xFFFF0001, 1757 TVI_FIRST = cast(HTREEITEM) 0xFFFF0001,
1624 TVI_LAST = cast(HTREEITEM) 0xFFFF0002, 1758 TVI_LAST = cast(HTREEITEM) 0xFFFF0002,
1625 TVI_SORT = cast(HTREEITEM) 0xFFFF0003; 1759 TVI_SORT = cast(HTREEITEM) 0xFFFF0003;
> 1760 }
1626 1761
1627 enum { 1762 enum {
1628 TVSIL_NORMAL = 0, 1763 TVSIL_NORMAL = 0,
1629 TVSIL_STATE = 2 1764 TVSIL_STATE = 2
1630 } 1765 }
1631 1766
1632 enum { 1767 enum {
................................................................................................................................................................................
1688 static if (_WIN32_IE >= 0x500) { 1823 static if (_WIN32_IE >= 0x500) {
1689 enum { 1824 enum {
1690 TVM_GETITEMSTATE = TV_FIRST + 39, 1825 TVM_GETITEMSTATE = TV_FIRST + 39,
1691 TVM_SETLINECOLOR = TV_FIRST + 40, 1826 TVM_SETLINECOLOR = TV_FIRST + 40,
1692 TVM_GETLINECOLOR = TV_FIRST + 41 1827 TVM_GETLINECOLOR = TV_FIRST + 41
1693 } 1828 }
1694 } 1829 }
> 1830
> 1831 static if (_WIN32_IE >= 0x501) {
> 1832 enum {
> 1833 TVM_MAPACCIDTOHTREEITEM = TV_FIRST + 42,
> 1834 TVM_MAPHTREEITEMTOACCID = TV_FIRST + 43,
> 1835 TVM_SETEXTENDEDSTYLE = TV_FIRST + 44,
> 1836 TVM_GETEXTENDEDSTYLE = TV_FIRST + 45,
> 1837 TVM_SETAUTOSCROLLINFO = TV_FIRST + 59
> 1838 }
> 1839 }
> 1840
> 1841 static if (_WIN32_IE >= 0x600) {
> 1842 enum {
> 1843 TVM_GETSELECTEDCOUNT = TV_FIRST + 70,
> 1844 TVM_SHOWINFOTIP = TV_FIRST + 71,
> 1845 TVM_GETITEMPARTRECT = TV_FIRST + 72,
> 1846 }
> 1847 }
1695 1848
1696 enum { 1849 enum {
1697 TVE_COLLAPSE = 1, 1850 TVE_COLLAPSE = 1,
1698 TVE_EXPAND = 2, 1851 TVE_EXPAND = 2,
1699 TVE_TOGGLE = 3, 1852 TVE_TOGGLE = 3,
1700 TVE_COLLAPSERESET = 0x8000 1853 TVE_COLLAPSERESET = 0x8000
1701 } 1854 }
................................................................................................................................................................................
1726 } 1879 }
1727 1880
1728 static if (_WIN32_IE >= 0x400) { 1881 static if (_WIN32_IE >= 0x400) {
1729 enum { 1882 enum {
1730 TVGN_LASTVISIBLE = 10 1883 TVGN_LASTVISIBLE = 10
1731 } 1884 }
1732 } 1885 }
> 1886
> 1887 static if (_WIN32_IE >= 0x600) {
> 1888 enum {
> 1889 TVGN_NEXTSELECTED = 11
> 1890 }
> 1891 }
1733 1892
1734 enum { 1893 enum {
1735 TVN_SELCHANGINGA = TVN_FIRST - 1, 1894 TVN_SELCHANGINGA = TVN_FIRST - 1,
1736 TVN_SELCHANGEDA = TVN_FIRST - 2, 1895 TVN_SELCHANGEDA = TVN_FIRST - 2,
1737 TVN_GETDISPINFOA = TVN_FIRST - 3, 1896 TVN_GETDISPINFOA = TVN_FIRST - 3,
1738 TVN_SETDISPINFOA = TVN_FIRST - 4, 1897 TVN_SETDISPINFOA = TVN_FIRST - 4,
1739 TVN_ITEMEXPANDINGA = TVN_FIRST - 5, 1898 TVN_ITEMEXPANDINGA = TVN_FIRST - 5,
................................................................................................................................................................................
1933 CCM_GETVERSION = 0x2008, 2092 CCM_GETVERSION = 0x2008,
1934 CCM_SETNOTIFYWINDOW = 0x2009 2093 CCM_SETNOTIFYWINDOW = 0x2009
1935 }*/ 2094 }*/
1936 2095
1937 static if (_WIN32_WINNT >= 0x501) { 2096 static if (_WIN32_WINNT >= 0x501) {
1938 enum { 2097 enum {
1939 CCM_SETWINDOWTHEME = 0x200b, 2098 CCM_SETWINDOWTHEME = 0x200b,
1940 CCM_DPISCALE = 0x200c | 2099 CCM_DPISCALE = 0x200c,
> 2100
> 2101 RB_GETBANDMARGINS = WM_USER + 40,
> 2102 RB_SETWINDOWTHEME = CCM_SETWINDOWTHEME,
> 2103 TB_SETWINDOWTHEME = CCM_SETWINDOWTHEME,
> 2104 TTM_SETWINDOWTHEME = CCM_SETWINDOWTHEME,
1941 } 2105 }
1942 } 2106 }
1943 2107
1944 enum { 2108 enum {
1945 ICC_LISTVIEW_CLASSES = 1, 2109 ICC_LISTVIEW_CLASSES = 1,
1946 ICC_TREEVIEW_CLASSES = 2, 2110 ICC_TREEVIEW_CLASSES = 2,
1947 ICC_BAR_CLASSES = 4, 2111 ICC_BAR_CLASSES = 4,
................................................................................................................................................................................
2018 } else { 2182 } else {
2019 enum { 2183 enum {
2020 MCS_NOTODAY = 0x0008 2184 MCS_NOTODAY = 0x0008
2021 } 2185 }
2022 } 2186 }
2023 2187
2024 enum { 2188 enum {
> 2189 DTM_FIRST = 0x10000,
2025 DTM_GETSYSTEMTIME = 0x1001, 2190 DTM_GETSYSTEMTIME = 0x1001,
2026 DTM_SETSYSTEMTIME = 0x1002, 2191 DTM_SETSYSTEMTIME = 0x1002,
2027 DTM_GETRANGE = 0x1003, 2192 DTM_GETRANGE = 0x1003,
2028 DTM_SETRANGE = 0x1004, 2193 DTM_SETRANGE = 0x1004,
2029 DTM_SETFORMATA = 0x1005, 2194 DTM_SETFORMATA = 0x1005,
2030 DTM_SETMCCOLOR = 0x1006, 2195 DTM_SETMCCOLOR = 0x1006,
2031 DTM_GETMCCOLOR = 0x1007, 2196 DTM_GETMCCOLOR = 0x1007,
2032 DTM_GETMONTHCAL = 0x1008, 2197 DTM_GETMONTHCAL = 0x1008,
2033 DTM_SETMCFONT = 0x1009, 2198 DTM_SETMCFONT = 0x1009,
2034 DTM_GETMCFONT = 0x100a, 2199 DTM_GETMCFONT = 0x100a,
2035 DTM_SETFORMATW = 0x1050 2200 DTM_SETFORMATW = 0x1050
2036 } 2201 }
> 2202
> 2203 static if (_WIN32_WINNT >= 0x600) {
> 2204 enum {
> 2205 DTM_SETMCSTYLE = DTM_FIRST + 11,
> 2206 DTM_GETMCSTYLE,
> 2207 DTM_CLOSEMONTHCAL,
> 2208 DTM_GETDATETIMEPICKERINFO,
> 2209 DTM_GETIDEALSIZE,
> 2210 }
> 2211 }
2037 2212
2038 enum { 2213 enum {
2039 DTN_USERSTRINGA = -758U, 2214 DTN_USERSTRINGA = -758U,
2040 DTN_USERSTRINGW = -745U, 2215 DTN_USERSTRINGW = -745U,
2041 DTN_WMKEYDOWNA = -757U, 2216 DTN_WMKEYDOWNA = -757U,
2042 DTN_WMKEYDOWNW = -744U, 2217 DTN_WMKEYDOWNW = -744U,
2043 DTN_FORMATA = -756U, 2218 DTN_FORMATA = -756U,
................................................................................................................................................................................
2046 DTN_FORMATQUERYW = -742U, 2221 DTN_FORMATQUERYW = -742U,
2047 DTN_DROPDOWN = -754U, 2222 DTN_DROPDOWN = -754U,
2048 DTN_CLOSEUP = -753U, 2223 DTN_CLOSEUP = -753U,
2049 DTN_DATETIMECHANGE = -759U, 2224 DTN_DATETIMECHANGE = -759U,
2050 } 2225 }
2051 2226
2052 enum { 2227 enum {
> 2228 MCM_FIRST = 0x1000,
2053 MCM_GETCURSEL = 0x1001, 2229 MCM_GETCURSEL = 0x1001,
2054 MCM_SETCURSEL = 0x1002, 2230 MCM_SETCURSEL = 0x1002,
2055 MCM_GETMAXSELCOUNT = 0x1003, 2231 MCM_GETMAXSELCOUNT = 0x1003,
2056 MCM_SETMAXSELCOUNT = 0x1004, 2232 MCM_SETMAXSELCOUNT = 0x1004,
2057 MCM_GETSELRANGE = 0x1005, 2233 MCM_GETSELRANGE = 0x1005,
2058 MCM_SETSELRANGE = 0x1006, 2234 MCM_SETSELRANGE = 0x1006,
2059 MCM_GETMONTHRANGE = 0x1007, 2235 MCM_GETMONTHRANGE = 0x1007,
................................................................................................................................................................................
2070 MCM_SETRANGE = 0x1012, 2246 MCM_SETRANGE = 0x1012,
2071 MCM_GETMONTHDELTA = 0x1013, 2247 MCM_GETMONTHDELTA = 0x1013,
2072 MCM_SETMONTHDELTA = 0x1014, 2248 MCM_SETMONTHDELTA = 0x1014,
2073 MCM_GETMAXTODAYWIDTH = 0x1015, 2249 MCM_GETMAXTODAYWIDTH = 0x1015,
2074 MCM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT, 2250 MCM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT,
2075 MCM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT 2251 MCM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
2076 } 2252 }
> 2253
> 2254 static if (_WIN32_WINNT >= 0x600) {
> 2255 enum {
> 2256 MCM_GETCURRENTVIEW = MCM_FIRST + 22,
> 2257 MCM_GETCALENDARCOUNT,
> 2258 MCM_GETCALENDARGRIDINFO,
> 2259 MCM_GETCALID = MCM_FIRST + 27,
> 2260 MCM_SETCALID,
> 2261 MCM_SIZERECTTOMIN,
> 2262 MCM_SETCALENDARBORDER,
> 2263 MCM_GETCALENDARBORDER,
> 2264 MCM_SETCURRENTVIEW,
> 2265 }
> 2266 }
2077 2267
2078 enum { 2268 enum {
2079 MCN_SELCHANGE = -749U, 2269 MCN_SELCHANGE = -749U,
2080 MCN_GETDAYSTATE = -747U, 2270 MCN_GETDAYSTATE = -747U,
2081 MCN_SELECT = -746U 2271 MCN_SELECT = -746U
2082 } 2272 }
2083 2273
................................................................................................................................................................................
2355 alias RB_GETBANDINFOA RB_GETBANDINFO; 2545 alias RB_GETBANDINFOA RB_GETBANDINFO;
2356 } 2546 }
2357 } else { 2547 } else {
2358 enum { 2548 enum {
2359 RB_GETBANDINFO = WM_USER + 5 2549 RB_GETBANDINFO = WM_USER + 5
2360 } 2550 }
2361 } 2551 }
> 2552
> 2553 static if (_WIN32_IE >= 0x500) {
> 2554 enum {
> 2555 RB_PUSHCHEVRON = WM_USER + 43,
> 2556 }
> 2557 }
> 2558
> 2559 static if (_WIN32_IE >= 0x600) {
> 2560 enum {
> 2561 RB_SETEXTENDEDSTYLE = WM_USER + 41,
> 2562 RB_GETEXTENDEDSTYLE = WM_USER + 42,
> 2563 }
> 2564 }
> 2565
> 2566 static if (_WIN32_WINNT >= 0x500) {
> 2567 enum {
> 2568 RB_SETBANDWIDTH = WM_USER + 44,
> 2569 }
> 2570 }
> 2571
> 2572 static if (_WIN32_WINNT >= 0x501) {
> 2573 enum {
> 2574 ECM_FIRST = 0x1500,
> 2575 BCM_FIRST = 0x1600,
> 2576
> 2577 BCM_GETIDEALSIZE = BCM_FIRST + 0x0001,
> 2578 BCM_SETIMAGELIST = BCM_FIRST + 0x0002,
> 2579 BCM_GETIMAGELIST = BCM_FIRST + 0x0003,
> 2580 BCM_SETTEXTMARGIN = BCM_FIRST + 0x0004,
> 2581 BCM_GETTEXTMARGIN = BCM_FIRST + 0x0005,
> 2582
> 2583 BCN_HOTITEMCHANGE = BCN_FIRST + 0x0001,
> 2584 }
> 2585
> 2586 struct NMBCHOTITEM {
> 2587 NMHDR hdr;
> 2588 DWORD dwFlags;
> 2589 }
> 2590 alias NMBCHOTITEM* LPNMBCHOTITEM;
> 2591 }
> 2592
> 2593 static if(_WIN32_WINNT >= 0x600) {
> 2594 enum {
> 2595 BST_DROPDOWNPUSHED = 0x0400,
> 2596
> 2597 BS_SPLITBUTTON = 0x0000_000C,
> 2598 BS_DEFSPLITBUTTON = 0x0000_000D,
> 2599 BS_COMMANDLINK = 0x0000_000E,
> 2600 BS_DEFCOMMANDLINK = 0x0000_000F,
> 2601
> 2602 BCSIF_GLYPH = 0x0001,
> 2603 BCSIF_IMAGE = 0x0002,
> 2604 BCSIF_STYLE = 0x0004,
> 2605 BCSIF_SIZE = 0x0008,
> 2606
> 2607 BCSS_NOSPLIT = 0x0001,
> 2608 BCSS_STRETCH = 0x0002,
> 2609 BCSS_ALIGNLEFT = 0x0004,
> 2610 BCSS_IMAGE = 0x0008,
> 2611
> 2612 BCM_SETDROPDOWNSTATE = BCM_FIRST + 0x0006,
> 2613 BCM_SETSPLITINFO = BCM_FIRST + 0x0007,
> 2614 BCM_GETSPLITINFO = BCM_FIRST + 0x0008,
> 2615 BCM_SETNOTE = BCM_FIRST + 0x0009,
> 2616 BCM_GETNOTE = BCM_FIRST + 0x000A,
> 2617 BCM_GETNOTELENGTH = BCM_FIRST + 0x000B,
> 2618 BCM_SETSHIELD = BCM_FIRST + 0x000C,
> 2619
> 2620 BCN_DROPDOWN = BCN_FIRST + 0x0002,
> 2621 }
> 2622
> 2623 const HIMAGELIST BCCL_NOGLYPH = cast(HIMAGELIST)-1;
> 2624
> 2625 struct BUTTON_SPLITINFO
> 2626 {
> 2627 UINT mask;
> 2628 HIMAGELIST himlGlyph;
> 2629 UINT uSplitStyle;
> 2630 SIZE size;
> 2631 }
> 2632 alias BUTTON_SPLITINFO* PBUTTON_SPLITINFO;
> 2633 }
2362 2634
2363 enum { 2635 enum {
2364 CBEM_INSERTITEMA = WM_USER + 1, 2636 CBEM_INSERTITEMA = WM_USER + 1,
2365 CBEM_SETIMAGELIST, 2637 CBEM_SETIMAGELIST,
2366 CBEM_GETIMAGELIST, 2638 CBEM_GETIMAGELIST,
2367 CBEM_GETITEMA, 2639 CBEM_GETITEMA,
2368 CBEM_SETITEMA, 2640 CBEM_SETITEMA,
................................................................................................................................................................................
2384 2656
2385 enum { 2657 enum {
2386 CBEM_HASEDITCHANGED = WM_USER + 10, 2658 CBEM_HASEDITCHANGED = WM_USER + 10,
2387 CBEM_INSERTITEMW = WM_USER + 11, 2659 CBEM_INSERTITEMW = WM_USER + 11,
2388 CBEM_SETITEMW = WM_USER + 12, 2660 CBEM_SETITEMW = WM_USER + 12,
2389 CBEM_GETITEMW = WM_USER + 13 2661 CBEM_GETITEMW = WM_USER + 13
2390 } 2662 }
> 2663
> 2664 static if (_WIN32_WINNT >= 0x501)
> 2665 {
> 2666 enum {
> 2667 CBEM_SETWINDOWTHEME = CCM_SETWINDOWTHEME
> 2668 }
> 2669 }
2391 2670
2392 enum { 2671 enum {
2393 DA_LAST = 0x7fffffff 2672 DA_LAST = 0x7fffffff
2394 } 2673 }
2395 2674
2396 enum { 2675 enum {
2397 DPA_APPEND = 0x7fffffff, 2676 DPA_APPEND = 0x7fffffff,
................................................................................................................................................................................
2426 WSB_PROP_MASK = 0xfff, 2705 WSB_PROP_MASK = 0xfff,
2427 FSB_FLAT_MODE = 2, 2706 FSB_FLAT_MODE = 2,
2428 FSB_ENCARTA_MODE = 1, 2707 FSB_ENCARTA_MODE = 1,
2429 FSB_REGULAR_MODE = 0 2708 FSB_REGULAR_MODE = 0
2430 } 2709 }
2431 } 2710 }
2432 2711
2433 static if (_WIN32_WINNT >= 0x0501) { | 2712 static if (_WIN32_WINNT >= 0x501) {
2434 enum { 2713 enum {
2435 LIF_ITEMINDEX = 1, 2714 LIF_ITEMINDEX = 1,
2436 LIF_STATE = 2, 2715 LIF_STATE = 2,
2437 LIF_ITEMID = 4, 2716 LIF_ITEMID = 4,
2438 LIF_URL = 8 2717 LIF_URL = 8
2439 } 2718 }
2440 2719
................................................................................................................................................................................
2444 LIS_VISITED = 4 2723 LIS_VISITED = 4
2445 } 2724 }
2446 2725
2447 enum { 2726 enum {
2448 LM_HITTEST = WM_USER + 768, 2727 LM_HITTEST = WM_USER + 768,
2449 LM_GETIDEALHEIGHT, 2728 LM_GETIDEALHEIGHT,
2450 LM_SETITEM, 2729 LM_SETITEM,
2451 LM_GETITEM // = WM_USER + 771 | 2730 LM_GETITEM, // = WM_USER + 771
> 2731 LM_GETIDEALSIZE = LM_GETIDEALHEIGHT,
2452 } 2732 }
2453 2733
2454 const size_t MAX_LINKID_TEXT = 48; 2734 const size_t MAX_LINKID_TEXT = 48;
2455 const size_t L_MAX_URL_LENGTH = 2084; 2735 const size_t L_MAX_URL_LENGTH = 2084;
2456 } 2736 }
2457 2737
> 2738
> 2739 struct TBMETRICS {
> 2740 UINT cbSize = TBMETRICS.sizeof;
> 2741 DWORD dwMask;
> 2742 int cxPad;
> 2743 int cyPad;
> 2744 int cxBarPad;
> 2745 int cyBarPad;
> 2746 int cxButtonSpacing;
> 2747 int cyButtonSpacing;
> 2748 }
> 2749 alias TBMETRICS* LPTBMETRICS;
> 2750
> 2751 static if (_WIN32_WINNT >= 0x501) {
> 2752 struct TTGETTITLE {
> 2753 DWORD dwSize = TTGETTITLE.sizeof;
> 2754 UINT uTitleBitmap;
> 2755 UINT cch;
> 2756 WCHAR* pszTitle;
> 2757 }
> 2758 alias TTGETTITLE* PTTGETTITLE;
> 2759 }
> 2760
> 2761 static if (_WIN32_WINNT >= 0x600) {
> 2762 struct MCGRIDINFO {
> 2763 UINT cbSize;
> 2764 DWORD dwPart;
> 2765 DWORD dwFlags;
> 2766 int iCalendar;
> 2767 int iRow;
> 2768 int iCol;
> 2769 BOOL bSelected;
> 2770 SYSTEMTIME stStart;
> 2771 SYSTEMTIME stEnd;
> 2772 RECT rc;
> 2773 PWSTR pszName;
> 2774 size_t cchName;
> 2775 }
> 2776 alias MCGRIDINFO* PMCGRIDINFO;
> 2777
> 2778 struct DATETIMEPICKERINFO
> 2779 {
> 2780 DWORD cbSize;
> 2781 RECT rcCheck;
> 2782 DWORD stateCheck;
> 2783 RECT rcButton;
> 2784 DWORD stateButton;
> 2785 HWND hwndEdit;
> 2786 HWND hwndUD;
> 2787 HWND hwndDropDown;
> 2788 }
> 2789 alias DATETIMEPICKERINFO* LPDATETIMEPICKERINFO;
> 2790 }
2458 2791
2459 struct COMBOBOXEXITEMA { 2792 struct COMBOBOXEXITEMA {
2460 UINT mask; 2793 UINT mask;
2461 int iItem; | 2794 INT_PTR iItem;
2462 LPSTR pszText; 2795 LPSTR pszText;
2463 int cchTextMax; 2796 int cchTextMax;
2464 int iImage; 2797 int iImage;
2465 int iSelectedImage; 2798 int iSelectedImage;
2466 int iOverlay; 2799 int iOverlay;
2467 int iIndent; 2800 int iIndent;
2468 LPARAM lParam; 2801 LPARAM lParam;
2469 } 2802 }
2470 alias COMBOBOXEXITEMA* PCOMBOBOXEXITEMA; | 2803 alias COMBOBOXEXITEMA* PCOMBOBOXEXITEMA;
2471 alias CPtr!(COMBOBOXEXITEMA) PCCOMBOEXITEMA; | 2804 alias const(COMBOBOXEXITEMA)* PCCOMBOEXITEMA;
2472 2805
2473 struct COMBOBOXEXITEMW { 2806 struct COMBOBOXEXITEMW {
2474 UINT mask; 2807 UINT mask;
2475 int iItem; | 2808 INT_PTR iItem;
2476 LPWSTR pszText; 2809 LPWSTR pszText;
2477 int cchTextMax; 2810 int cchTextMax;
2478 int iImage; 2811 int iImage;
2479 int iSelectedImage; 2812 int iSelectedImage;
2480 int iOverlay; 2813 int iOverlay;
2481 int iIndent; 2814 int iIndent;
2482 LPARAM lParam; 2815 LPARAM lParam;
2483 } 2816 }
2484 alias COMBOBOXEXITEMW* PCOMBOBOXEXITEMW; | 2817 alias COMBOBOXEXITEMW* PCOMBOBOXEXITEMW;
2485 alias CPtr!(COMBOBOXEXITEMW) PCCOMBOEXITEMW; | 2818 alias const(COMBOBOXEXITEMW)* PCCOMBOEXITEMW;
2486 2819
2487 static if (_WIN32_IE >= 0x400) { 2820 static if (_WIN32_IE >= 0x400) {
2488 struct NMCOMBOBOXEXA { 2821 struct NMCOMBOBOXEXA {
2489 NMHDR hdr; 2822 NMHDR hdr;
2490 COMBOBOXEXITEMA ceItem; 2823 COMBOBOXEXITEMA ceItem;
2491 } 2824 }
2492 alias NMCOMBOBOXEXA* PNMCOMBOBOXEXA; 2825 alias NMCOMBOBOXEXA* PNMCOMBOBOXEXA;
................................................................................................................................................................................
2496 COMBOBOXEXITEMW ceItem; 2829 COMBOBOXEXITEMW ceItem;
2497 } 2830 }
2498 alias NMCOMBOBOXEXW* PNMCOMBOBOXEXW; 2831 alias NMCOMBOBOXEXW* PNMCOMBOBOXEXW;
2499 2832
2500 struct NMCBEDRAGBEGINW { 2833 struct NMCBEDRAGBEGINW {
2501 NMHDR hdr; 2834 NMHDR hdr;
2502 int iItemid; 2835 int iItemid;
2503 WCHAR szText[CBEMAXSTRLEN]; | 2836 WCHAR[CBEMAXSTRLEN] szText;
2504 } 2837 }
2505 alias NMCBEDRAGBEGINW* LPNMCBEDRAGBEGINW, PNMCBEDRAGBEGINW; 2838 alias NMCBEDRAGBEGINW* LPNMCBEDRAGBEGINW, PNMCBEDRAGBEGINW;
2506 2839
2507 struct NMCBEDRAGBEGINA { 2840 struct NMCBEDRAGBEGINA {
2508 NMHDR hdr; 2841 NMHDR hdr;
2509 int iItemid; 2842 int iItemid;
2510 char szText[CBEMAXSTRLEN]; | 2843 char[CBEMAXSTRLEN] szText;
2511 } 2844 }
2512 alias NMCBEDRAGBEGINA* LPNMCBEDRAGBEGINA, PNMCBEDRAGBEGINA; 2845 alias NMCBEDRAGBEGINA* LPNMCBEDRAGBEGINA, PNMCBEDRAGBEGINA;
2513 2846
2514 struct NMIPADDRESS { 2847 struct NMIPADDRESS {
2515 NMHDR hdr; 2848 NMHDR hdr;
2516 int iField; 2849 int iField;
2517 int iValue; 2850 int iValue;
................................................................................................................................................................................
2624 } 2957 }
2625 alias NMDATETIMECHANGE* LPNMDATETIMECHANGE; 2958 alias NMDATETIMECHANGE* LPNMDATETIMECHANGE;
2626 2959
2627 struct NMCBEENDEDITW { 2960 struct NMCBEENDEDITW {
2628 NMHDR hdr; 2961 NMHDR hdr;
2629 BOOL fChanged; 2962 BOOL fChanged;
2630 int iNewSelection; 2963 int iNewSelection;
2631 WCHAR szText[CBEMAXSTRLEN]; | 2964 WCHAR[CBEMAXSTRLEN] szText;
2632 int iWhy; 2965 int iWhy;
2633 } 2966 }
2634 alias NMCBEENDEDITW* LPNMCBEENDEDITW, PNMCBEENDEDITW; 2967 alias NMCBEENDEDITW* LPNMCBEENDEDITW, PNMCBEENDEDITW;
2635 2968
2636 struct NMCBEENDEDITA { 2969 struct NMCBEENDEDITA {
2637 NMHDR hdr; 2970 NMHDR hdr;
2638 BOOL fChanged; 2971 BOOL fChanged;
2639 int iNewSelection; 2972 int iNewSelection;
2640 char szText[CBEMAXSTRLEN]; | 2973 char[CBEMAXSTRLEN] szText;
2641 int iWhy; 2974 int iWhy;
2642 } 2975 }
2643 alias NMCBEENDEDITA* LPNMCBEENDEDITA, PNMCBEENDEDITA; 2976 alias NMCBEENDEDITA* LPNMCBEENDEDITA, PNMCBEENDEDITA;
2644 2977
2645 struct COLORMAP { 2978 struct COLORMAP {
2646 COLORREF from; 2979 COLORREF from;
2647 COLORREF to; 2980 COLORREF to;
................................................................................................................................................................................
2656 alias DRAGLISTINFO* LPDRAGLISTINFO; 2989 alias DRAGLISTINFO* LPDRAGLISTINFO;
2657 2990
2658 struct TBBUTTON { 2991 struct TBBUTTON {
2659 int iBitmap; 2992 int iBitmap;
2660 int idCommand; 2993 int idCommand;
2661 BYTE fsState; 2994 BYTE fsState;
2662 BYTE fsStyle; 2995 BYTE fsStyle;
> 2996 version(Win64){
2663 BYTE bReserved[2]; | 2997 BYTE[6] bReserved;
> 2998 } else {
> 2999 BYTE[2] bReserved;
> 3000 }
2664 DWORD dwData; | 3001 DWORD_PTR dwData;
2665 int iString; | 3002 INT_PTR iString;
2666 } 3003 }
2667 alias TBBUTTON* PTBBUTTON, LPTBBUTTON; | 3004 alias TBBUTTON* PTBBUTTON, LPTBBUTTON;
2668 alias CPtr!(TBBUTTON) LPCTBBUTTON; | 3005 alias const(TBBUTTON)* LPCTBBUTTON;
2669 3006
2670 static if (_WIN32_IE >= 0x400) { 3007 static if (_WIN32_IE >= 0x400) {
2671 struct TBBUTTONINFOA { 3008 struct TBBUTTONINFOA {
2672 UINT cbSize = TBBUTTONINFOA.sizeof; 3009 UINT cbSize = TBBUTTONINFOA.sizeof;
2673 DWORD dwMask; 3010 DWORD dwMask;
2674 int idCommand; 3011 int idCommand;
2675 int iImage; 3012 int iImage;
2676 BYTE fsState; 3013 BYTE fsState;
2677 BYTE fsStyle; 3014 BYTE fsStyle;
2678 WORD cx; 3015 WORD cx;
2679 DWORD lParam; | 3016 DWORD_PTR lParam;
2680 LPSTR pszText; 3017 LPSTR pszText;
2681 int cchText; 3018 int cchText;
2682 } 3019 }
2683 alias TBBUTTONINFOA* LPTBBUTTONINFOA; 3020 alias TBBUTTONINFOA* LPTBBUTTONINFOA;
2684 3021
2685 struct TBBUTTONINFOW { 3022 struct TBBUTTONINFOW {
2686 UINT cbSize = TBBUTTONINFOW.sizeof; 3023 UINT cbSize = TBBUTTONINFOW.sizeof;
2687 DWORD dwMask; 3024 DWORD dwMask;
2688 int idCommand; 3025 int idCommand;
2689 int iImage; 3026 int iImage;
2690 BYTE fsState; 3027 BYTE fsState;
2691 BYTE fsStyle; 3028 BYTE fsStyle;
2692 WORD cx; 3029 WORD cx;
2693 DWORD lParam; | 3030 DWORD_PTR lParam;
2694 LPWSTR pszText; 3031 LPWSTR pszText;
2695 int cchText; 3032 int cchText;
2696 } 3033 }
2697 alias TBBUTTONINFOW* LPTBBUTTONINFOW; 3034 alias TBBUTTONINFOW* LPTBBUTTONINFOW;
2698 3035
2699 struct TBINSERTMARK { 3036 struct TBINSERTMARK {
2700 int iButton; 3037 int iButton;
................................................................................................................................................................................
2744 HBITMAP hbmMask; 3081 HBITMAP hbmMask;
2745 int Unused1; 3082 int Unused1;
2746 int Unused2; 3083 int Unused2;
2747 RECT rcImage; 3084 RECT rcImage;
2748 } 3085 }
2749 alias IMAGEINFO* LPIMAGEINFO; 3086 alias IMAGEINFO* LPIMAGEINFO;
2750 3087
2751 alias HANDLE HIMAGELIST; <
2752 <
2753 static if (_WIN32_IE >= 0x500) { 3088 static if (_WIN32_IE >= 0x500) {
2754 struct HDITEMA { 3089 struct HDITEMA {
2755 UINT mask; 3090 UINT mask;
2756 int cxy; 3091 int cxy;
2757 LPSTR pszText; 3092 LPSTR pszText;
2758 HBITMAP hbm; 3093 HBITMAP hbm;
2759 int cchTextMax; 3094 int cchTextMax;
................................................................................................................................................................................
2832 //alias HDITEM HD_ITEM; fixme 3167 //alias HDITEM HD_ITEM; fixme
2833 } 3168 }
2834 3169
2835 struct HD_LAYOUT { 3170 struct HD_LAYOUT {
2836 RECT* prc; 3171 RECT* prc;
2837 WINDOWPOS* pwpos; 3172 WINDOWPOS* pwpos;
2838 } 3173 }
2839 alias HDLAYOUT* LPHDLAYOUT; | 3174 alias HD_LAYOUT* LPHDLAYOUT;
2840 deprecated alias HD_LAYOUT HDLAYOUT; 3175 deprecated alias HD_LAYOUT HDLAYOUT;
2841 3176
2842 struct HD_HITTESTINFO { 3177 struct HD_HITTESTINFO {
2843 POINT pt; 3178 POINT pt;
2844 UINT flags; 3179 UINT flags;
2845 int iItem; 3180 int iItem;
2846 } 3181 }
................................................................................................................................................................................
3026 UINT uKeyFlags; 3361 UINT uKeyFlags;
3027 } 3362 }
3028 alias NMITEMACTIVATE* LPNMITEMACTIVATE; 3363 alias NMITEMACTIVATE* LPNMITEMACTIVATE;
3029 } 3364 }
3030 3365
3031 struct TBADDBITMAP { 3366 struct TBADDBITMAP {
3032 HINSTANCE hInst; 3367 HINSTANCE hInst;
3033 UINT nID; | 3368 UINT_PTR nID;
3034 } 3369 }
3035 alias TBADDBITMAP* LPTBADDBITMAP; 3370 alias TBADDBITMAP* LPTBADDBITMAP;
3036 3371
3037 struct TBSAVEPARAMSA { 3372 struct TBSAVEPARAMSA {
3038 HKEY hkr; 3373 HKEY hkr;
3039 LPCSTR pszSubKey; 3374 LPCSTR pszSubKey;
3040 LPCSTR pszValueName; 3375 LPCSTR pszValueName;
................................................................................................................................................................................
3044 HKEY hkr; 3379 HKEY hkr;
3045 LPCWSTR pszSubKey; 3380 LPCWSTR pszSubKey;
3046 LPCWSTR pszValueName; 3381 LPCWSTR pszValueName;
3047 } 3382 }
3048 3383
3049 struct TBREPLACEBITMAP { 3384 struct TBREPLACEBITMAP {
3050 HINSTANCE hInstOld; 3385 HINSTANCE hInstOld;
3051 UINT nIDOld; | 3386 UINT_PTR nIDOld;
3052 HINSTANCE hInstNew; 3387 HINSTANCE hInstNew;
3053 UINT nIDNew; | 3388 UINT_PTR nIDNew;
3054 int nButtons; 3389 int nButtons;
3055 } 3390 }
3056 alias TBREPLACEBITMAP* LPTBREPLACEBITMAP; 3391 alias TBREPLACEBITMAP* LPTBREPLACEBITMAP;
3057 3392
3058 static if (_WIN32_IE >= 0x500) { 3393 static if (_WIN32_IE >= 0x500) {
3059 struct NMTOOLBARA { 3394 struct NMTOOLBARA {
3060 NMHDR hdr; 3395 NMHDR hdr;
................................................................................................................................................................................
3100 alias LPNMTOOLBARW LPTBNOTIFYW; 3435 alias LPNMTOOLBARW LPTBNOTIFYW;
3101 3436
3102 static if (_WIN32_WINNT >= 0x501) { 3437 static if (_WIN32_WINNT >= 0x501) {
3103 struct TOOLINFOA { 3438 struct TOOLINFOA {
3104 UINT cbSize = TOOLINFOA.sizeof; 3439 UINT cbSize = TOOLINFOA.sizeof;
3105 UINT uFlags; 3440 UINT uFlags;
3106 HWND hwnd; 3441 HWND hwnd;
3107 UINT uId; | 3442 UINT_PTR uId;
3108 RECT rect; 3443 RECT rect;
3109 HINSTANCE hinst; 3444 HINSTANCE hinst;
3110 LPSTR lpszText; 3445 LPSTR lpszText;
3111 LPARAM lParam; 3446 LPARAM lParam;
3112 void* lpReserved; 3447 void* lpReserved;
3113 } 3448 }
3114 3449
3115 struct TOOLINFOW { 3450 struct TOOLINFOW {
3116 UINT cbSize = TOOLINFOW.sizeof; 3451 UINT cbSize = TOOLINFOW.sizeof;
3117 UINT uFlags; 3452 UINT uFlags;
3118 HWND hwnd; 3453 HWND hwnd;
3119 UINT uId; | 3454 UINT_PTR uId;
3120 RECT rect; 3455 RECT rect;
3121 HINSTANCE hinst; 3456 HINSTANCE hinst;
3122 LPWSTR lpszText; 3457 LPWSTR lpszText;
3123 LPARAM lParam; 3458 LPARAM lParam;
3124 void* lpReserved; 3459 void* lpReserved;
3125 } 3460 }
3126 3461
................................................................................................................................................................................
3203 } 3538 }
3204 alias TTHITTESTINFOW* LPTTHITTESTINFOW, LPHITTESTINFOW; 3539 alias TTHITTESTINFOW* LPTTHITTESTINFOW, LPHITTESTINFOW;
3205 3540
3206 static if (_WIN32_IE >= 0x300) { 3541 static if (_WIN32_IE >= 0x300) {
3207 struct NMTTDISPINFOA { 3542 struct NMTTDISPINFOA {
3208 NMHDR hdr; 3543 NMHDR hdr;
3209 LPSTR lpszText; 3544 LPSTR lpszText;
3210 char szText[80]; | 3545 char[80] szText;
3211 HINSTANCE hinst; 3546 HINSTANCE hinst;
3212 UINT uFlags; 3547 UINT uFlags;
3213 LPARAM lParam; 3548 LPARAM lParam;
3214 } 3549 }
3215 3550
3216 struct NMTTDISPINFOW { 3551 struct NMTTDISPINFOW {
3217 NMHDR hdr; 3552 NMHDR hdr;
3218 LPWSTR lpszText; 3553 LPWSTR lpszText;
3219 WCHAR szText[80]; | 3554 WCHAR[80] szText;
3220 HINSTANCE hinst; 3555 HINSTANCE hinst;
3221 UINT uFlags; 3556 UINT uFlags;
3222 LPARAM lParam; 3557 LPARAM lParam;
3223 } 3558 }
3224 } else { 3559 } else {
3225 struct NMTTDISPINFOA { 3560 struct NMTTDISPINFOA {
3226 NMHDR hdr; 3561 NMHDR hdr;
3227 LPSTR lpszText; 3562 LPSTR lpszText;
3228 char szText[80]; | 3563 char[80] szText;
3229 HINSTANCE hinst; 3564 HINSTANCE hinst;
3230 UINT uFlags; 3565 UINT uFlags;
3231 } 3566 }
3232 3567
3233 struct NMTTDISPINFOW { 3568 struct NMTTDISPINFOW {
3234 NMHDR hdr; 3569 NMHDR hdr;
3235 LPWSTR lpszText; 3570 LPWSTR lpszText;
3236 WCHAR szText[80]; | 3571 WCHAR[80] szText;
3237 HINSTANCE hinst; 3572 HINSTANCE hinst;
3238 UINT uFlags; 3573 UINT uFlags;
3239 } 3574 }
3240 } 3575 }
3241 alias NMTTDISPINFOA* LPNMTTDISPINFOA; 3576 alias NMTTDISPINFOA* LPNMTTDISPINFOA;
3242 alias NMTTDISPINFOW* LPNMTTDISPINFOW; 3577 alias NMTTDISPINFOW* LPNMTTDISPINFOW;
3243 alias NMTTDISPINFOA TOOLTIPTEXTA; 3578 alias NMTTDISPINFOA TOOLTIPTEXTA;
................................................................................................................................................................................
3501 struct LVINSERTMARK { 3836 struct LVINSERTMARK {
3502 UINT cbSize = LVINSERTMARK.sizeof; 3837 UINT cbSize = LVINSERTMARK.sizeof;
3503 DWORD dwFlags; 3838 DWORD dwFlags;
3504 int iItem; 3839 int iItem;
3505 DWORD dwReserved; 3840 DWORD dwReserved;
3506 } 3841 }
3507 alias LVINSERTMARK* PLVINSERTMARK; 3842 alias LVINSERTMARK* PLVINSERTMARK;
> 3843 alias LVINSERTMARK* LPLVINSERTMARK;
3508 3844
3509 struct LVTILEINFO { 3845 struct LVTILEINFO {
3510 UINT cbSize = LVTILEINFO.sizeof; 3846 UINT cbSize = LVTILEINFO.sizeof;
3511 int iItem; 3847 int iItem;
3512 UINT cColumns; 3848 UINT cColumns;
3513 PUINT puColumns; 3849 PUINT puColumns;
3514 static if (_WIN32_WINNT >= 0x600) { 3850 static if (_WIN32_WINNT >= 0x600) {
................................................................................................................................................................................
3541 DWORD dwFlags; 3877 DWORD dwFlags;
3542 LPWSTR pszText; 3878 LPWSTR pszText;
3543 int iItem; 3879 int iItem;
3544 int iSubItem; 3880 int iSubItem;
3545 HBITMAP hbmp; 3881 HBITMAP hbmp;
3546 } 3882 }
3547 alias LVSETINFOTIP* PLVSETINFOTIP; 3883 alias LVSETINFOTIP* PLVSETINFOTIP;
> 3884
> 3885 struct BUTTON_IMAGELIST {
> 3886 HIMAGELIST himl;
> 3887 RECT margin;
> 3888 UINT uAlign;
> 3889 }
> 3890 alias BUTTON_IMAGELIST* PBUTTON_IMAGELIST;
> 3891 }
> 3892
> 3893 static if (_WIN32_WINNT >= 0x600) {
> 3894 struct LVITEMINDEX
> 3895 {
> 3896 int iItem;
> 3897 int iGroup;
> 3898 };
> 3899 alias LVITEMINDEX* PLVITEMINDEX;
> 3900
> 3901 struct LVFOOTERINFO
> 3902 {
> 3903 UINT mask;
> 3904 LPWSTR pszText;
> 3905 int cchTextMax;
> 3906 UINT cItems;
> 3907 }
> 3908 alias LVFOOTERINFO* LPLVFOOTERINFO;
> 3909
> 3910 struct LVFOOTERITEM
> 3911 {
> 3912 UINT mask;
> 3913 int iItem;
> 3914 LPWSTR pszText;
> 3915 int cchTextMax;
> 3916 UINT state;
> 3917 UINT stateMask;
> 3918 }
> 3919 alias LVFOOTERITEM *LPLVFOOTERITEM;
> 3920
> 3921 alias UINT TVITEMPART;
> 3922 enum {
> 3923 TVGIPR_BUTTON = 0x0001,
> 3924 }
3548 } 3925 }
3549 3926
3550 alias int function(LPARAM, LPARAM, LPARAM) PFNLVCOMPARE; 3927 alias int function(LPARAM, LPARAM, LPARAM) PFNLVCOMPARE;
3551 3928
3552 struct NMLISTVIEW { 3929 struct NMLISTVIEW {
3553 NMHDR hdr; 3930 NMHDR hdr;
3554 int iItem; 3931 int iItem;
................................................................................................................................................................................
3695 struct TVHITTESTINFO { 4072 struct TVHITTESTINFO {
3696 POINT pt; 4073 POINT pt;
3697 UINT flags; 4074 UINT flags;
3698 HTREEITEM hItem; 4075 HTREEITEM hItem;
3699 } 4076 }
3700 alias TVHITTESTINFO* LPTVHITTESTINFO, LPTV_HITTESTINFO; 4077 alias TVHITTESTINFO* LPTVHITTESTINFO, LPTV_HITTESTINFO;
3701 alias TVHITTESTINFO TV_HITTESTINFO; 4078 alias TVHITTESTINFO TV_HITTESTINFO;
> 4079
> 4080 static if (_WIN32_WINNT >= 0x600) {
> 4081 struct TVGETITEMPARTRECTINFO {
> 4082 HTREEITEM hti;
> 4083 RECT* prc;
> 4084 TVITEMPART partID;
> 4085 }
> 4086 }
3702 4087
3703 alias int function(LPARAM, LPARAM, LPARAM) PFNTVCOMPARE; 4088 alias int function(LPARAM, LPARAM, LPARAM) PFNTVCOMPARE;
3704 struct TVSORTCB { 4089 struct TVSORTCB {
3705 HTREEITEM hParent; 4090 HTREEITEM hParent;
3706 PFNTVCOMPARE lpfnCompare; 4091 PFNTVCOMPARE lpfnCompare;
3707 LPARAM lParam; 4092 LPARAM lParam;
3708 } 4093 }
................................................................................................................................................................................
3980 } 4365 }
3981 4366
3982 enum : size_t { 4367 enum : size_t {
3983 REBARBANDINFOA_V3_SIZE = REBARBANDINFOA.sizeof, 4368 REBARBANDINFOA_V3_SIZE = REBARBANDINFOA.sizeof,
3984 REBARBANDINFOW_V3_SIZE = REBARBANDINFOW.sizeof 4369 REBARBANDINFOW_V3_SIZE = REBARBANDINFOW.sizeof
3985 } 4370 }
3986 } 4371 }
3987 alias REBARBANDINFOA* LPREBARBANDINFOA; | 4372 alias REBARBANDINFOA* LPREBARBANDINFOA;
3988 alias CPtr!(REBARBANDINFOA) LPCREBARBANDINFOA; | 4373 alias const(REBARBANDINFOA)* LPCREBARBANDINFOA;
3989 alias REBARBANDINFOW* LPREBARBANDINFOW; | 4374 alias REBARBANDINFOW* LPREBARBANDINFOW;
3990 alias CPtr!(REBARBANDINFOW) LPCREBARBANDINFOW; | 4375 alias const(REBARBANDINFOW)* LPCREBARBANDINFOW;
3991 4376
3992 static if (_WIN32_IE >= 0x300) { 4377 static if (_WIN32_IE >= 0x300) {
3993 struct NMLVODSTATECHANGE { 4378 struct NMLVODSTATECHANGE {
3994 NMHDR hdr; 4379 NMHDR hdr;
3995 int iFrom; 4380 int iFrom;
3996 int iTo; 4381 int iTo;
3997 UINT uNewState; 4382 UINT uNewState;
................................................................................................................................................................................
4084 POINT pt; 4469 POINT pt;
4085 UINT flags; 4470 UINT flags;
4086 int iBand; 4471 int iBand;
4087 } 4472 }
4088 alias RBHITTESTINFO* LPRBHITTESTINFO; 4473 alias RBHITTESTINFO* LPRBHITTESTINFO;
4089 } 4474 }
4090 4475
4091 alias HANDLE HDSA; | 4476 mixin DECLARE_HANDLE!("HDSA");
4092 alias HANDLE HDPA; | 4477 mixin DECLARE_HANDLE!("HDPA");
4093 4478
4094 version (Unicode) { 4479 version (Unicode) {
4095 alias HDITEMW HDITEM; 4480 alias HDITEMW HDITEM;
4096 alias LPHDITEMW LPHDITEM; 4481 alias LPHDITEMW LPHDITEM;
4097 alias TOOLINFOW TOOLINFO; 4482 alias TOOLINFOW TOOLINFO;
4098 alias TOOLINFOW* PTOOLINFO, LPTOOLINFO; 4483 alias TOOLINFOW* PTOOLINFO, LPTOOLINFO;
4099 alias TTHITTESTINFOW TTHITTESTINFO; 4484 alias TTHITTESTINFOW TTHITTESTINFO;
................................................................................................................................................................................
4587 HWND Animate_Create(HWND hwndP, UINT id, DWORD dwStyle, 4972 HWND Animate_Create(HWND hwndP, UINT id, DWORD dwStyle,
4588 HINSTANCE hInstance) { 4973 HINSTANCE hInstance) {
4589 return CreateWindow(cast(TCHAR*)ANIMATE_CLASS.ptr, null, dwStyle, 0, 0, 4974 return CreateWindow(cast(TCHAR*)ANIMATE_CLASS.ptr, null, dwStyle, 0, 0,
4590 cast(HMENU) id, hInstance, null); 4975 cast(HMENU) id, hInstance, null);
4591 } 4976 }
4592 4977
4593 BOOL Animate_Open(HWND hwnd, LPTSTR szName) { 4978 BOOL Animate_Open(HWND hwnd, LPTSTR szName) {
4594 return SendMessage(hwnd, ACM_OPEN, 0, cast(LPARAM) szName); | 4979 return cast(BOOL) SendMessage(hwnd, ACM_OPEN, 0, cast(LPARAM) szName);
4595 } 4980 }
4596 4981
4597 BOOL Animate_OpenEx(HWND hwnd, HINSTANCE hInst, LPTSTR szName) { 4982 BOOL Animate_OpenEx(HWND hwnd, HINSTANCE hInst, LPTSTR szName) {
4598 return SendMessage(hwnd, ACM_OPEN, cast(WPARAM) hInst, | 4983 return cast(BOOL) SendMessage(hwnd, ACM_OPEN, cast(WPARAM) hInst,
4599 cast(LPARAM) szName); 4984 cast(LPARAM) szName);
4600 } 4985 }
4601 4986
4602 BOOL Animate_Play(HWND hwnd, int from, int to, int rep) { 4987 BOOL Animate_Play(HWND hwnd, int from, int to, int rep) {
4603 return SendMessage(hwnd, ACM_PLAY, rep, | 4988 return cast(BOOL) SendMessage(hwnd, ACM_PLAY, rep,
4604 MAKELONG(cast(ushort) from, cast(ushort) to)); 4989 MAKELONG(cast(ushort) from, cast(ushort) to));
4605 } 4990 }
4606 4991
4607 BOOL Animate_Stop(HWND hwnd) { 4992 BOOL Animate_Stop(HWND hwnd) {
4608 return SendMessage(hwnd, ACM_STOP, 0, 0); | 4993 return cast(BOOL) SendMessage(hwnd, ACM_STOP, 0, 0);
4609 } 4994 }
4610 4995
4611 BOOL Animate_Close(HWND hwnd) { 4996 BOOL Animate_Close(HWND hwnd) {
4612 return Animate_Open(hwnd, null); 4997 return Animate_Open(hwnd, null);
4613 } 4998 }
4614 4999
4615 BOOL Animate_Seek(HWND hwnd, int frame) { 5000 BOOL Animate_Seek(HWND hwnd, int frame) {
4616 return Animate_Play(hwnd, frame, frame, 1); 5001 return Animate_Play(hwnd, frame, frame, 1);
4617 } 5002 }
4618 5003
4619 extern (Windows) { 5004 extern (Windows) {
4620 HBITMAP CreateMappedBitmap(HINSTANCE, int, UINT, LPCOLORMAP, int); | 5005 HBITMAP CreateMappedBitmap(HINSTANCE, INT_PTR, UINT, LPCOLORMAP, int);
4621 HWND CreateStatusWindowA(LONG, LPCSTR, HWND, UINT); 5006 HWND CreateStatusWindowA(LONG, LPCSTR, HWND, UINT);
4622 HWND CreateStatusWindowW(LONG, LPCWSTR, HWND, UINT); 5007 HWND CreateStatusWindowW(LONG, LPCWSTR, HWND, UINT);
4623 HWND CreateToolbarEx(HWND, DWORD, UINT, int, HINSTANCE, UINT, | 5008 HWND CreateToolbarEx(HWND, DWORD, UINT, int, HINSTANCE, UINT_PTR,
4624 LPCTBBUTTON, int, int, int, int, int, UINT); 5009 LPCTBBUTTON, int, int, int, int, int, UINT);
4625 HWND CreateUpDownControl(DWORD, int, int, int, int, HWND, int, HINSTANCE 5010 HWND CreateUpDownControl(DWORD, int, int, int, int, HWND, int, HINSTANCE
4626 HWND, int, int, int); 5011 HWND, int, int, int);
4627 } 5012 }
4628 5013
4629 HWND DateTime_GetMonthCal(HWND hwnd) { 5014 HWND DateTime_GetMonthCal(HWND hwnd) {
4630 return cast(HWND) SendMessage(hwnd, DTM_GETMONTHCAL, 0, 0); 5015 return cast(HWND) SendMessage(hwnd, DTM_GETMONTHCAL, 0, 0);
................................................................................................................................................................................
4635 } 5020 }
4636 5021
4637 HFONT DateTime_GetMonthCalFont(HWND hwnd) { 5022 HFONT DateTime_GetMonthCalFont(HWND hwnd) {
4638 return cast(HFONT) SendMessage(hwnd, DTM_GETMCFONT, 0, 0); 5023 return cast(HFONT) SendMessage(hwnd, DTM_GETMCFONT, 0, 0);
4639 } 5024 }
4640 5025
4641 DWORD DateTime_GetRange(HWND hwnd, LPSYSTEMTIME lpSysTimeArray) { 5026 DWORD DateTime_GetRange(HWND hwnd, LPSYSTEMTIME lpSysTimeArray) {
4642 return SendMessage(hwnd, DTM_GETRANGE, 0, cast(LPARAM) lpSysTimeArray); | 5027 return cast(DWORD) SendMessage(hwnd, DTM_GETRANGE, 0, cast(LPARAM) lpSys
4643 } 5028 }
4644 5029
4645 DWORD DateTime_GetSystemtime(HWND hwnd, LPSYSTEMTIME lpSysTime) { 5030 DWORD DateTime_GetSystemtime(HWND hwnd, LPSYSTEMTIME lpSysTime) {
4646 return SendMessage(hwnd, DTM_GETSYSTEMTIME, 0, cast(LPARAM) lpSysTime); | 5031 return cast(DWORD) SendMessage(hwnd, DTM_GETSYSTEMTIME, 0, cast(LPARAM)
4647 } 5032 }
4648 5033
4649 BOOL DateTime_SetFormat(HWND hwnd, LPCTSTR lpszFormat) { 5034 BOOL DateTime_SetFormat(HWND hwnd, LPCTSTR lpszFormat) {
4650 return cast(BOOL) SendMessage(hwnd, DTM_SETFORMAT, 0, 5035 return cast(BOOL) SendMessage(hwnd, DTM_SETFORMAT, 0,
4651 cast(LPARAM) lpszFormat); 5036 cast(LPARAM) lpszFormat);
4652 } 5037 }
4653 5038
................................................................................................................................................................................
4674 void DrawInsert(HWND, HWND, int); 5059 void DrawInsert(HWND, HWND, int);
4675 void DrawStatusTextA(HDC, LPRECT, LPCSTR, UINT); 5060 void DrawStatusTextA(HDC, LPRECT, LPCSTR, UINT);
4676 void DrawStatusTextW(HDC, LPRECT, LPCWSTR, UINT); 5061 void DrawStatusTextW(HDC, LPRECT, LPCWSTR, UINT);
4677 void GetEffectiveClientRect(HWND, LPRECT, LPINT); 5062 void GetEffectiveClientRect(HWND, LPRECT, LPINT);
4678 } 5063 }
4679 5064
4680 int Header_GetItemCount(HWND w) { 5065 int Header_GetItemCount(HWND w) {
4681 return SendMessage(w, HDM_GETITEMCOUNT, 0, 0); | 5066 return cast(int) SendMessage(w, HDM_GETITEMCOUNT, 0, 0);
4682 } 5067 }
4683 5068
4684 int Header_InsertItem(HWND w, int i, CPtr!(HDITEM) phdi) { | 5069 int Header_InsertItem(HWND w, int i, const(HDITEM)* phdi) {
4685 return SendMessage(w, HDM_INSERTITEM, i, cast(LPARAM) phdi); | 5070 return cast(int) SendMessage(w, HDM_INSERTITEM, i, cast(LPARAM) phdi);
4686 } 5071 }
4687 5072
4688 BOOL Header_DeleteItem(HWND w, int i) { 5073 BOOL Header_DeleteItem(HWND w, int i) {
4689 return cast(BOOL) SendMessage(w, HDM_DELETEITEM, i, 0); 5074 return cast(BOOL) SendMessage(w, HDM_DELETEITEM, i, 0);
4690 } 5075 }
4691 5076
4692 BOOL Header_GetItem(HWND w, int i, LPHDITEM phdi) { 5077 BOOL Header_GetItem(HWND w, int i, LPHDITEM phdi) {
4693 return cast(BOOL) SendMessage(w, HDM_GETITEM, i, cast(LPARAM) phdi); 5078 return cast(BOOL) SendMessage(w, HDM_GETITEM, i, cast(LPARAM) phdi);
4694 } 5079 }
4695 5080
4696 BOOL Header_SetItem(HWND w, int i, CPtr!(HDITEM) phdi) { | 5081 BOOL Header_SetItem(HWND w, int i, const(HDITEM)* phdi) {
4697 return cast(BOOL) SendMessage(w, HDM_SETITEM, i, cast(LPARAM) phdi); 5082 return cast(BOOL) SendMessage(w, HDM_SETITEM, i, cast(LPARAM) phdi);
4698 } 5083 }
4699 5084
4700 BOOL Header_Layout(HWND w, LPHDLAYOUT playout) { 5085 BOOL Header_Layout(HWND w, LPHDLAYOUT playout) {
4701 return SendMessage(w, HDM_LAYOUT, 0, cast(LPARAM) playout); | 5086 return cast(BOOL) SendMessage(w, HDM_LAYOUT, 0, cast(LPARAM) playout);
4702 } 5087 }
4703 5088
4704 static if (_WIN32_IE >= 0x300) { 5089 static if (_WIN32_IE >= 0x300) {
4705 int Header_OrderToIndex(HWND w, int i) { 5090 int Header_OrderToIndex(HWND w, int i) {
4706 return SendMessage(w, HDM_ORDERTOINDEX, i, 0); | 5091 return cast(int) SendMessage(w, HDM_ORDERTOINDEX, i, 0);
4707 } 5092 }
4708 5093
4709 BOOL Header_GetItemRect(HWND w, int i, RECT* r) { 5094 BOOL Header_GetItemRect(HWND w, int i, RECT* r) {
4710 return cast(BOOL) SendMessage(w, HDM_GETITEMRECT, i, cast(LPARAM 5095 return cast(BOOL) SendMessage(w, HDM_GETITEMRECT, i, cast(LPARAM
4711 } 5096 }
4712 5097
4713 BOOL Header_GetOrderArray(HWND w, int iSize, LPINT lpiArray) { 5098 BOOL Header_GetOrderArray(HWND w, int iSize, LPINT lpiArray) {
................................................................................................................................................................................
4801 BOOL ImageList_DragEnter(HWND, int, int); 5186 BOOL ImageList_DragEnter(HWND, int, int);
4802 BOOL ImageList_DragLeave(HWND); 5187 BOOL ImageList_DragLeave(HWND);
4803 BOOL ImageList_DragMove(int, int); 5188 BOOL ImageList_DragMove(int, int);
4804 BOOL ImageList_DragShowNolock(BOOL); 5189 BOOL ImageList_DragShowNolock(BOOL);
4805 BOOL ImageList_Draw(HIMAGELIST, int, HDC, int, int, UINT); 5190 BOOL ImageList_Draw(HIMAGELIST, int, HDC, int, int, UINT);
4806 BOOL ImageList_DrawEx(HIMAGELIST, int, HDC, int, int, int, int, COLORREF 5191 BOOL ImageList_DrawEx(HIMAGELIST, int, HDC, int, int, int, int, COLORREF
4807 COLORREF, UINT); 5192 COLORREF, UINT);
4808 void ImageList_EndDrag(PVOID); | 5193 void ImageList_EndDrag();
4809 COLORREF ImageList_GetBkColor(HIMAGELIST); 5194 COLORREF ImageList_GetBkColor(HIMAGELIST);
4810 HIMAGELIST ImageList_GetDragImage(LPPOINT, LPPOINT); 5195 HIMAGELIST ImageList_GetDragImage(LPPOINT, LPPOINT);
4811 HICON ImageList_GetIcon(HIMAGELIST, int, UINT); 5196 HICON ImageList_GetIcon(HIMAGELIST, int, UINT);
4812 BOOL ImageList_GetIconSize(HIMAGELIST, int*, int*); 5197 BOOL ImageList_GetIconSize(HIMAGELIST, int*, int*);
4813 int ImageList_GetImageCount(HIMAGELIST); 5198 int ImageList_GetImageCount(HIMAGELIST);
4814 BOOL ImageList_GetImageInfo(HIMAGELIST, int, IMAGEINFO*); 5199 BOOL ImageList_GetImageInfo(HIMAGELIST, int, IMAGEINFO*);
4815 HIMAGELIST ImageList_LoadImageA(HINSTANCE, LPCSTR, int, int, COLORREF, 5200 HIMAGELIST ImageList_LoadImageA(HINSTANCE, LPCSTR, int, int, COLORREF,
................................................................................................................................................................................
4865 } 5250 }
4866 5251
4867 HIMAGELIST ListView_GetImageList(HWND w, int i) { 5252 HIMAGELIST ListView_GetImageList(HWND w, int i) {
4868 return cast(HIMAGELIST) SendMessage(w, LVM_GETIMAGELIST, i, 0); 5253 return cast(HIMAGELIST) SendMessage(w, LVM_GETIMAGELIST, i, 0);
4869 } 5254 }
4870 5255
4871 int ListView_GetItemCount(HWND w) { 5256 int ListView_GetItemCount(HWND w) {
4872 return SendMessage(w, LVM_GETITEMCOUNT, 0, 0); | 5257 return cast(int) SendMessage(w, LVM_GETITEMCOUNT, 0, 0);
4873 } 5258 }
4874 5259
4875 BOOL ListView_GetItem(HWND w, LPLVITEM pitem) { 5260 BOOL ListView_GetItem(HWND w, LPLVITEM pitem) {
4876 return cast(BOOL) SendMessage(w, LVM_GETITEM, 0, cast(LPARAM) pitem); 5261 return cast(BOOL) SendMessage(w, LVM_GETITEM, 0, cast(LPARAM) pitem);
4877 } 5262 }
4878 5263
4879 BOOL ListView_SetBkColor(HWND w, COLORREF c) { 5264 BOOL ListView_SetBkColor(HWND w, COLORREF c) {
................................................................................................................................................................................
4881 } 5266 }
4882 5267
4883 HIMAGELIST ListView_SetImageList(HWND w, HIMAGELIST h, int i) { 5268 HIMAGELIST ListView_SetImageList(HWND w, HIMAGELIST h, int i) {
4884 return cast(HIMAGELIST) SendMessage(w, LVM_SETIMAGELIST, i, 5269 return cast(HIMAGELIST) SendMessage(w, LVM_SETIMAGELIST, i,
4885 cast(LPARAM) h); 5270 cast(LPARAM) h);
4886 } 5271 }
4887 5272
4888 BOOL ListView_SetItem(HWND w, CPtr!(LV_ITEM) i) { | 5273 BOOL ListView_SetItem(HWND w, const(LV_ITEM)* i) {
4889 return cast(BOOL) SendMessage(w, LVM_SETITEM, 0, cast(LPARAM) i); 5274 return cast(BOOL) SendMessage(w, LVM_SETITEM, 0, cast(LPARAM) i);
4890 } 5275 }
4891 5276
4892 int ListView_InsertItem(HWND w, CPtr!(LV_ITEM) i) { | 5277 int ListView_InsertItem(HWND w, const(LV_ITEM)* i) {
4893 return SendMessage(w, LVM_INSERTITEM, 0, cast(LPARAM) i); | 5278 return cast(int) SendMessage(w, LVM_INSERTITEM, 0, cast(LPARAM) i);
4894 } 5279 }
4895 5280
4896 BOOL ListView_DeleteItem(HWND w, int i) { 5281 BOOL ListView_DeleteItem(HWND w, int i) {
4897 return cast(BOOL) SendMessage(w, LVM_DELETEITEM, i, 0); 5282 return cast(BOOL) SendMessage(w, LVM_DELETEITEM, i, 0);
4898 } 5283 }
4899 5284
4900 BOOL ListView_DeleteAllItems(HWND w) { 5285 BOOL ListView_DeleteAllItems(HWND w) {
................................................................................................................................................................................
4906 } 5291 }
4907 5292
4908 BOOL ListView_SetCallbackMask(HWND w, UINT m) { 5293 BOOL ListView_SetCallbackMask(HWND w, UINT m) {
4909 return cast(BOOL) SendMessage(w, LVM_SETCALLBACKMASK, m, 0); 5294 return cast(BOOL) SendMessage(w, LVM_SETCALLBACKMASK, m, 0);
4910 } 5295 }
4911 5296
4912 int ListView_GetNextItem(HWND w, int i, UINT f) { 5297 int ListView_GetNextItem(HWND w, int i, UINT f) {
4913 return SendMessage(w, LVM_GETNEXTITEM, i, MAKELPARAM(cast(ushort)f, 0)); | 5298 return cast(int) SendMessage(w, LVM_GETNEXTITEM, i, MAKELPARAM(cast(usho
4914 } 5299 }
4915 5300
4916 int ListView_FindItem(HWND w, int i, CPtr!(LV_FINDINFO) p) { | 5301 int ListView_FindItem(HWND w, int i, const(LV_FINDINFO)* p) {
4917 return SendMessage(w, LVM_FINDITEM, i, cast(LPARAM) p); | 5302 return cast(int) SendMessage(w, LVM_FINDITEM, i, cast(LPARAM) p);
4918 } 5303 }
4919 5304
4920 BOOL ListView_GetItemRect(HWND w, int i, LPRECT p, int c) { 5305 BOOL ListView_GetItemRect(HWND w, int i, LPRECT p, int c) {
4921 return cast(BOOL) SendMessage(w, LVM_GETITEMRECT, i, p ? 5306 return cast(BOOL) SendMessage(w, LVM_GETITEMRECT, i, p ?
4922 (p.left = c, cast(LPARAM) p) : 0); 5307 (p.left = c, cast(LPARAM) p) : 0);
4923 } 5308 }
4924 5309
................................................................................................................................................................................
4931 } 5316 }
4932 5317
4933 DWORD ListView_GetItemSpacing(HWND w, BOOL f) { 5318 DWORD ListView_GetItemSpacing(HWND w, BOOL f) {
4934 return cast(DWORD) SendMessage(w, LVM_GETITEMSPACING, f, 0); 5319 return cast(DWORD) SendMessage(w, LVM_GETITEMSPACING, f, 0);
4935 } 5320 }
4936 5321
4937 int ListView_GetStringWidth(HWND w, LPCSTR s) { 5322 int ListView_GetStringWidth(HWND w, LPCSTR s) {
4938 return SendMessage(w, LVM_GETSTRINGWIDTH, 0, cast(LPARAM) s); | 5323 return cast(int) SendMessage(w, LVM_GETSTRINGWIDTH, 0, cast(LPARAM) s);
4939 } 5324 }
4940 5325
4941 int ListView_HitTest(HWND w, LPLVHITTESTINFO p) { 5326 int ListView_HitTest(HWND w, LPLVHITTESTINFO p) {
4942 return SendMessage(w, LVM_HITTEST, 0, cast(LPARAM) p); | 5327 return cast(int) SendMessage(w, LVM_HITTEST, 0, cast(LPARAM) p);
4943 } 5328 }
4944 5329
4945 BOOL ListView_EnsureVisible(HWND w, int i, BOOL f) { 5330 BOOL ListView_EnsureVisible(HWND w, int i, BOOL f) {
4946 return cast(BOOL) SendMessage(w, LVM_ENSUREVISIBLE, i, MAKELPARAM(cast(u 5331 return cast(BOOL) SendMessage(w, LVM_ENSUREVISIBLE, i, MAKELPARAM(cast(u
4947 } 5332 }
4948 5333
4949 BOOL ListView_Scroll(HWND w, int dx, int dy) { 5334 BOOL ListView_Scroll(HWND w, int dx, int dy) {
................................................................................................................................................................................
4966 return cast(HWND) SendMessage(w, LVM_GETEDITCONTROL, 0, 0); 5351 return cast(HWND) SendMessage(w, LVM_GETEDITCONTROL, 0, 0);
4967 } 5352 }
4968 5353
4969 BOOL ListView_GetColumn(HWND w, int i, LPLVCOLUMN p) { 5354 BOOL ListView_GetColumn(HWND w, int i, LPLVCOLUMN p) {
4970 return cast(BOOL) SendMessage(w, LVM_GETCOLUMN, i, cast(LPARAM) p); 5355 return cast(BOOL) SendMessage(w, LVM_GETCOLUMN, i, cast(LPARAM) p);
4971 } 5356 }
4972 5357
4973 BOOL ListView_SetColumn(HWND w, int i, CPtr!(LV_COLUMN) p) { | 5358 BOOL ListView_SetColumn(HWND w, int i, const(LV_COLUMN)* p) {
4974 return cast(BOOL) SendMessage(w, LVM_SETCOLUMN, i, cast(LPARAM) p); 5359 return cast(BOOL) SendMessage(w, LVM_SETCOLUMN, i, cast(LPARAM) p);
4975 } 5360 }
4976 5361
4977 int ListView_InsertColumn(HWND w, int i, CPtr!(LV_COLUMN) p) { | 5362 int ListView_InsertColumn(HWND w, int i, const(LV_COLUMN)* p) {
4978 return SendMessage(w, LVM_INSERTCOLUMN, i, cast(LPARAM) p); | 5363 return cast(int) SendMessage(w, LVM_INSERTCOLUMN, i, cast(LPARAM) p);
4979 } 5364 }
4980 5365
4981 BOOL ListView_DeleteColumn(HWND w, int i) { 5366 BOOL ListView_DeleteColumn(HWND w, int i) {
4982 return cast(BOOL) SendMessage(w, LVM_DELETECOLUMN, i, 0); 5367 return cast(BOOL) SendMessage(w, LVM_DELETECOLUMN, i, 0);
4983 } 5368 }
4984 5369
4985 int ListView_GetColumnWidth(HWND w, int i) { 5370 int ListView_GetColumnWidth(HWND w, int i) {
4986 return SendMessage(w, LVM_GETCOLUMNWIDTH, i, 0); | 5371 return cast(int) SendMessage(w, LVM_GETCOLUMNWIDTH, i, 0);
4987 } 5372 }
4988 5373
4989 BOOL ListView_SetColumnWidth(HWND w, int i, int x) { 5374 BOOL ListView_SetColumnWidth(HWND w, int i, int x) {
4990 return cast(BOOL) SendMessage(w, LVM_SETCOLUMNWIDTH, i, MAKELPARAM(cast( 5375 return cast(BOOL) SendMessage(w, LVM_SETCOLUMNWIDTH, i, MAKELPARAM(cast(
4991 } 5376 }
4992 5377
4993 HIMAGELIST ListView_CreateDragImage(HWND w, int i, LPPOINT p) { 5378 HIMAGELIST ListView_CreateDragImage(HWND w, int i, LPPOINT p) {
................................................................................................................................................................................
5012 } 5397 }
5013 5398
5014 BOOL ListView_SetTextBkColor(HWND w, COLORREF c) { 5399 BOOL ListView_SetTextBkColor(HWND w, COLORREF c) {
5015 return cast(BOOL) SendMessage(w, LVM_SETTEXTBKCOLOR, 0, cast(LPARAM) c); 5400 return cast(BOOL) SendMessage(w, LVM_SETTEXTBKCOLOR, 0, cast(LPARAM) c);
5016 } 5401 }
5017 5402
5018 int ListView_GetTopIndex(HWND w) { 5403 int ListView_GetTopIndex(HWND w) {
5019 return SendMessage(w, LVM_GETTOPINDEX, 0, 0); | 5404 return cast(int) SendMessage(w, LVM_GETTOPINDEX, 0, 0);
5020 } 5405 }
5021 5406
5022 int ListView_GetCountPerPage(HWND w) { 5407 int ListView_GetCountPerPage(HWND w) {
5023 return SendMessage(w, LVM_GETCOUNTPERPAGE, 0, 0); | 5408 return cast(int) SendMessage(w, LVM_GETCOUNTPERPAGE, 0, 0);
5024 } 5409 }
5025 5410
5026 BOOL ListView_GetOrigin(HWND w, LPPOINT p) { 5411 BOOL ListView_GetOrigin(HWND w, LPPOINT p) {
5027 return cast(BOOL) SendMessage(w, LVM_GETORIGIN, 0, cast(LPARAM) p); 5412 return cast(BOOL) SendMessage(w, LVM_GETORIGIN, 0, cast(LPARAM) p);
5028 } 5413 }
5029 5414
5030 BOOL ListView_Update(HWND w, WPARAM i) { 5415 BOOL ListView_Update(HWND w, WPARAM i) {
................................................................................................................................................................................
5094 SendMessage(w, LVM_CANCELEDITLABEL, 0, 0); 5479 SendMessage(w, LVM_CANCELEDITLABEL, 0, 0);
5095 } 5480 }
5096 5481
5097 int ListView_EnableGroupView(HWND w, BOOL i) { 5482 int ListView_EnableGroupView(HWND w, BOOL i) {
5098 return cast(int) SendMessage(w, LVM_ENABLEGROUPVIEW, i, 0); 5483 return cast(int) SendMessage(w, LVM_ENABLEGROUPVIEW, i, 0);
5099 } 5484 }
5100 5485
5101 static if (_WIN32_WINDOWS >= 0x410 && (_WIN32_WINNT >= 0x500 || _WIN32_IE >= 0x5 | 5486 static if (_WIN32_WINNT >= 0x500 || _WIN32_IE >= 0x500) {
5102 BOOL ListView_SortItemsEx(HWND w, PFNLVCOMPARE c, LPARAM p) { 5487 BOOL ListView_SortItemsEx(HWND w, PFNLVCOMPARE c, LPARAM p) {
5103 return SendMessage(w, LVM_SORTITEMSEX, cast(WPARAM) p, cast(LPAR | 5488 return cast(BOOL) SendMessage(w, LVM_SORTITEMSEX, cast(WPARAM) p
5104 } 5489 }
5105 } 5490 }
5106 5491
5107 static if (_WIN32_WINNT >= 0x501) { 5492 static if (_WIN32_WINNT >= 0x501) {
5108 int ListView_GetGroupInfo(HWND w, int i, PLVGROUP p) { 5493 int ListView_GetGroupInfo(HWND w, int i, PLVGROUP p) {
5109 return SendMessage(w, LVM_GETGROUPINFO, i, cast(LPARAM) p); | 5494 return cast(int) SendMessage(w, LVM_GETGROUPINFO, i, cast(LPARAM
5110 } 5495 }
5111 5496
5112 void ListView_GetGroupMetrics(HWND w, PLVGROUPMETRICS p) { 5497 void ListView_GetGroupMetrics(HWND w, PLVGROUPMETRICS p) {
5113 SendMessage(w, LVM_GETGROUPMETRICS, 0, cast(LPARAM) p); 5498 SendMessage(w, LVM_GETGROUPMETRICS, 0, cast(LPARAM) p);
5114 } 5499 }
5115 5500
5116 BOOL ListView_GetInsertMark(HWND w, PLVINSERTMARK p) { 5501 BOOL ListView_GetInsertMark(HWND w, PLVINSERTMARK p) {
5117 return SendMessage(w, LVM_GETINSERTMARK, 0, cast(LPARAM) p); | 5502 return cast(BOOL) SendMessage(w, LVM_GETINSERTMARK, 0, cast(LPAR
5118 } 5503 }
5119 5504
5120 COLORREF ListView_GetInsertMarkColor(HWND w) { 5505 COLORREF ListView_GetInsertMarkColor(HWND w) {
5121 return SendMessage(w, LVM_GETINSERTMARKCOLOR, 0, 0); | 5506 return cast(COLORREF) SendMessage(w, LVM_GETINSERTMARKCOLOR, 0,
5122 } 5507 }
5123 5508
5124 int ListView_GetInsertMarkRect(HWND w, LPRECT p) { 5509 int ListView_GetInsertMarkRect(HWND w, LPRECT p) {
5125 return SendMessage(w, LVM_GETINSERTMARKRECT, 0, cast(LPARAM) p); | 5510 return cast(int) SendMessage(w, LVM_GETINSERTMARKRECT, 0, cast(L
5126 } 5511 }
5127 5512
5128 COLORREF ListView_GetOutlineColor(HWND w) { 5513 COLORREF ListView_GetOutlineColor(HWND w) {
5129 return SendMessage(w, LVM_GETOUTLINECOLOR, 0, 0); | 5514 return cast(COLORREF) SendMessage(w, LVM_GETOUTLINECOLOR, 0, 0);
5130 } 5515 }
5131 5516
5132 UINT ListView_GetSelectedColumn(HWND w) { 5517 UINT ListView_GetSelectedColumn(HWND w) {
5133 return SendMessage(w, LVM_GETSELECTEDCOLUMN, 0, 0); | 5518 return cast(UINT) SendMessage(w, LVM_GETSELECTEDCOLUMN, 0, 0);
5134 } 5519 }
5135 5520
5136 void ListView_GetTileInfo(HWND w, PLVTILEINFO p) { 5521 void ListView_GetTileInfo(HWND w, PLVTILEINFO p) {
5137 SendMessage(w, LVM_GETTILEINFO, 0, cast(LPARAM) p); 5522 SendMessage(w, LVM_GETTILEINFO, 0, cast(LPARAM) p);
5138 } 5523 }
5139 5524
5140 void ListView_GetTileViewInfo(HWND w, PLVTILEVIEWINFO p) { 5525 void ListView_GetTileViewInfo(HWND w, PLVTILEVIEWINFO p) {
5141 SendMessage(w, LVM_GETTILEVIEWINFO, 0, cast(LPARAM) p); 5526 SendMessage(w, LVM_GETTILEVIEWINFO, 0, cast(LPARAM) p);
5142 } 5527 }
5143 5528
5144 DWORD ListView_GetView(HWND w) { 5529 DWORD ListView_GetView(HWND w) {
5145 return SendMessage(w, LVM_GETVIEW, 0, 0); | 5530 return cast(DWORD) SendMessage(w, LVM_GETVIEW, 0, 0);
5146 } 5531 }
5147 5532
5148 BOOL ListView_HasGroup(HWND w, int i) { 5533 BOOL ListView_HasGroup(HWND w, int i) {
5149 return SendMessage(w, LVM_HASGROUP, i, 0); | 5534 return cast(BOOL) SendMessage(w, LVM_HASGROUP, i, 0);
5150 } 5535 }
5151 5536
5152 int ListView_InsertGroup(HWND w, int i, PLVGROUP p) { 5537 int ListView_InsertGroup(HWND w, int i, PLVGROUP p) {
5153 return SendMessage(w, LVM_INSERTGROUP, i, cast(LPARAM) p); | 5538 return cast(int) SendMessage(w, LVM_INSERTGROUP, i, cast(LPARAM)
5154 } 5539 }
5155 5540
5156 void ListView_InsertGroupSorted(HWND w, PLVINSERTGROUPSORTED p) { 5541 void ListView_InsertGroupSorted(HWND w, PLVINSERTGROUPSORTED p) {
5157 SendMessage(w, LVM_INSERTGROUPSORTED, cast(WPARAM) p, 0); 5542 SendMessage(w, LVM_INSERTGROUPSORTED, cast(WPARAM) p, 0);
5158 } 5543 }
5159 5544
5160 BOOL ListView_InsertMarkHitTest(HWND w, LPPOINT p, PLVINSERTMARK t) { 5545 BOOL ListView_InsertMarkHitTest(HWND w, LPPOINT p, PLVINSERTMARK t) {
5161 return SendMessage(w, LVM_INSERTMARKHITTEST, cast(WPARAM) p, cas | 5546 return cast(BOOL) SendMessage(w, LVM_INSERTMARKHITTEST, cast(WPA
5162 } 5547 }
5163 5548
5164 BOOL ListView_IsGroupViewEnabled(HWND w) { 5549 BOOL ListView_IsGroupViewEnabled(HWND w) {
5165 return SendMessage(w, LVM_ISGROUPVIEWENABLED, 0, 0); | 5550 return cast(BOOL) SendMessage(w, LVM_ISGROUPVIEWENABLED, 0, 0);
5166 } 5551 }
5167 5552
5168 UINT ListView_MapIDToIndex(HWND w, UINT i) { 5553 UINT ListView_MapIDToIndex(HWND w, UINT i) {
5169 return SendMessage(w, LVM_MAPIDTOINDEX, i, 0); | 5554 return cast(UINT) SendMessage(w, LVM_MAPIDTOINDEX, i, 0);
5170 } 5555 }
5171 5556
5172 /* ??? MSDN documents this as "Not implemented", except in relation 5557 /* ??? MSDN documents this as "Not implemented", except in relation
5173 * Windows CE/Mobile. 5558 * Windows CE/Mobile.
5174 */ 5559 */
5175 void ListView_MoveGroup(HWND w, int i, int t) { 5560 void ListView_MoveGroup(HWND w, int i, int t) {
5176 SendMessage(w, LVM_MOVEGROUP, i, t); 5561 SendMessage(w, LVM_MOVEGROUP, i, t);
................................................................................................................................................................................
5177 } 5562 }
5178 5563
5179 void ListView_RemoveAllGroups(HWND w) { 5564 void ListView_RemoveAllGroups(HWND w) {
5180 SendMessage(w, LVM_REMOVEALLGROUPS, 0, 0); 5565 SendMessage(w, LVM_REMOVEALLGROUPS, 0, 0);
5181 } 5566 }
5182 5567
5183 int ListView_RemoveGroup(HWND w, int i) { 5568 int ListView_RemoveGroup(HWND w, int i) {
5184 return SendMessage(w, LVM_REMOVEGROUP, i, 0); | 5569 return cast(int) SendMessage(w, LVM_REMOVEGROUP, i, 0);
5185 } 5570 }
5186 5571
5187 int ListView_SetGroupInfo(HWND w, int i, PLVGROUP p) { 5572 int ListView_SetGroupInfo(HWND w, int i, PLVGROUP p) {
5188 return SendMessage(w, LVM_SETGROUPINFO, i, cast(LPARAM) p); | 5573 return cast(int) SendMessage(w, LVM_SETGROUPINFO, i, cast(LPARAM
5189 } 5574 }
5190 5575
5191 void ListView_SetGroupMetrics(HWND w, PLVGROUPMETRICS p) { 5576 void ListView_SetGroupMetrics(HWND w, PLVGROUPMETRICS p) {
5192 SendMessage(w, LVM_SETGROUPMETRICS, 0, cast(LPARAM) p); 5577 SendMessage(w, LVM_SETGROUPMETRICS, 0, cast(LPARAM) p);
5193 } 5578 }
5194 5579
5195 BOOL ListView_SetInfoTip(HWND w, PLVSETINFOTIP p) { 5580 BOOL ListView_SetInfoTip(HWND w, PLVSETINFOTIP p) {
5196 return SendMessage(w, LVM_SETINFOTIP, 0, cast(LPARAM) p); | 5581 return cast(BOOL) SendMessage(w, LVM_SETINFOTIP, 0, cast(LPARAM)
5197 } 5582 }
5198 5583
5199 BOOL ListView_SetInsertMark(HWND w, PLVINSERTMARK p) { 5584 BOOL ListView_SetInsertMark(HWND w, PLVINSERTMARK p) {
5200 return SendMessage(w, LVM_SETINSERTMARK, 0, cast(LPARAM) p); | 5585 return cast(BOOL) SendMessage(w, LVM_SETINSERTMARK, 0, cast(LPAR
5201 } 5586 }
5202 5587
5203 COLORREF ListView_SetInsertMarkColor(HWND w, COLORREF c) { 5588 COLORREF ListView_SetInsertMarkColor(HWND w, COLORREF c) {
5204 return SendMessage(w, LVM_SETINSERTMARKCOLOR, 0, c); | 5589 return cast(COLORREF) SendMessage(w, LVM_SETINSERTMARKCOLOR, 0,
5205 } 5590 }
5206 5591
5207 COLORREF ListView_SetOutlineColor(HWND w, COLORREF c) { 5592 COLORREF ListView_SetOutlineColor(HWND w, COLORREF c) {
5208 return SendMessage(w, LVM_SETOUTLINECOLOR, 0, c); | 5593 return cast(COLORREF) SendMessage(w, LVM_SETOUTLINECOLOR, 0, c);
5209 } 5594 }
5210 5595
5211 void ListView_SetSelectedColumn(HWND w, int i) { 5596 void ListView_SetSelectedColumn(HWND w, int i) {
5212 SendMessage(w, LVM_SETSELECTEDCOLUMN, i, 0); 5597 SendMessage(w, LVM_SETSELECTEDCOLUMN, i, 0);
5213 } 5598 }
5214 5599
5215 BOOL ListView_SetTileInfo(HWND w, PLVTILEINFO p) { 5600 BOOL ListView_SetTileInfo(HWND w, PLVTILEINFO p) {
5216 return SendMessage(w, LVM_SETTILEINFO, 0, cast(LPARAM) p); | 5601 return cast(BOOL) SendMessage(w, LVM_SETTILEINFO, 0, cast(LPARAM
5217 } 5602 }
5218 5603
5219 BOOL ListView_SetTileViewInfo(HWND w, PLVTILEVIEWINFO p) { 5604 BOOL ListView_SetTileViewInfo(HWND w, PLVTILEVIEWINFO p) {
5220 return SendMessage(w, LVM_SETTILEVIEWINFO, 0, cast(LPARAM) p); | 5605 return cast(BOOL) SendMessage(w, LVM_SETTILEVIEWINFO, 0, cast(LP
5221 } 5606 }
5222 5607
5223 int ListView_SetView(HWND w, DWORD i) { 5608 int ListView_SetView(HWND w, DWORD i) {
5224 return SendMessage(w, LVM_SETVIEW, i, 0); | 5609 return cast(int) SendMessage(w, LVM_SETVIEW, i, 0);
5225 } 5610 }
5226 5611
5227 int ListView_SortGroups(HWND w, PFNLVGROUPCOMPARE c, LPVOID p) { 5612 int ListView_SortGroups(HWND w, PFNLVGROUPCOMPARE c, LPVOID p) {
5228 return SendMessage(w, LVM_SORTGROUPS, cast(WPARAM) c, cast(LPARA | 5613 return cast(int) SendMessage(w, LVM_SORTGROUPS, cast(WPARAM) c,
5229 } 5614 }
5230 } 5615 }
5231 5616
5232 static if (_WIN32_WINNT >= 0x501) { 5617 static if (_WIN32_WINNT >= 0x501) {
5233 enum { 5618 enum {
5234 CBM_FIRST = 0x1700, 5619 CBM_FIRST = 0x1700,
5235 CB_SETMINVISIBLE = CBM_FIRST + 1, 5620 CB_SETMINVISIBLE = CBM_FIRST + 1,
5236 CB_GETMINVISIBLE = CBM_FIRST + 2 | 5621 CB_GETMINVISIBLE = CBM_FIRST + 2,
> 5622 CB_SETCUEBANNER = CBM_FIRST + 3,
> 5623 CB_GETCUEBANNER = CBM_FIRST + 4,
5237 } 5624 }
5238 5625
5239 BOOL ComboBox_SetMinVisible(HWND w, INT i) { 5626 BOOL ComboBox_SetMinVisible(HWND w, INT i) {
5240 return cast(BOOL) SendMessage(w, CB_SETMINVISIBLE, cast(WPARAM) 5627 return cast(BOOL) SendMessage(w, CB_SETMINVISIBLE, cast(WPARAM)
5241 } 5628 }
5242 5629
5243 int ComboBox_GetMinVisible(HWND w) { 5630 int ComboBox_GetMinVisible(HWND w) {
5244 return SendMessage(w, CB_GETMINVISIBLE, 0, 0); | 5631 return cast(int) SendMessage(w, CB_GETMINVISIBLE, 0, 0);
5245 } 5632 }
5246 } 5633 }
5247 5634
5248 extern (Windows) BOOL MakeDragList(HWND); 5635 extern (Windows) BOOL MakeDragList(HWND);
5249 extern (Windows) void MenuHelp(UINT, WPARAM, LPARAM, HMENU, HINSTANCE, HWND, 5636 extern (Windows) void MenuHelp(UINT, WPARAM, LPARAM, HMENU, HINSTANCE, HWND,
5250 PUINT); 5637 PUINT);
5251 5638
................................................................................................................................................................................
5273 5660
5274 BOOL MonthCal_GetMinReqRect(HWND hwnd, LPRECT lpRectInfo) { 5661 BOOL MonthCal_GetMinReqRect(HWND hwnd, LPRECT lpRectInfo) {
5275 return cast(BOOL) SendMessage(hwnd, MCM_GETMINREQRECT, 0, 5662 return cast(BOOL) SendMessage(hwnd, MCM_GETMINREQRECT, 0,
5276 cast(LPARAM) lpRectInfo); 5663 cast(LPARAM) lpRectInfo);
5277 } 5664 }
5278 5665
5279 INT MonthCal_GetMonthDelta(HWND hwnd) { 5666 INT MonthCal_GetMonthDelta(HWND hwnd) {
5280 return SendMessage(hwnd, MCM_GETMONTHDELTA, 0, 0); | 5667 return cast(INT) SendMessage(hwnd, MCM_GETMONTHDELTA, 0, 0);
5281 } 5668 }
5282 5669
5283 INT MonthCal_GetMonthRange(HWND hwnd, DWORD flag, LPSYSTEMTIME systimearray) { 5670 INT MonthCal_GetMonthRange(HWND hwnd, DWORD flag, LPSYSTEMTIME systimearray) {
5284 return SendMessage(hwnd, MCM_GETMONTHRANGE, cast(WPARAM) flag, | 5671 return cast(INT) SendMessage(hwnd, MCM_GETMONTHRANGE, cast(WPARAM) flag,
5285 cast(LPARAM) systimearray); 5672 cast(LPARAM) systimearray);
5286 } 5673 }
5287 5674
5288 DWORD MonthCal_GetRange(HWND hwnd, LPSYSTEMTIME systimearray) { 5675 DWORD MonthCal_GetRange(HWND hwnd, LPSYSTEMTIME systimearray) {
5289 return cast(DWORD) SendMessage(hwnd, MCM_GETRANGE, 0, 5676 return cast(DWORD) SendMessage(hwnd, MCM_GETRANGE, 0,
5290 cast(LPARAM) systimearray); 5677 cast(LPARAM) systimearray);
5291 } 5678 }
................................................................................................................................................................................
5331 5718
5332 BOOL MonthCal_SetMaxSelCount(HWND hwnd, UINT imax) { 5719 BOOL MonthCal_SetMaxSelCount(HWND hwnd, UINT imax) {
5333 return cast(BOOL) SendMessage(hwnd, MCM_SETMAXSELCOUNT, 5720 return cast(BOOL) SendMessage(hwnd, MCM_SETMAXSELCOUNT,
5334 cast(WPARAM) imax, 0); 5721 cast(WPARAM) imax, 0);
5335 } 5722 }
5336 5723
5337 INT MonthCal_SetMonthDelta(HWND hwnd, INT idelta) { 5724 INT MonthCal_SetMonthDelta(HWND hwnd, INT idelta) {
5338 return SendMessage(hwnd, MCM_SETMONTHDELTA, cast(WPARAM) idelta, 0); | 5725 return cast(INT) SendMessage(hwnd, MCM_SETMONTHDELTA, cast(WPARAM) idelt
5339 } 5726 }
5340 5727
5341 BOOL MonthCal_SetSelRange(HWND hwnd, LPSYSTEMTIME systimearray) { 5728 BOOL MonthCal_SetSelRange(HWND hwnd, LPSYSTEMTIME systimearray) {
5342 return cast(BOOL) SendMessage(hwnd, MCM_SETSELRANGE, 0, 5729 return cast(BOOL) SendMessage(hwnd, MCM_SETSELRANGE, 0,
5343 cast(LPARAM) systimearray); 5730 cast(LPARAM) systimearray);
5344 } 5731 }
5345 5732
................................................................................................................................................................................
5353 } 5740 }
5354 5741
5355 BOOL MonthCal_SetRange(HWND w, DWORD f, LPSYSTEMTIME st) { 5742 BOOL MonthCal_SetRange(HWND w, DWORD f, LPSYSTEMTIME st) {
5356 return cast(BOOL) SendMessage(w, MCM_SETRANGE, cast(WPARAM) f, 5743 return cast(BOOL) SendMessage(w, MCM_SETRANGE, cast(WPARAM) f,
5357 cast(LPARAM) st); 5744 cast(LPARAM) st);
5358 } 5745 }
5359 5746
5360 extern (Windows) BOOL ShowHideMenuCtl(HWND, UINT, PINT); | 5747 extern (Windows) BOOL ShowHideMenuCtl(HWND, UINT_PTR, PINT);
5361 5748
5362 BOOL TabCtrl_GetItem(HWND w, int i, LPTCITEM p) { 5749 BOOL TabCtrl_GetItem(HWND w, int i, LPTCITEM p) {
5363 return cast(BOOL) SendMessage(w, TCM_GETITEM, i, cast(LPARAM) p); 5750 return cast(BOOL) SendMessage(w, TCM_GETITEM, i, cast(LPARAM) p);
5364 } 5751 }
5365 5752
5366 BOOL TabCtrl_SetItem(HWND w, int i, LPTCITEM p) { 5753 BOOL TabCtrl_SetItem(HWND w, int i, LPTCITEM p) {
5367 return cast(BOOL) SendMessage(w, TCM_SETITEM, i, cast(LPARAM) p); 5754 return cast(BOOL) SendMessage(w, TCM_SETITEM, i, cast(LPARAM) p);
5368 } 5755 }
5369 5756
5370 int TabCtrl_InsertItem(HWND w, int i, CPtr!(TC_ITEM) p) { | 5757 int TabCtrl_InsertItem(HWND w, int i, const(TC_ITEM)* p) {
5371 return SendMessage(w, TCM_INSERTITEM, i, cast(LPARAM) p); | 5758 return cast(int) SendMessage(w, TCM_INSERTITEM, i, cast(LPARAM) p);
5372 } 5759 }
5373 5760
5374 BOOL TabCtrl_DeleteItem(HWND w, int i) { 5761 BOOL TabCtrl_DeleteItem(HWND w, int i) {
5375 return cast(BOOL) SendMessage(w, TCM_DELETEITEM, i, 0); 5762 return cast(BOOL) SendMessage(w, TCM_DELETEITEM, i, 0);
5376 } 5763 }
5377 5764
5378 BOOL TabCtrl_DeleteAllItems(HWND w) { 5765 BOOL TabCtrl_DeleteAllItems(HWND w) {
................................................................................................................................................................................
5380 } 5767 }
5381 5768
5382 BOOL TabCtrl_GetItemRect(HWND w, int i, LPRECT p) { 5769 BOOL TabCtrl_GetItemRect(HWND w, int i, LPRECT p) {
5383 return cast(BOOL) SendMessage(w, TCM_GETITEMRECT, i, cast(LPARAM) p); 5770 return cast(BOOL) SendMessage(w, TCM_GETITEMRECT, i, cast(LPARAM) p);
5384 } 5771 }
5385 5772
5386 int TabCtrl_GetCurSel(HWND w) { 5773 int TabCtrl_GetCurSel(HWND w) {
5387 return SendMessage(w, TCM_GETCURSEL, 0, 0); | 5774 return cast(int) SendMessage(w, TCM_GETCURSEL, 0, 0);
5388 } 5775 }
5389 5776
5390 int TabCtrl_SetCurSel(HWND w, int i) { 5777 int TabCtrl_SetCurSel(HWND w, int i) {
5391 return SendMessage(w, TCM_SETCURSEL, i, 0); | 5778 return cast(int) SendMessage(w, TCM_SETCURSEL, i, 0);
5392 } 5779 }
5393 5780
5394 int TabCtrl_HitTest(HWND w, LPTCHITTESTINFO p) { 5781 int TabCtrl_HitTest(HWND w, LPTCHITTESTINFO p) {
5395 return SendMessage(w, TCM_HITTEST, 0, cast(LPARAM) p); | 5782 return cast(int) SendMessage(w, TCM_HITTEST, 0, cast(LPARAM) p);
5396 } 5783 }
5397 5784
5398 BOOL TabCtrl_SetItemExtra(HWND w, int c) { 5785 BOOL TabCtrl_SetItemExtra(HWND w, int c) {
5399 return cast(BOOL) SendMessage(w, TCM_SETITEMEXTRA, c, 0); 5786 return cast(BOOL) SendMessage(w, TCM_SETITEMEXTRA, c, 0);
5400 } 5787 }
5401 5788
5402 int TabCtrl_AdjustRect(HWND w, BOOL b, LPRECT p) { 5789 int TabCtrl_AdjustRect(HWND w, BOOL b, LPRECT p) {
5403 return SendMessage(w, TCM_ADJUSTRECT, b, cast(LPARAM) p); | 5790 return cast(int) SendMessage(w, TCM_ADJUSTRECT, b, cast(LPARAM) p);
5404 } 5791 }
5405 5792
5406 DWORD TabCtrl_SetItemSize(HWND w, int x, int y) { 5793 DWORD TabCtrl_SetItemSize(HWND w, int x, int y) {
5407 return cast(DWORD) SendMessage(w, TCM_SETITEMSIZE, 0, MAKELPARAM(cast(us 5794 return cast(DWORD) SendMessage(w, TCM_SETITEMSIZE, 0, MAKELPARAM(cast(us
5408 } 5795 }
5409 5796
5410 void TabCtrl_RemoveImage(HWND w, int i) { 5797 void TabCtrl_RemoveImage(HWND w, int i) {
................................................................................................................................................................................
5412 } 5799 }
5413 5800
5414 void TabCtrl_SetPadding(HWND w, int x, int y) { 5801 void TabCtrl_SetPadding(HWND w, int x, int y) {
5415 SendMessage(w, TCM_SETPADDING, 0, MAKELPARAM(cast(ushort)x, cast(ushort) 5802 SendMessage(w, TCM_SETPADDING, 0, MAKELPARAM(cast(ushort)x, cast(ushort)
5416 } 5803 }
5417 5804
5418 int TabCtrl_GetRowCount(HWND w) { 5805 int TabCtrl_GetRowCount(HWND w) {
5419 return SendMessage(w, TCM_GETROWCOUNT, 0, 0); | 5806 return cast(int) SendMessage(w, TCM_GETROWCOUNT, 0, 0);
5420 } 5807 }
5421 5808
5422 HWND TabCtrl_GetToolTips(HWND w) { 5809 HWND TabCtrl_GetToolTips(HWND w) {
5423 return cast(HWND) SendMessage(w, TCM_GETTOOLTIPS, 0, 0); 5810 return cast(HWND) SendMessage(w, TCM_GETTOOLTIPS, 0, 0);
5424 } 5811 }
5425 5812
5426 void TabCtrl_SetToolTips(HWND w, HWND t) { 5813 void TabCtrl_SetToolTips(HWND w, HWND t) {
5427 SendMessage(w, TCM_SETTOOLTIPS, cast(WPARAM) t, 0); 5814 SendMessage(w, TCM_SETTOOLTIPS, cast(WPARAM) t, 0);
5428 } 5815 }
5429 5816
5430 int TabCtrl_GetCurFocus(HWND w) { 5817 int TabCtrl_GetCurFocus(HWND w) {
5431 return SendMessage(w, TCM_GETCURFOCUS, 0, 0); | 5818 return cast(int) SendMessage(w, TCM_GETCURFOCUS, 0, 0);
5432 } 5819 }
5433 5820
5434 void TabCtrl_SetCurFocus(HWND w, int i) { 5821 void TabCtrl_SetCurFocus(HWND w, int i) {
5435 SendMessage(w, TCM_SETCURFOCUS, i, 0); 5822 SendMessage(w, TCM_SETCURFOCUS, i, 0);
5436 } 5823 }
5437 5824
5438 HIMAGELIST TabCtrl_GetImageList(HWND w) { 5825 HIMAGELIST TabCtrl_GetImageList(HWND w) {
................................................................................................................................................................................
5441 5828
5442 HIMAGELIST TabCtrl_SetImageList(HWND w, HIMAGELIST h) { 5829 HIMAGELIST TabCtrl_SetImageList(HWND w, HIMAGELIST h) {
5443 return cast(HIMAGELIST) SendMessage(w, TCM_SETIMAGELIST, 0, 5830 return cast(HIMAGELIST) SendMessage(w, TCM_SETIMAGELIST, 0,
5444 cast(LPARAM) h); 5831 cast(LPARAM) h);
5445 } 5832 }
5446 5833
5447 int TabCtrl_GetItemCount(HWND w) { 5834 int TabCtrl_GetItemCount(HWND w) {
5448 return SendMessage(w, TCM_GETITEMCOUNT, 0, 0); | 5835 return cast(int) SendMessage(w, TCM_GETITEMCOUNT, 0, 0);
5449 } 5836 }
5450 5837
5451 extern (Windows) BOOL _TrackMouseEvent(LPTRACKMOUSEEVENT); 5838 extern (Windows) BOOL _TrackMouseEvent(LPTRACKMOUSEEVENT);
5452 5839
5453 HTREEITEM TreeView_InsertItem(HWND w, LPTVINSERTSTRUCT i) { 5840 HTREEITEM TreeView_InsertItem(HWND w, LPTVINSERTSTRUCT i) {
5454 return cast(HTREEITEM) SendMessage(w, TVM_INSERTITEM, 0, cast(LPARAM) i) 5841 return cast(HTREEITEM) SendMessage(w, TVM_INSERTITEM, 0, cast(LPARAM) i)
5455 } 5842 }
................................................................................................................................................................................
5552 return TreeView_Select(w, i, TVGN_FIRSTVISIBLE); 5939 return TreeView_Select(w, i, TVGN_FIRSTVISIBLE);
5553 } 5940 }
5554 5941
5555 BOOL TreeView_GetItem(HWND w, LPTVITEM i) { 5942 BOOL TreeView_GetItem(HWND w, LPTVITEM i) {
5556 return cast(BOOL) SendMessage(w, TVM_GETITEM, 0, cast(LPARAM) i); 5943 return cast(BOOL) SendMessage(w, TVM_GETITEM, 0, cast(LPARAM) i);
5557 } 5944 }
5558 5945
5559 BOOL TreeView_SetItem(HWND w, CPtr!(TV_ITEM) i) { | 5946 BOOL TreeView_SetItem(HWND w, const(TV_ITEM)* i) {
5560 return cast(BOOL) SendMessage(w, TVM_SETITEM, 0, cast(LPARAM) i); 5947 return cast(BOOL) SendMessage(w, TVM_SETITEM, 0, cast(LPARAM) i);
5561 } 5948 }
5562 5949
5563 HWND TreeView_EditLabel(HWND w, HTREEITEM i) { 5950 HWND TreeView_EditLabel(HWND w, HTREEITEM i) {
5564 return cast(HWND) SendMessage(w, TVM_EDITLABEL, 0, cast(LPARAM) i); 5951 return cast(HWND) SendMessage(w, TVM_EDITLABEL, 0, cast(LPARAM) i);
5565 } 5952 }
5566 5953
................................................................................................................................................................................
5630 } 6017 }
5631 6018
5632 HCURSOR ListView_GetHotCursor(HWND w) { 6019 HCURSOR ListView_GetHotCursor(HWND w) {
5633 return cast(HCURSOR) SendMessage(w, LVM_GETHOTCURSOR, 0, 0); 6020 return cast(HCURSOR) SendMessage(w, LVM_GETHOTCURSOR, 0, 0);
5634 } 6021 }
5635 6022
5636 INT ListView_GetHotItem(HWND w) { 6023 INT ListView_GetHotItem(HWND w) {
5637 return SendMessage(w, LVM_GETHOTITEM, 0, 0); | 6024 return cast(INT) SendMessage(w, LVM_GETHOTITEM, 0, 0);
5638 } 6025 }
5639 6026
5640 BOOL ListView_GetSubItemRect(HWND w, int i, int isi, int c, LPRECT p) { 6027 BOOL ListView_GetSubItemRect(HWND w, int i, int isi, int c, LPRECT p) {
5641 return cast(BOOL) SendMessage(w, LVM_GETSUBITEMRECT, i, 6028 return cast(BOOL) SendMessage(w, LVM_GETSUBITEMRECT, i,
5642 p ? (p.left = c, p.top = isi, cast(LPARAM) p) : 0); 6029 p ? (p.left = c, p.top = isi, cast(LPARAM) p) : 0);
5643 } 6030 }
5644 6031
5645 HCURSOR ListView_SetHotCursor(HWND w, HCURSOR c) { 6032 HCURSOR ListView_SetHotCursor(HWND w, HCURSOR c) {
5646 return cast(HCURSOR) SendMessage(w, LVM_SETHOTCURSOR, 0, 6033 return cast(HCURSOR) SendMessage(w, LVM_SETHOTCURSOR, 0,
5647 cast(LPARAM) c); 6034 cast(LPARAM) c);
5648 } 6035 }
5649 6036
5650 INT ListView_SetHotItem(HWND w, INT i) { 6037 INT ListView_SetHotItem(HWND w, INT i) {
5651 return SendMessage(w, LVM_SETHOTITEM, cast(WPARAM) i, 0); | 6038 return cast(INT) SendMessage(w, LVM_SETHOTITEM, cast(WPARAM) i,
5652 } 6039 }
5653 6040
5654 DWORD ListView_SetIconSpacing(HWND w, int x, int y) { 6041 DWORD ListView_SetIconSpacing(HWND w, int x, int y) {
5655 return cast(DWORD) SendMessage(w, LVM_SETICONSPACING, 0, 6042 return cast(DWORD) SendMessage(w, LVM_SETICONSPACING, 0,
5656 MAKELONG(cast(ushort)x, cast(ushort)y)); 6043 MAKELONG(cast(ushort)x, cast(ushort)y));
5657 } 6044 }
5658 6045
5659 INT ListView_SubItemHitTest(HWND w, LPLVHITTESTINFO p) { 6046 INT ListView_SubItemHitTest(HWND w, LPLVHITTESTINFO p) {
5660 return SendMessage(w, LVM_SUBITEMHITTEST, 0, cast(LPARAM) p); | 6047 return cast(INT) SendMessage(w, LVM_SUBITEMHITTEST, 0, cast(LPAR
5661 } 6048 }
5662 6049
5663 BOOL ListView_SetItemCountEx(HWND w, int i, DWORD f) { 6050 BOOL ListView_SetItemCountEx(HWND w, int i, DWORD f) {
5664 return cast(BOOL) SendMessage(w, LVM_SETITEMCOUNT, i, cast(LPARA 6051 return cast(BOOL) SendMessage(w, LVM_SETITEMCOUNT, i, cast(LPARA
5665 } 6052 }
5666 6053
5667 extern (Windows) { 6054 extern (Windows) {
5668 WINBOOL ImageList_SetImageCount(HIMAGELIST, UINT); 6055 WINBOOL ImageList_SetImageCount(HIMAGELIST, UINT);
5669 WINBOOL ImageList_Copy(HIMAGELIST, int, HIMAGELIST, int, UINT); 6056 WINBOOL ImageList_Copy(HIMAGELIST, int, HIMAGELIST, int, UINT);
5670 WINBOOL ImageList_DrawIndirect(IMAGELISTDRAWPARAMS*); 6057 WINBOOL ImageList_DrawIndirect(IMAGELISTDRAWPARAMS*);
5671 } 6058 }
5672 6059
5673 int TabCtrl_SetMinTabWidth(HWND hwnd, int x) { 6060 int TabCtrl_SetMinTabWidth(HWND hwnd, int x) {
5674 return SendMessage(hwnd, TCM_SETMINTABWIDTH, 0, x); | 6061 return cast(int) SendMessage(hwnd, TCM_SETMINTABWIDTH, 0, x);
5675 } 6062 }
5676 6063
5677 VOID TabCtrl_DeselectAll(HWND hwnd, UINT fExcludeFocus) { 6064 VOID TabCtrl_DeselectAll(HWND hwnd, UINT fExcludeFocus) {
5678 SendMessage(hwnd, TCM_DESELECTALL, fExcludeFocus, 0); 6065 SendMessage(hwnd, TCM_DESELECTALL, fExcludeFocus, 0);
5679 } 6066 }
5680 6067
5681 HWND TreeView_GetToolTips(HWND w) { 6068 HWND TreeView_GetToolTips(HWND w) {
................................................................................................................................................................................
5721 } 6108 }
5722 6109
5723 DWORD ListView_GetHoverTime(HWND w) { 6110 DWORD ListView_GetHoverTime(HWND w) {
5724 return cast(DWORD) SendMessage(w, LVM_GETHOVERTIME, 0, 0); 6111 return cast(DWORD) SendMessage(w, LVM_GETHOVERTIME, 0, 0);
5725 } 6112 }
5726 6113
5727 INT ListView_GetSelectionMark(HWND w) { 6114 INT ListView_GetSelectionMark(HWND w) {
5728 return SendMessage(w, LVM_GETSELECTIONMARK, 0, 0); | 6115 return cast(INT) SendMessage(w, LVM_GETSELECTIONMARK, 0, 0);
5729 } 6116 }
5730 6117
5731 INT ListView_SetSelectionMark(HWND w, INT i) { 6118 INT ListView_SetSelectionMark(HWND w, INT i) {
5732 return SendMessage(w, LVM_SETSELECTIONMARK, 0, cast(LPARAM) i); | 6119 return cast(INT) SendMessage(w, LVM_SETSELECTIONMARK, 0, cast(LP
5733 } 6120 }
5734 6121
5735 HWND ListView_SetToolTips(HWND w, HWND n) { 6122 HWND ListView_SetToolTips(HWND w, HWND n) {
5736 return cast(HWND) SendMessage(w, LVM_SETTOOLTIPS, cast(WPARAM) n 6123 return cast(HWND) SendMessage(w, LVM_SETTOOLTIPS, cast(WPARAM) n
5737 } 6124 }
5738 6125
5739 HWND ListView_GetToolTips(HWND w) { 6126 HWND ListView_GetToolTips(HWND w) {
................................................................................................................................................................................
5776 } 6163 }
5777 6164
5778 COLORREF TreeView_GetInsertMarkColor(HWND w) { 6165 COLORREF TreeView_GetInsertMarkColor(HWND w) {
5779 return cast(COLORREF) SendMessage(w, TVM_GETINSERTMARKCOLOR, 0, 6166 return cast(COLORREF) SendMessage(w, TVM_GETINSERTMARKCOLOR, 0,
5780 } 6167 }
5781 6168
5782 int TreeView_GetItemHeight(HWND w) { 6169 int TreeView_GetItemHeight(HWND w) {
5783 return SendMessage(w, TVM_GETITEMHEIGHT, 0, 0); | 6170 return cast(int) SendMessage(w, TVM_GETITEMHEIGHT, 0, 0);
5784 } 6171 }
5785 6172
5786 UINT TreeView_GetScrollTime(HWND w) { 6173 UINT TreeView_GetScrollTime(HWND w) {
5787 return cast(UINT) SendMessage(w, TVM_GETSCROLLTIME, 0, 0); 6174 return cast(UINT) SendMessage(w, TVM_GETSCROLLTIME, 0, 0);
5788 } 6175 }
5789 6176
5790 COLORREF TreeView_GetTextColor(HWND w) { 6177 COLORREF TreeView_GetTextColor(HWND w) {
................................................................................................................................................................................
5798 6185
5799 COLORREF TreeView_SetInsertMarkColor(HWND w, COLORREF c) { 6186 COLORREF TreeView_SetInsertMarkColor(HWND w, COLORREF c) {
5800 return cast(COLORREF) SendMessage(w, TVM_SETINSERTMARKCOLOR, 0, 6187 return cast(COLORREF) SendMessage(w, TVM_SETINSERTMARKCOLOR, 0,
5801 cast(LPARAM) c); 6188 cast(LPARAM) c);
5802 } 6189 }
5803 6190
5804 int TreeView_SetItemHeight(HWND w, SHORT h) { 6191 int TreeView_SetItemHeight(HWND w, SHORT h) {
5805 return SendMessage(w, TVM_SETITEMHEIGHT, cast(WPARAM) h, 0); | 6192 return cast(int) SendMessage(w, TVM_SETITEMHEIGHT, cast(WPARAM)
5806 } 6193 }
5807 6194
5808 UINT TreeView_SetScrollTime(HWND w, UINT t) { 6195 UINT TreeView_SetScrollTime(HWND w, UINT t) {
5809 return cast(UINT) SendMessage(w, TVM_SETSCROLLTIME, cast(WPARAM) 6196 return cast(UINT) SendMessage(w, TVM_SETSCROLLTIME, cast(WPARAM)
5810 } 6197 }
5811 6198
5812 COLORREF TreeView_SetTextColor(HWND w, COLORREF c) { 6199 COLORREF TreeView_SetTextColor(HWND w, COLORREF c) {
................................................................................................................................................................................
5868 // MinGW: These two are not in the DLL 6255 // MinGW: These two are not in the DLL
5869 void CommandBar_InsertButton(HWND hwnd, int i, LPTBBUTTON lptbbutton) { 6256 void CommandBar_InsertButton(HWND hwnd, int i, LPTBBUTTON lptbbutton) {
5870 SendMessage(hwnd, TB_INSERTBUTTON, i, lptbbutton); 6257 SendMessage(hwnd, TB_INSERTBUTTON, i, lptbbutton);
5871 } 6258 }
5872 alias DestroyWindow CommandBar_Destroy; 6259 alias DestroyWindow CommandBar_Destroy;
5873 +/ 6260 +/
5874 //#endif // _WIN32_WCE 6261 //#endif // _WIN32_WCE
> 6262
> 6263
> 6264 static if (_WIN32_WINNT >= 0x501) {
> 6265 struct EDITBALLOONTIP
> 6266 {
> 6267 DWORD cbStruct;
> 6268 LPCWSTR pszTitle;
> 6269 LPCWSTR pszText;
> 6270 INT ttiIcon;
> 6271 }
> 6272 alias EDITBALLOONTIP* PEDITBALLOONTIP;
> 6273
> 6274 const EM_SETCUEBANNER = ECM_FIRST + 1;
> 6275 const EM_GETCUEBANNER = ECM_FIRST + 2;
> 6276 const EM_SHOWBALLOONTIP = ECM_FIRST + 3;
> 6277 const EM_HIDEBALLOONTIP = ECM_FIRST + 4;
> 6278 }
> 6279
> 6280 static if (_WIN32_WINNT >= 0x600) {
> 6281 const EM_SETHILITE = ECM_FIRST + 5;
> 6282 const EM_GETHILITE = ECM_FIRST + 6;
> 6283 }