Moved the function pointer types to their rightful headers.

The definition of the function pointer types must be based on STRICT.
This commit is contained in:
François Gouget 2001-01-04 19:32:22 +00:00 committed by Alexandre Julliard
parent 7f6c84b591
commit f53b0e89e4
5 changed files with 118 additions and 66 deletions

View File

@ -5,16 +5,19 @@
#ifndef __WINE_MMSYSTEM_H #ifndef __WINE_MMSYSTEM_H
#define __WINE_MMSYSTEM_H #define __WINE_MMSYSTEM_H
#include "windef.h"
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#include "windef.h"
typedef LPSTR HPSTR; /* a huge version of LPSTR */ typedef LPSTR HPSTR; /* a huge version of LPSTR */
typedef LPCSTR HPCSTR; /* a huge version of LPCSTR */ typedef LPCSTR HPCSTR; /* a huge version of LPCSTR */
#include "pshpack1.h" #include "pshpack1.h"
typedef LRESULT CALLBACK (*DRIVERPROC)(DWORD,HDRVR,UINT,LPARAM,LPARAM);
#define MAXWAVEDRIVERS 10 #define MAXWAVEDRIVERS 10
#define MAXMIDIDRIVERS 10 #define MAXMIDIDRIVERS 10
#define MAXAUXDRIVERS 10 #define MAXAUXDRIVERS 10

View File

