1 /** 2 * Windows API header module 3 * 4 * Translated from MinGW Windows headers 5 * 6 * Authors: Stewart Gordon 7 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) 8 * Source: $(DRUNTIMESRC core/sys/windows/_custcntl.d) 9 */ 10 /// Automatically imported and edited from the druntime module 11 /// core.sys.windows.custcntl for the auto-generated win32 package. 12 module win32.custcntl; 13 //version (Windows): 14 @system: 15 16 version (ANSI) {} else version = Unicode; 17 18 import win32.windef; 19 20 // FIXME: check type 21 enum CCF_NOTEXT = 1; 22 23 enum size_t 24 CCHCCCLASS = 32, 25 CCHCCDESC = 32, 26 CCHCCTEXT = 256; 27 28 struct CCSTYLEA { 29 DWORD flStyle; 30 DWORD flExtStyle; 31 CHAR[CCHCCTEXT] szText = 0; 32 LANGID lgid; 33 WORD wReserved1; 34 } 35 alias CCSTYLEA* LPCCSTYLEA; 36 37 struct CCSTYLEW { 38 DWORD flStyle; 39 DWORD flExtStyle; 40 WCHAR[CCHCCTEXT] szText = 0; 41 LANGID lgid; 42 WORD wReserved1; 43 } 44 alias CCSTYLEW* LPCCSTYLEW; 45 46 struct CCSTYLEFLAGA { 47 DWORD flStyle; 48 DWORD flStyleMask; 49 LPSTR pszStyle; 50 } 51 alias CCSTYLEFLAGA* LPCCSTYLEFLAGA; 52 53 struct CCSTYLEFLAGW { 54 DWORD flStyle; 55 DWORD flStyleMask; 56 LPWSTR pszStyle; 57 } 58 alias CCSTYLEFLAGW* LPCCSTYLEFLAGW; 59 60 struct CCINFOA { 61 CHAR[CCHCCCLASS] szClass = 0; 62 DWORD flOptions; 63 CHAR[CCHCCDESC] szDesc = 0; 64 UINT cxDefault; 65 UINT cyDefault; 66 DWORD flStyleDefault; 67 DWORD flExtStyleDefault; 68 DWORD flCtrlTypeMask; 69 CHAR[CCHCCTEXT] szTextDefault = 0; 70 INT cStyleFlags; 71 LPCCSTYLEFLAGA aStyleFlags; 72 LPFNCCSTYLEA lpfnStyle; 73 LPFNCCSIZETOTEXTA lpfnSizeToText; 74 DWORD dwReserved1; 75 DWORD dwReserved2; 76 } 77 alias CCINFOA* LPCCINFOA; 78 79 struct CCINFOW { 80 WCHAR[CCHCCCLASS] szClass = 0; 81 DWORD flOptions; 82 WCHAR[CCHCCDESC] szDesc = 0; 83 UINT cxDefault; 84 UINT cyDefault; 85 DWORD flStyleDefault; 86 DWORD flExtStyleDefault; 87 DWORD flCtrlTypeMask; 88 WCHAR[CCHCCTEXT] szTextDefault = 0; 89 INT cStyleFlags; 90 LPCCSTYLEFLAGW aStyleFlags; 91 LPFNCCSTYLEW lpfnStyle; 92 LPFNCCSIZETOTEXTW lpfnSizeToText; 93 DWORD dwReserved1; 94 DWORD dwReserved2; 95 } 96 alias CCINFOW* LPCCINFOW; 97 98 extern (Windows) { 99 alias BOOL function(HWND, LPCCSTYLEA) LPFNCCSTYLEA; 100 alias BOOL function(HWND, LPCCSTYLEW) LPFNCCSTYLEW; 101 alias INT function(DWORD, DWORD, HFONT, LPSTR) LPFNCCSIZETOTEXTA; 102 alias INT function(DWORD, DWORD, HFONT, LPWSTR) LPFNCCSIZETOTEXTW; 103 alias UINT function(LPCCINFOA) LPFNCCINFOA; 104 alias UINT function(LPCCINFOW) LPFNCCINFOW; 105 UINT CustomControlInfoA(LPCCINFOA acci); 106 UINT CustomControlInfoW(LPCCINFOW acci); 107 } 108 109 version (Unicode) { 110 alias CCSTYLEW CCSTYLE; 111 alias CCSTYLEFLAGW CCSTYLEFLAG; 112 alias CCINFOW CCINFO; 113 alias LPFNCCSTYLEW LPFNCCSTYLE; 114 alias LPFNCCSIZETOTEXTW LPFNCCSIZETOTEXT; 115 alias LPFNCCINFOW LPFNCCINFO; 116 } else { 117 alias CCSTYLEA CCSTYLE; 118 alias CCSTYLEFLAGA CCSTYLEFLAG; 119 alias CCINFOA CCINFO; 120 alias LPFNCCSTYLEA LPFNCCSTYLE; 121 alias LPFNCCSIZETOTEXTA LPFNCCSIZETOTEXT; 122 alias LPFNCCINFOA LPFNCCINFO; 123 } 124 125 alias CCSTYLE* LPCCSTYLE; 126 alias CCSTYLEFLAG* LPCCSTYLEFLAG; 127 alias CCINFO* LPCCINFO;