2 * Copyright (C) 2002 György 'Nog' Jeney
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
31 /* Custom Control Syte Structure */
32 typedef struct tagCCSYLEA {
35 char szText[CCHCCTEXT];
38 } CCSTYLEA, *LPCCSTYLEA;
40 typedef struct tagCCSYLEW {
43 WCHAR szText[CCHCCTEXT];
46 } CCSTYLEW, *LPCCSTYLEW;
48 #define CCSTYLE WINELIB_NAME_AW(CCSTYLE)
49 #define LPCCSTYLE WINELIB_NAME_AW(LPCCSTYLE)
51 typedef BOOL (CALLBACK *LPFNCCSTYLEA)(HWND, LPCCSTYLEA);
52 typedef BOOL (CALLBACK *LPFNCCSTYLEW)(HWND, LPCCSTYLEW);
54 #define LPFNCCSTYLE WINELIB_NAME_AW(LPFNCCSTYLE)
56 typedef int (CALLBACK *LPFNCCSIZETOTEXTA)(DWORD, DWORD, HFONT, LPSTR);
57 typedef int (CALLBACK *LPFNCCSIZETOTEXTW)(DWORD, DWORD, HFONT, LPWSTR);
59 #define LPFNCCSIZETOTEXT WINELIB_NAME_AW(LPFNCCSIZETOTEXT)
61 /* Custom Control style flags structure */
62 typedef struct tagCCSTYLEFLAGA {
66 } CCSTYLEFLAGA, *LPCCSTYLEFLAGA;
68 typedef struct tagCCSTYLEFLAGW {
72 } CCSTYLEFLAGW, *LPCCSTYLEFLAGW;
74 #define CCSTYLEFLAG WINELIB_NAME_AW(CCSTYLEFLAG)
76 /* Custom Control Flags */
77 #define CCF_NOTEXT 0x00000001
79 /* CustomControl info structure */
80 typedef struct tagCCINFOA {
81 char szClass[CCHCCCLASS];
83 char szDesc[CCHCCDESC];
87 DWORD flExtStyleDefault;
89 char szTextDefault[CCHCCTEXT];
91 LPCCSTYLEFLAGA aStyleFlags;
92 LPFNCCSTYLEA lpfnStyle;
93 LPFNCCSIZETOTEXTA lpfnSizeToText;
96 } CCINFOA, *LPCCINFOA;
98 typedef struct tagCCINFOW {
99 WCHAR szClass[CCHCCCLASS];
101 WCHAR szDesc[CCHCCDESC];
104 DWORD flStyleDefault;
105 DWORD flExtStyleDefault;
106 DWORD flCtrlTypeMask;
108 LPCCSTYLEFLAGW aStyleFlags;
109 WCHAR szTextDefault[CCHCCTEXT];
110 LPFNCCSTYLEW lpfnStyle;
111 LPFNCCSIZETOTEXTW lpfnSizeToText;
114 } CCINFOW, *LPCCINFOW;
116 DECL_WINELIB_TYPE_AW(CCINFO)
117 DECL_WINELIB_TYPE_AW(LPCCINFO)
119 typedef UINT (CALLBACK *LPFNCCINFOA)(LPCCINFOA);
120 typedef UINT (CALLBACK *LPFNCCINFOW)(LPCCINFOW);
122 DECL_WINELIB_TYPE_AW(LPFNCCINFO)
128 #endif /* _INC_CUSTCNTL */