mirror of
https://github.com/reactos/wine.git
synced 2025-02-08 05:08:16 +00:00
f1aa3030a6
Sun Aug 4 18:18:48 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/scroll.c] Attempted to implement undocumented scroll-bar messages. * [tools/build.c] [include/callback.h] [windows/winproc.c] CallTo16_* functions now get DS from the previous 16-bit stackframe. * [if1632/thunk.c] [include/callback.h] Added thunks to implement callbacks for the emulator. Now all the Enum* functions always take a real function pointer even in the emulator. * [loader/builtin.c] Removed binary search in BUILTIN_GetEntryPoint32(), as it didn't work with NULL entry points. Using linear search now. * [loader/module.c] Implemented IsSharedSelector(). * [loader/task.c] Changed SwitchStackTo/Back to use the instance data to store the previous stack instead of the TDB. Also copy the local variables onto the new stack. Added GetExeVersion() and SetTackSignalProc(). Implemented SetSigHandler(). Sat Aug 3 22:19:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [controls/menu.c] "Fixed" problem in deleting menus where win32 could get into an endless loop when it crashed. I think I've fixed the symptoms, not the original problem so it might be worth further investigation. * [debugger/registers.c] Added missing #ifdefs on FS_REG and GS_REG, needed for FreeBSD to compile wine properly. * [files/dos_fs.c] Made DOSFS_Hash and DOSFS_Match non-static so they can be called from win32/findfile.c (q.v.). * [if1632/gdi32.spec] Added SetMapMode (call existing function) * [if1632/kernel32.spec] Added FindFirstFileA and SetFileAttributesA. * [if1632/user32.spec] Added BringWindowToTop, CreatePopupMenu, GetKeyState, GetParent, IsDlgButtonChecked (call existing functions) and IsDialogMessageA, UnhookWindowsHookEx. * [win32/file.c] Added stub function SetFileAttributes32A. It's a stub because I can't really work out what this function should do with most attributes in a Unix environment. Anyone care to expand it? * [win32/findfile.c] New file. Initial stab at FindFirstFile. This doesn't work as specified yet, though a lot of the groundwork is there. I haven't time to work on this for the next month, so if anyone wants to pick it up and run with it please do. * [win32/memory.c] Removed malloc.h from includes (covered by stdlib.h include, and gets rid of a warning in FreeBSD). * [win32/newfns.c] UnhookWindowsHookEx32A stub added. * [win32/user32.c] Added implementation of IsDialogMessage32A. * [windows/dialog.c] IsDlgButtonChecked now calls SendDlgItemMessage32A instead of SendDlgItemMessage16. Sat Aug 3 18:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/graphics.c] Removed rectangle checking (conflicted with nonstandard mapping modes). * [windows/dialog.c] Added check for child-style dialogs to DS_ABSALIGN coordinate conversion. * [objects/color.c] Cleaned up misc. bits Thu Aug 1 10:51:45 1996 Andrew Lewycky <plewycky@oise.utoronto.ca> * [windows/focus.c] [windows/event.c] [windows/win.c] [windows/defdlg.c] Fixes to focusing and activation. * [windows/defdlg.c] Properly(?) handle DM_GETDEFID. * [controls/combo.c] Handle CB_FINDSTRINGEXACT, CB_SETEDITSEL, CB_GETEDITSEL. CBCheckSize: Adjust edit position. Tue Jul 30 09:46:36 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] [include/file.h] [loader/module.c] [loader/ne_image.c] Pass HFILEs instead of unix-fds to self-loader code. Mon Jul 29 21:48:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [include/metafile.h] [objects/metafile.c] [objects/text.c] Implemented handling of some new metafile records (META_...) in PlayMetaFileRecord(), rewrite of 'case META_EXTTEXTOUT'. Added functions like MF_StretchBlt() for usage in metafiles. Minor bugfix in CopyMetafile(). * [objects/bitmap.c][objects/dib.c] Added check for metafile-DC in Bitmap and DIB functions: CreateCompatibleBitmap() etc.
107 lines
4.5 KiB
C
107 lines
4.5 KiB
C
/*
|
|
* Callback functions
|
|
*
|
|
* Copyright 1995 Alexandre Julliard
|
|
*/
|
|
|
|
#ifndef __WINE_CALLBACK_H
|
|
#define __WINE_CALLBACK_H
|
|
|
|
#include "wintypes.h"
|
|
|
|
extern
|
|
int CallTo32_LargeStack( int (*func)(), int nbargs, ... );
|
|
|
|
|
|
/* List of the 16-bit callback functions. This list is used */
|
|
/* by the build program to generate the file if1632/callto16.S */
|
|
|
|
/* func parameters */
|
|
extern WORD CallTo16_word_ ( FARPROC16 );
|
|
|
|
#ifndef WINELIB
|
|
|
|
extern WORD CallTo16_word_w ( FARPROC16, WORD );
|
|
extern WORD CallTo16_word_ww ( FARPROC16, WORD, WORD );
|
|
extern WORD CallTo16_word_wl ( FARPROC16, WORD, LONG );
|
|
extern WORD CallTo16_word_ll ( FARPROC16, LONG, LONG );
|
|
extern WORD CallTo16_word_www ( FARPROC16, WORD, WORD, WORD );
|
|
extern WORD CallTo16_word_wwl ( FARPROC16, WORD, WORD, LONG );
|
|
extern WORD CallTo16_word_wlw ( FARPROC16, WORD, LONG, WORD );
|
|
extern LONG CallTo16_long_wwl ( FARPROC16, WORD, WORD, LONG );
|
|
extern WORD CallTo16_word_llwl ( FARPROC16, LONG, LONG, WORD, LONG );
|
|
extern LONG CallTo16_long_wwwl ( FARPROC16, WORD, WORD, WORD, LONG );
|
|
extern WORD CallTo16_word_lwww ( FARPROC16, LONG, WORD, WORD, WORD );
|
|
extern WORD CallTo16_word_wwll ( FARPROC16, WORD, WORD, LONG, LONG );
|
|
extern WORD CallTo16_word_wllwl( FARPROC16, WORD, LONG, LONG, WORD, LONG );
|
|
extern LONG CallTo16_long_lwwll( FARPROC16, LONG, WORD, WORD, LONG, LONG );
|
|
extern WORD CallTo16_word_wwlll( FARPROC16, WORD, WORD, LONG, LONG, LONG );
|
|
extern LONG CallTo16_long_lllllllwlwwwl( FARPROC16, LONG, LONG, LONG,
|
|
LONG, LONG, LONG, LONG, WORD, LONG,
|
|
WORD, WORD, WORD, LONG );
|
|
|
|
extern WORD CallTo16_regs_( FARPROC16 func, WORD ds, WORD es, WORD bp, WORD ax,
|
|
WORD bx, WORD cx, WORD dx, WORD si, WORD di );
|
|
|
|
#define CallDCHookProc( func, hdc, code, data, lparam) \
|
|
CallTo16_word_wwll( func, hdc, code, data, lparam )
|
|
#define CallDriverProc( func, dwId, msg, hdrvr, lparam1, lparam2 ) \
|
|
CallTo16_long_lwwll( func, dwId, msg, hdrvr, lparam1, lparam2 )
|
|
#define CallHookProc( func, code, wParam, lParam ) \
|
|
CallTo16_long_wwl( func, code, wParam, lParam )
|
|
#define CallTimeFuncProc( func, id, msg, dwUser, dw1, dw2 ) \
|
|
CallTo16_word_wwlll( func, id, msg, dwUser, dw1, dw2 )
|
|
#define CallWindowsExitProc( func, nExitType ) \
|
|
CallTo16_word_w( func, nExitType )
|
|
#define CallWndProc16( func, hwnd, msg, wParam, lParam ) \
|
|
CallTo16_long_wwwl( (FARPROC16)(func), hwnd, msg, wParam, lParam )
|
|
#define CallWordBreakProc( func, lpch, ichCurrent, cch, code ) \
|
|
CallTo16_word_lwww( func, lpch, ichCurrent, cch, code )
|
|
#define CallWndProcNCCREATE16( func, exStyle, clsName, winName, style, \
|
|
x, y, cx, cy, hparent, hmenu, instance, \
|
|
params, hwnd, msg, wParam, lParam ) \
|
|
CallTo16_long_lllllllwlwwwl( (FARPROC16)(func), exStyle, clsName, winName,\
|
|
style, MAKELONG(y,x), MAKELONG(cy,cx), \
|
|
MAKELONG(hmenu,hparent), instance, params, \
|
|
hwnd, msg, wParam, lParam )
|
|
|
|
/* List of the 32-bit callback functions. This list is used */
|
|
/* by the build program to generate the file if1632/callto32.S */
|
|
|
|
extern LONG CallTo32_0( FARPROC32 );
|
|
extern LONG CallTo32_2( FARPROC32, DWORD, DWORD );
|
|
extern LONG CallTo32_3( FARPROC32, DWORD, DWORD, DWORD );
|
|
extern LONG CallTo32_4( FARPROC32, DWORD, DWORD, DWORD, DWORD );
|
|
|
|
#define CallTaskStart32( func ) \
|
|
CallTo32_0( func )
|
|
#define CallDLLEntryProc32( func, hmodule, a, b ) \
|
|
CallTo32_3( func, hmodule, a, b )
|
|
#define CallWndProc32( func, hwnd, msg, wParam, lParam ) \
|
|
CallTo32_4( func, hwnd, msg, wParam, lParam )
|
|
|
|
|
|
#else /* WINELIB */
|
|
|
|
#define CallDCHookProc( func, hdc, code, data, lparam ) \
|
|
(*func)( hdc, code, data, lparam )
|
|
#define CallDriverProc( func, dwId, msg, hdrvr, lparam1, lparam2 ) \
|
|
(*func)( dwId, msg, hdrvr, lparam1, lparam2 )
|
|
#define CallHookProc( func, code, wParam, lParam ) \
|
|
(*func)( code, wParam, lParam )
|
|
#define CallTimeFuncProc( func, id, msg, dwUser, dw1, dw2 ) \
|
|
(*func)( id, msg, dwUser, dw1, dw2 )
|
|
#define CallWindowsExitProc( func, nExitType ) \
|
|
(*func)( nExitType )
|
|
#define CallWndProc16( func, hwnd, msg, wParam, lParam ) \
|
|
(*func)( hwnd, msg, wParam, lParam )
|
|
#define CallWndProc32( func, hwnd, msg, wParam, lParam ) \
|
|
(*func)( hwnd, msg, wParam, lParam )
|
|
#define CallWordBreakProc( func, lpch, ichCurrent, cch, code ) \
|
|
(*func)( lpch, ichCurrent, cch, code )
|
|
|
|
#endif /* WINELIB */
|
|
|
|
|
|
#endif /* __WINE_CALLBACK_H */
|