| /** | |
| * Windows API header module | |
| * | |
| * Translated from MinGW Windows headers | |
| * | |
| * Authors: Stewart Gordon | |
| * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) | |
| * Source: $(DRUNTIMESRC core/sys/windows/_custcntl.d) | |
| */ | |
| module core.sys.windows.custcntl; | |
| version (Windows): | |
| version (ANSI) {} else version = Unicode; | |
| import core.sys.windows.windef; | |
| // FIXME: check type | |
| enum CCF_NOTEXT = 1; | |
| enum size_t | |
| CCHCCCLASS = 32, | |
| CCHCCDESC = 32, | |
| CCHCCTEXT = 256; | |
| struct CCSTYLEA { | |
| DWORD flStyle; | |
| DWORD flExtStyle; | |
| CHAR[CCHCCTEXT] szText = 0; | |
| LANGID lgid; | |
| WORD wReserved1; | |
| } | |
| alias LPCCSTYLEA = CCSTYLEA*; | |
| struct CCSTYLEW { | |
| DWORD flStyle; | |
| DWORD flExtStyle; | |
| WCHAR[CCHCCTEXT] szText = 0; | |
| LANGID lgid; | |
| WORD wReserved1; | |
| } | |
| alias LPCCSTYLEW = CCSTYLEW*; | |
| struct CCSTYLEFLAGA { | |
| DWORD flStyle; | |
| DWORD flStyleMask; | |
| LPSTR pszStyle; | |
| } | |
| alias LPCCSTYLEFLAGA = CCSTYLEFLAGA*; | |
| struct CCSTYLEFLAGW { | |
| DWORD flStyle; | |
| DWORD flStyleMask; | |
| LPWSTR pszStyle; | |
| } | |
| alias LPCCSTYLEFLAGW = CCSTYLEFLAGW*; | |
| struct CCINFOA { | |
| CHAR[CCHCCCLASS] szClass = 0; | |
| DWORD flOptions; | |
| CHAR[CCHCCDESC] szDesc = 0; | |
| UINT cxDefault; | |
| UINT cyDefault; | |
| DWORD flStyleDefault; | |
| DWORD flExtStyleDefault; | |
| DWORD flCtrlTypeMask; | |
| CHAR[CCHCCTEXT] szTextDefault = 0; | |
| INT cStyleFlags; | |
| LPCCSTYLEFLAGA aStyleFlags; | |
| LPFNCCSTYLEA lpfnStyle; | |
| LPFNCCSIZETOTEXTA lpfnSizeToText; | |
| DWORD dwReserved1; | |
| DWORD dwReserved2; | |
| } | |
| alias LPCCINFOA = CCINFOA*; | |
| struct CCINFOW { | |
| WCHAR[CCHCCCLASS] szClass = 0; | |
| DWORD flOptions; | |
| WCHAR[CCHCCDESC] szDesc = 0; | |
| UINT cxDefault; | |
| UINT cyDefault; | |
| DWORD flStyleDefault; | |
| DWORD flExtStyleDefault; | |
| DWORD flCtrlTypeMask; | |
| WCHAR[CCHCCTEXT] szTextDefault = 0; | |
| INT cStyleFlags; | |
| LPCCSTYLEFLAGW aStyleFlags; | |
| LPFNCCSTYLEW lpfnStyle; | |
| LPFNCCSIZETOTEXTW lpfnSizeToText; | |
| DWORD dwReserved1; | |
| DWORD dwReserved2; | |
| } | |
| alias LPCCINFOW = CCINFOW*; | |
| extern (Windows) { | |
| alias LPFNCCSTYLEA = BOOL function(HWND, LPCCSTYLEA); | |
| alias LPFNCCSTYLEW = BOOL function(HWND, LPCCSTYLEW); | |
| alias LPFNCCSIZETOTEXTA = INT function(DWORD, DWORD, HFONT, LPSTR); | |
| alias LPFNCCSIZETOTEXTW = INT function(DWORD, DWORD, HFONT, LPWSTR); | |
| alias LPFNCCINFOA = UINT function(LPCCINFOA); | |
| alias LPFNCCINFOW = UINT function(LPCCINFOW); | |
| nothrow @nogc: | |
| UINT CustomControlInfoA(LPCCINFOA acci); | |
| UINT CustomControlInfoW(LPCCINFOW acci); | |
| } | |
| version (Unicode) { | |
| alias CCSTYLE = CCSTYLEW; | |
| alias CCSTYLEFLAG = CCSTYLEFLAGW; | |
| alias CCINFO = CCINFOW; | |
| alias LPFNCCSTYLE = LPFNCCSTYLEW; | |
| alias LPFNCCSIZETOTEXT = LPFNCCSIZETOTEXTW; | |
| alias LPFNCCINFO = LPFNCCINFOW; | |
| } else { | |
| alias CCSTYLE = CCSTYLEA; | |
| alias CCSTYLEFLAG = CCSTYLEFLAGA; | |
| alias CCINFO = CCINFOA; | |
| alias LPFNCCSTYLE = LPFNCCSTYLEA; | |
| alias LPFNCCSIZETOTEXT = LPFNCCSIZETOTEXTA; | |
| alias LPFNCCINFO = LPFNCCINFOA; | |
| } | |
| alias LPCCSTYLE = CCSTYLE*; | |
| alias LPCCSTYLEFLAG = CCSTYLEFLAG*; | |
| alias LPCCINFO = CCINFO*; |