1 /***********************************************************************\ 2 * cpl.d * 3 * * 4 * Windows API header module * 5 * * 6 * Translated from MinGW Windows headers * 7 * by Stewart Gordon * 8 * * 9 * Placed into public domain * 10 \***********************************************************************/ 11 module win32.cpl; 12 13 private import win32.windef, win32.winuser; 14 15 enum : uint { 16 WM_CPL_LAUNCH = WM_USER + 1000, 17 WM_CPL_LAUNCHED 18 } 19 20 enum : uint { 21 CPL_DYNAMIC_RES, 22 CPL_INIT, 23 CPL_GETCOUNT, 24 CPL_INQUIRE, 25 CPL_SELECT, 26 CPL_DBLCLK, 27 CPL_STOP, 28 CPL_EXIT, 29 CPL_NEWINQUIRE, 30 CPL_STARTWPARMSA, 31 CPL_STARTWPARMSW, // = 10 32 CPL_SETUP = 200 33 } 34 35 extern (Windows) alias LONG function(HWND, UINT, LONG, LONG) APPLET_PROC; 36 37 struct CPLINFO { 38 int idIcon; 39 int idName; 40 int idInfo; 41 LONG lData; 42 } 43 alias CPLINFO* LPCPLINFO; 44 45 struct NEWCPLINFOA { 46 DWORD dwSize = NEWCPLINFOA.sizeof; 47 DWORD dwFlags; 48 DWORD dwHelpContext; 49 LONG lData; 50 HICON hIcon; 51 CHAR[32] szName; 52 CHAR[64] szInfo; 53 CHAR[128] szHelpFile; 54 } 55 alias NEWCPLINFOA* LPNEWCPLINFOA; 56 57 struct NEWCPLINFOW { 58 DWORD dwSize = NEWCPLINFOW.sizeof; 59 DWORD dwFlags; 60 DWORD dwHelpContext; 61 LONG lData; 62 HICON hIcon; 63 WCHAR[32] szName; 64 WCHAR[64] szInfo; 65 WCHAR[128] szHelpFile; 66 } 67 alias NEWCPLINFOW* LPNEWCPLINFOW; 68 69 version (Unicode) { 70 alias CPL_STARTWPARMSW CPL_STARTWPARMS; 71 alias NEWCPLINFOW NEWCPLINFO; 72 } else { 73 alias CPL_STARTWPARMSA CPL_STARTWPARMS; 74 alias NEWCPLINFOA NEWCPLINFO; 75 } 76 77 alias NEWCPLINFO* LPNEWCPLINFO;