1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 #ifndef _INC_CUSTCNTL 7 #define _INC_CUSTCNTL 8 9 #include <_mingw_unicode.h> 10 11 #ifdef __cplusplus 12 extern "C" { 13 #endif 14 15 #define CCHCCCLASS 32 16 #define CCHCCDESC 32 17 #define CCHCCTEXT 256 18 19 typedef struct tagCCSTYLEA { 20 DWORD flStyle; 21 DWORD flExtStyle; 22 CHAR szText[CCHCCTEXT]; 23 LANGID lgid; 24 WORD wReserved1; 25 } CCSTYLEA,*LPCCSTYLEA; 26 27 typedef struct tagCCSTYLEW { 28 DWORD flStyle; 29 DWORD flExtStyle; 30 WCHAR szText[CCHCCTEXT]; 31 LANGID lgid; 32 WORD wReserved1; 33 } CCSTYLEW,*LPCCSTYLEW; 34 35 #define CCSTYLE __MINGW_NAME_AW(CCSTYLE) 36 #define LPCCSTYLE __MINGW_NAME_AW(LPCCSTYLE) 37 #define LPFNCCSTYLE __MINGW_NAME_AW(LPFNCCSTYLE) 38 #define LPFNCCSIZETOTEXT __MINGW_NAME_AW(LPFNCCSIZETOTEXT) 39 #define CCSTYLEFLAG __MINGW_NAME_AW(CCSTYLEFLAG) 40 #define LPCCSTYLEFLAG __MINGW_NAME_AW(LPCCSTYLEFLAG) 41 #define CCINFO __MINGW_NAME_AW(CCINFO) 42 #define LPCCINFO __MINGW_NAME_AW(LPCCINFO) 43 #define LPFNCCINFO __MINGW_NAME_AW(LPFNCCINFO) 44 45 typedef WINBOOL (CALLBACK *LPFNCCSTYLEA)(HWND hwndParent,LPCCSTYLEA pccs); 46 typedef WINBOOL (CALLBACK *LPFNCCSTYLEW)(HWND hwndParent,LPCCSTYLEW pccs); 47 typedef INT (CALLBACK *LPFNCCSIZETOTEXTA)(DWORD flStyle,DWORD flExtStyle,HFONT hfont,LPSTR pszText); 48 typedef INT (CALLBACK *LPFNCCSIZETOTEXTW)(DWORD flStyle,DWORD flExtStyle,HFONT hfont,LPWSTR pszText); 49 50 typedef struct tagCCSTYLEFLAGA { 51 DWORD flStyle; 52 DWORD flStyleMask; 53 LPSTR pszStyle; 54 } CCSTYLEFLAGA,*LPCCSTYLEFLAGA; 55 56 typedef struct tagCCSTYLEFLAGW { 57 DWORD flStyle; 58 DWORD flStyleMask; 59 LPWSTR pszStyle; 60 } CCSTYLEFLAGW,*LPCCSTYLEFLAGW; 61 62 #define CCF_NOTEXT 0x00000001 63 64 typedef struct tagCCINFOA { 65 CHAR szClass[CCHCCCLASS]; 66 DWORD flOptions; 67 CHAR szDesc[CCHCCDESC]; 68 UINT cxDefault; 69 UINT cyDefault; 70 DWORD flStyleDefault; 71 DWORD flExtStyleDefault; 72 DWORD flCtrlTypeMask; 73 CHAR szTextDefault[CCHCCTEXT]; 74 INT cStyleFlags; 75 LPCCSTYLEFLAGA aStyleFlags; 76 LPFNCCSTYLEA lpfnStyle; 77 LPFNCCSIZETOTEXTA lpfnSizeToText; 78 DWORD dwReserved1; 79 DWORD dwReserved2; 80 } CCINFOA,*LPCCINFOA; 81 82 typedef struct tagCCINFOW { 83 WCHAR szClass[CCHCCCLASS]; 84 DWORD flOptions; 85 WCHAR szDesc[CCHCCDESC]; 86 UINT cxDefault; 87 UINT cyDefault; 88 DWORD flStyleDefault; 89 DWORD flExtStyleDefault; 90 DWORD flCtrlTypeMask; 91 INT cStyleFlags; 92 LPCCSTYLEFLAGW aStyleFlags; 93 WCHAR szTextDefault[CCHCCTEXT]; 94 LPFNCCSTYLEW lpfnStyle; 95 LPFNCCSIZETOTEXTW lpfnSizeToText; 96 DWORD dwReserved1; 97 DWORD dwReserved2; 98 } CCINFOW,*LPCCINFOW; 99 100 typedef UINT (CALLBACK *LPFNCCINFOA)(LPCCINFOA acci); 101 typedef UINT (CALLBACK *LPFNCCINFOW)(LPCCINFOW acci); 102 103 #ifdef __cplusplus 104 } 105 #endif 106 #endif 107