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