|  | /* | 
|  | * Copyright (C) 2002 György 'Nog' Jeney | 
|  | * | 
|  | * This library is free software; you can redistribute it and/or | 
|  | * modify it under the terms of the GNU Lesser General Public | 
|  | * License as published by the Free Software Foundation; either | 
|  | * version 2.1 of the License, or (at your option) any later version. | 
|  | * | 
|  | * This library is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
|  | * Lesser General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU Lesser General Public | 
|  | * License along with this library; if not, write to the Free Software | 
|  | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | 
|  | */ | 
|  |  | 
|  | #ifndef _INC_CUSTCNTL | 
|  | #define _INC_CUSTCNTL | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | /* Size defs */ | 
|  | #define CCHCCCLASS 32 | 
|  | #define CCHCCDESC 32 | 
|  | #define CCHCCTEXT 256 | 
|  |  | 
|  | /* Custom Control Syte Structure */ | 
|  | typedef struct tagCCSYLEA { | 
|  | DWORD flStyle; | 
|  | DWORD flExtStyle; | 
|  | char szText[CCHCCTEXT]; | 
|  | LANGID lgid; | 
|  | WORD wReserved1; | 
|  | } CCSTYLEA, *LPCCSTYLEA; | 
|  |  | 
|  | typedef struct tagCCSYLEW { | 
|  | DWORD flStyle; | 
|  | DWORD flExtStyle; | 
|  | WCHAR szText[CCHCCTEXT]; | 
|  | LANGID lgid; | 
|  | WORD wReserved1; | 
|  | } CCSTYLEW, *LPCCSTYLEW; | 
|  |  | 
|  | #define CCSTYLE   WINELIB_NAME_AW(CCSTYLE) | 
|  | #define LPCCSTYLE WINELIB_NAME_AW(LPCCSTYLE) | 
|  |  | 
|  | typedef BOOL (CALLBACK *LPFNCCSTYLEA)(HWND, LPCCSTYLEA); | 
|  | typedef BOOL (CALLBACK *LPFNCCSTYLEW)(HWND, LPCCSTYLEW); | 
|  |  | 
|  | #define LPFNCCSTYLE WINELIB_NAME_AW(LPFNCCSTYLE) | 
|  |  | 
|  | typedef int (CALLBACK *LPFNCCSIZETOTEXTA)(DWORD, DWORD, HFONT, LPSTR); | 
|  | typedef int (CALLBACK *LPFNCCSIZETOTEXTW)(DWORD, DWORD, HFONT, LPWSTR); | 
|  |  | 
|  | #define LPFNCCSIZETOTEXT WINELIB_NAME_AW(LPFNCCSIZETOTEXT) | 
|  |  | 
|  | /* Custom Control style flags structure */ | 
|  | typedef struct tagCCSTYLEFLAGA { | 
|  | DWORD flStyle; | 
|  | DWORD flStyleMask; | 
|  | LPSTR pszStyle; | 
|  | } CCSTYLEFLAGA, *LPCCSTYLEFLAGA; | 
|  |  | 
|  | typedef struct tagCCSTYLEFLAGW { | 
|  | DWORD flStyle; | 
|  | DWORD flStyleMask; | 
|  | LPWSTR pszStyle; | 
|  | } CCSTYLEFLAGW, *LPCCSTYLEFLAGW; | 
|  |  | 
|  | #define CCSTYLEFLAG WINELIB_NAME_AW(CCSTYLEFLAG) | 
|  |  | 
|  | /* Custom Control Flags */ | 
|  | #define CCF_NOTEXT 0x00000001 | 
|  |  | 
|  | /* CustomControl info structure */ | 
|  | typedef struct tagCCINFOA { | 
|  | char szClass[CCHCCCLASS]; | 
|  | DWORD flOptions; | 
|  | char szDesc[CCHCCDESC]; | 
|  | UINT cxDefault; | 
|  | UINT cyDefault; | 
|  | DWORD flStyleDefault; | 
|  | DWORD flExtStyleDefault; | 
|  | DWORD flCtrlTypeMask; | 
|  | char szTextDefault[CCHCCTEXT]; | 
|  | int cStyleFlags; | 
|  | LPCCSTYLEFLAGA aStyleFlags; | 
|  | LPFNCCSTYLEA lpfnStyle; | 
|  | LPFNCCSIZETOTEXTA lpfnSizeToText; | 
|  | DWORD dwReserved1; | 
|  | DWORD dwReserved2; | 
|  | } CCINFOA, *LPCCINFOA; | 
|  |  | 
|  | typedef struct tagCCINFOW { | 
|  | WCHAR szClass[CCHCCCLASS]; | 
|  | DWORD flOptions; | 
|  | WCHAR szDesc[CCHCCDESC]; | 
|  | UINT cxDefault; | 
|  | UINT cyDefault; | 
|  | DWORD flStyleDefault; | 
|  | DWORD flExtStyleDefault; | 
|  | DWORD flCtrlTypeMask; | 
|  | int cStyleFlags; | 
|  | LPCCSTYLEFLAGW aStyleFlags; | 
|  | WCHAR szTextDefault[CCHCCTEXT]; | 
|  | LPFNCCSTYLEW lpfnStyle; | 
|  | LPFNCCSIZETOTEXTW lpfnSizeToText; | 
|  | DWORD dwReserved1; | 
|  | DWORD dwReserved2; | 
|  | } CCINFOW, *LPCCINFOW; | 
|  |  | 
|  | DECL_WINELIB_TYPE_AW(CCINFO) | 
|  | DECL_WINELIB_TYPE_AW(LPCCINFO) | 
|  |  | 
|  | typedef UINT (CALLBACK *LPFNCCINFOA)(LPCCINFOA); | 
|  | typedef UINT (CALLBACK *LPFNCCINFOW)(LPCCINFOW); | 
|  |  | 
|  | DECL_WINELIB_TYPE_AW(LPFNCCINFO) | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } | 
|  | #endif | 
|  |  | 
|  | #endif /* _INC_CUSTCNTL */ |