@ -804,13 +804,6 @@ typedef struct _SYSTEM_POWER_STATUS
} SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS; } SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS;
typedef BOOL CALLBACK (*CODEPAGE_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*CODEPAGE_ENUMPROCW)(LPWSTR);
DECL_WINELIB_TYPE_AW(CODEPAGE_ENUMPROC)
typedef BOOL CALLBACK (*LOCALE_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*LOCALE_ENUMPROCW)(LPWSTR);
DECL_WINELIB_TYPE_AW(LOCALE_ENUMPROC)
typedef struct tagSYSTEM_INFO typedef struct tagSYSTEM_INFO
{ {
union { union {
@ -1288,9 +1281,6 @@ BOOL WINAPI DeregisterEventSource(HANDLE);
BOOL WINAPI DisableThreadLibraryCalls(HMODULE); BOOL WINAPI DisableThreadLibraryCalls(HMODULE);
BOOL WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME); BOOL WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME);
BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,HANDLE*,DWORD,BOOL,DWORD); BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,HANDLE*,DWORD,BOOL,DWORD);
BOOL WINAPI EnumDateFormatsA(DATEFMT_ENUMPROCA lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
BOOL WINAPI EnumDateFormatsW(DATEFMT_ENUMPROCW lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
#define EnumDateFormats WINELIB_NAME_AW(EnumDateFormats)
BOOL WINAPI EnumResourceLanguagesA(HMODULE,LPCSTR,LPCSTR, BOOL WINAPI EnumResourceLanguagesA(HMODULE,LPCSTR,LPCSTR,
ENUMRESLANGPROCA,LONG); ENUMRESLANGPROCA,LONG);
BOOL WINAPI EnumResourceLanguagesW(HMODULE,LPCWSTR,LPCWSTR, BOOL WINAPI EnumResourceLanguagesW(HMODULE,LPCWSTR,LPCWSTR,
@ -1304,15 +1294,6 @@ BOOL WINAPI EnumResourceNamesW(HMODULE,LPCWSTR,ENUMRESNAMEPROCW,
BOOL WINAPI EnumResourceTypesA(HMODULE,ENUMRESTYPEPROCA,LONG); BOOL WINAPI EnumResourceTypesA(HMODULE,ENUMRESTYPEPROCA,LONG);
BOOL WINAPI EnumResourceTypesW(HMODULE,ENUMRESTYPEPROCW,LONG); BOOL WINAPI EnumResourceTypesW(HMODULE,ENUMRESTYPEPROCW,LONG);
#define EnumResourceTypes WINELIB_NAME_AW(EnumResourceTypes) #define EnumResourceTypes WINELIB_NAME_AW(EnumResourceTypes)
BOOL WINAPI EnumSystemCodePagesA(CODEPAGE_ENUMPROCA,DWORD);
BOOL WINAPI EnumSystemCodePagesW(CODEPAGE_ENUMPROCW,DWORD);
#define EnumSystemCodePages WINELIB_NAME_AW(EnumSystemCodePages)
BOOL WINAPI EnumSystemLocalesA(LOCALE_ENUMPROCA,DWORD);
BOOL WINAPI EnumSystemLocalesW(LOCALE_ENUMPROCW,DWORD);
#define EnumSystemLocales WINELIB_NAME_AW(EnumSystemLocales)
BOOL WINAPI EnumTimeFormatsA(TIMEFMT_ENUMPROCA lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
BOOL WINAPI EnumTimeFormatsW(TIMEFMT_ENUMPROCW lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
#define EnumTimeFormats WINELIB_NAME_AW(EnumTimeFormats)
BOOL WINAPI EqualSid(PSID, PSID); BOOL WINAPI EqualSid(PSID, PSID);
BOOL WINAPI EqualPrefixSid(PSID,PSID); BOOL WINAPI EqualPrefixSid(PSID,PSID);
DWORD WINAPI EraseTape(HANDLE,DWORD,BOOL); DWORD WINAPI EraseTape(HANDLE,DWORD,BOOL);

View File

@ -108,30 +108,8 @@ typedef HICON HCURSOR;
/* Callback function pointers types */ /* Callback function pointers types */
typedef BOOL CALLBACK (*DATEFMT_ENUMPROCA)(LPSTR); typedef INT CALLBACK (*FARPROC)();
typedef BOOL CALLBACK (*DATEFMT_ENUMPROCW)(LPWSTR);
DECL_WINELIB_TYPE_AW(DATEFMT_ENUMPROC)
typedef BOOL CALLBACK (*DLGPROC)(HWND,UINT,WPARAM,LPARAM);
typedef LRESULT CALLBACK (*DRIVERPROC)(DWORD,HDRVR,UINT,LPARAM,LPARAM);
typedef INT CALLBACK (*EDITWORDBREAKPROCA)(LPSTR,INT,INT,INT);
typedef INT CALLBACK (*EDITWORDBREAKPROCW)(LPWSTR,INT,INT,INT);
DECL_WINELIB_TYPE_AW(EDITWORDBREAKPROC)
typedef LRESULT CALLBACK (*FARPROC)();
typedef INT CALLBACK (*PROC)(); typedef INT CALLBACK (*PROC)();
typedef BOOL CALLBACK (*GRAYSTRINGPROC)(HDC,LPARAM,INT);
typedef LRESULT CALLBACK (*HOOKPROC)(INT,WPARAM,LPARAM);
typedef BOOL CALLBACK (*PROPENUMPROCA)(HWND,LPCSTR,HANDLE);
typedef BOOL CALLBACK (*PROPENUMPROCW)(HWND,LPCWSTR,HANDLE);
DECL_WINELIB_TYPE_AW(PROPENUMPROC)
typedef BOOL CALLBACK (*PROPENUMPROCEXA)(HWND,LPCSTR,HANDLE,LPARAM);
typedef BOOL CALLBACK (*PROPENUMPROCEXW)(HWND,LPCWSTR,HANDLE,LPARAM);
DECL_WINELIB_TYPE_AW(PROPENUMPROCEX)
typedef BOOL CALLBACK (*TIMEFMT_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*TIMEFMT_ENUMPROCW)(LPWSTR);
DECL_WINELIB_TYPE_AW(TIMEFMT_ENUMPROC)
typedef VOID CALLBACK (*TIMERPROC)(HWND,UINT,UINT,DWORD);
typedef BOOL CALLBACK (*WNDENUMPROC)(HWND,LPARAM);
typedef LRESULT CALLBACK (*WNDPROC)(HWND,UINT,WPARAM,LPARAM);
/* Macros to split words and longs. */ /* Macros to split words and longs. */

View File

@ -7,6 +7,40 @@
extern "C" { extern "C" {
#endif #endif
/* Define a bunch of callback types */
#ifdef STRICT
typedef BOOL CALLBACK (*CALINFO_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*CALINFO_ENUMPROCW)(LPWSTR);
typedef BOOL CALLBACK (*CODEPAGE_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*CODEPAGE_ENUMPROCW)(LPWSTR);
typedef BOOL CALLBACK (*DATEFMT_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*DATEFMT_ENUMPROCW)(LPWSTR);
typedef BOOL CALLBACK (*LOCALE_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*LOCALE_ENUMPROCW)(LPWSTR);
typedef BOOL CALLBACK (*TIMEFMT_ENUMPROCA)(LPSTR);
typedef BOOL CALLBACK (*TIMEFMT_ENUMPROCW)(LPWSTR);
#else
typedef FARPROC CALINFO_ENUMPROCA;
typedef FARPROC CALINFO_ENUMPROCW;
typedef FARPROC CODEPAGE_ENUMPROCA;
typedef FARPROC CODEPAGE_ENUMPROCW;
typedef FARPROC DATEFMT_ENUMPROCA;
typedef FARPROC DATEFMT_ENUMPROCW;
typedef FARPROC LOCALE_ENUMPROCA;
typedef FARPROC LOCALE_ENUMPROCW;
typedef FARPROC TIMEFMT_ENUMPROCA;
typedef FARPROC TIMEFMT_ENUMPROCW;
#endif /* STRICT */
DECL_WINELIB_TYPE_AW(CALINFO_ENUMPROC)
DECL_WINELIB_TYPE_AW(CODEPAGE_ENUMPROC)
DECL_WINELIB_TYPE_AW(DATEFMT_ENUMPROC)
DECL_WINELIB_TYPE_AW(LOCALE_ENUMPROC)
DECL_WINELIB_TYPE_AW(TIMEFMT_ENUMPROC)
#define MB_PRECOMPOSED 0x00000001 #define MB_PRECOMPOSED 0x00000001
#define MB_COMPOSITE 0x00000002 #define MB_COMPOSITE 0x00000002
#define MB_USEGLYPHCHARS 0x00000004 #define MB_USEGLYPHCHARS 0x00000004
@ -334,27 +368,34 @@ DECL_WINELIB_TYPE_AW(LPCURRENCYFMT)
/* APIs /* APIs
*/ */
typedef BOOL CALLBACK (*CALINFO_ENUMPROCA)(LPSTR); LCID WINAPI ConvertDefaultLocale(LCID);
typedef BOOL CALLBACK (*CALINFO_ENUMPROCW)(LPWSTR); BOOL WINAPI EnumCalendarInfoA(CALINFO_ENUMPROCA,LCID,CALID,CALTYPE);
DECL_WINELIB_TYPE_AW(CALINFO_ENUMPROC) BOOL WINAPI EnumCalendarInfoW(CALINFO_ENUMPROCW,LCID,CALID,CALTYPE);
#define EnumCalendarInfo WINELIB_NAME_AW(EnumCalendarInfo)
BOOL WINAPI EnumDateFormatsA(DATEFMT_ENUMPROCA,LCID,DWORD);
BOOL WINAPI EnumDateFormatsW(DATEFMT_ENUMPROCW,LCID,DWORD);
#define EnumDateFormats WINELIB_NAME_AW(EnumDateFormats)
BOOL WINAPI EnumSystemCodePagesA(CODEPAGE_ENUMPROCA,DWORD);
BOOL WINAPI EnumSystemCodePagesW(CODEPAGE_ENUMPROCW,DWORD);
#define EnumSystemCodePages WINELIB_NAME_AW(EnumSystemCodePages)
BOOL WINAPI EnumSystemLocalesA(LOCALE_ENUMPROCA,DWORD);
BOOL WINAPI EnumSystemLocalesW(LOCALE_ENUMPROCW,DWORD);
#define EnumSystemLocales WINELIB_NAME_AW(EnumSystemLocales)
BOOL WINAPI EnumTimeFormatsA(TIMEFMT_ENUMPROCA,LCID,DWORD);
BOOL WINAPI EnumTimeFormatsW(TIMEFMT_ENUMPROCW,LCID,DWORD);
#define EnumTimeFormats WINELIB_NAME_AW(EnumTimeFormats)
BOOL WINAPI GetCPInfo(UINT,LPCPINFO);
BOOL WINAPI GetCPInfoExA(UINT,DWORD,LPCPINFOEXA);
BOOL WINAPI GetCPInfoExW(UINT,DWORD,LPCPINFOEXW);
#define GetCPInfoEx WINELIB_NAME_AW(GetCPInfoEx)
INT WINAPI GetLocaleInfoA(LCID,LCTYPE,LPSTR,INT);
INT WINAPI GetLocaleInfoW(LCID,LCTYPE,LPWSTR,INT);
#define GetLocaleInfo WINELIB_NAME_AW(GetLocaleInfo)
INT WINAPI GetNumberFormatA(LCID,DWORD,LPCSTR,const NUMBERFMTA*,LPSTR,int);
INT WINAPI GetNumberFormatW(LCID,DWORD,LPCWSTR,const NUMBERFMTW*,LPWSTR,int);
#define GetNumberFormat WINELIB_NAME_AW(GetNumberFormat)
BOOL WINAPI IsValidCodePage(UINT);
BOOL WINAPI EnumCalendarInfoA(CALINFO_ENUMPROCA lpCalInfoEnumProc,LCID Locale,CALID Calendar,CALTYPE CalType);
BOOL WINAPI EnumCalendarInfoW(CALINFO_ENUMPROCW lpCalInfoEnumProc,LCID Locale,CALID Calendar,CALTYPE CalType);
#define EnumCalendarInfo WINELIB_NAME_AW(EnumCalendarInfo)
LCID WINAPI ConvertDefaultLocale(LCID Locale);
BOOL WINAPI IsValidCodePage(UINT);
BOOL WINAPI GetCPInfo(UINT,LPCPINFO);
BOOL WINAPI GetCPInfoExA(UINT,DWORD,LPCPINFOEXA);
BOOL WINAPI GetCPInfoExW(UINT,DWORD,LPCPINFOEXW);
#define GetCPInfoEx WINELIB_NAME_AW(GetCPInfoEx)
INT WINAPI GetLocaleInfoA(LCID,LCTYPE,LPSTR,INT);
INT WINAPI GetLocaleInfoW(LCID,LCTYPE,LPWSTR,INT);
#define GetLocaleInfo WINELIB_NAME_AW(GetLocaleInfo)
INT WINAPI GetNumberFormatA(LCID,DWORD,LPCSTR,const NUMBERFMTA*,LPSTR,int);
INT WINAPI GetNumberFormatW(LCID,DWORD,LPCWSTR,const NUMBERFMTW*,LPWSTR,int);
#define GetNumberFormat WINELIB_NAME_AW(GetNumberFormat)
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -11,6 +11,58 @@ extern "C" {
#include "pshpack1.h" #include "pshpack1.h"
/* Define a bunch of callback types */
#ifdef STRICT
typedef BOOL CALLBACK (*DLGPROC)(HWND,UINT,WPARAM,LPARAM);
typedef BOOL CALLBACK (*DRAWSTATEPROC)(HDC,LPARAM,WPARAM,int,int);
typedef INT CALLBACK (*EDITWORDBREAKPROCA)(LPSTR,INT,INT,INT);
typedef INT CALLBACK (*EDITWORDBREAKPROCW)(LPWSTR,INT,INT,INT);
typedef BOOL CALLBACK (*GRAYSTRINGPROC)(HDC,LPARAM,INT);
typedef LRESULT CALLBACK (*HOOKPROC)(INT,WPARAM,LPARAM);
typedef BOOL CALLBACK (*NAMEENUMPROCA)(LPSTR,LPARAM);
typedef BOOL CALLBACK (*NAMEENUMPROCW)(LPWSTR,LPARAM);
typedef BOOL CALLBACK (*PROPENUMPROCA)(HWND,LPCSTR,HANDLE);
typedef BOOL CALLBACK (*PROPENUMPROCW)(HWND,LPCWSTR,HANDLE);
typedef BOOL CALLBACK (*PROPENUMPROCEXA)(HWND,LPCSTR,HANDLE,DWORD);
typedef BOOL CALLBACK (*PROPENUMPROCEXW)(HWND,LPCWSTR,HANDLE,DWORD);
typedef VOID CALLBACK (*SENDASYNCPROC)(HWND,UINT,DWORD,LRESULT);
typedef VOID CALLBACK (*TIMERPROC)(HWND,UINT,UINT,DWORD);
typedef BOOL CALLBACK (*WNDENUMPROC)(HWND,LPARAM);
#else
typedef FARPROC DLGPROC;
typedef FARPROC DRAWSTATEPROC;
typedef FARPROC EDITWORDBREAKPROCA;
typedef FARPROC EDITWORDBREAKPROCW;
typedef FARPROC GRAYSTRINGPROC;
typedef FARPROC HOOKPROC;
typedef FARPROC NAMEENUMPROCA;
typedef FARPROC NAMEENUMPROCW;
typedef FARPROC PROPENUMPROCA;
typedef FARPROC PROPENUMPROCW;
typedef FARPROC PROPENUMPROCEXA;
typedef FARPROC PROPENUMPROCEXW;
typedef FARPROC SENDASYNCPROC;
typedef FARPROC TIMERPROC;
typedef FARPROC WNDENUMPROC;
#endif /* STRICT */
typedef NAMEENUMPROCA WINSTAENUMPROCA;
typedef NAMEENUMPROCA DESKTOPENUMPROCA;
typedef NAMEENUMPROCW WINSTAENUMPROCW;
typedef NAMEENUMPROCW DESKTOPENUMPROCW;
typedef LRESULT CALLBACK (*WNDPROC)(HWND,UINT,WPARAM,LPARAM);
DECL_WINELIB_TYPE_AW(DESKTOPENUMPROC)
DECL_WINELIB_TYPE_AW(EDITWORDBREAKPROC)
DECL_WINELIB_TYPE_AW(NAMEENUMPROC)
DECL_WINELIB_TYPE_AW(PROPENUMPROC)
DECL_WINELIB_TYPE_AW(PROPENUMPROCEX)
DECL_WINELIB_TYPE_AW(WINSTAENUMPROC)
/* flags for HIGHCONTRAST dwFlags field */ /* flags for HIGHCONTRAST dwFlags field */
#define HCF_HIGHCONTRASTON 0x00000001 #define HCF_HIGHCONTRASTON 0x00000001
#define HCF_AVAILABLE 0x00000002 #define HCF_AVAILABLE 0x00000002
@ -1541,9 +1593,6 @@ typedef PVOID *LPMENUTEMPLATE;
#define HBMMENU_POPUP_MAXIMIZE ((HBITMAP) 10) #define HBMMENU_POPUP_MAXIMIZE ((HBITMAP) 10)
#define HBMMENU_POPUP_MINIMIZE ((HBITMAP) 11) #define HBMMENU_POPUP_MINIMIZE ((HBITMAP) 11)
/* DrawState defines ... */
typedef BOOL CALLBACK (*DRAWSTATEPROC)(HDC,LPARAM,WPARAM,INT,INT);
/* WM_H/VSCROLL commands */ /* WM_H/VSCROLL commands */
#define SB_LINEUP 0 #define SB_LINEUP 0
#define SB_LINELEFT 0 #define SB_LINELEFT 0