Differences From Artifact [b45c73c216c900bc]:
- File
src/win32/winuser.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 [71091da201e7d6e2]:
- File
src/win32/winuser.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 4 * Windows API header module *
5 5 * *
6 6 * Translated from MinGW Windows headers *
7 7 * *
8 8 * Placed into public domain *
9 9 \***********************************************************************/
10 10 module win32.winuser;
11 -pragma(lib, "user32.lib");
11 +pragma(lib, "user32");
12 12
13 13 // Conversion Notes:
14 14 // The following macros were for win16 only, and are not included in this file:
15 15 //#define EnumTaskWindows(h, f, p) EnumThreadWindows((DWORD)h, f, p)
16 16 //#define PostAppMessageA(t, m, w, l) PostThreadMessageA((DWORD)t, m, w, l)
17 17 //#define PostAppMessageW(t, m, w, l) PostThreadMessageW((DWORD)t, m, w, l)
18 18 //#define GetSysModalWindow() (NULL)
................................................................................
26 26 // FIXME: clean up Windows version support
27 27
28 28 template MAKEINTATOM_T(int i) {
29 29 const LPTSTR MAKEINTATOM_T = cast(LPTSTR) i;
30 30 }
31 31
32 32 const WC_DIALOG = MAKEINTATOM_T!(0x8002);
33 +
34 +const FAPPCOMMAND_MOUSE = 0x8000;
35 +const FAPPCOMMAND_KEY = 0;
36 +const FAPPCOMMAND_OEM = 0x1000;
37 +const FAPPCOMMAND_MASK = 0xF000;
33 38
34 39 const FVIRTKEY = 1;
35 40 const FNOINVERT = 2;
36 41 const FSHIFT = 4;
37 42 const FCONTROL = 8;
38 43 const FALT = 16;
39 44
................................................................................
82 87 HCBT_CLICKSKIPPED,
83 88 HCBT_KEYSKIPPED,
84 89 HCBT_SYSCOMMAND,
85 90 HCBT_SETFOCUS // = 9
86 91 }
87 92
88 93 enum {
89 - CF_TEXT = 1,
94 + CF_TEXT = 0x0001,
90 95 CF_BITMAP,
91 96 CF_METAFILEPICT,
92 97 CF_SYLK,
93 98 CF_DIF,
94 99 CF_TIFF,
95 100 CF_OEMTEXT,
96 101 CF_DIB,
................................................................................
98 103 CF_PENDATA,
99 104 CF_RIFF,
100 105 CF_WAVE,
101 106 CF_UNICODETEXT,
102 107 CF_ENHMETAFILE,
103 108 CF_HDROP,
104 109 CF_LOCALE,
105 - CF_MAX, // = 17
106 - CF_OWNERDISPLAY = 128,
110 + CF_MAX, // = 0x0011
111 + CF_OWNERDISPLAY = 0x0080,
107 112 CF_DSPTEXT,
108 113 CF_DSPBITMAP,
109 - CF_DSPMETAFILEPICT, // = 131
110 - CF_DSPENHMETAFILE = 142,
111 - CF_PRIVATEFIRST = 512,
112 - CF_PRIVATELAST = 767,
113 - CF_GDIOBJFIRST = 768,
114 - CF_GDIOBJLAST = 1023
114 + CF_DSPMETAFILEPICT, // = 0x0083
115 + CF_DSPENHMETAFILE = 0x008E,
116 + CF_PRIVATEFIRST = 0x0200,
117 + CF_PRIVATELAST = 0x02FF,
118 + CF_GDIOBJFIRST = 0x0300,
119 + CF_GDIOBJLAST = 0x03FF
115 120 }
116 121
117 122 const HKL_PREV = 0;
118 123 const HKL_NEXT = 1;
119 124
120 125 const KLF_ACTIVATE = 1;
121 126 const KLF_SUBSTITUTE_OK = 2;
................................................................................
165 170 const BSF_IGNORECURRENTTASK = 0x00000002;
166 171 const BSF_FLUSHDISK = 0x00000004;
167 172 const BSF_NOHANG = 0x00000008;
168 173 const BSF_POSTMESSAGE = 0x00000010;
169 174 const BSF_FORCEIFHUNG = 0x00000020;
170 175 const BSF_NOTIMEOUTIFNOTHUNG = 0x00000040;
171 176
172 -static if (_WIN32_WINNT >= 0x500) {
173 - const BSF_ALLOWSFW = 0x00000080;
174 - const BSF_SENDNOTIFYMESSAGE = 0x00000100;
175 -}
177 +const BSF_ALLOWSFW = 0x00000080;
178 +const BSF_SENDNOTIFYMESSAGE = 0x00000100;
179 +
176 180 static if (_WIN32_WINNT >= 0x501) {
177 181 const BSF_RETURNHDESK = 0x00000200;
178 182 const BSF_LUID = 0x00000400;
179 183 }
180 184
181 185 const BROADCAST_QUERY_DENY = 1112363332;
182 186 const DWORD ENUM_CURRENT_SETTINGS = -1;
................................................................................
447 451
448 452 const DC_ACTIVE = 0x00000001;
449 453 const DC_SMALLCAP = 0x00000002;
450 454 const DC_ICON = 0x00000004;
451 455 const DC_TEXT = 0x00000008;
452 456 const DC_INBUTTON = 0x00000010;
453 457
454 -static if (WINVER >= 0x500) {
455 -const DC_GRADIENT=0x00000020;
456 -}
458 +const DC_GRADIENT = 0x00000020;
457 459 static if (_WIN32_WINNT >= 0x501) {
458 -const DC_BUTTONS=0x00001000;
460 + const DC_BUTTONS = 0x00001000;
459 461 }
460 462
461 463 // Where are these documented?
462 464 //const DC_CAPTION = DC_ICON|DC_TEXT|DC_BUTTONS;
463 465 //const DC_NC = DC_CAPTION|DC_FRAME;
464 466
465 467 const BDR_RAISEDOUTER = 1;
................................................................................
492 494 const BF_DIAGONAL_ENDBOTTOMRIGHT = BF_DIAGONAL|BF_BOTTOM|BF_RIGHT;
493 495 const BF_MIDDLE = 0x800;
494 496 const BF_SOFT = 0x1000;
495 497 const BF_ADJUST = 0x2000;
496 498 const BF_FLAT = 0x4000;
497 499 const BF_MONO = 0x8000;
498 500
499 -const DFC_CAPTION=1;
500 -const DFC_MENU=2;
501 -const DFC_SCROLL=3;
502 -const DFC_BUTTON=4;
503 -static if (WINVER >= 0x500) {
504 -const DFC_POPUPMENU=5;
505 -}// WINVER >= 0x500
501 +enum {
502 + DFC_CAPTION = 1,
503 + DFC_MENU,
504 + DFC_SCROLL,
505 + DFC_BUTTON,
506 + DFC_POPUPMENU // = 5
507 +}
506 508
507 509 const DFCS_CAPTIONCLOSE = 0;
508 510 const DFCS_CAPTIONMIN = 1;
509 511 const DFCS_CAPTIONMAX = 2;
510 512 const DFCS_CAPTIONRESTORE = 3;
511 513 const DFCS_CAPTIONHELP = 4;
512 514
................................................................................
528 530 const DFCS_BUTTONRADIOMASK = 2;
529 531 const DFCS_BUTTONRADIO = 4;
530 532 const DFCS_BUTTON3STATE = 8;
531 533 const DFCS_BUTTONPUSH = 16;
532 534 const DFCS_INACTIVE = 256;
533 535 const DFCS_PUSHED = 512;
534 536 const DFCS_CHECKED = 1024;
535 -static if (WINVER >= 0x500) {
536 -const DFCS_TRANSPARENT = 0x800;
537 -const DFCS_HOT = 0x1000;
537 +static if (_WIN32_WINNT >= 0x500) {
538 + const DFCS_TRANSPARENT = 0x800;
539 + const DFCS_HOT = 0x1000;
538 540 }
539 541 const DFCS_ADJUSTRECT = 0x2000;
540 542 const DFCS_FLAT = 0x4000;
541 543 const DFCS_MONO = 0x8000;
542 544
543 545 enum {
544 546 DST_COMPLEX = 0,
................................................................................
705 707 const IDC_UPARROW = MAKEINTRESOURCE_T!(32516);
706 708 const IDC_SIZENWSE = MAKEINTRESOURCE_T!(32642);
707 709 const IDC_SIZENESW = MAKEINTRESOURCE_T!(32643);
708 710 const IDC_SIZEWE = MAKEINTRESOURCE_T!(32644);
709 711 const IDC_SIZENS = MAKEINTRESOURCE_T!(32645);
710 712 const IDC_SIZEALL = MAKEINTRESOURCE_T!(32646);
711 713 const IDC_NO = MAKEINTRESOURCE_T!(32648);
712 -const IDC_HAND = MAKEINTRESOURCE_T!(32649);
714 +static if (_WIN32_WINNT >= 0x500) {
715 + const IDC_HAND = MAKEINTRESOURCE_T!(32649);
716 +}
713 717 const IDC_APPSTARTING = MAKEINTRESOURCE_T!(32650);
714 718 const IDC_HELP = MAKEINTRESOURCE_T!(32651);
715 719 const IDC_ICON = MAKEINTRESOURCE_T!(32641);
716 720 const IDC_SIZE = MAKEINTRESOURCE_T!(32640);
717 721 const IDI_APPLICATION = MAKEINTRESOURCE_T!(32512);
718 722 const IDI_HAND = MAKEINTRESOURCE_T!(32513);
719 723 const IDI_QUESTION = MAKEINTRESOURCE_T!(32514);
720 724 const IDI_EXCLAMATION = MAKEINTRESOURCE_T!(32515);
721 725 const IDI_ASTERISK = MAKEINTRESOURCE_T!(32516);
722 726 const IDI_WINLOGO = MAKEINTRESOURCE_T!(32517);
727 +static if (_WIN32_WINNT >= 0x600) {
728 + const IDI_SHIELD = MAKEINTRESOURCE_T!(32518);
729 +}
730 +
723 731 const IDI_WARNING = IDI_EXCLAMATION;
724 732 const IDI_ERROR = IDI_HAND;
725 733 const IDI_INFORMATION = IDI_ASTERISK;
734 +
735 +static if(_WIN32_WINNT >= 0x500) {
736 +
737 +const MNGOF_TOPGAP = 0x00000001;
738 +const MNGOF_BOTTOMGAP = 0x00000002;
739 +const MNGO_NOINTERFACE = 0x00000000;
740 +const MNGO_NOERROR = 0x00000001;
741 +
742 +}
726 743
727 744 const MIIM_STATE = 1;
728 745 const MIIM_ID = 2;
729 746 const MIIM_SUBMENU = 4;
730 747 const MIIM_CHECKMARKS = 8;
731 748 const MIIM_TYPE = 16;
732 749 const MIIM_DATA = 32;
733 750 const MIIM_STRING = 64;
734 751 const MIIM_BITMAP = 128;
735 752 const MIIM_FTYPE = 256;
736 753
737 -static if (WINVER >= 0x500) {
754 +static if (_WIN32_WINNT >= 0x500) {
738 755
739 -const MIM_MAXHEIGHT = 1;
740 -const MIM_BACKGROUND = 2;
741 -const MIM_HELPID = 4;
742 -const MIM_MENUDATA = 8;
743 -const MIM_STYLE = 16;
744 -const MIM_APPLYTOSUBMENUS = 0x80000000L;
756 + const MIM_MAXHEIGHT = 1;
757 + const MIM_BACKGROUND = 2;
758 + const MIM_HELPID = 4;
759 + const MIM_MENUDATA = 8;
760 + const MIM_STYLE = 16;
761 + const MIM_APPLYTOSUBMENUS = 0x80000000L;
745 762
746 -const MNS_NOCHECK = 0x80000000;
747 -const MNS_MODELESS = 0x40000000;
748 -const MNS_DRAGDROP = 0x20000000;
749 -const MNS_AUTODISMISS = 0x10000000;
750 -const MNS_NOTIFYBYPOS = 0x08000000;
751 -const MNS_CHECKORBMP = 0x04000000;
763 + const MNS_NOCHECK = 0x80000000;
764 + const MNS_MODELESS = 0x40000000;
765 + const MNS_DRAGDROP = 0x20000000;
766 + const MNS_AUTODISMISS = 0x10000000;
767 + const MNS_NOTIFYBYPOS = 0x08000000;
768 + const MNS_CHECKORBMP = 0x04000000;
752 769
753 770 }
754 771
755 772 const MFT_BITMAP = 4;
756 773 const MFT_MENUBARBREAK = 32;
757 774 const MFT_MENUBREAK = 64;
758 775 const MFT_OWNERDRAW = 256;
................................................................................
814 831 const MB_DEFBUTTON3 = 512;
815 832 const MB_DEFBUTTON4 = 0x300;
816 833 const MB_ICONINFORMATION = 64;
817 834 const MB_ICONSTOP = 16;
818 835 const MB_OKCANCEL = 1;
819 836 const MB_RETRYCANCEL = 5;
820 837
821 -static if (_WIN32_WINNT_ONLY) {
822 - static if (_WIN32_WINNT >= 0x400) {
823 - const MB_SERVICE_NOTIFICATION = 0x00200000;
824 - } else {
825 - const MB_SERVICE_NOTIFICATION = 0x00040000;
826 - }
827 - const MB_SERVICE_NOTIFICATION_NT3X = 0x00040000;
828 -}
838 +const MB_SERVICE_NOTIFICATION = 0x00200000;
839 +const MB_SERVICE_NOTIFICATION_NT3X = 0x00040000;
829 840
830 841 const MB_SETFOREGROUND = 0x10000;
831 842 const MB_SYSTEMMODAL = 4096;
832 843 const MB_TASKMODAL = 0x2000;
833 844 const MB_YESNO = 4;
834 845 const MB_YESNOCANCEL = 3;
835 846 const MB_ICONMASK = 240;
836 847 const MB_DEFMASK = 3840;
837 848 const MB_MODEMASK = 0x00003000;
838 849 const MB_MISCMASK = 0x0000C000;
839 850 const MB_NOFOCUS = 0x00008000;
840 851 const MB_TYPEMASK = 15;
841 852 // [Redefined] MB_TOPMOST=0x40000
842 -static if (WINVER >= 0x500) {
853 +static if (_WIN32_WINNT >= 0x500) {
843 854 const MB_CANCELTRYCONTINUE=6;
844 855 }
845 856
846 857 const IDOK = 1;
847 858 const IDCANCEL = 2;
848 859 const IDABORT = 3;
849 860 const IDRETRY = 4;
850 861 const IDIGNORE = 5;
851 862 const IDYES = 6;
852 863 const IDNO = 7;
853 -static if (WINVER >= 0x400) {
854 -const IDCLOSE = 8;
855 -const IDHELP = 9;
864 +static if (_WIN32_WINNT >= 0x400) {
865 + const IDCLOSE = 8;
866 + const IDHELP = 9;
856 867 }
857 -static if (WINVER >= 0x500) {
858 -const IDTRYAGAIN = 10;
859 -const IDCONTINUE = 11;
868 +static if (_WIN32_WINNT >= 0x500) {
869 + const IDTRYAGAIN = 10;
870 + const IDCONTINUE = 11;
860 871 }
861 872
862 873 const GWL_EXSTYLE = -20;
863 874 const GWL_STYLE = -16;
864 875 const GWL_WNDPROC = -4;
865 876 const GWLP_WNDPROC = -4;
866 877 const GWL_HINSTANCE = -6;
................................................................................
1142 1153 const OIC_WINLOGO = 32517;
1143 1154 const OIC_WARNING = OIC_BANG;
1144 1155 const OIC_ERROR = OIC_HAND;
1145 1156 const OIC_INFORMATION = OIC_NOTE;
1146 1157
1147 1158 const HELPINFO_MENUITEM = 2;
1148 1159 const HELPINFO_WINDOW = 1;
1160 +
1161 +static if (_WIN32_WINNT >= 0x501) {
1162 +
1163 +const WTS_CONSOLE_CONNECT = 0x1;
1164 +const WTS_CONSOLE_DISCONNECT = 0x2;
1165 +const WTS_REMOTE_CONNECT = 0x3;
1166 +const WTS_REMOTE_DISCONNECT = 0x4;
1167 +const WTS_SESSION_LOGON = 0x5;
1168 +const WTS_SESSION_LOGOFF = 0x6;
1169 +const WTS_SESSION_LOCK = 0x7;
1170 +const WTS_SESSION_UNLOCK = 0x8;
1171 +const WTS_SESSION_REMOTE_CONTROL = 0x9;
1172 +
1173 +}
1149 1174
1150 1175 const MSGF_DIALOGBOX = 0;
1151 1176 const MSGF_MESSAGEBOX = 1;
1152 1177 const MSGF_MENU = 2;
1153 1178 const MSGF_MOVE = 3;
1154 1179 const MSGF_SIZE = 4;
1155 1180 const MSGF_SCROLLBAR = 5;
................................................................................
1167 1192 const MOUSEEVENTF_WHEEL = 0x0800;
1168 1193 const MOUSEEVENTF_ABSOLUTE = 32768;
1169 1194
1170 1195 const PM_NOREMOVE = 0;
1171 1196 const PM_REMOVE = 1;
1172 1197 const PM_NOYIELD = 2;
1173 1198
1174 -static if (WINVER >= 0x500) {
1199 +static if (_WIN32_WINNT >= 0x500) {
1175 1200 const PM_QS_INPUT = (QS_INPUT << 16);
1176 1201 const PM_QS_POSTMESSAGE = ((QS_POSTMESSAGE|QS_HOTKEY|QS_TIMER) << 16);
1177 1202 const PM_QS_PAINT = (QS_PAINT << 16);
1178 1203 const PM_QS_SENDMESSAGE = (QS_SENDMESSAGE << 16);
1179 1204 }
1180 1205 const HWND
1181 1206 HWND_BROADCAST = cast(HWND)0xffff,
................................................................................
1222 1247 const SWP_SHOWWINDOW = 64;
1223 1248 const SWP_NOOWNERZORDER = 512;
1224 1249 const SWP_NOREPOSITION = 512;
1225 1250 const SWP_NOSENDCHANGING = 1024;
1226 1251 const SWP_DEFERERASE = 8192;
1227 1252 const SWP_ASYNCWINDOWPOS = 16384;
1228 1253
1229 -const HSHELL_ACTIVATESHELLWINDOW = 3;
1230 -const HSHELL_GETMINRECT = 5;
1231 -const HSHELL_LANGUAGE = 8;
1232 -const HSHELL_REDRAW = 6;
1233 -const HSHELL_TASKMAN = 7;
1234 -const HSHELL_WINDOWACTIVATED = 4;
1235 -const HSHELL_WINDOWCREATED = 1;
1236 -const HSHELL_WINDOWDESTROYED = 2;
1237 -const HSHELL_FLASH = 32774;
1254 +enum { // passed variously as int or WPARAM
1255 + HSHELL_WINDOWCREATED = 1,
1256 + HSHELL_WINDOWDESTROYED,
1257 + HSHELL_ACTIVATESHELLWINDOW,
1258 + HSHELL_WINDOWACTIVATED,
1259 + HSHELL_GETMINRECT,
1260 + HSHELL_REDRAW,
1261 + HSHELL_TASKMAN,
1262 + HSHELL_LANGUAGE, // = 8
1263 + HSHELL_ENDTASK = 10,
1264 + HSHELL_ACCESSIBILITYSTATE,
1265 + HSHELL_APPCOMMAND, // = 12
1266 + HSHELL_RUDEAPPACTIVATED = 32772,
1267 + HSHELL_FLASH = 32774
1268 +}
1238 1269
1239 -static if (WINVER >= 0x500) {
1240 -const SPI_SETFOREGROUNDLOCKTIMEOUT=0x2001;
1241 -const SPI_GETFOREGROUNDLOCKTIMEOUT=0x2000;
1270 +static if (_WIN32_WINNT >= 0x501) {
1271 + enum {
1272 + HSHELL_WINDOWREPLACED = 13,
1273 + HSHELL_WINDOWREPLACING
1274 + }
1242 1275 }
1276 +
1277 +enum SPI_SETFOREGROUNDLOCKTIMEOUT = 0x2001;
1278 +enum SPI_GETFOREGROUNDLOCKTIMEOUT = 0x2000;
1243 1279
1244 1280 const SPI_GETACCESSTIMEOUT=60;
1245 1281 const SPI_GETACTIVEWNDTRKTIMEOUT=8194;
1246 1282 const SPI_GETANIMATION=72;
1247 1283 const SPI_GETBEEP=1;
1248 1284 const SPI_GETBORDER=5;
1249 1285 const SPI_GETDEFAULTINPUTLANG=89;
................................................................................
1331 1367 const SPI_SETSHOWSOUNDS=57;
1332 1368 const SPI_SETSOUNDSENTRY=65;
1333 1369 const SPI_SETSTICKYKEYS=59;
1334 1370 const SPI_SETTOGGLEKEYS=53;
1335 1371 const SPI_SETWHEELSCROLLLINES=105;
1336 1372 const SPI_SETWORKAREA=47;
1337 1373
1338 -static if (WINVER >= 0x500) {
1374 +static if (_WIN32_WINNT >= 0x500) {
1339 1375 const SPI_GETDESKWALLPAPER=115;
1340 1376 const SPI_GETMOUSESPEED=112;
1341 1377 const SPI_GETSCREENSAVERRUNNING=114;
1342 1378 const SPI_GETACTIVEWINDOWTRACKING=0x1000;
1343 1379 const SPI_GETACTIVEWNDTRKZORDER=0x100C;
1344 1380 const SPI_GETCOMBOBOXANIMATION=0x1004;
1345 1381 const SPI_GETCURSORSHADOW=0x101A;
................................................................................
1374 1410 const SPIF_SENDWININICHANGE=2;
1375 1411 const SPIF_SENDCHANGE=2;
1376 1412 // [Redefined] ATF_ONOFFFEEDBACK=2
1377 1413 // [Redefined] ATF_TIMEOUTON=1
1378 1414 const WM_APP=32768;
1379 1415 const WM_ACTIVATE=6;
1380 1416 const WM_ACTIVATEAPP=28;
1381 -// FIXME/CHECK: Are WM_AFX {FIRST, LAST} valid for WINVER < 0x400?
1417 +// FIXME/CHECK: Are WM_AFX {FIRST, LAST} valid for _WIN32_WINNT < 0x400?
1382 1418 const WM_AFXFIRST=864;
1383 1419 const WM_AFXLAST=895;
1384 1420 const WM_ASKCBFORMATNAME=780;
1385 1421 const WM_CANCELJOURNAL=75;
1386 1422 const WM_CANCELMODE=31;
1387 1423 const WM_CAPTURECHANGED=533;
1388 1424 const WM_CHANGECBCHAIN=781;
................................................................................
1457 1493 const WM_MDIMAXIMIZE=549;
1458 1494 const WM_MDINEXT=548;
1459 1495 const WM_MDIREFRESHMENU=564;
1460 1496 const WM_MDIRESTORE=547;
1461 1497 const WM_MDISETMENU=560;
1462 1498 const WM_MDITILE=550;
1463 1499 const WM_MEASUREITEM=44;
1464 -static if (WINVER >= 0x500) {
1465 -const WM_UNINITMENUPOPUP=0x0125;
1466 -const WM_MENURBUTTONUP=290;
1467 -const WM_MENUCOMMAND=0x0126;
1468 -const WM_MENUGETOBJECT=0x0124;
1469 -const WM_MENUDRAG=0x0123;
1500 +static if (_WIN32_WINNT >= 0x500) {
1501 + const WM_UNINITMENUPOPUP=0x0125;
1502 + const WM_MENURBUTTONUP=290;
1503 + const WM_MENUCOMMAND=0x0126;
1504 + const WM_MENUGETOBJECT=0x0124;
1505 + const WM_MENUDRAG=0x0123;
1470 1506 }
1471 1507
1472 1508 static if (_WIN32_WINNT >= 0x500) {
1473 1509
1474 1510 enum {
1475 1511 WM_CHANGEUISTATE = 0x0127,
1476 1512 WM_UPDATEUISTATE = 0x0128,
................................................................................
1572 1608 const WM_STYLECHANGING=124;
1573 1609 const WM_SYSCHAR=262;
1574 1610 const WM_SYSCOLORCHANGE=21;
1575 1611 const WM_SYSCOMMAND=274;
1576 1612 const WM_SYSDEADCHAR=263;
1577 1613 const WM_SYSKEYDOWN=260;
1578 1614 const WM_SYSKEYUP=261;
1615 +static if(_WIN32_WINNT >= 0x501) {
1616 +const WM_TABLET_FIRST=704;
1617 +const WM_TABLET_LAST=735;
1618 +}
1579 1619 const WM_TCARD=82;
1580 1620 const WM_THEMECHANGED=794;
1581 1621 const WM_TIMECHANGE=30;
1582 1622 const WM_TIMER=275;
1583 1623 const WM_UNDO=772;
1584 1624 const WM_USER=1024;
1585 1625 const WM_USERCHANGED=84;
1586 1626 const WM_VKEYTOITEM=46;
1587 1627 const WM_VSCROLL=277;
1588 1628 const WM_VSCROLLCLIPBOARD=778;
1589 1629 const WM_WINDOWPOSCHANGED=71;
1590 1630 const WM_WINDOWPOSCHANGING=70;
1591 1631 const WM_WININICHANGE=26;
1632 +static if(_WIN32_WINNT >= 0x501) {
1633 +const WM_WTSSESSION_CHANGE=689;
1634 +}
1592 1635 const WM_INPUT=255;
1593 1636 const WM_KEYFIRST=256;
1637 +static if(_WIN32_WINNT >= 0x501) {
1638 +const WM_UNICHAR=265;
1639 +const WM_KEYLAST=265;
1640 +const UNICODE_NOCHAR=0xFFFF;
1641 +} else {
1594 1642 const WM_KEYLAST=264;
1643 +}
1595 1644 const WM_SYNCPAINT=136;
1596 1645 const WM_MOUSEACTIVATE=33;
1597 1646 const WM_MOUSEMOVE=512;
1598 1647 const WM_LBUTTONDOWN=513;
1599 1648 const WM_LBUTTONUP=514;
1600 1649 const WM_LBUTTONDBLCLK=515;
1601 1650 const WM_RBUTTONDOWN=516;
................................................................................
1602 1651 const WM_RBUTTONUP=517;
1603 1652 const WM_RBUTTONDBLCLK=518;
1604 1653 const WM_MBUTTONDOWN=519;
1605 1654 const WM_MBUTTONUP=520;
1606 1655 const WM_MBUTTONDBLCLK=521;
1607 1656 const WM_MOUSEWHEEL=522;
1608 1657 const WM_MOUSEFIRST=512;
1609 -static if (_WIN32_WINNT >= 0x500) {
1658 +static if (_WIN32_WINNT >= 0x600) {
1659 +const WM_XBUTTONDOWN=523;
1660 +const WM_XBUTTONUP=524;
1661 +const WM_XBUTTONDBLCLK=525;
1662 +const WM_MOUSEHWHEEL=526;
1663 +const WM_MOUSELAST=526;
1664 +}
1665 +else static if (_WIN32_WINNT >= 0x500) {
1610 1666 const WM_XBUTTONDOWN=523;
1611 1667 const WM_XBUTTONUP=524;
1612 1668 const WM_XBUTTONDBLCLK=525;
1613 1669 const WM_MOUSELAST=525;
1614 1670 } else {
1615 1671 const WM_MOUSELAST=522;
1616 1672 }
................................................................................
1628 1684 }
1629 1685 const BM_CLICK=245;
1630 1686 const BM_GETCHECK=240;
1631 1687 const BM_GETIMAGE=246;
1632 1688 const BM_GETSTATE=242;
1633 1689 const BM_SETCHECK=241;
1634 1690 const BM_SETIMAGE=247;
1691 +static if(_WIN32_WINNT >= 0x600) {
1692 + const BM_SETDONTCLICK = 248;
1693 +}
1635 1694 const BM_SETSTATE=243;
1636 1695 const BM_SETSTYLE=244;
1637 1696 const BN_CLICKED=0;
1638 1697 const BN_DBLCLK=5;
1639 1698 const BN_DISABLE=4;
1640 1699 const BN_DOUBLECLICKED=5;
1641 1700 const BN_HILITE=2;
................................................................................
1675 1734 const CB_SETEXTENDEDUI=341;
1676 1735 const CB_SETHORIZONTALEXTENT=350;
1677 1736 const CB_SETITEMDATA=337;
1678 1737 const CB_SETITEMHEIGHT=339;
1679 1738 const CB_SETLOCALE=345;
1680 1739 const CB_SETTOPINDEX=348;
1681 1740 const CB_SHOWDROPDOWN=335;
1741 +
1742 +static if(_WIN32_WINNT >= 0x501) {
1743 +const CB_GETCOMBOBOXINFO = 356;
1744 +}
1682 1745
1683 1746 const CBN_CLOSEUP=8;
1684 1747 const CBN_DBLCLK=2;
1685 1748 const CBN_DROPDOWN=7;
1686 1749 const CBN_EDITCHANGE=5;
1687 1750 const CBN_EDITUPDATE=6;
1688 1751 const CBN_ERRSPACE=(-1);
................................................................................
1725 1788 const EM_SETREADONLY=207;
1726 1789 const EM_SETRECT=179;
1727 1790 const EM_SETRECTNP=180;
1728 1791 const EM_SETSEL=177;
1729 1792 const EM_SETTABSTOPS=203;
1730 1793 const EM_SETWORDBREAKPROC=208;
1731 1794 const EM_UNDO=199;
1795 +
1796 +static if(_WIN32_WINNT >= 0x500) {
1797 + const EM_SETIMESTATUS=216;
1798 + const EM_GETIMESTATUS=217;
1799 +}
1732 1800
1733 1801 const EN_CHANGE=768;
1734 1802 const EN_ERRSPACE=1280;
1735 1803 const EN_HSCROLL=1537;
1736 1804 const EN_KILLFOCUS=512;
1737 1805 const EN_MAXTEXT=1281;
1738 1806 const EN_SETFOCUS=256;
................................................................................
1775 1843 const LB_SETHORIZONTALEXTENT=404;
1776 1844 const LB_SETITEMDATA=410;
1777 1845 const LB_SETITEMHEIGHT=416;
1778 1846 const LB_SETLOCALE=421;
1779 1847 const LB_SETSEL=389;
1780 1848 const LB_SETTABSTOPS=402;
1781 1849 const LB_SETTOPINDEX=407;
1850 +static if(_WIN32_WINNT >= 0x501) {
1851 +const LB_GETLISTBOXINFO=434;
1852 +}
1782 1853
1783 1854 const LBN_DBLCLK=2;
1784 1855 const LBN_ERRSPACE=-2;
1785 1856 const LBN_KILLFOCUS=5;
1786 1857 const LBN_SELCANCEL=3;
1787 1858 const LBN_SELCHANGE=1;
1788 1859 const LBN_SETFOCUS=4;
................................................................................
1791 1862 const SBM_GETPOS=225;
1792 1863 const SBM_GETRANGE=227;
1793 1864 const SBM_GETSCROLLINFO=234;
1794 1865 const SBM_SETPOS=224;
1795 1866 const SBM_SETRANGE=226;
1796 1867 const SBM_SETRANGEREDRAW=230;
1797 1868 const SBM_SETSCROLLINFO=233;
1869 +static if(_WIN32_WINNT >= 0x501) {
1870 +const SBM_GETSCROLLBARINFO=235;
1871 +}
1872 +
1798 1873 const STM_GETICON=369;
1799 1874 const STM_GETIMAGE=371;
1800 1875 const STM_SETICON=368;
1801 1876 const STM_SETIMAGE=370;
1802 1877 const STN_CLICKED=0;
1803 1878 const STN_DBLCLK=1;
1804 1879 const STN_DISABLE=3;
................................................................................
2021 2096 VK_OEM_2 = 0xBF,
2022 2097 VK_OEM_3 = 0xC0,
2023 2098 VK_OEM_4 = 0xDB,
2024 2099 VK_OEM_5 = 0xDC,
2025 2100 VK_OEM_6 = 0xDD,
2026 2101 VK_OEM_7 = 0xDE,
2027 2102 VK_OEM_8 = 0xDF,
2028 - //static if (_WIN32_WINNT > = 0x500) {
2103 + //static if (_WIN32_WINNT > = 0x500) {
2029 2104 VK_OEM_102 = 0xE2,
2030 2105 //}
2031 2106 VK_PROCESSKEY = 0xE5,
2032 - //static if (_WIN32_WINNT > = 0x500) {
2107 + //static if (_WIN32_WINNT > = 0x500) {
2033 2108 VK_PACKET = 0xE7,
2034 2109 //}
2035 2110 VK_ATTN = 0xF6,
2036 2111 VK_CRSEL = 0xF7,
2037 2112 VK_EXSEL = 0xF8,
2038 2113 VK_EREOF = 0xF9,
2039 2114 VK_PLAY = 0xFA,
................................................................................
2052 2127
2053 2128 const MK_LBUTTON=1;
2054 2129 const MK_RBUTTON=2;
2055 2130 const MK_SHIFT=4;
2056 2131 const MK_CONTROL=8;
2057 2132 const MK_MBUTTON=16;
2058 2133 static if (_WIN32_WINNT >= 0x500) {
2059 -const MK_XBUTTON1=32;
2060 -const MK_XBUTTON2=64;
2134 + const MK_XBUTTON1 = 32;
2135 + const MK_XBUTTON2 = 64;
2061 2136 }
2062 2137 const TPM_CENTERALIGN=4;
2063 2138 const TPM_LEFTALIGN=0;
2064 2139 const TPM_RIGHTALIGN=8;
2065 2140 const TPM_LEFTBUTTON=0;
2066 2141 const TPM_RIGHTBUTTON=2;
2067 2142 const TPM_HORIZONTAL=0;
2068 2143 const TPM_VERTICAL=64;
2069 2144 const TPM_TOPALIGN=0;
2070 2145 const TPM_VCENTERALIGN=16;
2071 2146 const TPM_BOTTOMALIGN=32;
2072 2147 const TPM_NONOTIFY=128;
2073 2148 const TPM_RETURNCMD=256;
2074 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
2075 -const TPM_RECURSE=1;
2149 +static if (_WIN32_WINNT >= 0x410) {
2150 + const TPM_RECURSE = 1;
2076 2151 }
2077 2152
2078 2153 const HELP_COMMAND=0x102;
2079 2154 const HELP_CONTENTS=3;
2080 2155 const HELP_CONTEXT=1;
2081 2156 const HELP_CONTEXTPOPUP=8;
2082 2157 const HELP_FORCEFILE=9;
................................................................................
2338 2413 const MOD_LEFT=32768;
2339 2414
2340 2415 const LLKHF_EXTENDED=(KF_EXTENDED >> 8);
2341 2416 const LLKHF_INJECTED=0x00000010;
2342 2417 const LLKHF_ALTDOWN=(KF_ALTDOWN >> 8);
2343 2418 const LLKHF_UP=(KF_UP >> 8);
2344 2419
2345 -static if (WINVER >= 0x500) {
2346 -const FLASHW_STOP=0;
2347 -const FLASHW_CAPTION=1;
2348 -const FLASHW_TRAY=2;
2349 -const FLASHW_ALL=(FLASHW_CAPTION|FLASHW_TRAY);
2350 -const FLASHW_TIMER=4;
2351 -const FLASHW_TIMERNOFG=12;
2420 +static if (_WIN32_WINNT >= 0x500) {
2421 + const FLASHW_STOP=0;
2422 + const FLASHW_CAPTION=1;
2423 + const FLASHW_TRAY=2;
2424 + const FLASHW_ALL=(FLASHW_CAPTION|FLASHW_TRAY);
2425 + const FLASHW_TIMER=4;
2426 + const FLASHW_TIMERNOFG=12;
2352 2427 }
2353 2428
2354 2429 const CURSOR_SHOWING=0x00000001;
2355 2430 const WS_ACTIVECAPTION=0x00000001;
2356 2431 static if (_WIN32_WINNT >= 0x403) {
2357 -const INPUT_MOUSE=0x00000000;
2358 -const INPUT_KEYBOARD=0x00000001;
2359 -const INPUT_HARDWARE=0x00000002;
2432 + const INPUT_MOUSE=0x00000000;
2433 + const INPUT_KEYBOARD=0x00000001;
2434 + const INPUT_HARDWARE=0x00000002;
2360 2435 }
2361 -static if (WINVER >= 0x400) {
2362 2436 const ENDSESSION_LOGOFF = 0x80000000;
2363 -}
2364 2437
2365 -static if (WINVER >= 0x500) {
2438 +static if (_WIN32_WINNT >= 0x500) {
2366 2439 const CHILDID_SELF = 0;
2367 2440 const OBJID_WINDOW = 0x00000000;
2368 2441 const OBJID_SYSMENU = 0xFFFFFFFF;
2369 2442 const OBJID_TITLEBAR = 0xFFFFFFFE;
2370 2443 const OBJID_MENU = 0xFFFFFFFD;
2371 2444 const OBJID_CLIENT = 0xFFFFFFFC;
2372 2445 const OBJID_VSCROLL = 0xFFFFFFFB;
................................................................................
2464 2537 const CONSOLE_CARET_VISIBLE = 0x00000002;
2465 2538
2466 2539 const CONSOLE_APPLICATION_16BIT = 0x00000001;
2467 2540
2468 2541 }
2469 2542 const EVENT_MAX=0x7fffffff;
2470 2543
2471 -}//(WINVER >= 0x500)
2472 -
2473 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
2474 -const DWORD ASFW_ANY = -1;
2475 -const LSFW_LOCK = 1;
2476 -const LSFW_UNLOCK = 2;
2477 -}
2544 +}//(_WIN32_WINNT >= 0x500)
2478 2545
2479 2546 static if (_WIN32_WINNT >= 0x500) {
2480 -const LWA_COLORKEY=0x01;
2481 -const LWA_ALPHA=0x02;
2482 -const ULW_COLORKEY=0x01;
2483 -const ULW_ALPHA=0x02;
2484 -const ULW_OPAQUE=0x04;
2547 + const DWORD ASFW_ANY = -1;
2548 + enum : UINT {
2549 + LSFW_LOCK = 1,
2550 + LSFW_UNLOCK
2551 + }
2552 +
2553 + const LWA_COLORKEY = 0x01;
2554 + const LWA_ALPHA = 0x02;
2555 + const ULW_COLORKEY = 0x01;
2556 + const ULW_ALPHA = 0x02;
2557 + const ULW_OPAQUE = 0x04;
2485 2558 }
2486 2559
2487 2560 const GA_PARENT = 1;
2488 2561 const GA_ROOT = 2;
2489 2562 const GA_ROOTOWNER = 3;
2490 2563
2491 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
2492 -
2493 -const MONITOR_DEFAULTTONULL = 0;
2494 -const MONITOR_DEFAULTTOPRIMARY = 1;
2495 -const MONITOR_DEFAULTTONEAREST = 2;
2496 -const MONITORINFOF_PRIMARY = 1;
2497 -
2498 -const EDS_RAWMODE = 0x00000002;
2499 -
2500 -const ISMEX_NOSEND = 0x00000000;
2501 -const ISMEX_SEND = 0x00000001;
2502 -const ISMEX_NOTIFY = 0x00000002;
2503 -const ISMEX_CALLBACK = 0x00000004;
2504 -const ISMEX_REPLIED = 0x00000008;
2505 -}
2506 -
2507 2564 static if (_WIN32_WINNT >= 0x500) {
2508 -const GR_GDIOBJECTS = 0;
2509 -const GR_USEROBJECTS = 1;
2510 -}
2565 + enum : DWORD {
2566 + MONITOR_DEFAULTTONULL,
2567 + MONITOR_DEFAULTTOPRIMARY,
2568 + MONITOR_DEFAULTTONEAREST // = 2
2569 + }
2570 + const MONITORINFOF_PRIMARY = 1;
2511 2571
2512 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
2513 -const GMMP_USE_DISPLAY_POINTS = 1;
2514 -const GMMP_USE_HIGH_RESOLUTION_POINTS = 2;
2572 + const EDS_RAWMODE = 0x00000002;
2573 +
2574 + const ISMEX_NOSEND = 0x00000000;
2575 + const ISMEX_SEND = 0x00000001;
2576 + const ISMEX_NOTIFY = 0x00000002;
2577 + const ISMEX_CALLBACK = 0x00000004;
2578 + const ISMEX_REPLIED = 0x00000008;
2579 +
2580 + const GR_GDIOBJECTS = 0;
2581 + const GR_USEROBJECTS = 1;
2582 +
2583 + const GMMP_USE_DISPLAY_POINTS = 1;
2584 + const GMMP_USE_HIGH_RESOLUTION_POINTS = 2;
2515 2585 }
2516 2586
2517 2587 static if (_WIN32_WINNT >= 0x501) {
2518 -const PW_CLIENTONLY = 0x00000001;
2519 -const RIM_INPUT = 0x00000000;
2520 -const RIM_INPUTSINK = 0x00000001;
2521 -const RIM_TYPEMOUSE = 0x00000000;
2522 -const RIM_TYPEKEYBOARD = 0x00000001;
2523 -const RIM_TYPEHID = 0x00000002;
2524 -const MOUSE_MOVE_RELATIVE = 0x00000000;
2525 -const MOUSE_MOVE_ABSOLUTE = 0x00000001;
2526 -const MOUSE_VIRTUAL_DESKTOP = 0x00000002;
2527 -const MOUSE_ATTRIBUTES_CHANGED = 0x00000004;
2528 -const RI_MOUSE_LEFT_BUTTON_DOWN = 0x0001;
2529 -const RI_MOUSE_LEFT_BUTTON_UP = 0x0002;
2530 -const RI_MOUSE_RIGHT_BUTTON_DOWN = 0x0004;
2531 -const RI_MOUSE_RIGHT_BUTTON_UP = 0x0008;
2532 -const RI_MOUSE_MIDDLE_BUTTON_DOWN = 0x0010;
2533 -const RI_MOUSE_MIDDLE_BUTTON_UP = 0x0020;
2534 -const RI_MOUSE_BUTTON_1_DOWN = RI_MOUSE_LEFT_BUTTON_DOWN;
2535 -const RI_MOUSE_BUTTON_1_UP = RI_MOUSE_LEFT_BUTTON_UP;
2536 -const RI_MOUSE_BUTTON_2_DOWN = RI_MOUSE_RIGHT_BUTTON_DOWN;
2537 -const RI_MOUSE_BUTTON_2_UP = RI_MOUSE_RIGHT_BUTTON_UP;
2538 -const RI_MOUSE_BUTTON_3_DOWN = RI_MOUSE_MIDDLE_BUTTON_DOWN;
2539 -const RI_MOUSE_BUTTON_3_UP = RI_MOUSE_MIDDLE_BUTTON_UP;
2540 -const RI_MOUSE_BUTTON_4_DOWN = 0x0040;
2541 -const RI_MOUSE_BUTTON_4_UP = 0x0080;
2542 -const RI_MOUSE_BUTTON_5_DOWN = 0x0100;
2543 -const RI_MOUSE_BUTTON_5_UP = 0x0200;
2544 -const RI_MOUSE_WHEEL = 0x0400;
2545 -const KEYBOARD_OVERRUN_MAKE_CODE = 0x00ff;
2546 -const RI_KEY_MAKE = 0x0000;
2547 -const RI_KEY_BREAK = 0x0001;
2548 -const RI_KEY_E0 = 0x0002;
2549 -const RI_KEY_E1 = 0x0004;
2550 -const RI_KEY_TERMSRV_SET_LED = 0x0008;
2551 -const RI_KEY_TERMSRV_SHADOW = 0x0010;
2552 -
2553 -const RID_INPUT = 0x10000003;
2554 -const RID_HEADER = 0x10000005;
2555 -
2556 -const RIDI_PREPARSEDDATA = 0x20000005;
2557 -const RIDI_DEVICENAME = 0x20000007;
2558 -const RIDI_DEVICEINFO = 0x2000000b;
2559 -
2560 -const RIDEV_REMOVE = 0x00000001;
2561 -const RIDEV_EXCLUDE = 0x00000010;
2562 -const RIDEV_PAGEONLY = 0x00000020;
2563 -const RIDEV_NOLEGACY = 0x00000030;
2564 -const RIDEV_INPUTSINK = 0x00000100;
2565 -const RIDEV_CAPTUREMOUSE = 0x00000200;
2566 -const RIDEV_NOHOTKEYS = 0x00000200;
2567 -const RIDEV_APPKEYS = 0x00000400;
2588 + const PW_CLIENTONLY = 0x00000001;
2589 + const RIM_INPUT = 0x00000000;
2590 + const RIM_INPUTSINK = 0x00000001;
2591 + const RIM_TYPEMOUSE = 0x00000000;
2592 + const RIM_TYPEKEYBOARD = 0x00000001;
2593 + const RIM_TYPEHID = 0x00000002;
2594 + const MOUSE_MOVE_RELATIVE = 0x00000000;
2595 + const MOUSE_MOVE_ABSOLUTE = 0x00000001;
2596 + const MOUSE_VIRTUAL_DESKTOP = 0x00000002;
2597 + const MOUSE_ATTRIBUTES_CHANGED = 0x00000004;
2598 + const RI_MOUSE_LEFT_BUTTON_DOWN = 0x0001;
2599 + const RI_MOUSE_LEFT_BUTTON_UP = 0x0002;
2600 + const RI_MOUSE_RIGHT_BUTTON_DOWN = 0x0004;
2601 + const RI_MOUSE_RIGHT_BUTTON_UP = 0x0008;
2602 + const RI_MOUSE_MIDDLE_BUTTON_DOWN = 0x0010;
2603 + const RI_MOUSE_MIDDLE_BUTTON_UP = 0x0020;
2604 + const RI_MOUSE_BUTTON_1_DOWN = RI_MOUSE_LEFT_BUTTON_DOWN;
2605 + const RI_MOUSE_BUTTON_1_UP = RI_MOUSE_LEFT_BUTTON_UP;
2606 + const RI_MOUSE_BUTTON_2_DOWN = RI_MOUSE_RIGHT_BUTTON_DOWN;
2607 + const RI_MOUSE_BUTTON_2_UP = RI_MOUSE_RIGHT_BUTTON_UP;
2608 + const RI_MOUSE_BUTTON_3_DOWN = RI_MOUSE_MIDDLE_BUTTON_DOWN;
2609 + const RI_MOUSE_BUTTON_3_UP = RI_MOUSE_MIDDLE_BUTTON_UP;
2610 + const RI_MOUSE_BUTTON_4_DOWN = 0x0040;
2611 + const RI_MOUSE_BUTTON_4_UP = 0x0080;
2612 + const RI_MOUSE_BUTTON_5_DOWN = 0x0100;
2613 + const RI_MOUSE_BUTTON_5_UP = 0x0200;
2614 + const RI_MOUSE_WHEEL = 0x0400;
2615 + const KEYBOARD_OVERRUN_MAKE_CODE = 0x00ff;
2616 + const RI_KEY_MAKE = 0x0000;
2617 + const RI_KEY_BREAK = 0x0001;
2618 + const RI_KEY_E0 = 0x0002;
2619 + const RI_KEY_E1 = 0x0004;
2620 + const RI_KEY_TERMSRV_SET_LED = 0x0008;
2621 + const RI_KEY_TERMSRV_SHADOW = 0x0010;
2622 +
2623 + const RID_INPUT = 0x10000003;
2624 + const RID_HEADER = 0x10000005;
2625 +
2626 + const RIDI_PREPARSEDDATA = 0x20000005;
2627 + const RIDI_DEVICENAME = 0x20000007;
2628 + const RIDI_DEVICEINFO = 0x2000000b;
2629 +
2630 + const RIDEV_REMOVE = 0x00000001;
2631 + const RIDEV_EXCLUDE = 0x00000010;
2632 + const RIDEV_PAGEONLY = 0x00000020;
2633 + const RIDEV_NOLEGACY = 0x00000030;
2634 + const RIDEV_INPUTSINK = 0x00000100;
2635 + const RIDEV_CAPTUREMOUSE = 0x00000200;
2636 + const RIDEV_NOHOTKEYS = 0x00000200;
2637 + const RIDEV_APPKEYS = 0x00000400;
2568 2638 }
2569 2639
2570 2640 // Callbacks
2571 2641 // ---------
2572 2642 extern (Windows) {
2573 - alias BOOL function (HWND, UINT, WPARAM, LPARAM) DLGPROC;
2574 - alias void function (HWND, UINT, UINT, DWORD) TIMERPROC;
2643 + alias INT_PTR function (HWND, UINT, WPARAM, LPARAM) DLGPROC;
2644 + alias void function (HWND, UINT, UINT_PTR, DWORD) TIMERPROC;
2575 2645 alias BOOL function (HDC, LPARAM, int) GRAYSTRINGPROC;
2576 2646 alias LRESULT function (int, WPARAM, LPARAM) HOOKPROC;
2577 2647 alias BOOL function (HWND, LPCSTR, HANDLE) PROPENUMPROCA;
2578 2648 alias BOOL function (HWND, LPCWSTR, HANDLE) PROPENUMPROCW;
2579 - alias BOOL function (HWND, LPSTR, HANDLE, DWORD) PROPENUMPROCEXA;
2580 - alias BOOL function (HWND, LPWSTR, HANDLE, DWORD) PROPENUMPROCEXW;
2649 + alias BOOL function (HWND, LPSTR, HANDLE, ULONG_PTR) PROPENUMPROCEXA;
2650 + alias BOOL function (HWND, LPWSTR, HANDLE, ULONG_PTR) PROPENUMPROCEXW;
2581 2651 alias int function (LPSTR, int, int, int) EDITWORDBREAKPROCA;
2582 2652 alias int function (LPWSTR, int, int, int) EDITWORDBREAKPROCW;
2583 2653 alias LRESULT function (HWND, UINT, WPARAM, LPARAM) WNDPROC;
2584 2654 alias BOOL function (HDC, LPARAM, WPARAM, int, int) DRAWSTATEPROC;
2585 2655 alias BOOL function (HWND, LPARAM) WNDENUMPROC;
2586 2656 alias BOOL function (HWND, LPARAM) ENUMWINDOWSPROC;
2587 2657 alias void function (LPHELPINFO) MSGBOXCALLBACK;
2588 2658
2589 - static if (WINVER >= 0x410) {
2659 + static if (_WIN32_WINNT >= 0x410) {
2590 2660 alias BOOL function (HMONITOR, HDC, LPRECT, LPARAM) MONITORENUMPROC;
2591 2661 }
2592 2662 alias BOOL function (LPSTR, LPARAM) NAMEENUMPROCA;
2593 2663 alias BOOL function (LPWSTR, LPARAM) NAMEENUMPROCW;
2594 - alias void function (HWND, UINT, DWORD, LRESULT) SENDASYNCPROC;
2664 + alias void function (HWND, UINT, ULONG_PTR, LRESULT) SENDASYNCPROC;
2595 2665
2596 2666 alias NAMEENUMPROCA DESKTOPENUMPROCA;
2597 2667 alias NAMEENUMPROCW DESKTOPENUMPROCW;
2598 2668 alias NAMEENUMPROCA WINSTAENUMPROCA;
2599 2669 alias NAMEENUMPROCW WINSTAENUMPROCW;
2600 2670 }
2601 2671
2602 -alias HANDLE HHOOK;
2603 -alias HANDLE HDWP;
2604 -alias HANDLE HDEVNOTIFY;
2672 +alias TypeDef!(HANDLE) HHOOK;
2673 +alias TypeDef!(HANDLE) HDWP;
2674 +alias TypeDef!(HANDLE) HDEVNOTIFY;
2605 2675
2606 2676 struct ACCEL {
2607 2677 BYTE fVirt;
2608 2678 WORD key;
2609 2679 WORD cmd;
2610 2680 }
2611 2681 alias ACCEL* LPACCEL;
................................................................................
2668 2738 alias CBT_CREATEWNDW* LPCBT_CREATEWNDW;
2669 2739
2670 2740 struct CBTACTIVATESTRUCT {
2671 2741 BOOL fMouse;
2672 2742 HWND hWndActive;
2673 2743 }
2674 2744 alias CBTACTIVATESTRUCT* LPCBTACTIVATESTRUCT;
2745 +
2746 +static if (_WIN32_WINNT >= 0x501) {
2747 +
2748 +struct WTSSESSION_NOTIFICATION
2749 +{
2750 + DWORD cbSize;
2751 + DWORD dwSessionId;
2752 +}
2753 +alias WTSSESSION_NOTIFICATION* PWTSSESSION_NOTIFICATION;
2754 +
2755 +}
2675 2756
2676 2757 struct CLIENTCREATESTRUCT {
2677 2758 HANDLE hWindowMenu;
2678 2759 UINT idFirstChild;
2679 2760 }
2680 2761 alias CLIENTCREATESTRUCT* LPCLIENTCREATESTRUCT;
2681 2762
................................................................................
2760 2841 DWORD dwExtendedStyle;
2761 2842 WORD cdit;
2762 2843 short x;
2763 2844 short y;
2764 2845 short cx;
2765 2846 short cy;
2766 2847 }
2767 -alias DLGTEMPLATE* LPDLGTEMPLATE, LPDLGTEMPLATEA, LPDLGTEMPLATEW;
2768 -alias CPtr!(DLGTEMPLATE) LPCDLGTEMPLATE;
2848 +alias DLGTEMPLATE* LPDLGTEMPLATE, LPDLGTEMPLATEA, LPDLGTEMPLATEW;
2849 +alias const(DLGTEMPLATE)* LPCDLGTEMPLATE;
2769 2850
2770 2851 align:
2771 2852
2772 2853 struct DRAWITEMSTRUCT {
2773 2854 UINT CtlType;
2774 2855 UINT CtlID;
2775 2856 UINT itemID;
................................................................................
2818 2899 HBITMAP hbmMask;
2819 2900 HBITMAP hbmColor;
2820 2901 }
2821 2902 alias ICONINFO* PICONINFO;
2822 2903
2823 2904 struct NMHDR {
2824 2905 HWND hwndFrom;
2825 - UINT idFrom;
2906 + UINT_PTR idFrom;
2826 2907 UINT code;
2827 2908 }
2828 2909 alias NMHDR* LPNMHDR;
2829 2910
2830 2911 struct WNDCLASSA {
2831 2912 UINT style;
2832 2913 WNDPROC lpfnWndProc;
................................................................................
2882 2963 HCURSOR hCursor;
2883 2964 HBRUSH hbrBackground;
2884 2965 LPCWSTR lpszMenuName;
2885 2966 LPCWSTR lpszClassName;
2886 2967 HICON hIconSm;
2887 2968 }
2888 2969 alias WNDCLASSEXW* LPWNDCLASSEXW, PWNDCLASSEXW;
2970 +
2971 +static if(_WIN32_WINNT >= 0x500) {
2972 +
2973 +struct MENUGETOBJECTINFO
2974 +{
2975 + DWORD dwFlags;
2976 + UINT uPos;
2977 + HMENU hmenu;
2978 + PVOID riid;
2979 + PVOID pvObj;
2980 +}
2981 +alias MENUGETOBJECTINFO* PMENUGETOBJECTINFO;
2982 +
2983 +}
2889 2984
2890 2985 struct MENUITEMINFOA {
2891 2986 UINT cbSize = MENUITEMINFOA.sizeof;
2892 2987 UINT fMask;
2893 2988 UINT fType;
2894 2989 UINT fState;
2895 2990 UINT wID;
................................................................................
2899 2994 DWORD dwItemData;
2900 2995 LPSTR dwTypeData;
2901 2996 UINT cch;
2902 2997 static if (_WIN32_WINNT >= 0x500) {
2903 2998 HBITMAP hbmpItem;
2904 2999 }
2905 3000 }
2906 -alias MENUITEMINFOA* LPMENUITEMINFOA;
2907 -alias CPtr!(MENUITEMINFOA) LPCMENUITEMINFOA;
3001 +alias MENUITEMINFOA* LPMENUITEMINFOA;
3002 +alias const(MENUITEMINFOA)* LPCMENUITEMINFOA;
2908 3003
2909 3004 struct MENUITEMINFOW {
2910 3005 UINT cbSize = MENUITEMINFOW.sizeof;
2911 3006 UINT fMask;
2912 3007 UINT fType;
2913 3008 UINT fState;
2914 3009 UINT wID;
................................................................................
2918 3013 DWORD dwItemData;
2919 3014 LPWSTR dwTypeData;
2920 3015 UINT cch;
2921 3016 static if (_WIN32_WINNT >= 0x500) {
2922 3017 HBITMAP hbmpItem;
2923 3018 }
2924 3019 }
2925 -alias MENUITEMINFOW* LPMENUITEMINFOW;
2926 -alias CPtr!(MENUITEMINFOW) LPCMENUITEMINFOW;
3020 +alias MENUITEMINFOW* LPMENUITEMINFOW;
3021 +alias const(MENUITEMINFOW)* LPCMENUITEMINFOW;
2927 3022
2928 3023 struct SCROLLINFO {
2929 3024 UINT cbSize = this.sizeof;
2930 3025 UINT fMask;
2931 3026 int nMin;
2932 3027 int nMax;
2933 3028 UINT nPage;
2934 3029 int nPos;
2935 3030 int nTrackPos;
2936 3031 }
2937 -alias SCROLLINFO* LPSCROLLINFO;
2938 -alias CPtr!(SCROLLINFO) LPCSCROLLINFO;
3032 +alias SCROLLINFO* LPSCROLLINFO;
3033 +alias const(SCROLLINFO)* LPCSCROLLINFO;
2939 3034
2940 3035 struct WINDOWPLACEMENT {
2941 3036 UINT length;
2942 3037 UINT flags;
2943 3038 UINT showCmd;
2944 3039 POINT ptMinPosition;
2945 3040 POINT ptMaxPosition;
................................................................................
2951 3046 WORD versionNumber;
2952 3047 WORD offset;
2953 3048 }
2954 3049
2955 3050 struct MENUITEMTEMPLATE {
2956 3051 WORD mtOption;
2957 3052 WORD mtID;
2958 - WCHAR mtString[1];
3053 + WCHAR[1] mtString;
2959 3054 }
2960 3055
2961 3056 alias void MENUTEMPLATE, MENUTEMPLATEA, MENUTEMPLATEW;
2962 3057
2963 3058 alias MENUTEMPLATE* LPMENUTEMPLATEA, LPMENUTEMPLATEW, LPMENUTEMPLATE;
2964 3059
2965 3060 struct HELPINFO {
................................................................................
3209 3304 int cx;
3210 3305 int cy;
3211 3306 UINT flags;
3212 3307 }
3213 3308 alias WINDOWPOS* PWINDOWPOS, LPWINDOWPOS;
3214 3309
3215 3310 struct NCCALCSIZE_PARAMS {
3216 - RECT rgrc[3];
3311 + RECT[3] rgrc;
3217 3312 PWINDOWPOS lppos;
3218 3313 }
3219 3314 alias NCCALCSIZE_PARAMS* LPNCCALCSIZE_PARAMS;
3220 3315
3221 3316 struct MDICREATESTRUCTA {
3222 3317 LPCSTR szClass;
3223 3318 LPCSTR szTitle;
................................................................................
3281 3376 alias DROPSTRUCT* PDROPSTRUCT, LPDROPSTRUCT;
3282 3377
3283 3378 alias DWORD HELPPOLY;
3284 3379
3285 3380 struct MULTIKEYHELPA {
3286 3381 DWORD mkSize;
3287 3382 CHAR mkKeylist;
3288 - CHAR szKeyphrase[1];
3383 + CHAR[1] szKeyphrase;
3289 3384 }
3290 3385 alias MULTIKEYHELPA* PMULTIKEYHELPA, LPMULTIKEYHELPA;
3291 3386
3292 3387 struct MULTIKEYHELPW {
3293 3388 DWORD mkSize;
3294 3389 WCHAR mkKeylist;
3295 - WCHAR szKeyphrase[1];
3390 + WCHAR[1] szKeyphrase;
3296 3391 }
3297 3392 alias MULTIKEYHELPW* PMULTIKEYHELPW, LPMULTIKEYHELPW;
3298 3393
3299 3394 struct HELPWININFOA {
3300 3395 int wStructSize;
3301 3396 int x;
3302 3397 int y;
3303 3398 int dx;
3304 3399 int dy;
3305 3400 int wMax;
3306 - CHAR rgchMember[2];
3401 + CHAR[2] rgchMember;
3307 3402 }
3308 3403 alias HELPWININFOA* PHELPWININFOA, LPHELPWININFOA;
3309 3404
3310 3405 struct HELPWININFOW {
3311 3406 int wStructSize;
3312 3407 int x;
3313 3408 int y;
3314 3409 int dx;
3315 3410 int dy;
3316 3411 int wMax;
3317 - WCHAR rgchMember[2];
3412 + WCHAR[2] rgchMember;
3318 3413 }
3319 3414 alias HELPWININFOW* PHELPWININFOW, LPHELPWININFOW;
3320 3415
3321 3416 struct STYLESTRUCT {
3322 3417 DWORD styleOld;
3323 3418 DWORD styleNew;
3324 3419 }
................................................................................
3376 3471 DWORD fMask;
3377 3472 DWORD dwStyle;
3378 3473 UINT cyMax;
3379 3474 HBRUSH hbrBack;
3380 3475 DWORD dwContextHelpID;
3381 3476 ULONG_PTR dwMenuData;
3382 3477 }
3383 -alias MENUINFO* LPMENUINFO;
3384 -alias CPtr!(MENUINFO) LPCMENUINFO;
3478 +alias MENUINFO* LPMENUINFO;
3479 +alias const(MENUINFO)* LPCMENUINFO;
3385 3480
3386 3481
3387 3482 const CCHILDREN_SCROLLBAR=5;
3388 3483
3389 3484 struct SCROLLBARINFO {
3390 3485 DWORD cbSize = this.sizeof;
3391 3486 RECT rcScrollBar;
3392 3487 int dxyLineButton;
3393 3488 int xyThumbTop;
3394 3489 int xyThumbBottom;
3395 3490 int reserved;
3396 - DWORD rgstate[CCHILDREN_SCROLLBAR+1];
3491 + DWORD[CCHILDREN_SCROLLBAR+1] rgstate;
3397 3492 }
3398 3493 alias SCROLLBARINFO* PSCROLLBARINFO, LPSCROLLBARINFO;
3399 3494
3400 3495 const CCHILDREN_TITLEBAR=5;
3401 3496
3402 3497 struct TITLEBARINFO {
3403 3498 DWORD cbSize = TITLEBARINFO.sizeof;
................................................................................
3459 3554 DWORD scanCode;
3460 3555 DWORD flags;
3461 3556 DWORD time;
3462 3557 DWORD dwExtraInfo;
3463 3558 }
3464 3559 alias KBDLLHOOKSTRUCT* LPKBDLLHOOKSTRUCT, PKBDLLHOOKSTRUCT;
3465 3560
3466 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
3467 -
3468 -struct FLASHWINFO {
3469 - UINT cbSize = this.sizeof;
3470 - HWND hwnd;
3471 - DWORD dwFlags;
3472 - UINT uCount;
3473 - DWORD dwTimeout;
3474 -}
3475 -alias FLASHWINFO* PFLASHWINFO;
3476 -
3477 -}
3478 -
3479 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
3480 -
3481 -struct MOUSEMOVEPOINT {
3482 - int x;
3483 - int y;
3484 - DWORD time;
3485 - ULONG_PTR dwExtraInfo;
3486 -}
3487 -alias MOUSEMOVEPOINT* PMOUSEMOVEPOINT, LPMOUSEMOVEPOINT;
3561 +static if (_WIN32_WINNT >= 0x501) {
3562 + struct FLASHWINFO {
3563 + UINT cbSize = this.sizeof;
3564 + HWND hwnd;
3565 + DWORD dwFlags;
3566 + UINT uCount;
3567 + DWORD dwTimeout;
3568 + }
3569 + alias FLASHWINFO* PFLASHWINFO;
3570 +}
3571 +
3572 +static if (_WIN32_WINNT >= 0x500) {
3573 +
3574 + struct MOUSEMOVEPOINT {
3575 + int x;
3576 + int y;
3577 + DWORD time;
3578 + ULONG_PTR dwExtraInfo;
3579 + }
3580 + alias MOUSEMOVEPOINT* PMOUSEMOVEPOINT, LPMOUSEMOVEPOINT;
3488 3581 }
3489 3582
3490 3583 static if (_WIN32_WINNT >= 0x403) {
3491 -struct MOUSEINPUT {
3492 - LONG dx;
3493 - LONG dy;
3494 - DWORD mouseData;
3495 - DWORD dwFlags;
3496 - DWORD time;
3497 - ULONG_PTR dwExtraInfo;
3498 -}
3499 -alias MOUSEINPUT* PMOUSEINPUT;
3500 -
3501 -struct KEYBDINPUT {
3502 - WORD wVk;
3503 - WORD wScan;
3504 - DWORD dwFlags;
3505 - DWORD time;
3506 - ULONG_PTR dwExtraInfo;
3507 -}
3508 -alias KEYBDINPUT* PKEYBDINPUT;
3509 -
3510 -struct HARDWAREINPUT {
3511 - DWORD uMsg;
3512 - WORD wParamL;
3513 - WORD wParamH;
3514 -}
3515 -alias HARDWAREINPUT* PHARDWAREINPUT;
3516 -
3517 -struct INPUT {
3518 - DWORD type;
3519 - union {
3520 - MOUSEINPUT mi;
3521 - KEYBDINPUT ki;
3522 - HARDWAREINPUT hi;
3523 - }
3524 -}
3525 -alias INPUT* PINPUT, LPINPUT;
3584 + struct MOUSEINPUT {
3585 + LONG dx;
3586 + LONG dy;
3587 + DWORD mouseData;
3588 + DWORD dwFlags;
3589 + DWORD time;
3590 + ULONG_PTR dwExtraInfo;
3591 + }
3592 + alias MOUSEINPUT* PMOUSEINPUT;
3593 +
3594 + struct KEYBDINPUT {
3595 + WORD wVk;
3596 + WORD wScan;
3597 + DWORD dwFlags;
3598 + DWORD time;
3599 + ULONG_PTR dwExtraInfo;
3600 + }
3601 + alias KEYBDINPUT* PKEYBDINPUT;
3602 +
3603 + struct HARDWAREINPUT {
3604 + DWORD uMsg;
3605 + WORD wParamL;
3606 + WORD wParamH;
3607 + }
3608 + alias HARDWAREINPUT* PHARDWAREINPUT;
3609 +
3610 + struct INPUT {
3611 + DWORD type;
3612 + union {
3613 + MOUSEINPUT mi;
3614 + KEYBDINPUT ki;
3615 + HARDWAREINPUT hi;
3616 + }
3617 + }
3618 + alias INPUT* PINPUT, LPINPUT;
3526 3619 }// (_WIN32_WINNT >= 0x403)
3527 3620
3528 -static if (WINVER >= 0x500) {
3529 -struct GUITHREADINFO {
3530 - DWORD cbSize = this.sizeof;
3531 - DWORD flags;
3532 - HWND hwndActive;
3533 - HWND hwndFocus;
3534 - HWND hwndCapture;
3535 - HWND hwndMenuOwner;
3536 - HWND hwndMoveSize;
3537 - HWND hwndCaret;
3538 - RECT rcCaret;
3539 -}
3540 -alias GUITHREADINFO* PGUITHREADINFO, LPGUITHREADINFO;
3541 -extern (Windows) {
3542 -alias void function (HWINEVENTHOOK, DWORD, HWND, LONG, LONG, DWORD, DWORD) WINEVENTPROC;
3543 -}
3621 +static if (_WIN32_WINNT >= 0x500) {
3622 + struct GUITHREADINFO {
3623 + DWORD cbSize = this.sizeof;
3624 + DWORD flags;
3625 + HWND hwndActive;
3626 + HWND hwndFocus;
3627 + HWND hwndCapture;
3628 + HWND hwndMenuOwner;
3629 + HWND hwndMoveSize;
3630 + HWND hwndCaret;
3631 + RECT rcCaret;
3632 + }
3633 + alias GUITHREADINFO* PGUITHREADINFO, LPGUITHREADINFO;
3634 + extern (Windows) {
3635 + alias void function (HWINEVENTHOOK, DWORD, HWND, LONG, LONG, DWORD, DWORD) WINEVENTPROC;
3636 + }
3544 3637
3545 -}// (WINVER >= 0x500)
3638 +}// (_WIN32_WINNT >= 0x500)
3546 3639
3547 3640 static if (_WIN32_WINNT >= 0x501) {
3548 -struct BSMINFO {
3549 - UINT cbSize = this.sizeof;
3550 - HDESK hdesk;
3551 - HWND hwnd;
3552 - LUID luid;
3553 -}
3554 -alias BSMINFO* PBSMINFO;
3555 -
3556 -alias HANDLE HRAWINPUT;
3557 -
3558 -struct RAWINPUTHEADER {
3559 - DWORD dwType;
3560 - DWORD dwSize;
3561 - HANDLE hDevice;
3562 - WPARAM wParam;
3563 -}
3564 -alias RAWINPUTHEADER* PRAWINPUTHEADER;
3565 -
3566 -struct RAWMOUSE {
3567 - USHORT usFlags;
3568 - union {
3569 - ULONG ulButtons;
3570 - struct {
3571 - USHORT usButtonFlags;
3572 - USHORT usButtonData;
3641 + struct BSMINFO {
3642 + UINT cbSize = this.sizeof;
3643 + HDESK hdesk;
3644 + HWND hwnd;
3645 + LUID luid;
3646 + }
3647 + alias BSMINFO* PBSMINFO;
3648 +
3649 + alias TypeDef!(HANDLE) HRAWINPUT;
3650 +
3651 + struct RAWINPUTHEADER {
3652 + DWORD dwType;
3653 + DWORD dwSize;
3654 + HANDLE hDevice;
3655 + WPARAM wParam;
3656 + }
3657 + alias RAWINPUTHEADER* PRAWINPUTHEADER;
3658 +
3659 + struct RAWMOUSE {
3660 + USHORT usFlags;
3661 + union {
3662 + ULONG ulButtons;
3663 + struct {
3664 + USHORT usButtonFlags;
3665 + USHORT usButtonData;
3666 + }
3667 + }
3668 + ULONG ulRawButtons;
3669 + LONG lLastX;
3670 + LONG lLastY;
3671 + ULONG ulExtraInformation;
3672 + }
3673 + alias RAWMOUSE* PRAWMOUSE, LPRAWMOUSE;
3674 +
3675 + struct RAWKEYBOARD {
3676 + USHORT MakeCode;
3677 + USHORT Flags;
3678 + USHORT Reserved;
3679 + USHORT VKey;
3680 + UINT Message;
3681 + ULONG ExtraInformation;
3682 + }
3683 + alias RAWKEYBOARD* PRAWKEYBOARD, LPRAWKEYBOARD;
3684 +
3685 + struct RAWHID {
3686 + DWORD dwSizeHid;
3687 + DWORD dwCount;
3688 + BYTE bRawData;
3689 + }
3690 + alias RAWHID* PRAWHID, LPRAWHID;
3691 +
3692 + struct RAWINPUT {
3693 + RAWINPUTHEADER header;
3694 + union _data {
3695 + RAWMOUSE mouse;
3696 + RAWKEYBOARD keyboard;
3697 + RAWHID hid;
3573 3698 }
3574 - }
3575 - ULONG ulRawButtons;
3576 - LONG lLastX;
3577 - LONG lLastY;
3578 - ULONG ulExtraInformation;
3579 -}
3580 -alias RAWMOUSE* PRAWMOUSE, LPRAWMOUSE;
3581 -
3582 -struct RAWKEYBOARD {
3583 - USHORT MakeCode;
3584 - USHORT Flags;
3585 - USHORT Reserved;
3586 - USHORT VKey;
3587 - UINT Message;
3588 - ULONG ExtraInformation;
3589 -}
3590 -alias RAWKEYBOARD* PRAWKEYBOARD, LPRAWKEYBOARD;
3591 -
3592 -struct RAWHID {
3593 - DWORD dwSizeHid;
3594 - DWORD dwCount;
3595 - BYTE bRawData;
3596 -}
3597 -alias RAWHID* PRAWHID, LPRAWHID;
3598 -
3599 -struct RAWINPUT {
3600 - RAWINPUTHEADER header;
3601 - union _data {
3602 - RAWMOUSE mouse;
3603 - RAWKEYBOARD keyboard;
3604 - RAWHID hid;
3699 + _data data;
3700 + }
3701 + alias RAWINPUT* PRAWINPUT, LPRAWINPUT;
3702 +
3703 + struct RAWINPUTDEVICE {
3704 + USHORT usUsagePage;
3705 + USHORT usUsage;
3706 + DWORD dwFlags;
3707 + HWND hwndTarget;
3708 + }
3709 + alias RAWINPUTDEVICE* PRAWINPUTDEVICE, LPRAWINPUTDEVICE;
3710 + alias const(RAWINPUTDEVICE)* PCRAWINPUTDEVICE;
3711 +
3712 + struct RAWINPUTDEVICELIST {
3713 + HANDLE hDevice;
3714 + DWORD dwType;
3715 + }
3716 + alias RAWINPUTDEVICELIST* PRAWINPUTDEVICELIST;
3717 +
3718 + struct RID_DEVICE_INFO_MOUSE {
3719 + DWORD dwId;
3720 + DWORD dwNumberOfButtons;
3721 + DWORD dwSampleRate;
3722 + BOOL fHasHorizontalWheel;
3723 + }
3724 +
3725 + struct RID_DEVICE_INFO_KEYBOARD {
3726 + DWORD dwType;
3727 + DWORD dwSubType;
3728 + DWORD dwKeyboardMode;
3729 + DWORD dwNumberOfFunctionKeys;
3730 + DWORD dwNumberOfIndicators;
3731 + DWORD dwNumberOfKeysTotal;
3732 + }
3733 +
3734 + struct RID_DEVICE_INFO_HID {
3735 + DWORD dwVendorId;
3736 + DWORD dwProductId;
3737 + DWORD dwVersionNumber;
3738 + USHORT usUsagePage;
3739 + USHORT usUsage;
3605 3740 }
3606 - _data data;
3607 -}
3608 -alias RAWINPUT* PRAWINPUT, LPRAWINPUT;
3609 -
3610 -struct RAWINPUTDEVICE {
3611 - USHORT usUsagePage;
3612 - USHORT usUsage;
3613 - DWORD dwFlags;
3614 - HWND hwndTarget;
3615 -}
3616 -alias RAWINPUTDEVICE* PRAWINPUTDEVICE, LPRAWINPUTDEVICE;
3617 -alias CPtr!(RAWINPUTDEVICE) PCRAWINPUTDEVICE;
3618 -
3619 -struct RAWINPUTDEVICELIST {
3620 - HANDLE hDevice;
3621 - DWORD dwType;
3622 -}
3623 -alias RAWINPUTDEVICELIST* PRAWINPUTDEVICELIST;
3624 -
3625 -struct RID_DEVICE_INFO_MOUSE {
3626 - DWORD dwId;
3627 - DWORD dwNumberOfButtons;
3628 - DWORD dwSampleRate;
3629 - BOOL fHasHorizontalWheel;
3630 -}
3631 -
3632 -struct RID_DEVICE_INFO_KEYBOARD {
3633 - DWORD dwType;
3634 - DWORD dwSubType;
3635 - DWORD dwKeyboardMode;
3636 - DWORD dwNumberOfFunctionKeys;
3637 - DWORD dwNumberOfIndicators;
3638 - DWORD dwNumberOfKeysTotal;
3639 -}
3640 -
3641 -struct RID_DEVICE_INFO_HID {
3642 - DWORD dwVendorId;
3643 - DWORD dwProductId;
3644 - DWORD dwVersionNumber;
3645 - USHORT usUsagePage;
3646 - USHORT usUsage;
3647 -}
3648 -
3649 -struct RID_DEVICE_INFO {
3650 - DWORD cbSize = this.sizeof;
3651 - DWORD dwType;
3652 - union {
3653 - RID_DEVICE_INFO_MOUSE mouse;
3654 - RID_DEVICE_INFO_KEYBOARD keyboard;
3655 - RID_DEVICE_INFO_HID hid;
3656 - }
3657 -}
3741 +
3742 + struct RID_DEVICE_INFO {
3743 + DWORD cbSize = this.sizeof;
3744 + DWORD dwType;
3745 + union {
3746 + RID_DEVICE_INFO_MOUSE mouse;
3747 + RID_DEVICE_INFO_KEYBOARD keyboard;
3748 + RID_DEVICE_INFO_HID hid;
3749 + }
3750 + }
3658 3751 }// (_WIN32_WINNT >= 0x501)
3659 3752
3660 3753 struct MSLLHOOKSTRUCT {
3661 3754 POINT pt;
3662 3755 DWORD mouseData;
3663 3756 DWORD flags;
3664 3757 DWORD time;
................................................................................
3677 3770 alias CharNextA AnsiNext;
3678 3771 alias CharPrevA AnsiPrev;
3679 3772
3680 3773 alias MAKELONG MAKEWPARAM;
3681 3774 alias MAKELONG MAKELPARAM;
3682 3775 alias MAKELONG MAKELRESULT;
3683 3776
3684 -//MACRO #define POINTSTOPOINT(p, ps) { (p).x=LOWORD(*(DWORD* )&ps); (p).y=HIWORD(*(DWORD* )&ps); }
3777 +//MACRO #define POINTSTOPOINT(p, ps) { (p).x=LOWORD(*(DWORD*)&ps); (p).y=HIWORD(*(DWORD*)&ps); }
3685 3778 //MACRO #define POINTTOPOINTS(p) ((POINTS)MAKELONG((p).x, (p).y))
3686 3779
3687 3780 extern (Windows) {
3688 3781
3689 -HKL ActivateKeyboardLayout(HKL, UINT);
3690 -BOOL AdjustWindowRect(LPRECT, DWORD, BOOL);
3691 -BOOL AdjustWindowRectEx(LPRECT, DWORD, BOOL, DWORD);
3692 -BOOL AnyPopup();
3693 -BOOL AppendMenuA(HMENU, UINT, UINT_PTR, LPCSTR);
3694 -BOOL AppendMenuW(HMENU, UINT, UINT_PTR, LPCWSTR);
3695 -UINT ArrangeIconicWindows(HWND);
3696 -BOOL AttachThreadInput(DWORD, DWORD, BOOL);
3697 -HDWP BeginDeferWindowPos(int);
3698 -HDC BeginPaint(HWND, LPPAINTSTRUCT);
3699 -BOOL BringWindowToTop(HWND);
3700 -BOOL CallMsgFilterA(LPMSG, INT);
3701 -BOOL CallMsgFilterW(LPMSG, INT);
3702 -LRESULT CallNextHookEx(HHOOK, int, WPARAM, LPARAM);
3703 -LRESULT CallWindowProcA(WNDPROC, HWND, UINT, WPARAM, LPARAM);
3704 -LRESULT CallWindowProcW(WNDPROC, HWND, UINT, WPARAM, LPARAM);
3705 -WORD CascadeWindows(HWND, UINT, LPCRECT, UINT, CPtr!(HWND));
3706 -BOOL ChangeClipboardChain(HWND, HWND);
3707 -
3708 -LONG ChangeDisplaySettingsA(PDEVMODEA, DWORD);
3709 -LONG ChangeDisplaySettingsW(PDEVMODEW, DWORD);
3710 -LONG ChangeDisplaySettingsExA(LPCSTR, LPDEVMODEA, HWND, DWORD, LPVOID);
3711 -LONG ChangeDisplaySettingsExW(LPCWSTR, LPDEVMODEW, HWND, DWORD, LPVOID);
3712 -
3713 -BOOL ChangeMenuA(HMENU, UINT, LPCSTR, UINT, UINT);
3714 -BOOL ChangeMenuW(HMENU, UINT, LPCWSTR, UINT, UINT);
3715 -LPSTR CharLowerA(LPSTR);
3716 -LPWSTR CharLowerW(LPWSTR);
3717 -DWORD CharLowerBuffA(LPSTR, DWORD);
3718 -DWORD CharLowerBuffW(LPWSTR, DWORD);
3719 -LPSTR CharNextA(LPCSTR);
3720 -LPWSTR CharNextW(LPCWSTR);
3721 -LPSTR CharNextExA(WORD, LPCSTR, DWORD);
3722 -LPWSTR CharNextExW(WORD, LPCWSTR, DWORD);
3723 -LPSTR CharPrevA(LPCSTR, LPCSTR);
3724 -LPWSTR CharPrevW(LPCWSTR, LPCWSTR);
3725 -LPSTR CharPrevExA(WORD, LPCSTR, LPCSTR, DWORD);
3726 -LPWSTR CharPrevExW(WORD, LPCWSTR, LPCWSTR, DWORD);
3727 -BOOL CharToOemA(LPCSTR, LPSTR);
3728 -BOOL CharToOemW(LPCWSTR, LPSTR);
3729 -BOOL CharToOemBuffA(LPCSTR, LPSTR, DWORD);
3730 -BOOL CharToOemBuffW(LPCWSTR, LPSTR, DWORD);
3731 -LPSTR CharUpperA(LPSTR);
3732 -LPWSTR CharUpperW(LPWSTR);
3733 -DWORD CharUpperBuffA(LPSTR, DWORD);
3734 -DWORD CharUpperBuffW(LPWSTR, DWORD);
3735 -BOOL CheckDlgButton(HWND, int, UINT);
3736 -DWORD CheckMenuItem(HMENU, UINT, UINT);
3737 -BOOL CheckMenuRadioItem(HMENU, UINT, UINT, UINT, UINT);
3738 -BOOL CheckRadioButton(HWND, int, int, int);
3739 -HWND ChildWindowFromPoint(HWND, POINT);
3740 -HWND ChildWindowFromPointEx(HWND, POINT, UINT);
3741 -BOOL ClientToScreen(HWND, LPPOINT);
3742 -BOOL ClipCursor(LPCRECT);
3743 -BOOL CloseClipboard();
3744 -BOOL CloseDesktop(HDESK);
3745 -BOOL CloseWindow(HWND);
3746 -BOOL CloseWindowStation(HWINSTA);
3747 -int CopyAcceleratorTableA(HACCEL, LPACCEL, int);
3748 -int CopyAcceleratorTableW(HACCEL, LPACCEL, int);
3749 -
3750 -HICON CopyIcon(HICON);
3751 -HANDLE CopyImage(HANDLE, UINT, int, int, UINT);
3752 -BOOL CopyRect(LPRECT, LPCRECT);
3753 -int CountClipboardFormats();
3754 -HACCEL CreateAcceleratorTableA(LPACCEL, int);
3755 -HACCEL CreateAcceleratorTableW(LPACCEL, int);
3756 -BOOL CreateCaret(HWND, HBITMAP, int, int);
3757 -HCURSOR CreateCursor(HINSTANCE, int, int, int, int, PCVOID, PCVOID);
3758 -
3759 -HDESK CreateDesktopA(LPCSTR, LPCSTR, LPDEVMODEA, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES);
3760 -HDESK CreateDesktopW(LPCWSTR, LPCWSTR, LPDEVMODEW, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES);
3761 -
3762 -HWND CreateDialogParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM);
3763 -HWND CreateDialogParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM);
3764 -HWND CreateDialogIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3765 -HWND CreateDialogIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3766 -
3767 -HICON CreateIcon(HINSTANCE, int, int, BYTE, BYTE, CPtr!(BYTE), BYTE*);
3768 -HICON CreateIconFromResource(PBYTE, DWORD, BOOL, DWORD);
3769 -HICON CreateIconFromResourceEx(PBYTE, DWORD, BOOL, DWORD, int, int, UINT);
3770 -HICON CreateIconIndirect(PICONINFO);
3771 -HWND CreateMDIWindowA(LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM);
3772 -HWND CreateMDIWindowW(LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM);
3773 -HMENU CreateMenu();
3774 -HMENU CreatePopupMenu();
3775 -
3776 -HWND CreateWindowExA(DWORD, LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID);
3777 -HWND CreateWindowExW(DWORD, LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID);
3778 -
3779 -HWINSTA CreateWindowStationA(LPSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES);
3780 -HWINSTA CreateWindowStationW(LPWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES);
3781 -LRESULT DefDlgProcA(HWND, UINT, WPARAM, LPARAM);
3782 -LRESULT DefDlgProcW(HWND, UINT, WPARAM, LPARAM);
3783 -HDWP DeferWindowPos(HDWP, HWND, HWND, int, int, int, int, UINT);
3784 -LRESULT DefFrameProcA(HWND, HWND, UINT, WPARAM, LPARAM);
3785 -LRESULT DefFrameProcW(HWND, HWND, UINT, WPARAM, LPARAM);
3786 -
3787 -LRESULT DefMDIChildProcA(HWND, UINT, WPARAM, LPARAM);
3788 -LRESULT DefMDIChildProcW(HWND, UINT, WPARAM, LPARAM);
3789 -LRESULT DefWindowProcA(HWND, UINT, WPARAM, LPARAM);
3790 -LRESULT DefWindowProcW(HWND, UINT, WPARAM, LPARAM);
3791 -BOOL DeleteMenu(HMENU, UINT, UINT);
3792 -BOOL DeregisterShellHookWindow(HWND);
3793 -BOOL DestroyAcceleratorTable(HACCEL);
3794 -BOOL DestroyCaret();
3795 -BOOL DestroyCursor(HCURSOR);
3796 -BOOL DestroyIcon(HICON);
3797 -BOOL DestroyMenu(HMENU);
3798 -BOOL DestroyWindow(HWND);
3799 -
3800 -int DialogBoxParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM);
3801 -int DialogBoxParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM);
3802 -int DialogBoxIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3803 -int DialogBoxIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3782 + HKL ActivateKeyboardLayout(HKL, UINT);
3783 + BOOL AdjustWindowRect(LPRECT, DWORD, BOOL);
3784 + BOOL AdjustWindowRectEx(LPRECT, DWORD, BOOL, DWORD);
3785 + BOOL AnyPopup();
3786 + BOOL AppendMenuA(HMENU, UINT, UINT_PTR, LPCSTR);
3787 + BOOL AppendMenuW(HMENU, UINT, UINT_PTR, LPCWSTR);
3788 + UINT ArrangeIconicWindows(HWND);
3789 + BOOL AttachThreadInput(DWORD, DWORD, BOOL);
3790 + HDWP BeginDeferWindowPos(int);
3791 + HDC BeginPaint(HWND, LPPAINTSTRUCT);
3792 + BOOL BringWindowToTop(HWND);
3793 + BOOL CallMsgFilterA(LPMSG, INT);
3794 + BOOL CallMsgFilterW(LPMSG, INT);
3795 + LRESULT CallNextHookEx(HHOOK, int, WPARAM, LPARAM);
3796 + LRESULT CallWindowProcA(WNDPROC, HWND, UINT, WPARAM, LPARAM);
3797 + LRESULT CallWindowProcW(WNDPROC, HWND, UINT, WPARAM, LPARAM);
3798 + WORD CascadeWindows(HWND, UINT, LPCRECT, UINT, const(HWND)*);
3799 + BOOL ChangeClipboardChain(HWND, HWND);
3800 +
3801 + LONG ChangeDisplaySettingsA(PDEVMODEA, DWORD);
3802 + LONG ChangeDisplaySettingsW(PDEVMODEW, DWORD);
3803 + LONG ChangeDisplaySettingsExA(LPCSTR, LPDEVMODEA, HWND, DWORD, LPVOID);
3804 + LONG ChangeDisplaySettingsExW(LPCWSTR, LPDEVMODEW, HWND, DWORD, LPVOID);
3805 +
3806 + BOOL ChangeMenuA(HMENU, UINT, LPCSTR, UINT, UINT);
3807 + BOOL ChangeMenuW(HMENU, UINT, LPCWSTR, UINT, UINT);
3808 + LPSTR CharLowerA(LPSTR);
3809 + LPWSTR CharLowerW(LPWSTR);
3810 + DWORD CharLowerBuffA(LPSTR, DWORD);
3811 + DWORD CharLowerBuffW(LPWSTR, DWORD);
3812 + LPSTR CharNextA(LPCSTR);
3813 + LPWSTR CharNextW(LPCWSTR);
3814 + LPSTR CharNextExA(WORD, LPCSTR, DWORD);
3815 + LPWSTR CharNextExW(WORD, LPCWSTR, DWORD);
3816 + LPSTR CharPrevA(LPCSTR, LPCSTR);
3817 + LPWSTR CharPrevW(LPCWSTR, LPCWSTR);
3818 + LPSTR CharPrevExA(WORD, LPCSTR, LPCSTR, DWORD);
3819 + LPWSTR CharPrevExW(WORD, LPCWSTR, LPCWSTR, DWORD);
3820 + BOOL CharToOemA(LPCSTR, LPSTR);
3821 + BOOL CharToOemW(LPCWSTR, LPSTR);
3822 + BOOL CharToOemBuffA(LPCSTR, LPSTR, DWORD);
3823 + BOOL CharToOemBuffW(LPCWSTR, LPSTR, DWORD);
3824 + LPSTR CharUpperA(LPSTR);
3825 + LPWSTR CharUpperW(LPWSTR);
3826 + DWORD CharUpperBuffA(LPSTR, DWORD);
3827 + DWORD CharUpperBuffW(LPWSTR, DWORD);
3828 + BOOL CheckDlgButton(HWND, int, UINT);
3829 + DWORD CheckMenuItem(HMENU, UINT, UINT);
3830 + BOOL CheckMenuRadioItem(HMENU, UINT, UINT, UINT, UINT);
3831 + BOOL CheckRadioButton(HWND, int, int, int);
3832 + HWND ChildWindowFromPoint(HWND, POINT);
3833 + HWND ChildWindowFromPointEx(HWND, POINT, UINT);
3834 + BOOL ClientToScreen(HWND, LPPOINT);
3835 + BOOL ClipCursor(LPCRECT);
3836 + BOOL CloseClipboard();
3837 + BOOL CloseDesktop(HDESK);
3838 + BOOL CloseWindow(HWND);
3839 + BOOL CloseWindowStation(HWINSTA);
3840 + int CopyAcceleratorTableA(HACCEL, LPACCEL, int);
3841 + int CopyAcceleratorTableW(HACCEL, LPACCEL, int);
3842 +
3843 + HICON CopyIcon(HICON);
3844 + HANDLE CopyImage(HANDLE, UINT, int, int, UINT);
3845 + BOOL CopyRect(LPRECT, LPCRECT);
3846 + int CountClipboardFormats();
3847 + HACCEL CreateAcceleratorTableA(LPACCEL, int);
3848 + HACCEL CreateAcceleratorTableW(LPACCEL, int);
3849 + BOOL CreateCaret(HWND, HBITMAP, int, int);
3850 + HCURSOR CreateCursor(HINSTANCE, int, int, int, int, PCVOID, PCVOID);
3851 +
3852 + HDESK CreateDesktopA(LPCSTR, LPCSTR, LPDEVMODEA, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES);
3853 + HDESK CreateDesktopW(LPCWSTR, LPCWSTR, LPDEVMODEW, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES);
3854 +
3855 + HWND CreateDialogParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM);
3856 + HWND CreateDialogParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM);
3857 + HWND CreateDialogIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3858 + HWND CreateDialogIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3859 +
3860 + HICON CreateIcon(HINSTANCE, int, int, BYTE, BYTE, const(BYTE)*, BYTE*);
3861 + HICON CreateIconFromResource(PBYTE, DWORD, BOOL, DWORD);
3862 + HICON CreateIconFromResourceEx(PBYTE, DWORD, BOOL, DWORD, int, int, UINT);
3863 + HICON CreateIconIndirect(PICONINFO);
3864 + HWND CreateMDIWindowA(LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM);
3865 + HWND CreateMDIWindowW(LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HINSTANCE, LPARAM);
3866 + HMENU CreateMenu();
3867 + HMENU CreatePopupMenu();
3868 +
3869 + HWND CreateWindowExA(DWORD, LPCSTR, LPCSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID);
3870 + HWND CreateWindowExW(DWORD, LPCWSTR, LPCWSTR, DWORD, int, int, int, int, HWND, HMENU, HINSTANCE, LPVOID);
3871 +
3872 + HWINSTA CreateWindowStationA(LPSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES);
3873 + HWINSTA CreateWindowStationW(LPWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES);
3874 + LRESULT DefDlgProcA(HWND, UINT, WPARAM, LPARAM);
3875 + LRESULT DefDlgProcW(HWND, UINT, WPARAM, LPARAM);
3876 + HDWP DeferWindowPos(HDWP, HWND, HWND, int, int, int, int, UINT);
3877 + LRESULT DefFrameProcA(HWND, HWND, UINT, WPARAM, LPARAM);
3878 + LRESULT DefFrameProcW(HWND, HWND, UINT, WPARAM, LPARAM);
3879 +
3880 + LRESULT DefMDIChildProcA(HWND, UINT, WPARAM, LPARAM);
3881 + LRESULT DefMDIChildProcW(HWND, UINT, WPARAM, LPARAM);
3882 + LRESULT DefWindowProcA(HWND, UINT, WPARAM, LPARAM);
3883 + LRESULT DefWindowProcW(HWND, UINT, WPARAM, LPARAM);
3884 + BOOL DeleteMenu(HMENU, UINT, UINT);
3885 + BOOL DeregisterShellHookWindow(HWND);
3886 + BOOL DestroyAcceleratorTable(HACCEL);
3887 + BOOL DestroyCaret();
3888 + BOOL DestroyCursor(HCURSOR);
3889 + BOOL DestroyIcon(HICON);
3890 + BOOL DestroyMenu(HMENU);
3891 + BOOL DestroyWindow(HWND);
3892 +
3893 + INT_PTR DialogBoxParamA(HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM);
3894 + INT_PTR DialogBoxParamW(HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM);
3895 + INT_PTR DialogBoxIndirectParamA(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3896 + INT_PTR DialogBoxIndirectParamW(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM);
3804 3897
3805 3898 } // extern (Windows)
3806 3899
3807 -HCURSOR CopyCursor(HCURSOR c)
3808 -{
3900 +HCURSOR CopyCursor()(HCURSOR c) {
3809 3901 return cast(HCURSOR)CopyIcon(cast(HICON)c);
3810 3902 }
3811 3903
3812 -HWND CreateDialogA(HINSTANCE h, LPCSTR n, HWND w, DLGPROC f)
3813 -{
3904 +HWND CreateDialogA()(HINSTANCE h, LPCSTR n, HWND w, DLGPROC f) {
3814 3905 return CreateDialogParamA(h, n, w, f, 0);
3815 3906 }
3816 3907
3817 -HWND CreateDialogW(HINSTANCE h, LPCWSTR n, HWND w, DLGPROC f)
3818 -{
3908 +HWND CreateDialogW()(HINSTANCE h, LPCWSTR n, HWND w, DLGPROC f) {
3819 3909 return CreateDialogParamW(h, n, w, f, 0);
3820 3910 }
3821 3911
3822 -HWND CreateDialogIndirectA(HINSTANCE h, LPCDLGTEMPLATE t, HWND w , DLGPROC f)
3823 -{
3912 +HWND CreateDialogIndirectA()(HINSTANCE h, LPCDLGTEMPLATE t, HWND w, DLGPROC f) {
3824 3913 return CreateDialogIndirectParamA(h, t, w, f, 0);
3825 3914 }
3826 3915
3827 -HWND CreateDialogIndirectW(HINSTANCE h, LPCDLGTEMPLATE t, HWND w , DLGPROC f)
3828 -{
3916 +HWND CreateDialogIndirectW()(HINSTANCE h, LPCDLGTEMPLATE t, HWND w, DLGPROC f) {
3829 3917 return CreateDialogIndirectParamW(h, t, w, f, 0);
3830 3918 }
3831 3919
3832 -
3833 -HWND CreateWindowA(LPCSTR a, LPCSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k)
3834 -{
3920 +HWND CreateWindowA()(LPCSTR a, LPCSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k) {
3835 3921 return CreateWindowExA(0, a, b, c, d, e, f, g, h, i, j, k);
3836 3922 }
3837 3923
3838 -HWND CreateWindowW(LPCWSTR a, LPCWSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k)
3839 -{
3924 +HWND CreateWindowW()(LPCWSTR a, LPCWSTR b, DWORD c, int d, int e, int f, int g, HWND h, HMENU i, HINSTANCE j, LPVOID k) {
3840 3925 return CreateWindowExW(0, a, b, c, d, e, f, g, h, i, j, k);
3841 3926 }
3842 3927
3843 -int DialogBoxA(HINSTANCE i, LPCSTR t, HWND p, DLGPROC f)
3844 -{
3928 +INT_PTR DialogBoxA()(HINSTANCE i, LPCSTR t, HWND p, DLGPROC f) {
3845 3929 return DialogBoxParamA(i, t, p, f, 0);
3846 3930 }
3847 3931
3848 -int DialogBoxW(HINSTANCE i, LPCWSTR t, HWND p, DLGPROC f)
3849 -{
3932 +INT_PTR DialogBoxW()(HINSTANCE i, LPCWSTR t, HWND p, DLGPROC f) {
3850 3933 return DialogBoxParamW(i, t, p, f, 0);
3851 3934 }
3852 3935
3853 -int DialogBoxIndirectA(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f)
3854 -{
3936 +INT_PTR DialogBoxIndirectA()(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f) {
3855 3937 return DialogBoxIndirectParamA(i, t, p, f, 0);
3856 3938 }
3857 3939
3858 -int DialogBoxIndirectW(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f)
3859 -{
3940 +INT_PTR DialogBoxIndirectW()(HINSTANCE i, LPCDLGTEMPLATE t, HWND p, DLGPROC f) {
3860 3941 return DialogBoxIndirectParamW(i, t, p, f, 0);
3861 3942 }
3862 3943
3863 -BOOL ExitWindows(UINT r, DWORD c)
3864 -{
3944 +BOOL ExitWindows()(UINT r, DWORD c) {
3865 3945 return ExitWindowsEx(EWX_LOGOFF, 0);
3866 3946 }
3867 3947 alias GetWindow GetNextWindow;
3868 3948
3869 3949 extern (Windows):
3870 -LONG DispatchMessageA( CPtr!(MSG));
3871 -LONG DispatchMessageW( CPtr!(MSG));
3950 +LONG DispatchMessageA(const(MSG)*);
3951 +LONG DispatchMessageW(const(MSG)*);
3872 3952 int DlgDirListA(HWND, LPSTR, int, int, UINT);
3873 3953 int DlgDirListW(HWND, LPWSTR, int, int, UINT);
3874 3954 int DlgDirListComboBoxA(HWND, LPSTR, int, int, UINT);
3875 3955 int DlgDirListComboBoxW(HWND, LPWSTR, int, int, UINT);
3876 3956 BOOL DlgDirSelectComboBoxExA(HWND, LPSTR, int, int);
3877 3957 BOOL DlgDirSelectComboBoxExW(HWND, LPWSTR, int, int);
3878 3958 BOOL DlgDirSelectExA(HWND, LPSTR, int, int);
................................................................................
3894 3974 int DrawTextExA(HDC, LPSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS);
3895 3975 int DrawTextExW(HDC, LPWSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS);
3896 3976 BOOL EmptyClipboard();
3897 3977 BOOL EnableMenuItem(HMENU, UINT, UINT);
3898 3978 BOOL EnableScrollBar(HWND, UINT, UINT);
3899 3979 BOOL EnableWindow(HWND, BOOL);
3900 3980 BOOL EndDeferWindowPos(HDWP);
3901 -BOOL EndDialog(HWND, int);
3981 +BOOL EndDialog(HWND, INT_PTR);
3902 3982 BOOL EndMenu();
3903 -BOOL EndPaint(HWND, CPtr!(PAINTSTRUCT));
3983 +BOOL EndPaint(HWND, const(PAINTSTRUCT)*);
3904 3984 BOOL EnumChildWindows(HWND, ENUMWINDOWSPROC, LPARAM);
3905 3985 UINT EnumClipboardFormats(UINT);
3906 3986 BOOL EnumDesktopsA(HWINSTA, DESKTOPENUMPROCA, LPARAM);
3907 3987 BOOL EnumDesktopsW(HWINSTA, DESKTOPENUMPROCW, LPARAM);
3908 3988 BOOL EnumDesktopWindows(HDESK, ENUMWINDOWSPROC, LPARAM);
3909 3989 BOOL EnumDisplaySettingsA(LPCSTR, DWORD, PDEVMODEA);
3910 3990 BOOL EnumDisplaySettingsW(LPCWSTR, DWORD, PDEVMODEW);
................................................................................
4057 4137 UINT GetWindowModuleFileNameW(HWND, LPWSTR, UINT);
4058 4138 BOOL GrayStringA(HDC, HBRUSH, GRAYSTRINGPROC, LPARAM, int, int, int, int, int);
4059 4139 BOOL GrayStringW(HDC, HBRUSH, GRAYSTRINGPROC, LPARAM, int, int, int, int, int);
4060 4140 BOOL HideCaret(HWND);
4061 4141 BOOL HiliteMenuItem(HWND, HMENU, UINT, UINT);
4062 4142 BOOL InflateRect(LPRECT, int, int);
4063 4143 BOOL InSendMessage();
4064 -BOOL InsertMenuA(HMENU, UINT, UINT, UINT, LPCSTR);
4065 -BOOL InsertMenuW(HMENU, UINT, UINT, UINT, LPCWSTR);
4144 +BOOL InsertMenuA(HMENU, UINT, UINT, UINT_PTR, LPCSTR);
4145 +BOOL InsertMenuW(HMENU, UINT, UINT, UINT_PTR, LPCWSTR);
4066 4146 BOOL InsertMenuItemA(HMENU, UINT, BOOL, LPCMENUITEMINFOA);
4067 4147 BOOL InsertMenuItemW(HMENU, UINT, BOOL, LPCMENUITEMINFOW);
4068 4148 INT InternalGetWindowText(HWND, LPWSTR, INT);
4069 4149 BOOL IntersectRect(LPRECT, LPCRECT, LPCRECT);
4070 4150 BOOL InvalidateRect(HWND, LPCRECT, BOOL);
4071 4151 BOOL InvalidateRgn(HWND, HRGN, BOOL);
4072 4152 BOOL InvertRect(HDC, LPCRECT);
................................................................................
4088 4168 BOOL IsRectEmpty(LPCRECT);
4089 4169 BOOL IsWindow(HWND);
4090 4170 BOOL IsWindowEnabled(HWND);
4091 4171 BOOL IsWindowUnicode(HWND);
4092 4172 BOOL IsWindowVisible(HWND);
4093 4173 BOOL IsZoomed(HWND);
4094 4174 void keybd_event(BYTE, BYTE, DWORD, DWORD);
4095 -BOOL KillTimer(HWND, UINT);
4175 +BOOL KillTimer(HWND, UINT_PTR);
4096 4176 HACCEL LoadAcceleratorsA(HINSTANCE, LPCSTR);
4097 4177 HACCEL LoadAcceleratorsW(HINSTANCE, LPCWSTR);
4098 4178 HBITMAP LoadBitmapA(HINSTANCE, LPCSTR);
4099 4179 HBITMAP LoadBitmapW(HINSTANCE, LPCWSTR);
4100 4180 HCURSOR LoadCursorA(HINSTANCE, LPCSTR);
4101 4181 HCURSOR LoadCursorFromFileA(LPCSTR);
4102 4182 HCURSOR LoadCursorFromFileW(LPCWSTR);
................................................................................
4104 4184 HICON LoadIconA(HINSTANCE, LPCSTR);
4105 4185 HICON LoadIconW(HINSTANCE, LPCWSTR);
4106 4186 HANDLE LoadImageA(HINSTANCE, LPCSTR, UINT, int, int, UINT);
4107 4187 HANDLE LoadImageW(HINSTANCE, LPCWSTR, UINT, int, int, UINT);
4108 4188 HKL LoadKeyboardLayoutA(LPCSTR, UINT);
4109 4189 HKL LoadKeyboardLayoutW(LPCWSTR, UINT);
4110 4190 HMENU LoadMenuA(HINSTANCE, LPCSTR);
4111 -HMENU LoadMenuIndirectA( CPtr!(MENUTEMPLATE));
4112 -HMENU LoadMenuIndirectW( CPtr!(MENUTEMPLATE));
4191 +HMENU LoadMenuIndirectA(const(MENUTEMPLATE)*);
4192 +HMENU LoadMenuIndirectW(const(MENUTEMPLATE)*);
4113 4193 HMENU LoadMenuW(HINSTANCE, LPCWSTR);
4114 4194 int LoadStringA(HINSTANCE, UINT, LPSTR, int);
4115 4195 int LoadStringW(HINSTANCE, UINT, LPWSTR, int);
4116 4196 BOOL LockWindowUpdate(HWND);
4117 4197 int LookupIconIdFromDirectory(PBYTE, BOOL);
4118 4198 int LookupIconIdFromDirectoryEx(PBYTE, BOOL, int, int, UINT);
4119 4199 BOOL MapDialogRect(HWND, LPRECT);
................................................................................
4124 4204 int MapWindowPoints(HWND, HWND, LPPOINT, UINT);
4125 4205 int MenuItemFromPoint(HWND, HMENU, POINT);
4126 4206 BOOL MessageBeep(UINT);
4127 4207 int MessageBoxA(HWND, LPCSTR, LPCSTR, UINT);
4128 4208 int MessageBoxW(HWND, LPCWSTR, LPCWSTR, UINT);
4129 4209 int MessageBoxExA(HWND, LPCSTR, LPCSTR, UINT, WORD);
4130 4210 int MessageBoxExW(HWND, LPCWSTR, LPCWSTR, UINT, WORD);
4131 -int MessageBoxIndirectA(CPtr!(MSGBOXPARAMSA));
4132 -int MessageBoxIndirectW(CPtr!(MSGBOXPARAMSW));
4133 -BOOL ModifyMenuA(HMENU, UINT, UINT, UINT, LPCSTR);
4134 -BOOL ModifyMenuW(HMENU, UINT, UINT, UINT, LPCWSTR);
4211 +int MessageBoxIndirectA(const(MSGBOXPARAMSA)*);
4212 +int MessageBoxIndirectW(const(MSGBOXPARAMSW)*);
4213 +BOOL ModifyMenuA(HMENU, UINT, UINT, UINT_PTR, LPCSTR);
4214 +BOOL ModifyMenuW(HMENU, UINT, UINT, UINT_PTR, LPCWSTR);
4135 4215 void mouse_event(DWORD, DWORD, DWORD, DWORD, ULONG_PTR);
4136 4216 BOOL MoveWindow(HWND, int, int, int, int, BOOL);
4137 -DWORD MsgWaitForMultipleObjects(DWORD, CPtr!(HANDLE), BOOL, DWORD, DWORD);
4138 -DWORD MsgWaitForMultipleObjectsEx(DWORD, CPtr!(HANDLE), DWORD, DWORD, DWORD);
4217 +DWORD MsgWaitForMultipleObjects(DWORD, const(HANDLE)*, BOOL, DWORD, DWORD);
4218 +DWORD MsgWaitForMultipleObjectsEx(DWORD, const(HANDLE)*, DWORD, DWORD, DWORD);
4139 4219 DWORD OemKeyScan(WORD);
4140 4220 BOOL OemToCharA(LPCSTR, LPSTR);
4141 4221 BOOL OemToCharBuffA(LPCSTR, LPSTR, DWORD);
4142 4222 BOOL OemToCharBuffW(LPCSTR, LPWSTR, DWORD);
4143 4223 BOOL OemToCharW(LPCSTR, LPWSTR);
4144 4224 BOOL OffsetRect(LPRECT, int, int);
4145 4225 BOOL OpenClipboard(HWND);
................................................................................
4158 4238 BOOL PostThreadMessageA(DWORD, UINT, WPARAM, LPARAM);
4159 4239 BOOL PostThreadMessageW(DWORD, UINT, WPARAM, LPARAM);
4160 4240 BOOL PtInRect(LPCRECT, POINT);
4161 4241 HWND RealChildWindowFromPoint(HWND, POINT);
4162 4242 UINT RealGetWindowClassA(HWND, LPSTR, UINT);
4163 4243 UINT RealGetWindowClassW(HWND, LPWSTR, UINT);
4164 4244 BOOL RedrawWindow(HWND, LPCRECT, HRGN, UINT);
4165 -ATOM RegisterClassA(CPtr!(WNDCLASSA));
4166 -ATOM RegisterClassW(CPtr!(WNDCLASSW));
4167 -ATOM RegisterClassExA(CPtr!(WNDCLASSEXA));
4168 -ATOM RegisterClassExW(CPtr!(WNDCLASSEXW));
4245 +ATOM RegisterClassA(const(WNDCLASSA)*);
4246 +ATOM RegisterClassW(const(WNDCLASSW)*);
4247 +ATOM RegisterClassExA(const(WNDCLASSEXA)*);
4248 +ATOM RegisterClassExW(const(WNDCLASSEXW)*);
4169 4249 UINT RegisterClipboardFormatA(LPCSTR);
4170 4250 UINT RegisterClipboardFormatW(LPCWSTR);
4171 4251 BOOL RegisterHotKey(HWND, int, UINT, UINT);
4172 4252 UINT RegisterWindowMessageA(LPCSTR);
4173 4253 UINT RegisterWindowMessageW(LPCWSTR);
4174 4254 BOOL ReleaseCapture();
4175 4255 int ReleaseDC(HWND, HDC);
................................................................................
4212 4292 BOOL SetKeyboardState(PBYTE);
4213 4293 BOOL SetMenu(HWND, HMENU);
4214 4294 BOOL SetMenuContextHelpId(HMENU, DWORD);
4215 4295 BOOL SetMenuDefaultItem(HMENU, UINT, UINT);
4216 4296 BOOL SetMenuInfo(HMENU, LPCMENUINFO);
4217 4297 BOOL SetMenuItemBitmaps(HMENU, UINT, UINT, HBITMAP, HBITMAP);
4218 4298 BOOL SetMenuItemInfoA(HMENU, UINT, BOOL, LPCMENUITEMINFOA);
4219 -BOOL SetMenuItemInfoW( HMENU, UINT, BOOL, LPCMENUITEMINFOW);
4299 +BOOL SetMenuItemInfoW(HMENU, UINT, BOOL, LPCMENUITEMINFOW);
4220 4300 LPARAM SetMessageExtraInfo(LPARAM);
4221 4301 BOOL SetMessageQueue(int);
4222 4302 HWND SetParent(HWND, HWND);
4223 4303 BOOL SetProcessWindowStation(HWINSTA);
4224 4304 BOOL SetPropA(HWND, LPCSTR, HANDLE);
4225 4305 BOOL SetPropW(HWND, LPCWSTR, HANDLE);
4226 4306 BOOL SetRect(LPRECT, int, int, int, int);
4227 4307 BOOL SetRectEmpty(LPRECT);
4228 4308 int SetScrollInfo(HWND, int, LPCSCROLLINFO, BOOL);
4229 4309 int SetScrollPos(HWND, int, int, BOOL);
4230 4310 BOOL SetScrollRange(HWND, int, int, int, BOOL);
4231 -BOOL SetSysColors(int, CPtr!(INT) , CPtr!(COLORREF) );
4311 +BOOL SetSysColors(int, const(INT)*, const(COLORREF)*);
4232 4312 BOOL SetSystemCursor(HCURSOR, DWORD);
4233 4313 BOOL SetThreadDesktop(HDESK);
4234 -UINT SetTimer(HWND, UINT, UINT, TIMERPROC);
4314 +UINT_PTR SetTimer(HWND, UINT_PTR, UINT, TIMERPROC);
4235 4315 BOOL SetUserObjectInformationA(HANDLE, int, PVOID, DWORD);
4236 4316 BOOL SetUserObjectInformationW(HANDLE, int, PVOID, DWORD);
4237 4317 BOOL SetUserObjectSecurity(HANDLE, PSECURITY_INFORMATION, PSECURITY_DESCRIPTOR);
4238 4318 BOOL SetWindowContextHelpId(HWND, DWORD);
4239 4319 LONG SetWindowLongA(HWND, int, LONG);
4240 4320 LONG SetWindowLongW(HWND, int, LONG);
4241 -BOOL SetWindowPlacement(HWND hWnd, CPtr!(WINDOWPLACEMENT));
4321 +BOOL SetWindowPlacement(HWND hWnd, const(WINDOWPLACEMENT)*);
4242 4322 BOOL SetWindowPos(HWND, HWND, int, int, int, int, UINT);
4243 4323 int SetWindowRgn(HWND, HRGN, BOOL);
4244 4324 HHOOK SetWindowsHookA(int, HOOKPROC);
4245 4325 HHOOK SetWindowsHookW(int, HOOKPROC);
4246 4326 HHOOK SetWindowsHookExA(int, HOOKPROC, HINSTANCE, DWORD);
4247 4327 HHOOK SetWindowsHookExW(int, HOOKPROC, HINSTANCE, DWORD);
4248 4328 BOOL SetWindowTextA(HWND, LPCSTR);
................................................................................
4257 4337 BOOL SubtractRect(LPRECT, LPCRECT, LPCRECT);
4258 4338 BOOL SwapMouseButton(BOOL);
4259 4339 BOOL SwitchDesktop(HDESK);
4260 4340 BOOL SystemParametersInfoA(UINT, UINT, PVOID, UINT);
4261 4341 BOOL SystemParametersInfoW(UINT, UINT, PVOID, UINT);
4262 4342 LONG TabbedTextOutA(HDC, int, int, LPCSTR, int, int, LPINT, int);
4263 4343 LONG TabbedTextOutW(HDC, int, int, LPCWSTR, int, int, LPINT, int);
4264 -WORD TileWindows(HWND, UINT, LPCRECT, UINT, CPtr!(HWND) );
4344 +WORD TileWindows(HWND, UINT, LPCRECT, UINT, const(HWND)*);
4265 4345 int ToAscii(UINT, UINT, PBYTE, LPWORD, UINT);
4266 4346 int ToAsciiEx(UINT, UINT, PBYTE, LPWORD, UINT, HKL);
4267 4347 int ToUnicode(UINT, UINT, PBYTE, LPWSTR, int, UINT);
4268 4348 int ToUnicodeEx(UINT, UINT, PBYTE, LPWSTR, int, UINT, HKL);
4269 4349 BOOL TrackMouseEvent(LPTRACKMOUSEEVENT);
4270 4350 BOOL TrackPopupMenu(HMENU, UINT, int, int, int, HWND, LPCRECT);
4271 4351 BOOL TrackPopupMenuEx(HMENU, UINT, int, int, HWND, LPTPMPARAMS);
4272 4352 int TranslateAcceleratorA(HWND, HACCEL, LPMSG);
4273 4353 int TranslateAcceleratorW(HWND, HACCEL, LPMSG);
4274 4354 BOOL TranslateMDISysAccel(HWND, LPMSG);
4275 -BOOL TranslateMessage( CPtr!(MSG));
4355 +BOOL TranslateMessage(const(MSG)*);
4276 4356 BOOL UnhookWindowsHook(int, HOOKPROC);
4277 4357 BOOL UnhookWindowsHookEx(HHOOK);
4278 4358 BOOL UnionRect(LPRECT, LPCRECT, LPCRECT);
4279 4359 BOOL UnloadKeyboardLayout(HKL);
4280 4360 BOOL UnregisterClassA(LPCSTR, HINSTANCE);
4281 4361 BOOL UnregisterClassW(LPCWSTR, HINSTANCE);
4282 4362 BOOL UnregisterHotKey(HWND, int);
................................................................................
4298 4378 extern (C) {
4299 4379 int wsprintfA(LPSTR, LPCSTR, ...);
4300 4380 int wsprintfW(LPWSTR, LPCWSTR, ...);
4301 4381 }
4302 4382
4303 4383
4304 4384 // These shouldn't be necessary for D.
4305 -alias char* va_list_;
4385 +alias TypeDef!(char*) va_list_;
4306 4386 int wvsprintfA(LPSTR, LPCSTR, va_list_ arglist);
4307 4387 int wvsprintfW(LPWSTR, LPCWSTR, va_list_ arglist);
4308 4388
4309 4389
4310 -static if (_WIN32_WINDOWS == 0x400) {
4311 -// On Win95, there's only one version.
4312 -int BroadcastSystemMessage(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
4313 -}
4314 -static if (_WIN32_WINNT >= 0x400) {
4315 4390 int BroadcastSystemMessageA(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
4316 4391 int BroadcastSystemMessageW(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
4317 -}
4318 -static if (_WIN32_WINNT >= 0x501) {
4319 -int BroadcastSystemMessageExA(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO);
4320 -int BroadcastSystemMessageExW(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO);
4392 +
4393 +static if (_WIN32_WINNT >= 0x403) {
4394 + UINT SendInput(UINT, LPINPUT, int);
4321 4395 }
4322 4396
4323 -static if (_WIN32_WINNT >= 0x403) {
4324 -UINT SendInput(UINT, LPINPUT, int);
4325 -}
4326 -static if (_WIN32_WINNT >= 0x500) {
4327 -BOOL AnimateWindow(HWND, DWORD, DWORD);
4328 -BOOL EndTask(HWND, BOOL, BOOL);
4329 -DWORD GetGuiResources(HANDLE, DWORD);
4330 -HWND GetShellWindow();
4331 -BOOL GetProcessDefaultLayout(DWORD*);
4332 -BOOL IsHungAppWindow(HWND);
4333 -BOOL LockWorkStation();
4334 -HDEVNOTIFY RegisterDeviceNotificationA(HANDLE, LPVOID, DWORD);
4335 -HDEVNOTIFY RegisterDeviceNotificationW(HANDLE, LPVOID, DWORD);
4336 -BOOL SetProcessDefaultLayout(DWORD);
4337 -void SwitchToThisWindow(HWND, BOOL);
4338 -BOOL SetLayeredWindowAttributes(HWND, COLORREF, BYTE, DWORD);
4339 -BOOL UpdateLayeredWindow(HWND, HDC, POINT*, SIZE*, HDC, POINT*, COLORREF, BLENDFUNCTION*, DWORD);
4340 -BOOL UserHandleGrantAccess(HANDLE, HANDLE, BOOL);
4341 -}
4342 -static if (_WIN32_WINNT >= 0x501) {
4343 -UINT GetRawInputBuffer(PRAWINPUT, PUINT, UINT);
4344 -UINT GetRawInputData(HRAWINPUT, UINT, LPVOID, PUINT, UINT);
4345 -UINT GetRawInputDeviceInfoA(HANDLE, UINT, LPVOID, PUINT);
4346 -UINT GetRawInputDeviceInfoW(HANDLE, UINT, LPVOID, PUINT);
4347 -UINT GetRawInputDeviceList(PRAWINPUTDEVICELIST, PUINT, UINT);
4348 -UINT GetRegisteredRawInputDevices(PRAWINPUTDEVICE, PUINT, UINT);
4349 -LRESULT DefRawInputProc(PRAWINPUT*, INT, UINT);
4350 -BOOL RegisterRawInputDevices(PCRAWINPUTDEVICE, UINT, UINT);
4351 -
4352 -BOOL IsGUIThread(BOOL);
4353 -BOOL IsWinEventHookInstalled(DWORD);
4354 -BOOL PrintWindow(HWND, HDC, UINT);
4355 -BOOL GetLayeredWindowAttributes(HWND, COLORREF*, BYTE*, DWORD*);
4356 -}
4357 -static if (WINVER >= 0x410) {
4397 +static if (_WIN32_WINNT >= 0x410) {
4358 4398 BOOL EnumDisplayMonitors(HDC, LPCRECT, MONITORENUMPROC, LPARAM);
4359 4399 BOOL GetMonitorInfoA(HMONITOR, LPMONITORINFO);
4360 4400 BOOL GetMonitorInfoA(HMONITOR, LPMONITORINFOEXA);
4361 4401 BOOL GetMonitorInfoW(HMONITOR, LPMONITORINFO);
4362 4402 BOOL GetMonitorInfoW(HMONITOR, LPMONITORINFOEXW);
4363 4403 HMONITOR MonitorFromPoint(POINT, DWORD);
4364 4404 HMONITOR MonitorFromRect(LPCRECT, DWORD);
4365 4405 HMONITOR MonitorFromWindow(HWND, DWORD);
4366 4406 }
4367 -static if (WINVER >= 0x500) {
4368 -BOOL GetGUIThreadInfo(DWORD, LPGUITHREADINFO);
4369 -void NotifyWinEvent(DWORD, HWND, LONG, LONG);
4370 -HWINEVENTHOOK SetWinEventHook(UINT, UINT, HMODULE, WINEVENTPROC, DWORD, DWORD, UINT);
4371 -BOOL UnhookWinEvent(HWINEVENTHOOK);
4372 -BOOL UnregisterDeviceNotification(HANDLE);
4373 -}
4374 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
4375 -BOOL EnumDisplaySettingsExA(LPCSTR, DWORD, LPDEVMODEA, DWORD);
4376 -BOOL EnumDisplaySettingsExW(LPCWSTR, DWORD, LPDEVMODEW, DWORD);
4377 -BOOL FlashWindowEx(PFLASHWINFO);
4378 -DWORD GetClipboardSequenceNumber();
4379 -DWORD InSendMessageEx(LPVOID);
4407 +
4408 +static if (_WIN32_WINNT >= 0x500) {
4409 + BOOL AllowSetForegroundWindow(DWORD);
4410 + BOOL AnimateWindow(HWND, DWORD, DWORD);
4411 + BOOL EndTask(HWND, BOOL, BOOL);
4412 + BOOL EnumDisplaySettingsExA(LPCSTR, DWORD, LPDEVMODEA, DWORD);
4413 + BOOL EnumDisplaySettingsExW(LPCWSTR, DWORD, LPDEVMODEW, DWORD);
4414 + DWORD GetClipboardSequenceNumber();
4415 + DWORD GetGuiResources(HANDLE, DWORD);
4416 + BOOL GetGUIThreadInfo(DWORD, LPGUITHREADINFO);
4417 + int GetMouseMovePointsEx(UINT, LPMOUSEMOVEPOINT, LPMOUSEMOVEPOINT, int, DWORD);
4418 + BOOL GetProcessDefaultLayout(DWORD*);
4419 + HWND GetShellWindow();
4420 + BOOL IsHungAppWindow(HWND);
4421 + DWORD InSendMessageEx(LPVOID);
4422 + BOOL LockSetForegroundWindow(UINT);
4423 + BOOL LockWorkStation();
4424 + void NotifyWinEvent(DWORD, HWND, LONG, LONG);
4425 + HDEVNOTIFY RegisterDeviceNotificationA(HANDLE, LPVOID, DWORD);
4426 + HDEVNOTIFY RegisterDeviceNotificationW(HANDLE, LPVOID, DWORD);
4427 + BOOL SetProcessDefaultLayout(DWORD);
4428 + HWINEVENTHOOK SetWinEventHook(UINT, UINT, HMODULE, WINEVENTPROC, DWORD, DWORD, UINT);
4429 + void SwitchToThisWindow(HWND, BOOL);
4430 + BOOL SetLayeredWindowAttributes(HWND, COLORREF, BYTE, DWORD);
4431 + BOOL UpdateLayeredWindow(HWND, HDC, POINT*, SIZE*, HDC, POINT*, COLORREF, BLENDFUNCTION*, DWORD);
4432 + BOOL UserHandleGrantAccess(HANDLE, HANDLE, BOOL);
4433 + BOOL UnhookWinEvent(HWINEVENTHOOK);
4434 + BOOL UnregisterDeviceNotification(HANDLE);
4380 4435 }
4381 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x490)) {
4382 -BOOL AllowSetForegroundWindow(DWORD);
4383 -BOOL LockSetForegroundWindow(UINT);
4384 -int GetMouseMovePointsEx(UINT, LPMOUSEMOVEPOINT, LPMOUSEMOVEPOINT, int, DWORD);
4436 +
4437 +static if (_WIN32_WINNT >= 0x501) {
4438 + int BroadcastSystemMessageExA(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO);
4439 + int BroadcastSystemMessageExW(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO);
4440 + LRESULT DefRawInputProc(PRAWINPUT*, INT, UINT);
4441 + BOOL FlashWindowEx(PFLASHWINFO);
4442 + BOOL GetLayeredWindowAttributes(HWND, COLORREF*, BYTE*, DWORD*);
4443 + UINT GetRawInputBuffer(PRAWINPUT, PUINT, UINT);
4444 + UINT GetRawInputData(HRAWINPUT, UINT, LPVOID, PUINT, UINT);
4445 + UINT GetRawInputDeviceInfoA(HANDLE, UINT, LPVOID, PUINT);
4446 + UINT GetRawInputDeviceInfoW(HANDLE, UINT, LPVOID, PUINT);
4447 + UINT GetRawInputDeviceList(PRAWINPUTDEVICELIST, PUINT, UINT);
4448 + UINT GetRegisteredRawInputDevices(PRAWINPUTDEVICE, PUINT, UINT);
4449 + BOOL IsGUIThread(BOOL);
4450 + BOOL IsWinEventHookInstalled(DWORD);
4451 + BOOL PrintWindow(HWND, HDC, UINT);
4452 + BOOL RegisterRawInputDevices(PCRAWINPUTDEVICE, UINT, UINT);
4385 4453 }
4386 4454
4387 4455 version (Win64) {
4388 -LONG_PTR GetWindowLongPtrA(HWND, int);
4389 -LONG_PTR GetWindowLongPtrW(HWND, int);
4390 -LONG_PTR SetWindowLongPtrA(HWND, int, LONG_PTR);
4391 -LONG_PTR SetWindowLongPtrW(HWND, int, LONG_PTR);
4456 + LONG_PTR GetWindowLongPtrA(HWND, int);
4457 + LONG_PTR GetWindowLongPtrW(HWND, int);
4458 + LONG_PTR SetWindowLongPtrA(HWND, int, LONG_PTR);
4459 + LONG_PTR SetWindowLongPtrW(HWND, int, LONG_PTR);
4392 4460 } else {
4393 -alias GetWindowLongA GetWindowLongPtrA;
4394 -alias GetWindowLongW GetWindowLongPtrW;
4395 -alias SetWindowLongA SetWindowLongPtrA;
4396 -alias SetWindowLongW SetWindowLongPtrW;
4461 + alias GetWindowLongA GetWindowLongPtrA;
4462 + alias GetWindowLongW GetWindowLongPtrW;
4463 + alias SetWindowLongA SetWindowLongPtrA;
4464 + alias SetWindowLongW SetWindowLongPtrW;
4397 4465 }
4398 4466
4399 4467
4400 4468 // -----
4401 4469 // Aliases for Unicode or Ansi
4402 4470 version(Unicode) {
4403 4471
4404 -alias EDITWORDBREAKPROCW EDITWORDBREAKPROC;
4405 -alias PROPENUMPROCW PROPENUMPROC;
4406 -alias PROPENUMPROCEXW PROPENUMPROCEX;
4407 -alias DESKTOPENUMPROCW DESKTOPENUMPROC;
4408 -alias WINSTAENUMPROCW WINSTAENUMPROC;
4409 -alias MAKEINTRESOURCEW MAKEINTRESOURCE;
4472 + alias EDITWORDBREAKPROCW EDITWORDBREAKPROC;
4473 + alias PROPENUMPROCW PROPENUMPROC;
4474 + alias PROPENUMPROCEXW PROPENUMPROCEX;
4475 + alias DESKTOPENUMPROCW DESKTOPENUMPROC;
4476 + alias WINSTAENUMPROCW WINSTAENUMPROC;
4477 + alias MAKEINTRESOURCEW MAKEINTRESOURCE;
4410 4478
4411 -alias WNDCLASSW WNDCLASS;
4412 -alias WNDCLASSEXW WNDCLASSEX;
4413 -alias MENUITEMINFOW MENUITEMINFO;
4414 -alias LPCMENUITEMINFOW LPCMENUITEMINFO;
4415 -alias MSGBOXPARAMSW MSGBOXPARAMS;
4416 -alias HIGHCONTRASTW HIGHCONTRAST;
4417 -alias SERIALKEYSW SERIALKEYS;
4418 -alias SOUNDSENTRYW SOUNDSENTRY;
4419 -alias CREATESTRUCTW CREATESTRUCT;
4420 -alias CBT_CREATEWNDW CBT_CREATEWND;
4421 -alias MDICREATESTRUCTW MDICREATESTRUCT;
4422 -alias MULTIKEYHELPW MULTIKEYHELP;
4423 -alias MONITORINFOEXW MONITORINFOEX;
4424 -alias ICONMETRICSW ICONMETRICS;
4425 -alias NONCLIENTMETRICSW NONCLIENTMETRICS;
4479 + alias WNDCLASSW WNDCLASS;
4480 + alias WNDCLASSEXW WNDCLASSEX;
4481 + alias MENUITEMINFOW MENUITEMINFO;
4482 + alias LPCMENUITEMINFOW LPCMENUITEMINFO;
4483 + alias MSGBOXPARAMSW MSGBOXPARAMS;
4484 + alias HIGHCONTRASTW HIGHCONTRAST;
4485 + alias SERIALKEYSW SERIALKEYS;
4486 + alias SOUNDSENTRYW SOUNDSENTRY;
4487 + alias CREATESTRUCTW CREATESTRUCT;
4488 + alias CBT_CREATEWNDW CBT_CREATEWND;
4489 + alias MDICREATESTRUCTW MDICREATESTRUCT;
4490 + alias MULTIKEYHELPW MULTIKEYHELP;
4491 + alias MONITORINFOEXW MONITORINFOEX;
4492 + alias ICONMETRICSW ICONMETRICS;
4493 + alias NONCLIENTMETRICSW NONCLIENTMETRICS;
4426 4494
4427 -alias AppendMenuW AppendMenu;
4428 -alias BroadcastSystemMessageW BroadcastSystemMessage;
4429 -static if (_WIN32_WINNT >= 0x501) {
4430 -alias BroadcastSystemMessageExW BroadcastSystemMessageEx;
4431 -}
4432 -alias CallMsgFilterW CallMsgFilter;
4433 -alias CallWindowProcW CallWindowProc;
4434 -alias ChangeMenuW ChangeMenu;
4435 -alias CharLowerW CharLower;
4436 -alias CharLowerBuffW CharLowerBuff;
4437 -alias CharNextW CharNext;
4438 -alias CharNextExW CharNextEx;
4439 -alias CharPrevW CharPrev;
4440 -alias CharPrevExW CharPrevEx;
4441 -alias CharToOemW CharToOem;
4442 -alias CharToOemBuffW CharToOemBuff;
4443 -alias CharUpperW CharUpper;
4444 -alias CharUpperBuffW CharUpperBuff;
4445 -alias CopyAcceleratorTableW CopyAcceleratorTable;
4446 -alias CreateAcceleratorTableW CreateAcceleratorTable;
4447 -alias CreateDialogW CreateDialog;
4448 -alias CreateDialogIndirectW CreateDialogIndirect;
4449 -alias CreateDialogIndirectParamW CreateDialogIndirectParam;
4450 -alias CreateDialogParamW CreateDialogParam;
4451 -alias CreateMDIWindowW CreateMDIWindow;
4452 -alias CreateWindowW CreateWindow;
4453 -alias CreateWindowExW CreateWindowEx;
4454 -alias CreateWindowStationW CreateWindowStation;
4455 -alias DefDlgProcW DefDlgProc;
4456 -alias DefFrameProcW DefFrameProc;
4457 -alias DefMDIChildProcW DefMDIChildProc;
4458 -alias DefWindowProcW DefWindowProc;
4459 -alias DialogBoxW DialogBox;
4460 -alias DialogBoxIndirectW DialogBoxIndirect;
4461 -alias DialogBoxIndirectParamW DialogBoxIndirectParam;
4462 -alias DialogBoxParamW DialogBoxParam;
4463 -alias DispatchMessageW DispatchMessage;
4464 -alias DlgDirListW DlgDirList;
4465 -alias DlgDirListComboBoxW DlgDirListComboBox;
4466 -alias DlgDirSelectComboBoxExW DlgDirSelectComboBoxEx;
4467 -alias DlgDirSelectExW DlgDirSelectEx;
4468 -alias DrawStateW DrawState;
4469 -alias DrawTextW DrawText;
4470 -alias DrawTextExW DrawTextEx;
4471 -alias EnumDesktopsW EnumDesktops;
4472 -alias EnumPropsW EnumProps;
4473 -alias EnumPropsExW EnumPropsEx;
4474 -alias EnumWindowStationsW EnumWindowStations;
4475 -alias FindWindowW FindWindow;
4476 -alias FindWindowExW FindWindowEx;
4477 -alias GetClassInfoW GetClassInfo;
4478 -alias GetClassInfoExW GetClassInfoEx;
4479 -alias GetClassLongW GetClassLong;
4480 -alias GetClassNameW GetClassName;
4481 -alias GetClipboardFormatNameW GetClipboardFormatName;
4482 -alias GetDlgItemTextW GetDlgItemText;
4483 -alias GetKeyboardLayoutNameW GetKeyboardLayoutName;
4484 -alias GetKeyNameTextW GetKeyNameText;
4485 -alias GetMenuItemInfoW GetMenuItemInfo;
4486 -alias GetMenuStringW GetMenuString;
4487 -alias GetMessageW GetMessage;
4488 -static if (WINVER >=0x410) {
4489 -alias GetMonitorInfoW GetMonitorInfo;
4490 -}
4491 -alias GetPropW GetProp;
4492 -static if (_WIN32_WINNT >= 0x501) {
4493 -alias GetRawInputDeviceInfoW GetRawInputDeviceInfo;
4494 -}
4495 -alias GetTabbedTextExtentW GetTabbedTextExtent;
4496 -alias GetUserObjectInformationW GetUserObjectInformation;
4497 -alias GetWindowLongW GetWindowLong;
4498 -alias GetWindowLongPtrW GetWindowLongPtr;
4499 -alias GetWindowTextW GetWindowText;
4500 -alias GetWindowTextLengthW GetWindowTextLength;
4501 -alias GetAltTabInfoW GetAltTabInfo;
4502 -alias GetWindowModuleFileNameW GetWindowModuleFileName;
4503 -alias GrayStringW GrayString;
4504 -alias InsertMenuW InsertMenu;
4505 -alias InsertMenuItemW InsertMenuItem;
4506 -alias IsCharAlphaW IsCharAlpha;
4507 -alias IsCharAlphaNumericW IsCharAlphaNumeric;
4508 -alias IsCharLowerW IsCharLower;
4509 -alias IsCharUpperW IsCharUpper;
4510 -alias IsDialogMessageW IsDialogMessage;
4511 -alias LoadAcceleratorsW LoadAccelerators;
4512 -alias LoadBitmapW LoadBitmap;
4513 -alias LoadCursorW LoadCursor;
4514 -alias LoadCursorFromFileW LoadCursorFromFile;
4515 -alias LoadIconW LoadIcon;
4516 -alias LoadImageW LoadImage;
4517 -alias LoadKeyboardLayoutW LoadKeyboardLayout;
4518 -alias LoadMenuW LoadMenu;
4519 -alias LoadMenuIndirectW LoadMenuIndirect;
4520 -alias LoadStringW LoadString;
4521 -alias MapVirtualKeyW MapVirtualKey;
4522 -alias MapVirtualKeyExW MapVirtualKeyEx;
4523 -alias MessageBoxW MessageBox;
4524 -alias MessageBoxExW MessageBoxEx;
4525 -alias MessageBoxIndirectW MessageBoxIndirect;
4526 -alias ModifyMenuW ModifyMenu;
4527 -alias OemToCharW OemToChar;
4528 -alias OemToCharBuffW OemToCharBuff;
4529 -alias OpenDesktopW OpenDesktop;
4530 -alias OpenWindowStationW OpenWindowStation;
4531 -alias PeekMessageW PeekMessage;
4532 -alias PostMessageW PostMessage;
4533 -alias PostThreadMessageW PostThreadMessage;
4534 -alias RealGetWindowClassW RealGetWindowClass;
4535 -alias RegisterClassW RegisterClass;
4536 -alias RegisterClassExW RegisterClassEx;
4537 -alias RegisterClipboardFormatW RegisterClipboardFormat;
4538 -static if (WINVER >= 0x500) {
4539 -alias RegisterDeviceNotificationW RegisterDeviceNotification;
4540 -}
4541 -alias RegisterWindowMessageW RegisterWindowMessage;
4542 -alias RemovePropW RemoveProp;
4543 -alias SendDlgItemMessageW SendDlgItemMessage;
4544 -alias SendMessageW SendMessage;
4545 -alias SendMessageCallbackW SendMessageCallback;
4546 -alias SendMessageTimeoutW SendMessageTimeout;
4547 -alias SendNotifyMessageW SendNotifyMessage;
4548 -alias SetClassLongW SetClassLong;
4549 -alias SetDlgItemTextW SetDlgItemText;
4550 -alias SetMenuItemInfoW SetMenuItemInfo;
4551 -alias SetPropW SetProp;
4552 -alias SetUserObjectInformationW SetUserObjectInformation;
4553 -alias SetWindowLongW SetWindowLong;
4554 -alias SetWindowLongPtrW SetWindowLongPtr;
4555 -alias SetWindowsHookW SetWindowsHook;
4556 -alias SetWindowsHookExW SetWindowsHookEx;
4557 -alias SetWindowTextW SetWindowText;
4558 -alias SystemParametersInfoW SystemParametersInfo;
4559 -alias TabbedTextOutW TabbedTextOut;
4560 -alias TranslateAcceleratorW TranslateAccelerator;
4561 -alias UnregisterClassW UnregisterClass;
4562 -alias VkKeyScanW VkKeyScan;
4563 -alias VkKeyScanExW VkKeyScanEx;
4564 -alias WinHelpW WinHelp;
4565 -alias wsprintfW wsprintf;
4566 -alias wvsprintfW wvsprintf;
4495 + alias AppendMenuW AppendMenu;
4496 + alias BroadcastSystemMessageW BroadcastSystemMessage;
4497 + static if (_WIN32_WINNT >= 0x501) {
4498 + alias BroadcastSystemMessageExW BroadcastSystemMessageEx;
4499 + }
4500 + alias CallMsgFilterW CallMsgFilter;
4501 + alias CallWindowProcW CallWindowProc;
4502 + alias ChangeMenuW ChangeMenu;
4503 + alias CharLowerW CharLower;
4504 + alias CharLowerBuffW CharLowerBuff;
4505 + alias CharNextW CharNext;
4506 + alias CharNextExW CharNextEx;
4507 + alias CharPrevW CharPrev;
4508 + alias CharPrevExW CharPrevEx;
4509 + alias CharToOemW CharToOem;
4510 + alias CharToOemBuffW CharToOemBuff;
4511 + alias CharUpperW CharUpper;
4512 + alias CharUpperBuffW CharUpperBuff;
4513 + alias CopyAcceleratorTableW CopyAcceleratorTable;
4514 + alias CreateAcceleratorTableW CreateAcceleratorTable;
4515 + alias CreateDialogW CreateDialog;
4516 + alias CreateDialogIndirectW CreateDialogIndirect;
4517 + alias CreateDialogIndirectParamW CreateDialogIndirectParam;
4518 + alias CreateDialogParamW CreateDialogParam;
4519 + alias CreateMDIWindowW CreateMDIWindow;
4520 + alias CreateWindowW CreateWindow;
4521 + alias CreateWindowExW CreateWindowEx;
4522 + alias CreateWindowStationW CreateWindowStation;
4523 + alias DefDlgProcW DefDlgProc;
4524 + alias DefFrameProcW DefFrameProc;
4525 + alias DefMDIChildProcW DefMDIChildProc;
4526 + alias DefWindowProcW DefWindowProc;
4527 + alias DialogBoxW DialogBox;
4528 + alias DialogBoxIndirectW DialogBoxIndirect;
4529 + alias DialogBoxIndirectParamW DialogBoxIndirectParam;
4530 + alias DialogBoxParamW DialogBoxParam;
4531 + alias DispatchMessageW DispatchMessage;
4532 + alias DlgDirListW DlgDirList;
4533 + alias DlgDirListComboBoxW DlgDirListComboBox;
4534 + alias DlgDirSelectComboBoxExW DlgDirSelectComboBoxEx;
4535 + alias DlgDirSelectExW DlgDirSelectEx;
4536 + alias DrawStateW DrawState;
4537 + alias DrawTextW DrawText;
4538 + alias DrawTextExW DrawTextEx;
4539 + alias EnumDesktopsW EnumDesktops;
4540 + alias EnumPropsW EnumProps;
4541 + alias EnumPropsExW EnumPropsEx;
4542 + alias EnumWindowStationsW EnumWindowStations;
4543 + alias FindWindowW FindWindow;
4544 + alias FindWindowExW FindWindowEx;
4545 + alias GetClassInfoW GetClassInfo;
4546 + alias GetClassInfoExW GetClassInfoEx;
4547 + alias GetClassLongW GetClassLong;
4548 + alias GetClassNameW GetClassName;
4549 + alias GetClipboardFormatNameW GetClipboardFormatName;
4550 + alias GetDlgItemTextW GetDlgItemText;
4551 + alias GetKeyboardLayoutNameW GetKeyboardLayoutName;
4552 + alias GetKeyNameTextW GetKeyNameText;
4553 + alias GetMenuItemInfoW GetMenuItemInfo;
4554 + alias GetMenuStringW GetMenuString;
4555 + alias GetMessageW GetMessage;
4556 + static if (_WIN32_WINNT >= 0x410) {
4557 + alias GetMonitorInfoW GetMonitorInfo;
4558 + }
4559 + alias GetPropW GetProp;
4560 + static if (_WIN32_WINNT >= 0x501) {
4561 + alias GetRawInputDeviceInfoW GetRawInputDeviceInfo;
4562 + }
4563 + alias GetTabbedTextExtentW GetTabbedTextExtent;
4564 + alias GetUserObjectInformationW GetUserObjectInformation;
4565 + alias GetWindowLongW GetWindowLong;
4566 + alias GetWindowLongPtrW GetWindowLongPtr;
4567 + alias GetWindowTextW GetWindowText;
4568 + alias GetWindowTextLengthW GetWindowTextLength;
4569 + alias GetAltTabInfoW GetAltTabInfo;
4570 + alias GetWindowModuleFileNameW GetWindowModuleFileName;
4571 + alias GrayStringW GrayString;
4572 + alias InsertMenuW InsertMenu;
4573 + alias InsertMenuItemW InsertMenuItem;
4574 + alias IsCharAlphaW IsCharAlpha;
4575 + alias IsCharAlphaNumericW IsCharAlphaNumeric;
4576 + alias IsCharLowerW IsCharLower;
4577 + alias IsCharUpperW IsCharUpper;
4578 + alias IsDialogMessageW IsDialogMessage;
4579 + alias LoadAcceleratorsW LoadAccelerators;
4580 + alias LoadBitmapW LoadBitmap;
4581 + alias LoadCursorW LoadCursor;
4582 + alias LoadCursorFromFileW LoadCursorFromFile;
4583 + alias LoadIconW LoadIcon;
4584 + alias LoadImageW LoadImage;
4585 + alias LoadKeyboardLayoutW LoadKeyboardLayout;
4586 + alias LoadMenuW LoadMenu;
4587 + alias LoadMenuIndirectW LoadMenuIndirect;
4588 + alias LoadStringW LoadString;
4589 + alias MapVirtualKeyW MapVirtualKey;
4590 + alias MapVirtualKeyExW MapVirtualKeyEx;
4591 + alias MessageBoxW MessageBox;
4592 + alias MessageBoxExW MessageBoxEx;
4593 + alias MessageBoxIndirectW MessageBoxIndirect;
4594 + alias ModifyMenuW ModifyMenu;
4595 + alias OemToCharW OemToChar;
4596 + alias OemToCharBuffW OemToCharBuff;
4597 + alias OpenDesktopW OpenDesktop;
4598 + alias OpenWindowStationW OpenWindowStation;
4599 + alias PeekMessageW PeekMessage;
4600 + alias PostMessageW PostMessage;
4601 + alias PostThreadMessageW PostThreadMessage;
4602 + alias RealGetWindowClassW RealGetWindowClass;
4603 + alias RegisterClassW RegisterClass;
4604 + alias RegisterClassExW RegisterClassEx;
4605 + alias RegisterClipboardFormatW RegisterClipboardFormat;
4606 + static if (_WIN32_WINNT >= 0x500) {
4607 + alias RegisterDeviceNotificationW RegisterDeviceNotification;
4608 + }
4609 + alias RegisterWindowMessageW RegisterWindowMessage;
4610 + alias RemovePropW RemoveProp;
4611 + alias SendDlgItemMessageW SendDlgItemMessage;
4612 + alias SendMessageW SendMessage;
4613 + alias SendMessageCallbackW SendMessageCallback;
4614 + alias SendMessageTimeoutW SendMessageTimeout;
4615 + alias SendNotifyMessageW SendNotifyMessage;
4616 + alias SetClassLongW SetClassLong;
4617 + alias SetDlgItemTextW SetDlgItemText;
4618 + alias SetMenuItemInfoW SetMenuItemInfo;
4619 + alias SetPropW SetProp;
4620 + alias SetUserObjectInformationW SetUserObjectInformation;
4621 + alias SetWindowLongW SetWindowLong;
4622 + alias SetWindowLongPtrW SetWindowLongPtr;
4623 + alias SetWindowsHookW SetWindowsHook;
4624 + alias SetWindowsHookExW SetWindowsHookEx;
4625 + alias SetWindowTextW SetWindowText;
4626 + alias SystemParametersInfoW SystemParametersInfo;
4627 + alias TabbedTextOutW TabbedTextOut;
4628 + alias TranslateAcceleratorW TranslateAccelerator;
4629 + alias UnregisterClassW UnregisterClass;
4630 + alias VkKeyScanW VkKeyScan;
4631 + alias VkKeyScanExW VkKeyScanEx;
4632 + alias WinHelpW WinHelp;
4633 + alias wsprintfW wsprintf;
4634 + alias wvsprintfW wvsprintf;
4567 4635
4568 -alias ChangeDisplaySettingsW ChangeDisplaySettings;
4569 -alias ChangeDisplaySettingsExW ChangeDisplaySettingsEx;
4570 -alias CreateDesktopW CreateDesktop;
4571 -alias EnumDisplaySettingsW EnumDisplaySettings;
4572 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
4573 -alias EnumDisplaySettingsExW EnumDisplaySettingsEx;
4574 -}
4575 -alias EnumDisplayDevicesW EnumDisplayDevices;
4636 + alias ChangeDisplaySettingsW ChangeDisplaySettings;
4637 + alias ChangeDisplaySettingsExW ChangeDisplaySettingsEx;
4638 + alias CreateDesktopW CreateDesktop;
4639 + alias EnumDisplaySettingsW EnumDisplaySettings;
4640 + static if (_WIN32_WINNT >= 0x500) {
4641 + alias EnumDisplaySettingsExW EnumDisplaySettingsEx;
4642 + }
4643 + alias EnumDisplayDevicesW EnumDisplayDevices;
4576 4644
4577 4645 } else { // ANSI
4578 4646
4579 -alias EDITWORDBREAKPROCA EDITWORDBREAKPROC;
4580 -alias PROPENUMPROCA PROPENUMPROC;
4581 -alias PROPENUMPROCEXA PROPENUMPROCEX;
4582 -alias DESKTOPENUMPROCA DESKTOPENUMPROC;
4583 -alias WINSTAENUMPROCA WINSTAENUMPROC;
4584 -alias MAKEINTRESOURCEA MAKEINTRESOURCE;
4647 + alias EDITWORDBREAKPROCA EDITWORDBREAKPROC;
4648 + alias PROPENUMPROCA PROPENUMPROC;
4649 + alias PROPENUMPROCEXA PROPENUMPROCEX;
4650 + alias DESKTOPENUMPROCA DESKTOPENUMPROC;
4651 + alias WINSTAENUMPROCA WINSTAENUMPROC;
4652 + alias MAKEINTRESOURCEA MAKEINTRESOURCE;
4585 4653
4586 -alias WNDCLASSA WNDCLASS;
4587 -alias WNDCLASSEXA WNDCLASSEX;
4588 -alias MENUITEMINFOA MENUITEMINFO;
4589 -alias LPCMENUITEMINFOA LPCMENUITEMINFO;
4590 -alias MSGBOXPARAMSA MSGBOXPARAMS;
4591 -alias HIGHCONTRASTA HIGHCONTRAST;
4592 -alias SERIALKEYSA SERIALKEYS;
4593 -alias SOUNDSENTRYA SOUNDSENTRY;
4594 -alias CREATESTRUCTA CREATESTRUCT;
4595 -alias CBT_CREATEWNDA CBT_CREATEWND;
4596 -alias MDICREATESTRUCTA MDICREATESTRUCT;
4597 -alias MULTIKEYHELPA MULTIKEYHELP;
4598 -alias MONITORINFOEXA MONITORINFOEX;
4599 -alias ICONMETRICSA ICONMETRICS;
4600 -alias NONCLIENTMETRICSA NONCLIENTMETRICS;
4654 + alias WNDCLASSA WNDCLASS;
4655 + alias WNDCLASSEXA WNDCLASSEX;
4656 + alias MENUITEMINFOA MENUITEMINFO;
4657 + alias LPCMENUITEMINFOA LPCMENUITEMINFO;
4658 + alias MSGBOXPARAMSA MSGBOXPARAMS;
4659 + alias HIGHCONTRASTA HIGHCONTRAST;
4660 + alias SERIALKEYSA SERIALKEYS;
4661 + alias SOUNDSENTRYA SOUNDSENTRY;
4662 + alias CREATESTRUCTA CREATESTRUCT;
4663 + alias CBT_CREATEWNDA CBT_CREATEWND;
4664 + alias MDICREATESTRUCTA MDICREATESTRUCT;
4665 + alias MULTIKEYHELPA MULTIKEYHELP;
4666 + alias MONITORINFOEXA MONITORINFOEX;
4667 + alias ICONMETRICSA ICONMETRICS;
4668 + alias NONCLIENTMETRICSA NONCLIENTMETRICS;
4601 4669
4602 -alias AppendMenuA AppendMenu;
4603 -alias BroadcastSystemMessageA BroadcastSystemMessage;
4604 -static if (_WIN32_WINNT >= 0x501) {
4605 -alias BroadcastSystemMessageExA BroadcastSystemMessageEx;
4606 -}
4607 -alias CallMsgFilterA CallMsgFilter;
4608 -alias CallWindowProcA CallWindowProc;
4609 -alias ChangeMenuA ChangeMenu;
4610 -alias CharLowerA CharLower;
4611 -alias CharLowerBuffA CharLowerBuff;
4612 -alias CharNextA CharNext;
4613 -alias CharNextExA CharNextEx;
4614 -alias CharPrevA CharPrev;
4615 -alias CharPrevExA CharPrevEx;
4616 -alias CharToOemA CharToOem;
4617 -alias CharToOemBuffA CharToOemBuff;
4618 -alias CharUpperA CharUpper;
4619 -alias CharUpperBuffA CharUpperBuff;
4620 -alias CopyAcceleratorTableA CopyAcceleratorTable;
4621 -alias CreateAcceleratorTableA CreateAcceleratorTable;
4622 -alias CreateDialogA CreateDialog;
4623 -alias CreateDialogIndirectA CreateDialogIndirect;
4624 -alias CreateDialogIndirectParamA CreateDialogIndirectParam;
4625 -alias CreateDialogParamA CreateDialogParam;
4626 -alias CreateMDIWindowA CreateMDIWindow;
4627 -alias CreateWindowA CreateWindow;
4628 -alias CreateWindowExA CreateWindowEx;
4629 -alias CreateWindowStationA CreateWindowStation;
4630 -alias DefDlgProcA DefDlgProc;
4631 -alias DefFrameProcA DefFrameProc;
4632 -alias DefMDIChildProcA DefMDIChildProc;
4633 -alias DefWindowProcA DefWindowProc;
4634 -alias DialogBoxA DialogBox;
4635 -alias DialogBoxIndirectA DialogBoxIndirect;
4636 -alias DialogBoxIndirectParamA DialogBoxIndirectParam;
4637 -alias DialogBoxParamA DialogBoxParam;
4638 -alias DispatchMessageA DispatchMessage;
4639 -alias DlgDirListA DlgDirList;
4640 -alias DlgDirListComboBoxA DlgDirListComboBox;
4641 -alias DlgDirSelectComboBoxExA DlgDirSelectComboBoxEx;
4642 -alias DlgDirSelectExA DlgDirSelectEx;
4643 -alias DrawStateA DrawState;
4644 -alias DrawTextA DrawText;
4645 -alias DrawTextExA DrawTextEx;
4646 -alias EnumDesktopsA EnumDesktops;
4647 -alias EnumPropsA EnumProps;
4648 -alias EnumPropsExA EnumPropsEx;
4649 -alias EnumWindowStationsA EnumWindowStations;
4650 -alias FindWindowA FindWindow;
4651 -alias FindWindowExA FindWindowEx;
4652 -alias GetClassInfoA GetClassInfo;
4653 -alias GetClassInfoExA GetClassInfoEx;
4654 -alias GetClassLongA GetClassLong;
4655 -alias GetClassNameA GetClassName;
4656 -alias GetClipboardFormatNameA GetClipboardFormatName;
4657 -alias GetDlgItemTextA GetDlgItemText;
4658 -alias GetKeyboardLayoutNameA GetKeyboardLayoutName;
4659 -alias GetKeyNameTextA GetKeyNameText;
4660 -alias GetMenuItemInfoA GetMenuItemInfo;
4661 -alias GetMenuStringA GetMenuString;
4662 -alias GetMessageA GetMessage;
4663 -static if (WINVER >=0x410) {
4664 -alias GetMonitorInfoA GetMonitorInfo;
4665 -}
4666 -alias GetPropA GetProp;
4667 -static if (_WIN32_WINNT >= 0x501) {
4668 -alias GetRawInputDeviceInfoA GetRawInputDeviceInfo;
4669 -}
4670 -alias GetTabbedTextExtentA GetTabbedTextExtent;
4671 -alias GetUserObjectInformationA GetUserObjectInformation;
4672 -alias GetWindowLongA GetWindowLong;
4673 -alias GetWindowLongPtrA GetWindowLongPtr;
4674 -alias GetWindowTextA GetWindowText;
4675 -alias GetWindowTextLengthA GetWindowTextLength;
4676 -alias GetAltTabInfoA GetAltTabInfo;
4677 -alias GetWindowModuleFileNameA GetWindowModuleFileName;
4678 -alias GrayStringA GrayString;
4679 -alias InsertMenuA InsertMenu;
4680 -alias InsertMenuItemA InsertMenuItem;
4681 -alias IsCharAlphaA IsCharAlpha;
4682 -alias IsCharAlphaNumericA IsCharAlphaNumeric;
4683 -alias IsCharLowerA IsCharLower;
4684 -alias IsCharUpperA IsCharUpper;
4685 -alias IsDialogMessageA IsDialogMessage;
4686 -alias LoadAcceleratorsA LoadAccelerators;
4687 -alias LoadBitmapA LoadBitmap;
4688 -alias LoadCursorA LoadCursor;
4689 -alias LoadIconA LoadIcon;
4690 -alias LoadCursorFromFileA LoadCursorFromFile;
4691 -alias LoadImageA LoadImage;
4692 -alias LoadKeyboardLayoutA LoadKeyboardLayout;
4693 -alias LoadMenuA LoadMenu;
4694 -alias LoadMenuIndirectA LoadMenuIndirect;
4695 -alias LoadStringA LoadString;
4696 -alias MapVirtualKeyA MapVirtualKey;
4697 -alias MapVirtualKeyExA MapVirtualKeyEx;
4698 -alias MessageBoxA MessageBox;
4699 -alias MessageBoxExA MessageBoxEx;
4700 -alias MessageBoxIndirectA MessageBoxIndirect;
4701 -alias ModifyMenuA ModifyMenu;
4702 -alias OemToCharA OemToChar;
4703 -alias OemToCharBuffA OemToCharBuff;
4704 -alias OpenDesktopA OpenDesktop;
4705 -alias OpenWindowStationA OpenWindowStation;
4706 -alias PeekMessageA PeekMessage;
4707 -alias PostMessageA PostMessage;
4708 -alias PostThreadMessageA PostThreadMessage;
4709 -alias RealGetWindowClassA RealGetWindowClass;
4710 -alias RegisterClassA RegisterClass;
4711 -alias RegisterClassExA RegisterClassEx;
4712 -alias RegisterClipboardFormatA RegisterClipboardFormat;
4713 -static if (WINVER >= 0x500) {
4714 -alias RegisterDeviceNotificationA RegisterDeviceNotification;
4715 -}
4716 -alias RegisterWindowMessageA RegisterWindowMessage;
4717 -alias RemovePropA RemoveProp;
4718 -alias SendDlgItemMessageA SendDlgItemMessage;
4719 -alias SendMessageA SendMessage;
4720 -alias SendMessageCallbackA SendMessageCallback;
4721 -alias SendMessageTimeoutA SendMessageTimeout;
4722 -alias SendNotifyMessageA SendNotifyMessage;
4723 -alias SetClassLongA SetClassLong;
4724 -alias SetDlgItemTextA SetDlgItemText;
4725 -alias SetMenuItemInfoA SetMenuItemInfo;
4726 -alias SetPropA SetProp;
4727 -alias SetUserObjectInformationA SetUserObjectInformation;
4728 -alias SetWindowLongA SetWindowLong;
4729 -alias SetWindowLongPtrA SetWindowLongPtr;
4730 -alias SetWindowsHookA SetWindowsHook;
4731 -alias SetWindowsHookExA SetWindowsHookEx;
4732 -alias SetWindowTextA SetWindowText;
4733 -alias SystemParametersInfoA SystemParametersInfo;
4734 -alias TabbedTextOutA TabbedTextOut;
4735 -alias TranslateAcceleratorA TranslateAccelerator;
4736 -alias UnregisterClassA UnregisterClass;
4737 -alias VkKeyScanA VkKeyScan;
4738 -alias VkKeyScanExA VkKeyScanEx;
4739 -alias WinHelpA WinHelp;
4740 -alias wsprintfA wsprintf;
4741 -alias wvsprintfA wvsprintf;
4670 + alias AppendMenuA AppendMenu;
4671 + alias BroadcastSystemMessageA BroadcastSystemMessage;
4672 + static if (_WIN32_WINNT >= 0x501) {
4673 + alias BroadcastSystemMessageExA BroadcastSystemMessageEx;
4674 + }
4675 + alias CallMsgFilterA CallMsgFilter;
4676 + alias CallWindowProcA CallWindowProc;
4677 + alias ChangeMenuA ChangeMenu;
4678 + alias CharLowerA CharLower;
4679 + alias CharLowerBuffA CharLowerBuff;
4680 + alias CharNextA CharNext;
4681 + alias CharNextExA CharNextEx;
4682 + alias CharPrevA CharPrev;
4683 + alias CharPrevExA CharPrevEx;
4684 + alias CharToOemA CharToOem;
4685 + alias CharToOemBuffA CharToOemBuff;
4686 + alias CharUpperA CharUpper;
4687 + alias CharUpperBuffA CharUpperBuff;
4688 + alias CopyAcceleratorTableA CopyAcceleratorTable;
4689 + alias CreateAcceleratorTableA CreateAcceleratorTable;
4690 + alias CreateDialogA CreateDialog;
4691 + alias CreateDialogIndirectA CreateDialogIndirect;
4692 + alias CreateDialogIndirectParamA CreateDialogIndirectParam;
4693 + alias CreateDialogParamA CreateDialogParam;
4694 + alias CreateMDIWindowA CreateMDIWindow;
4695 + alias CreateWindowA CreateWindow;
4696 + alias CreateWindowExA CreateWindowEx;
4697 + alias CreateWindowStationA CreateWindowStation;
4698 + alias DefDlgProcA DefDlgProc;
4699 + alias DefFrameProcA DefFrameProc;
4700 + alias DefMDIChildProcA DefMDIChildProc;
4701 + alias DefWindowProcA DefWindowProc;
4702 + alias DialogBoxA DialogBox;
4703 + alias DialogBoxIndirectA DialogBoxIndirect;
4704 + alias DialogBoxIndirectParamA DialogBoxIndirectParam;
4705 + alias DialogBoxParamA DialogBoxParam;
4706 + alias DispatchMessageA DispatchMessage;
4707 + alias DlgDirListA DlgDirList;
4708 + alias DlgDirListComboBoxA DlgDirListComboBox;
4709 + alias DlgDirSelectComboBoxExA DlgDirSelectComboBoxEx;
4710 + alias DlgDirSelectExA DlgDirSelectEx;
4711 + alias DrawStateA DrawState;
4712 + alias DrawTextA DrawText;
4713 + alias DrawTextExA DrawTextEx;
4714 + alias EnumDesktopsA EnumDesktops;
4715 + alias EnumPropsA EnumProps;
4716 + alias EnumPropsExA EnumPropsEx;
4717 + alias EnumWindowStationsA EnumWindowStations;
4718 + alias FindWindowA FindWindow;
4719 + alias FindWindowExA FindWindowEx;
4720 + alias GetClassInfoA GetClassInfo;
4721 + alias GetClassInfoExA GetClassInfoEx;
4722 + alias GetClassLongA GetClassLong;
4723 + alias GetClassNameA GetClassName;
4724 + alias GetClipboardFormatNameA GetClipboardFormatName;
4725 + alias GetDlgItemTextA GetDlgItemText;
4726 + alias GetKeyboardLayoutNameA GetKeyboardLayoutName;
4727 + alias GetKeyNameTextA GetKeyNameText;
4728 + alias GetMenuItemInfoA GetMenuItemInfo;
4729 + alias GetMenuStringA GetMenuString;
4730 + alias GetMessageA GetMessage;
4731 + static if (_WIN32_WINNT >= 0x410) {
4732 + alias GetMonitorInfoA GetMonitorInfo;
4733 + }
4734 + alias GetPropA GetProp;
4735 + static if (_WIN32_WINNT >= 0x501) {
4736 + alias GetRawInputDeviceInfoA GetRawInputDeviceInfo;
4737 + }
4738 + alias GetTabbedTextExtentA GetTabbedTextExtent;
4739 + alias GetUserObjectInformationA GetUserObjectInformation;
4740 + alias GetWindowLongA GetWindowLong;
4741 + alias GetWindowLongPtrA GetWindowLongPtr;
4742 + alias GetWindowTextA GetWindowText;
4743 + alias GetWindowTextLengthA GetWindowTextLength;
4744 + alias GetAltTabInfoA GetAltTabInfo;
4745 + alias GetWindowModuleFileNameA GetWindowModuleFileName;
4746 + alias GrayStringA GrayString;
4747 + alias InsertMenuA InsertMenu;
4748 + alias InsertMenuItemA InsertMenuItem;
4749 + alias IsCharAlphaA IsCharAlpha;
4750 + alias IsCharAlphaNumericA IsCharAlphaNumeric;
4751 + alias IsCharLowerA IsCharLower;
4752 + alias IsCharUpperA IsCharUpper;
4753 + alias IsDialogMessageA IsDialogMessage;
4754 + alias LoadAcceleratorsA LoadAccelerators;
4755 + alias LoadBitmapA LoadBitmap;
4756 + alias LoadCursorA LoadCursor;
4757 + alias LoadIconA LoadIcon;
4758 + alias LoadCursorFromFileA LoadCursorFromFile;
4759 + alias LoadImageA LoadImage;
4760 + alias LoadKeyboardLayoutA LoadKeyboardLayout;
4761 + alias LoadMenuA LoadMenu;
4762 + alias LoadMenuIndirectA LoadMenuIndirect;
4763 + alias LoadStringA LoadString;
4764 + alias MapVirtualKeyA MapVirtualKey;
4765 + alias MapVirtualKeyExA MapVirtualKeyEx;
4766 + alias MessageBoxA MessageBox;
4767 + alias MessageBoxExA MessageBoxEx;
4768 + alias MessageBoxIndirectA MessageBoxIndirect;
4769 + alias ModifyMenuA ModifyMenu;
4770 + alias OemToCharA OemToChar;
4771 + alias OemToCharBuffA OemToCharBuff;
4772 + alias OpenDesktopA OpenDesktop;
4773 + alias OpenWindowStationA OpenWindowStation;
4774 + alias PeekMessageA PeekMessage;
4775 + alias PostMessageA PostMessage;
4776 + alias PostThreadMessageA PostThreadMessage;
4777 + alias RealGetWindowClassA RealGetWindowClass;
4778 + alias RegisterClassA RegisterClass;
4779 + alias RegisterClassExA RegisterClassEx;
4780 + alias RegisterClipboardFormatA RegisterClipboardFormat;
4781 + static if (_WIN32_WINNT >= 0x500) {
4782 + alias RegisterDeviceNotificationA RegisterDeviceNotification;
4783 + }
4784 + alias RegisterWindowMessageA RegisterWindowMessage;
4785 + alias RemovePropA RemoveProp;
4786 + alias SendDlgItemMessageA SendDlgItemMessage;
4787 + alias SendMessageA SendMessage;
4788 + alias SendMessageCallbackA SendMessageCallback;
4789 + alias SendMessageTimeoutA SendMessageTimeout;
4790 + alias SendNotifyMessageA SendNotifyMessage;
4791 + alias SetClassLongA SetClassLong;
4792 + alias SetDlgItemTextA SetDlgItemText;
4793 + alias SetMenuItemInfoA SetMenuItemInfo;
4794 + alias SetPropA SetProp;
4795 + alias SetUserObjectInformationA SetUserObjectInformation;
4796 + alias SetWindowLongA SetWindowLong;
4797 + alias SetWindowLongPtrA SetWindowLongPtr;
4798 + alias SetWindowsHookA SetWindowsHook;
4799 + alias SetWindowsHookExA SetWindowsHookEx;
4800 + alias SetWindowTextA SetWindowText;
4801 + alias SystemParametersInfoA SystemParametersInfo;
4802 + alias TabbedTextOutA TabbedTextOut;
4803 + alias TranslateAcceleratorA TranslateAccelerator;
4804 + alias UnregisterClassA UnregisterClass;
4805 + alias VkKeyScanA VkKeyScan;
4806 + alias VkKeyScanExA VkKeyScanEx;
4807 + alias WinHelpA WinHelp;
4808 + alias wsprintfA wsprintf;
4809 + alias wvsprintfA wvsprintf;
4742 4810
4743 -alias ChangeDisplaySettingsA ChangeDisplaySettings;
4744 -alias ChangeDisplaySettingsExA ChangeDisplaySettingsEx;
4745 -alias CreateDesktopA CreateDesktop;
4746 -alias EnumDisplaySettingsA EnumDisplaySettings;
4747 -static if ((_WIN32_WINNT >= 0x500) || (_WIN32_WINDOWS >= 0x410)) {
4748 - alias EnumDisplaySettingsExA EnumDisplaySettingsEx;
4749 -}
4811 + alias ChangeDisplaySettingsA ChangeDisplaySettings;
4812 + alias ChangeDisplaySettingsExA ChangeDisplaySettingsEx;
4813 + alias CreateDesktopA CreateDesktop;
4814 + alias EnumDisplaySettingsA EnumDisplaySettings;
4815 + static if (_WIN32_WINNT >= 0x500) {
4816 + alias EnumDisplaySettingsExA EnumDisplaySettingsEx;
4817 + }
4750 4818 alias EnumDisplayDevicesA EnumDisplayDevices;
4751 4819 }
4752 -
4753 4820
4754 4821 alias WNDCLASS* LPWNDCLASS, PWNDCLASS;
4755 4822 alias WNDCLASSEX* LPWNDCLASSEX, PWNDCLASSEX;
4756 4823 alias MENUITEMINFO* LPMENUITEMINFO;
4757 4824 alias MSGBOXPARAMS* PMSGBOXPARAMS, LPMSGBOXPARAMS;
4758 4825 alias HIGHCONTRAST* LPHIGHCONTRAST;
4759 4826 alias SERIALKEYS* LPSERIALKEYS;