Sweden-Number/if1632/thunk.c

616 lines
20 KiB
C
Raw Normal View History

Release 960805 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.
1996-08-05 19:42:43 +02:00
/*
* Emulator thunks
*
* Copyright 1996 Alexandre Julliard
*/
#include "windows.h"
#include "callback.h"
#include "heap.h"
#include "hook.h"
#include "module.h"
Release 960818 Sun Aug 18 12:17:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Added 'Filesystem' option in drives configuration. * [files/dos_fs.c] Added handling of case-insensitive filesystems. * [memory/selector.c] [include/stackframe.h] Removed MAKE_SEGPTR. * [misc/commdlg.c] [multimedia/mcistring.c] Replaced MAKE_SEGPTR by the SEGPTR_* macros. * [objects/bitblt.c] [windows/graphics.c] Use an intermediary pixmap to avoid some BadMatch errors on XGetImage(). Sun Aug 18 09:21:27 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Added handling of WM_NC...mouse messages in JOURNALRECORD hook. * [misc/ver.c] Fixed a bad string result in VerQueryValue[16|32A|32W]. Fri Aug 16 19:55:04 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [if1632/crtdll.spec] [misc/crtdll.c] More additions to get win95 programs further down the road. * [if1632/kernel.spec] [loader/module.c] GetModuleName() added. LoadModule(): params->showCmd can be NULL. * [if1632/kernel32.spec] [if1632/thunk.c] ThunkConnect32() stub added. * [loader/resource.c] Entries include lastentry. * [misc/shell.c] [files/file.c] Made progman work again. Fri Aug 16 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/defwnd.c] [windows/winpos.c] [windows/painting.c] Icon painting fixes. * [windows/winpos.c] [windows/painting.c] Enforce and follow hrgnUpdate more closely to cut down on redundant RedrawWindow() calls. * [windows/event.c] Process ConfigureNotify only for managed windows. * [windows/winpos.c] Do not redraw parent if the window was hidden before SetWindowPos(). * [windows/nonclient.c] Omit some nonclient decoration painting for managed windows. * [controls/menu.c] [windows/mdi.c] [windows/nonclient.c] Implemented WM_NEXTMENU. * [controls/listbox.c] Multicolumn listboxes return WVR_VREDRAW on WM_NCCALCSIZE. * [misc/shell.c] Added .ICO file handling to ExtractIcon().
1996-08-18 18:21:52 +02:00
#include "stddebug.h"
#include "debug.h"
Release 970202 Sun Feb 2 12:31:03 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Fixed SetCurrentDirectory() to also change the current drive. * [win32/except.c] [tools/build.c] Use Win32 register functions to implement exception handling. Fixed UnhandledExceptionFilter. Fri Jan 31 15:42:41 1997 David Faure <david.faure@ihamy.insa-lyon.fr> * [windows/keyboard.c] Added KEYBOARD_GenerateMsg to generate Caps Lock and NumLock events Added calls to KEYBOARD_GenerateMsg when the key is pressed/released or when the state has changed, out of wine. Changed type 3-state 'ToggleKeyState' to boolean. The On/Off is given by InputKeyStateTable. Wed Jan 29 21:53:04 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [loader/*resource.c][if1632/thunk.c] EnumResource* added. * [loader/pe_resource.] [loader/resource.c] SizeofResource32(), LoadAccelerators32() added. * [misc/lstr.c] FormatMessage %n added. * [misc/crtdll.c][include/ctrdll.h][if1632/crtdll.spec] _chdrive,_errno,_isctype added. * [misc/cpu.c] Replaced runtime_cpu by GetSystemInfo(). * [windows/hook.c][include/hook.h] Fixed mapping of hooks to win32/unicode. * [windows/keyboard.c] [windows/defwnd.c] Updated to win32 standard. ALT-<Menukey> fixed. * [windows/queue.c] GetWindowThreadProcessId() implemented. Mon Jan 27 16:42:49 1997 John Harvey <john@division.co.uk> * [graphics/metafiledrv/*] [graphics/x11drv/*] [objects/bitmap.c] [objects/brush.c] [objects/font.c] [objects/gdiobj.c] [objects/pen.c] Moved SelectObject to graphics drivers. Printer support now works in a few cases but is definitely not complete. Generic/text driver works. The postscript driver works if true type fonts are disabled from the control panel. To enable printer support add Printer=on to the wine section of your wine.conf file. This causes write not to work properly. I know that several other printer drivers do not work. * [tools/build.c] Make .stabs not used for svr4 since it doesn't use GNU assembler. * [misc/fontengine.c] Make sure a printf doesn't crash the system. Sat Jan 25 15:53:35 1997 Huw D M Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Fixed some problems with PlayMetaFileRecord(). * [objects/dc.c] hClipRgn gets initialized in GetDCState(). Fri Jan 24 21:22:26 1997 Philippe De Muyter <phdm@info.ucl.ac.be> * [debugger/stabs.c] Handle file names beginning with '/'. Fri Jan 24 18:33:04 1997 Robert Pouliot <krynos@clic.net> * [*/*] Some more patches for OS/2 support. Fri Jan 24 11:30:41 1997 Bang Jun-Young <bangjy@nownuri.nowcom.co.kr> * [resources/sysres_Ko.rc] Updated support for Korean (Ko) language.
1997-02-02 20:01:52 +01:00
#include "except.h"
Release 960805 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.
1996-08-05 19:42:43 +02:00
typedef void (*RELAY)();
#pragma pack(1)
typedef struct tagTHUNK
Release 960805 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.
1996-08-05 19:42:43 +02:00
{
BYTE popl_eax; /* 0x58 popl %eax (return address)*/
BYTE pushl_func; /* 0x68 pushl $proc */
FARPROC32 proc WINE_PACKED;
BYTE pushl_eax; /* 0x50 pushl %eax */
BYTE jmp; /* 0xe9 jmp relay (relative jump)*/
RELAY relay WINE_PACKED;
struct tagTHUNK *next WINE_PACKED;
Release 960805 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.
1996-08-05 19:42:43 +02:00
} THUNK;
#pragma pack(4)
Release 960805 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.
1996-08-05 19:42:43 +02:00
#define DECL_THUNK(name,proc,relay) \
THUNK name = { 0x58, 0x68, (FARPROC32)(proc), 0x50, 0xe9, \
(RELAY)((char *)(relay) - (char *)(&(name).next)), NULL }
Release 960805 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.
1996-08-05 19:42:43 +02:00
static THUNK *firstThunk = NULL;
Release 960805 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.
1996-08-05 19:42:43 +02:00
/***********************************************************************
* THUNK_Alloc
*/
static THUNK *THUNK_Alloc( FARPROC32 func, RELAY relay )
{
Release 970202 Sun Feb 2 12:31:03 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Fixed SetCurrentDirectory() to also change the current drive. * [win32/except.c] [tools/build.c] Use Win32 register functions to implement exception handling. Fixed UnhandledExceptionFilter. Fri Jan 31 15:42:41 1997 David Faure <david.faure@ihamy.insa-lyon.fr> * [windows/keyboard.c] Added KEYBOARD_GenerateMsg to generate Caps Lock and NumLock events Added calls to KEYBOARD_GenerateMsg when the key is pressed/released or when the state has changed, out of wine. Changed type 3-state 'ToggleKeyState' to boolean. The On/Off is given by InputKeyStateTable. Wed Jan 29 21:53:04 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [loader/*resource.c][if1632/thunk.c] EnumResource* added. * [loader/pe_resource.] [loader/resource.c] SizeofResource32(), LoadAccelerators32() added. * [misc/lstr.c] FormatMessage %n added. * [misc/crtdll.c][include/ctrdll.h][if1632/crtdll.spec] _chdrive,_errno,_isctype added. * [misc/cpu.c] Replaced runtime_cpu by GetSystemInfo(). * [windows/hook.c][include/hook.h] Fixed mapping of hooks to win32/unicode. * [windows/keyboard.c] [windows/defwnd.c] Updated to win32 standard. ALT-<Menukey> fixed. * [windows/queue.c] GetWindowThreadProcessId() implemented. Mon Jan 27 16:42:49 1997 John Harvey <john@division.co.uk> * [graphics/metafiledrv/*] [graphics/x11drv/*] [objects/bitmap.c] [objects/brush.c] [objects/font.c] [objects/gdiobj.c] [objects/pen.c] Moved SelectObject to graphics drivers. Printer support now works in a few cases but is definitely not complete. Generic/text driver works. The postscript driver works if true type fonts are disabled from the control panel. To enable printer support add Printer=on to the wine section of your wine.conf file. This causes write not to work properly. I know that several other printer drivers do not work. * [tools/build.c] Make .stabs not used for svr4 since it doesn't use GNU assembler. * [misc/fontengine.c] Make sure a printf doesn't crash the system. Sat Jan 25 15:53:35 1997 Huw D M Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Fixed some problems with PlayMetaFileRecord(). * [objects/dc.c] hClipRgn gets initialized in GetDCState(). Fri Jan 24 21:22:26 1997 Philippe De Muyter <phdm@info.ucl.ac.be> * [debugger/stabs.c] Handle file names beginning with '/'. Fri Jan 24 18:33:04 1997 Robert Pouliot <krynos@clic.net> * [*/*] Some more patches for OS/2 support. Fri Jan 24 11:30:41 1997 Bang Jun-Young <bangjy@nownuri.nowcom.co.kr> * [resources/sysres_Ko.rc] Updated support for Korean (Ko) language.
1997-02-02 20:01:52 +01:00
THUNK *thunk = HeapAlloc( GetProcessHeap(), 0, sizeof(*thunk) );
Release 960805 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.
1996-08-05 19:42:43 +02:00
if (thunk)
{
thunk->popl_eax = 0x58;
thunk->pushl_func = 0x68;
thunk->proc = func;
thunk->pushl_eax = 0x50;
thunk->jmp = 0xe9;
thunk->relay = (RELAY)((char *)relay - (char *)(&thunk->next));
thunk->next = firstThunk;
firstThunk = thunk;
Release 960805 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.
1996-08-05 19:42:43 +02:00
}
return thunk;
}
/***********************************************************************
* THUNK_Find
*/
static THUNK *THUNK_Find( FARPROC32 func )
{
THUNK *thunk = firstThunk;
while (thunk && (thunk->proc != func)) thunk = thunk->next;
return thunk;
}
Release 960805 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.
1996-08-05 19:42:43 +02:00
/***********************************************************************
* THUNK_Free
*/
void THUNK_Free( THUNK *thunk )
Release 960805 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.
1996-08-05 19:42:43 +02:00
{
Release 970202 Sun Feb 2 12:31:03 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Fixed SetCurrentDirectory() to also change the current drive. * [win32/except.c] [tools/build.c] Use Win32 register functions to implement exception handling. Fixed UnhandledExceptionFilter. Fri Jan 31 15:42:41 1997 David Faure <david.faure@ihamy.insa-lyon.fr> * [windows/keyboard.c] Added KEYBOARD_GenerateMsg to generate Caps Lock and NumLock events Added calls to KEYBOARD_GenerateMsg when the key is pressed/released or when the state has changed, out of wine. Changed type 3-state 'ToggleKeyState' to boolean. The On/Off is given by InputKeyStateTable. Wed Jan 29 21:53:04 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [loader/*resource.c][if1632/thunk.c] EnumResource* added. * [loader/pe_resource.] [loader/resource.c] SizeofResource32(), LoadAccelerators32() added. * [misc/lstr.c] FormatMessage %n added. * [misc/crtdll.c][include/ctrdll.h][if1632/crtdll.spec] _chdrive,_errno,_isctype added. * [misc/cpu.c] Replaced runtime_cpu by GetSystemInfo(). * [windows/hook.c][include/hook.h] Fixed mapping of hooks to win32/unicode. * [windows/keyboard.c] [windows/defwnd.c] Updated to win32 standard. ALT-<Menukey> fixed. * [windows/queue.c] GetWindowThreadProcessId() implemented. Mon Jan 27 16:42:49 1997 John Harvey <john@division.co.uk> * [graphics/metafiledrv/*] [graphics/x11drv/*] [objects/bitmap.c] [objects/brush.c] [objects/font.c] [objects/gdiobj.c] [objects/pen.c] Moved SelectObject to graphics drivers. Printer support now works in a few cases but is definitely not complete. Generic/text driver works. The postscript driver works if true type fonts are disabled from the control panel. To enable printer support add Printer=on to the wine section of your wine.conf file. This causes write not to work properly. I know that several other printer drivers do not work. * [tools/build.c] Make .stabs not used for svr4 since it doesn't use GNU assembler. * [misc/fontengine.c] Make sure a printf doesn't crash the system. Sat Jan 25 15:53:35 1997 Huw D M Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Fixed some problems with PlayMetaFileRecord(). * [objects/dc.c] hClipRgn gets initialized in GetDCState(). Fri Jan 24 21:22:26 1997 Philippe De Muyter <phdm@info.ucl.ac.be> * [debugger/stabs.c] Handle file names beginning with '/'. Fri Jan 24 18:33:04 1997 Robert Pouliot <krynos@clic.net> * [*/*] Some more patches for OS/2 support. Fri Jan 24 11:30:41 1997 Bang Jun-Young <bangjy@nownuri.nowcom.co.kr> * [resources/sysres_Ko.rc] Updated support for Korean (Ko) language.
1997-02-02 20:01:52 +01:00
if (HEAP_IsInsideHeap( GetProcessHeap(), 0, thunk ))
{
THUNK **prev = &firstThunk;
while (*prev && (*prev != thunk)) prev = &(*prev)->next;
if (*prev)
{
*prev = thunk->next;
Release 970202 Sun Feb 2 12:31:03 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Fixed SetCurrentDirectory() to also change the current drive. * [win32/except.c] [tools/build.c] Use Win32 register functions to implement exception handling. Fixed UnhandledExceptionFilter. Fri Jan 31 15:42:41 1997 David Faure <david.faure@ihamy.insa-lyon.fr> * [windows/keyboard.c] Added KEYBOARD_GenerateMsg to generate Caps Lock and NumLock events Added calls to KEYBOARD_GenerateMsg when the key is pressed/released or when the state has changed, out of wine. Changed type 3-state 'ToggleKeyState' to boolean. The On/Off is given by InputKeyStateTable. Wed Jan 29 21:53:04 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [loader/*resource.c][if1632/thunk.c] EnumResource* added. * [loader/pe_resource.] [loader/resource.c] SizeofResource32(), LoadAccelerators32() added. * [misc/lstr.c] FormatMessage %n added. * [misc/crtdll.c][include/ctrdll.h][if1632/crtdll.spec] _chdrive,_errno,_isctype added. * [misc/cpu.c] Replaced runtime_cpu by GetSystemInfo(). * [windows/hook.c][include/hook.h] Fixed mapping of hooks to win32/unicode. * [windows/keyboard.c] [windows/defwnd.c] Updated to win32 standard. ALT-<Menukey> fixed. * [windows/queue.c] GetWindowThreadProcessId() implemented. Mon Jan 27 16:42:49 1997 John Harvey <john@division.co.uk> * [graphics/metafiledrv/*] [graphics/x11drv/*] [objects/bitmap.c] [objects/brush.c] [objects/font.c] [objects/gdiobj.c] [objects/pen.c] Moved SelectObject to graphics drivers. Printer support now works in a few cases but is definitely not complete. Generic/text driver works. The postscript driver works if true type fonts are disabled from the control panel. To enable printer support add Printer=on to the wine section of your wine.conf file. This causes write not to work properly. I know that several other printer drivers do not work. * [tools/build.c] Make .stabs not used for svr4 since it doesn't use GNU assembler. * [misc/fontengine.c] Make sure a printf doesn't crash the system. Sat Jan 25 15:53:35 1997 Huw D M Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Fixed some problems with PlayMetaFileRecord(). * [objects/dc.c] hClipRgn gets initialized in GetDCState(). Fri Jan 24 21:22:26 1997 Philippe De Muyter <phdm@info.ucl.ac.be> * [debugger/stabs.c] Handle file names beginning with '/'. Fri Jan 24 18:33:04 1997 Robert Pouliot <krynos@clic.net> * [*/*] Some more patches for OS/2 support. Fri Jan 24 11:30:41 1997 Bang Jun-Young <bangjy@nownuri.nowcom.co.kr> * [resources/sysres_Ko.rc] Updated support for Korean (Ko) language.
1997-02-02 20:01:52 +01:00
HeapFree( GetProcessHeap(), 0, thunk );
return;
}
}
fprintf( stderr, "THUNK_Free: invalid thunk addr %p\n", thunk );
Release 960805 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.
1996-08-05 19:42:43 +02:00
}
/***********************************************************************
* THUNK_EnumObjects16 (GDI.71)
*/
INT16 THUNK_EnumObjects16( HDC16 hdc, INT16 nObjType,
GOBJENUMPROC16 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_ll );
return EnumObjects16( hdc, nObjType, (GOBJENUMPROC16)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumObjects32 (GDI32.89)
*/
INT32 THUNK_EnumObjects32( HDC32 hdc, INT32 nObjType,
GOBJENUMPROC32 func, LPARAM lParam )
{
Release 961215 Sun Dec 15 16:18:15 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [graphics/x11drv/bitblt.c] Fixed BITBLT_StretchImage for partially covered or inverted bitmaps. * [objects/dib.c] Fixed the upside-down bitmap problem. Sat Dec 14 02:49:57 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/user32.spec] IsMenu and RemoveMenu added (use existing Win16 functions). * [include/windows.h] Corrections to BITMAPINFOHEADER structure. * [loader/module.c] [if1632/kernel32.spec] New function GetModuleFileName32A (heavily based on original Win16 version). * [loader/pe_image.c] Hack to allow files with short PE header to be loaded (e.g. COMDLG32.DLL from Win32s). * [misc/winsock_async.c] #if out EIDRM case (not present in FreeBSD). * [tools/build.c] Remove trailing comments from .s files generated by build as these break assembly when not run through pre-processor. * [windows/graphics.c] [if1632/gdi32.spec] New function Polyline32 - based on original Polyline. Needs metafile support adding still. Fri Dec 13 13:04:06 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [win32/findfile.c] [if1632/kernel.spec] FindFirstFile32A(): Use dos current directory for drive prefixes. FindNextFile32A(): Fill in file attribute information. Implement FindFirstFile16, FindNextFile16, FindClose16. * [files/drive.c] GetCurrentDirectory32A - Fix problem with null 3rd character in string. Tue Dec 10 14:49:07 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [windows/painting.c][windows/message.c] Don't use linked lists to call SendMessage(), for it might destroy the current listentry. * [misc/registry.c] Fixed temporary file saving (rename doesn't work across partitions). * [files/*.c] GetFullPathName*,GetDriveType32A fixed, CreateDirectoryEx*, GetVolumeInformation32W fixed. * [win32/process.c][if1632/kernel.spec][if1632/kernel32.spec] LoadLibrary* updated to new naming std., *32W added. * [win32/console.c] [include/wincon.h] Additions for NT commandline executables. * [if1632/advapi32.spec][if1632/kernel32.spec][win32/init.c] GetUserName32W added, GetComputerName32W added, GetStartupInfo32W added, GetSystemInfo updated to NT standard. * [windows/msgbox.c][misc/shell.c][windows/graphics.c] MessageBox32W, ShellAbout32W, CommandLineToArgvW, Polygon32 added. * [misc/crtdll.c][include/crtdll.h][if1632/crtdll.spec][misc/ntdll.c] [if1632/ntdll.spec] Lot of new unicode functions added (needed for NT). * [loader/pe_image.c] NtCurrentTeb added. Tue Dec 10 22:39:33 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/keyboard.c] Rewrote function TranslateAccelerator(). Mon Dec 9 14:52:13 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [windows/defwnd.c] DEFWND_SetText(): Set icon name. Sun Dec 8 23:30:00 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [loader/signal.c] [misc/winsock.c] [misc/winsock_async.c] [if1632/winsock.spec] IPC resource cleanup, bugfixes. * [windows/dialog.c] [windows/defdlg.c] More DefDlgProc() fixes. Sun Dec 8 14:01:42 1996 Vadim Strizhevsky <striv@ms.com> * [misc/clipboard.c] [objects/font.c] [win32/init.c] [win32/newfns.c] [windows/graphics.c] Added a few WIN32 functions which needed to run some win32 accessories. Clock should now work almost as well as 16 bit version. Add: RegisterClipboardFormat32W GetTextExtentExPoint32* GetModuleHandleW, DisableThreadLibraryCalls (empty stub), Polygon32 Fix: Polygon16 possible memory leak on error return.
1996-12-15 20:45:59 +01:00
DECL_THUNK( thunk, func, CallTo32_2 );
return EnumObjects32( hdc, nObjType, (GOBJENUMPROC32)&thunk, lParam );
Release 960805 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.
1996-08-05 19:42:43 +02:00
}
/*************************************************************************
* THUNK_EnumFonts16 (GDI.70)
*/
INT16 THUNK_EnumFonts16( HDC16 hdc, LPCSTR lpFaceName,
FONTENUMPROC16 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_llwl );
Release 961201 Sat Nov 30 19:21:17 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure] Re-generated with autoconf 2.11. Let me know if you have problems. * [controls/listbox.c] [controls/oldlbox.c] Listboxes rewritten from scratch. Moved old code still used by comboboxes to oldlbox.c * [misc/registry.c] Use temporary file when saving registry. * [windows/dialog.c] Implemented Win32 version of DlgDirList() and DlgDirListComboBox(). * [windows/winproc.c] Added translation for listbox Win32 messages. Sat Nov 30 21:00:00 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [controls/widgets.c] [controls/button.c] Fixed some incompatibilities with CTL3D DLL. * [windows/dialog.c] Made dialog windows fit into the desktop. * [misc/winsock.c] [misc/winsock_async.c] New Winsock engine. * [windows/message.c] GetMessage() fixes. * [windows/queue.c] [windows/hook.c] [windows/win.c] SetMessageQueue() fixes. Fri Nov 29 10:25:12 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [objects/text.c] DrawText16(): Fixed return value. Tue Nov 26 14:47:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/profile.c] [*/*] Added Win32 profile functions, updated to new naming standard. * [objects/font.c] [if1632/thunk.c] [include/windows.h] Added EnumFonts32*, EnumFontFamiliesEx*, changed prototypes and structures. * [misc/ole2nls.c] [if1632/thunk.c] Added EnumSystemLocales() (winhelp.exe). * [misc/registry.c] Added Windows 3.1 registry loader supplied by Tor Sjxwall, tor@sn.no * [win32/file.c] Partially fixed CreateFileMapping(), added UnmapViewOfFile(). Sat Nov 23 23:36:05 1996 Ronan Waide <waider@waider.ie> * [misc/shell.c] Fixed some FIXMEs relating to ShellExec() and FindExecutable(). * [misc/main.c] Implemented a few more of the SystemParametersInfo() cases. Tue Nov 19 01:24:34 1996 Philippe De Muyter <phdm@info.ucl.ac.be> * [include/keyboard.h] New file, new macro WINE_VKEY_MAPPINGS (using code taken from event.c). * [include/windows.h] New [VK_A, VK_Z] and [VK_0, VK9] macros. * [misc/keyboard.c] Fixes in KeyTable and ToAscii. * [objects/font.c] FONT_init : Give default value for MSWIN "system" font. FONT_MatchFont : Do not try every size of a font family if the family does not exist. * [windows/event.c] lastEventChar hack removed. KeyStateTable replaced by InputKeyStateTable (maintained in event.c) and QueueKeyStateTable (maintained in message.c). EVENT_key : Corrections to the extended bit setting. * [windows/message.c] [windows/keyboard.c] Implementation of a new QueueKeyStateTable : table of key states valid when messages are retrieved by GetMessage or PeekMessage, and valid for TranslateMessage. TranslateMessage : Convert WM*KEY messages using QueueKeyStateTable and ToAscii. Mon Nov 18 16:59:01 1996 Robert Pouliot <krynos@clic.net> * [graphics/Makefile.in] [graphics/wing.c] [if1632/wing.spec] Some functions for WinG support, mostly empty stubs. * [misc/crtdll.c] [if1632/crtdll.spec] Many functions added to CRTDLL, mostly calls to Unix C library.
1996-12-01 18:17:47 +01:00
return EnumFonts16( hdc, lpFaceName, (FONTENUMPROC16)&thunk, lParam );
Release 960805 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.
1996-08-05 19:42:43 +02:00
}
Release 961201 Sat Nov 30 19:21:17 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure] Re-generated with autoconf 2.11. Let me know if you have problems. * [controls/listbox.c] [controls/oldlbox.c] Listboxes rewritten from scratch. Moved old code still used by comboboxes to oldlbox.c * [misc/registry.c] Use temporary file when saving registry. * [windows/dialog.c] Implemented Win32 version of DlgDirList() and DlgDirListComboBox(). * [windows/winproc.c] Added translation for listbox Win32 messages. Sat Nov 30 21:00:00 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [controls/widgets.c] [controls/button.c] Fixed some incompatibilities with CTL3D DLL. * [windows/dialog.c] Made dialog windows fit into the desktop. * [misc/winsock.c] [misc/winsock_async.c] New Winsock engine. * [windows/message.c] GetMessage() fixes. * [windows/queue.c] [windows/hook.c] [windows/win.c] SetMessageQueue() fixes. Fri Nov 29 10:25:12 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [objects/text.c] DrawText16(): Fixed return value. Tue Nov 26 14:47:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/profile.c] [*/*] Added Win32 profile functions, updated to new naming standard. * [objects/font.c] [if1632/thunk.c] [include/windows.h] Added EnumFonts32*, EnumFontFamiliesEx*, changed prototypes and structures. * [misc/ole2nls.c] [if1632/thunk.c] Added EnumSystemLocales() (winhelp.exe). * [misc/registry.c] Added Windows 3.1 registry loader supplied by Tor Sjxwall, tor@sn.no * [win32/file.c] Partially fixed CreateFileMapping(), added UnmapViewOfFile(). Sat Nov 23 23:36:05 1996 Ronan Waide <waider@waider.ie> * [misc/shell.c] Fixed some FIXMEs relating to ShellExec() and FindExecutable(). * [misc/main.c] Implemented a few more of the SystemParametersInfo() cases. Tue Nov 19 01:24:34 1996 Philippe De Muyter <phdm@info.ucl.ac.be> * [include/keyboard.h] New file, new macro WINE_VKEY_MAPPINGS (using code taken from event.c). * [include/windows.h] New [VK_A, VK_Z] and [VK_0, VK9] macros. * [misc/keyboard.c] Fixes in KeyTable and ToAscii. * [objects/font.c] FONT_init : Give default value for MSWIN "system" font. FONT_MatchFont : Do not try every size of a font family if the family does not exist. * [windows/event.c] lastEventChar hack removed. KeyStateTable replaced by InputKeyStateTable (maintained in event.c) and QueueKeyStateTable (maintained in message.c). EVENT_key : Corrections to the extended bit setting. * [windows/message.c] [windows/keyboard.c] Implementation of a new QueueKeyStateTable : table of key states valid when messages are retrieved by GetMessage or PeekMessage, and valid for TranslateMessage. TranslateMessage : Convert WM*KEY messages using QueueKeyStateTable and ToAscii. Mon Nov 18 16:59:01 1996 Robert Pouliot <krynos@clic.net> * [graphics/Makefile.in] [graphics/wing.c] [if1632/wing.spec] Some functions for WinG support, mostly empty stubs. * [misc/crtdll.c] [if1632/crtdll.spec] Many functions added to CRTDLL, mostly calls to Unix C library.
1996-12-01 18:17:47 +01:00
/*************************************************************************
* THUNK_EnumFonts32A (GDI32.84)
*/
INT32 THUNK_EnumFonts32A( HDC32 hdc, LPCSTR lpFaceName,
FONTENUMPROC32A func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumFonts32A( hdc, lpFaceName, (FONTENUMPROC32A)&thunk, lParam );
}
/*************************************************************************
* THUNK_EnumFonts32W (GDI32.85)
*/
INT32 THUNK_EnumFonts32W( HDC32 hdc, LPCWSTR lpFaceName,
FONTENUMPROC32W func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumFonts32W( hdc, lpFaceName, (FONTENUMPROC32W)&thunk, lParam );
}
Release 960805 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.
1996-08-05 19:42:43 +02:00
/******************************************************************
* THUNK_EnumMetaFile16 (GDI.175)
*/
BOOL16 THUNK_EnumMetaFile16( HDC16 hdc, HMETAFILE16 hmf,
MFENUMPROC16 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_wllwl );
return EnumMetaFile( hdc, hmf, (MFENUMPROC16)&thunk, lParam );
}
/*************************************************************************
* THUNK_EnumFontFamilies16 (GDI.330)
*/
INT16 THUNK_EnumFontFamilies16( HDC16 hdc, LPCSTR lpszFamily,
FONTENUMPROC16 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_llwl );
Release 961117 Sun Nov 17 15:01:45 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [graphics/bitblt.c] [graphics/x11drv/bitblt.c] Moved BitBlt operations to the new graphics driver interface. Implemented PatBlt32, BitBlt32 and StretchBlt32. * [memory/global.c] Unified MemManInfo() and GlobalMemoryStatus(). * [objects/text.c] Fixed ExtTextOut() to always use physical coords for clip rect. * [windows/dialog.c] Implemented DlgDirSelectEx() and Win32 version of DlgDirSelect*. * [windows/event.c] Avoid busy-looping in EVENT_WaitXEvent when no timer is pending (thanks to Thomas Koenig). * [windows/painting.c] Moved update region clipping for CS_PARENTDC windows to BeginPaint(). * [windows/scroll.c] Implemented Win32 version of ScrollWindow() and ScrollDC(). Tue Nov 12 09:52:17 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/*.c] [win32/file.c] Some win32 filetime conversion functions added. Fixed behaviour with DOS drives pointing to UNIX / SetCurrentDirectory() may also get X:\xxx paths. Fixed FILE_Open when called from CreateFile(). Added GetFileSize(), MapViewOfFile(), SetFileTime(), GetFileTime(). * [misc/crtdll.c] [if1632/crtdll.spec] Added some new functions. * [if1632/user32.spec] Some thunks into win16 code added. * [win32/init.c] Added GetSystemInfo(), removed GetModuleFileName() stub. * [win32/code_page.c] [if1632/thunk.c] Added EnumSystemCodePages* (untested). * [objects/font.c] [if1632/thunk.c] Added EnumFontFamilies32*. Mon Nov 11 14:50:24 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [controls/menu.c] [windows/mdi.c] Don't delete the MDI `windows' menu if it's already been deleted. * [misc/exec.c] Notepad always calls WinHelp(.., HELP_QUIT, ...) at termination and complains if it returns FALSE. * [windows/winpos.c] Get maximized MDI child's nonclient area redrawn after resize. Thu Nov 7 13:32:34 1996 Lee Jaekil <juria@seodu.co.kr> * [memory/global.c] Use /proc filesystem for GlobalMemoryStatus() on Linux. Mon Nov 4 18:30:00 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/event.c] Added OffiX-style file drop handling. File paths must be DOS-mappable by Wine (via wine.conf). * [controls/combo.c] Added WM_GETTEXT handler. * [objects/palette.c] Added ResizePalette() (untested). * [objects/cursoricon.c] Implemented icon to cursor conversion. * [objects/color.c] Fixed crash on startup when no colorcells are writeable. Mon Nov 4 00:49:41 1996 Ulrich Schmid <uschmid@mail.hh.provi.de> * [rc/winerc.c] Added support for win32 output. * [library/libres.c] [include/libres.h] [loader/resource.c] Renamed LIBRES_FindResource to LIBRES_FindResource16. Added LIBRES_FindResource32. Sun Nov 3 21:21:45 1996 Robert Pouliot <krynos@clic.net> * [loader/builtin.c] [if1632/Makefile.in] [if1632/wing.spec] Added the spec file for WinG, it's only stub for now, but it should be easy to do by someone with Windows programming knowledge. See: ftp.microsoft.com/SoftLib/MSLFILES/wing10.exe. * [if1632/crtdll.spec] Added some string and memory functions to make sfxed95.exe (of Warcraft 2) almost work.
1996-11-17 19:59:11 +01:00
return EnumFontFamilies16(hdc, lpszFamily, (FONTENUMPROC16)&thunk, lParam);
}
/*************************************************************************
* THUNK_EnumFontFamilies32A (GDI32.80)
*/
INT32 THUNK_EnumFontFamilies32A( HDC32 hdc, LPCSTR lpszFamily,
FONTENUMPROC32A func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumFontFamilies32A(hdc,lpszFamily,(FONTENUMPROC32A)&thunk,lParam);
}
/*************************************************************************
* THUNK_EnumFontFamilies32W (GDI32.83)
*/
INT32 THUNK_EnumFontFamilies32W( HDC32 hdc, LPCWSTR lpszFamily,
FONTENUMPROC32W func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumFontFamilies32W(hdc,lpszFamily,(FONTENUMPROC32W)&thunk,lParam);
Release 960805 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.
1996-08-05 19:42:43 +02:00
}
Release 961201 Sat Nov 30 19:21:17 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure] Re-generated with autoconf 2.11. Let me know if you have problems. * [controls/listbox.c] [controls/oldlbox.c] Listboxes rewritten from scratch. Moved old code still used by comboboxes to oldlbox.c * [misc/registry.c] Use temporary file when saving registry. * [windows/dialog.c] Implemented Win32 version of DlgDirList() and DlgDirListComboBox(). * [windows/winproc.c] Added translation for listbox Win32 messages. Sat Nov 30 21:00:00 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [controls/widgets.c] [controls/button.c] Fixed some incompatibilities with CTL3D DLL. * [windows/dialog.c] Made dialog windows fit into the desktop. * [misc/winsock.c] [misc/winsock_async.c] New Winsock engine. * [windows/message.c] GetMessage() fixes. * [windows/queue.c] [windows/hook.c] [windows/win.c] SetMessageQueue() fixes. Fri Nov 29 10:25:12 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [objects/text.c] DrawText16(): Fixed return value. Tue Nov 26 14:47:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/profile.c] [*/*] Added Win32 profile functions, updated to new naming standard. * [objects/font.c] [if1632/thunk.c] [include/windows.h] Added EnumFonts32*, EnumFontFamiliesEx*, changed prototypes and structures. * [misc/ole2nls.c] [if1632/thunk.c] Added EnumSystemLocales() (winhelp.exe). * [misc/registry.c] Added Windows 3.1 registry loader supplied by Tor Sjxwall, tor@sn.no * [win32/file.c] Partially fixed CreateFileMapping(), added UnmapViewOfFile(). Sat Nov 23 23:36:05 1996 Ronan Waide <waider@waider.ie> * [misc/shell.c] Fixed some FIXMEs relating to ShellExec() and FindExecutable(). * [misc/main.c] Implemented a few more of the SystemParametersInfo() cases. Tue Nov 19 01:24:34 1996 Philippe De Muyter <phdm@info.ucl.ac.be> * [include/keyboard.h] New file, new macro WINE_VKEY_MAPPINGS (using code taken from event.c). * [include/windows.h] New [VK_A, VK_Z] and [VK_0, VK9] macros. * [misc/keyboard.c] Fixes in KeyTable and ToAscii. * [objects/font.c] FONT_init : Give default value for MSWIN "system" font. FONT_MatchFont : Do not try every size of a font family if the family does not exist. * [windows/event.c] lastEventChar hack removed. KeyStateTable replaced by InputKeyStateTable (maintained in event.c) and QueueKeyStateTable (maintained in message.c). EVENT_key : Corrections to the extended bit setting. * [windows/message.c] [windows/keyboard.c] Implementation of a new QueueKeyStateTable : table of key states valid when messages are retrieved by GetMessage or PeekMessage, and valid for TranslateMessage. TranslateMessage : Convert WM*KEY messages using QueueKeyStateTable and ToAscii. Mon Nov 18 16:59:01 1996 Robert Pouliot <krynos@clic.net> * [graphics/Makefile.in] [graphics/wing.c] [if1632/wing.spec] Some functions for WinG support, mostly empty stubs. * [misc/crtdll.c] [if1632/crtdll.spec] Many functions added to CRTDLL, mostly calls to Unix C library.
1996-12-01 18:17:47 +01:00
/*************************************************************************
* THUNK_EnumFontFamiliesEx16 (GDI.613)
*/
INT16 THUNK_EnumFontFamiliesEx16( HDC16 hdc, LPLOGFONT16 lpLF,
FONTENUMPROCEX16 func, LPARAM lParam,
DWORD reserved )
{
DECL_THUNK( thunk, func, CallTo16_word_llwl );
return EnumFontFamiliesEx16( hdc, lpLF, (FONTENUMPROCEX16)&thunk,
lParam, reserved );
}
/*************************************************************************
* THUNK_EnumFontFamiliesEx32A (GDI32.81)
*/
INT32 THUNK_EnumFontFamiliesEx32A( HDC32 hdc, LPLOGFONT32A lpLF,
FONTENUMPROCEX32A func, LPARAM lParam,
DWORD reserved)
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumFontFamiliesEx32A( hdc, lpLF, (FONTENUMPROCEX32A)&thunk,
lParam, reserved );
}
/*************************************************************************
* THUNK_EnumFontFamiliesEx32W (GDI32.82)
*/
INT32 THUNK_EnumFontFamiliesEx32W( HDC32 hdc, LPLOGFONT32W lpLF,
FONTENUMPROCEX32W func, LPARAM lParam,
DWORD reserved )
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumFontFamiliesEx32W( hdc, lpLF, (FONTENUMPROCEX32W)&thunk,
lParam, reserved );
}
Release 960805 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.
1996-08-05 19:42:43 +02:00
/**********************************************************************
* THUNK_LineDDA16 (GDI.100)
*/
void THUNK_LineDDA16( INT16 nXStart, INT16 nYStart, INT16 nXEnd, INT16 nYEnd,
LINEDDAPROC16 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_wwl );
LineDDA16( nXStart, nYStart, nXEnd, nYEnd, (LINEDDAPROC16)&thunk, lParam );
}
/**********************************************************************
* THUNK_LineDDA32 (GDI32.248)
*/
BOOL32 THUNK_LineDDA32( INT32 nXStart, INT32 nYStart, INT32 nXEnd, INT32 nYEnd,
LINEDDAPROC32 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_3 );
return LineDDA32( nXStart, nYStart, nXEnd, nYEnd,
(LINEDDAPROC32)&thunk, lParam );
}
/*******************************************************************
* THUNK_EnumWindows16 (USER.54)
*/
BOOL16 THUNK_EnumWindows16( WNDENUMPROC16 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_wl );
return EnumWindows16( (WNDENUMPROC16)&thunk, lParam );
}
/*******************************************************************
* THUNK_EnumWindows32 (USER32.192)
*/
BOOL32 THUNK_EnumWindows32( WNDENUMPROC32 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_2 );
return EnumWindows32( (WNDENUMPROC32)&thunk, lParam );
}
/**********************************************************************
* THUNK_EnumChildWindows16 (USER.55)
*/
BOOL16 THUNK_EnumChildWindows16( HWND16 parent, WNDENUMPROC16 func,
LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_wl );
return EnumChildWindows16( parent, (WNDENUMPROC16)&thunk, lParam );
}
/**********************************************************************
* THUNK_EnumChildWindows32 (USER32.177)
*/
BOOL32 THUNK_EnumChildWindows32( HWND32 parent, WNDENUMPROC32 func,
LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_2 );
return EnumChildWindows32( parent, (WNDENUMPROC32)&thunk, lParam );
}
/**********************************************************************
* THUNK_EnumTaskWindows16 (USER.225)
*/
BOOL16 THUNK_EnumTaskWindows16( HTASK16 hTask, WNDENUMPROC16 func,
LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo16_word_wl );
return EnumTaskWindows16( hTask, (WNDENUMPROC16)&thunk, lParam );
}
/**********************************************************************
* THUNK_EnumThreadWindows (USER32.189)
*/
BOOL32 THUNK_EnumThreadWindows( DWORD id, WNDENUMPROC32 func, LPARAM lParam )
{
DECL_THUNK( thunk, func, CallTo32_2 );
return EnumThreadWindows( id, (WNDENUMPROC32)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumProps16 (USER.27)
*/
INT16 THUNK_EnumProps16( HWND16 hwnd, PROPENUMPROC16 func )
{
DECL_THUNK( thunk, func, CallTo16_word_wlw );
return EnumProps16( hwnd, (PROPENUMPROC16)&thunk );
}
/***********************************************************************
* THUNK_EnumProps32A (USER32.185)
*/
INT32 THUNK_EnumProps32A( HWND32 hwnd, PROPENUMPROC32A func )
{
DECL_THUNK( thunk, func, CallTo32_3 );
return EnumProps32A( hwnd, (PROPENUMPROC32A)&thunk );
}
/***********************************************************************
* THUNK_EnumProps32W (USER32.188)
*/
INT32 THUNK_EnumProps32W( HWND32 hwnd, PROPENUMPROC32W func )
{
DECL_THUNK( thunk, func, CallTo32_3 );
return EnumProps32W( hwnd, (PROPENUMPROC32W)&thunk );
}
/***********************************************************************
* THUNK_EnumPropsEx32A (USER32.186)
*/
INT32 THUNK_EnumPropsEx32A( HWND32 hwnd, PROPENUMPROCEX32A func, LPARAM lParam)
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumPropsEx32A( hwnd, (PROPENUMPROCEX32A)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumPropsEx32W (USER32.187)
*/
INT32 THUNK_EnumPropsEx32W( HWND32 hwnd, PROPENUMPROCEX32W func, LPARAM lParam)
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumPropsEx32W( hwnd, (PROPENUMPROCEX32W)&thunk, lParam );
}
Release 961117 Sun Nov 17 15:01:45 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [graphics/bitblt.c] [graphics/x11drv/bitblt.c] Moved BitBlt operations to the new graphics driver interface. Implemented PatBlt32, BitBlt32 and StretchBlt32. * [memory/global.c] Unified MemManInfo() and GlobalMemoryStatus(). * [objects/text.c] Fixed ExtTextOut() to always use physical coords for clip rect. * [windows/dialog.c] Implemented DlgDirSelectEx() and Win32 version of DlgDirSelect*. * [windows/event.c] Avoid busy-looping in EVENT_WaitXEvent when no timer is pending (thanks to Thomas Koenig). * [windows/painting.c] Moved update region clipping for CS_PARENTDC windows to BeginPaint(). * [windows/scroll.c] Implemented Win32 version of ScrollWindow() and ScrollDC(). Tue Nov 12 09:52:17 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/*.c] [win32/file.c] Some win32 filetime conversion functions added. Fixed behaviour with DOS drives pointing to UNIX / SetCurrentDirectory() may also get X:\xxx paths. Fixed FILE_Open when called from CreateFile(). Added GetFileSize(), MapViewOfFile(), SetFileTime(), GetFileTime(). * [misc/crtdll.c] [if1632/crtdll.spec] Added some new functions. * [if1632/user32.spec] Some thunks into win16 code added. * [win32/init.c] Added GetSystemInfo(), removed GetModuleFileName() stub. * [win32/code_page.c] [if1632/thunk.c] Added EnumSystemCodePages* (untested). * [objects/font.c] [if1632/thunk.c] Added EnumFontFamilies32*. Mon Nov 11 14:50:24 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [controls/menu.c] [windows/mdi.c] Don't delete the MDI `windows' menu if it's already been deleted. * [misc/exec.c] Notepad always calls WinHelp(.., HELP_QUIT, ...) at termination and complains if it returns FALSE. * [windows/winpos.c] Get maximized MDI child's nonclient area redrawn after resize. Thu Nov 7 13:32:34 1996 Lee Jaekil <juria@seodu.co.kr> * [memory/global.c] Use /proc filesystem for GlobalMemoryStatus() on Linux. Mon Nov 4 18:30:00 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/event.c] Added OffiX-style file drop handling. File paths must be DOS-mappable by Wine (via wine.conf). * [controls/combo.c] Added WM_GETTEXT handler. * [objects/palette.c] Added ResizePalette() (untested). * [objects/cursoricon.c] Implemented icon to cursor conversion. * [objects/color.c] Fixed crash on startup when no colorcells are writeable. Mon Nov 4 00:49:41 1996 Ulrich Schmid <uschmid@mail.hh.provi.de> * [rc/winerc.c] Added support for win32 output. * [library/libres.c] [include/libres.h] [loader/resource.c] Renamed LIBRES_FindResource to LIBRES_FindResource16. Added LIBRES_FindResource32. Sun Nov 3 21:21:45 1996 Robert Pouliot <krynos@clic.net> * [loader/builtin.c] [if1632/Makefile.in] [if1632/wing.spec] Added the spec file for WinG, it's only stub for now, but it should be easy to do by someone with Windows programming knowledge. See: ftp.microsoft.com/SoftLib/MSLFILES/wing10.exe. * [if1632/crtdll.spec] Added some string and memory functions to make sfxed95.exe (of Warcraft 2) almost work.
1996-11-17 19:59:11 +01:00
/***********************************************************************
* THUNK_EnumSystemCodePages32A (KERNEL32.92)
*/
BOOL32 THUNK_EnumSystemCodePages32A( CODEPAGE_ENUMPROC32A func, DWORD flags )
{
DECL_THUNK( thunk, func, CallTo32_1 );
return EnumSystemCodePages32A( (CODEPAGE_ENUMPROC32A)&thunk, flags );
}
/***********************************************************************
* THUNK_EnumSystemCodePages32W (KERNEL32.93)
*/
BOOL32 THUNK_EnumSystemCodePages32W( CODEPAGE_ENUMPROC32W func, DWORD flags )
{
DECL_THUNK( thunk, func, CallTo32_1 );
return EnumSystemCodePages32W( (CODEPAGE_ENUMPROC32W)&thunk, flags );
}
Release 961201 Sat Nov 30 19:21:17 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure] Re-generated with autoconf 2.11. Let me know if you have problems. * [controls/listbox.c] [controls/oldlbox.c] Listboxes rewritten from scratch. Moved old code still used by comboboxes to oldlbox.c * [misc/registry.c] Use temporary file when saving registry. * [windows/dialog.c] Implemented Win32 version of DlgDirList() and DlgDirListComboBox(). * [windows/winproc.c] Added translation for listbox Win32 messages. Sat Nov 30 21:00:00 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [controls/widgets.c] [controls/button.c] Fixed some incompatibilities with CTL3D DLL. * [windows/dialog.c] Made dialog windows fit into the desktop. * [misc/winsock.c] [misc/winsock_async.c] New Winsock engine. * [windows/message.c] GetMessage() fixes. * [windows/queue.c] [windows/hook.c] [windows/win.c] SetMessageQueue() fixes. Fri Nov 29 10:25:12 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [objects/text.c] DrawText16(): Fixed return value. Tue Nov 26 14:47:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/profile.c] [*/*] Added Win32 profile functions, updated to new naming standard. * [objects/font.c] [if1632/thunk.c] [include/windows.h] Added EnumFonts32*, EnumFontFamiliesEx*, changed prototypes and structures. * [misc/ole2nls.c] [if1632/thunk.c] Added EnumSystemLocales() (winhelp.exe). * [misc/registry.c] Added Windows 3.1 registry loader supplied by Tor Sjxwall, tor@sn.no * [win32/file.c] Partially fixed CreateFileMapping(), added UnmapViewOfFile(). Sat Nov 23 23:36:05 1996 Ronan Waide <waider@waider.ie> * [misc/shell.c] Fixed some FIXMEs relating to ShellExec() and FindExecutable(). * [misc/main.c] Implemented a few more of the SystemParametersInfo() cases. Tue Nov 19 01:24:34 1996 Philippe De Muyter <phdm@info.ucl.ac.be> * [include/keyboard.h] New file, new macro WINE_VKEY_MAPPINGS (using code taken from event.c). * [include/windows.h] New [VK_A, VK_Z] and [VK_0, VK9] macros. * [misc/keyboard.c] Fixes in KeyTable and ToAscii. * [objects/font.c] FONT_init : Give default value for MSWIN "system" font. FONT_MatchFont : Do not try every size of a font family if the family does not exist. * [windows/event.c] lastEventChar hack removed. KeyStateTable replaced by InputKeyStateTable (maintained in event.c) and QueueKeyStateTable (maintained in message.c). EVENT_key : Corrections to the extended bit setting. * [windows/message.c] [windows/keyboard.c] Implementation of a new QueueKeyStateTable : table of key states valid when messages are retrieved by GetMessage or PeekMessage, and valid for TranslateMessage. TranslateMessage : Convert WM*KEY messages using QueueKeyStateTable and ToAscii. Mon Nov 18 16:59:01 1996 Robert Pouliot <krynos@clic.net> * [graphics/Makefile.in] [graphics/wing.c] [if1632/wing.spec] Some functions for WinG support, mostly empty stubs. * [misc/crtdll.c] [if1632/crtdll.spec] Many functions added to CRTDLL, mostly calls to Unix C library.
1996-12-01 18:17:47 +01:00
/***********************************************************************
* THUNK_EnumSystemLocales32A (KERNEL32.92)
*/
BOOL32 THUNK_EnumSystemLocales32A( LOCALE_ENUMPROC32A func, DWORD flags )
{
DECL_THUNK( thunk, func, CallTo32_1 );
return EnumSystemLocales32A( (LOCALE_ENUMPROC32A)&thunk, flags );
}
/***********************************************************************
* THUNK_EnumSystemLocales32W (KERNEL32.93)
*/
BOOL32 THUNK_EnumSystemLocales32W( LOCALE_ENUMPROC32W func, DWORD flags )
{
DECL_THUNK( thunk, func, CallTo32_1 );
return EnumSystemLocales32W( (LOCALE_ENUMPROC32W)&thunk, flags );
}
Release 970202 Sun Feb 2 12:31:03 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Fixed SetCurrentDirectory() to also change the current drive. * [win32/except.c] [tools/build.c] Use Win32 register functions to implement exception handling. Fixed UnhandledExceptionFilter. Fri Jan 31 15:42:41 1997 David Faure <david.faure@ihamy.insa-lyon.fr> * [windows/keyboard.c] Added KEYBOARD_GenerateMsg to generate Caps Lock and NumLock events Added calls to KEYBOARD_GenerateMsg when the key is pressed/released or when the state has changed, out of wine. Changed type 3-state 'ToggleKeyState' to boolean. The On/Off is given by InputKeyStateTable. Wed Jan 29 21:53:04 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [loader/*resource.c][if1632/thunk.c] EnumResource* added. * [loader/pe_resource.] [loader/resource.c] SizeofResource32(), LoadAccelerators32() added. * [misc/lstr.c] FormatMessage %n added. * [misc/crtdll.c][include/ctrdll.h][if1632/crtdll.spec] _chdrive,_errno,_isctype added. * [misc/cpu.c] Replaced runtime_cpu by GetSystemInfo(). * [windows/hook.c][include/hook.h] Fixed mapping of hooks to win32/unicode. * [windows/keyboard.c] [windows/defwnd.c] Updated to win32 standard. ALT-<Menukey> fixed. * [windows/queue.c] GetWindowThreadProcessId() implemented. Mon Jan 27 16:42:49 1997 John Harvey <john@division.co.uk> * [graphics/metafiledrv/*] [graphics/x11drv/*] [objects/bitmap.c] [objects/brush.c] [objects/font.c] [objects/gdiobj.c] [objects/pen.c] Moved SelectObject to graphics drivers. Printer support now works in a few cases but is definitely not complete. Generic/text driver works. The postscript driver works if true type fonts are disabled from the control panel. To enable printer support add Printer=on to the wine section of your wine.conf file. This causes write not to work properly. I know that several other printer drivers do not work. * [tools/build.c] Make .stabs not used for svr4 since it doesn't use GNU assembler. * [misc/fontengine.c] Make sure a printf doesn't crash the system. Sat Jan 25 15:53:35 1997 Huw D M Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Fixed some problems with PlayMetaFileRecord(). * [objects/dc.c] hClipRgn gets initialized in GetDCState(). Fri Jan 24 21:22:26 1997 Philippe De Muyter <phdm@info.ucl.ac.be> * [debugger/stabs.c] Handle file names beginning with '/'. Fri Jan 24 18:33:04 1997 Robert Pouliot <krynos@clic.net> * [*/*] Some more patches for OS/2 support. Fri Jan 24 11:30:41 1997 Bang Jun-Young <bangjy@nownuri.nowcom.co.kr> * [resources/sysres_Ko.rc] Updated support for Korean (Ko) language.
1997-02-02 20:01:52 +01:00
/***********************************************************************
* THUNK_EnumResourceLanguages32W (KERNEL32.87)
*/
BOOL32 THUNK_EnumResourceLanguages32W( HMODULE32 hmod,LPCWSTR type,LPCWSTR name,ENUMRESLANGPROC32W func, LONG lParam )
{
DECL_THUNK( thunk, func, CallTo32_5 );
return EnumResourceLanguages32W( hmod,type,name,(ENUMRESLANGPROC32W)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumResourceLanguages32A (KERNEL32.86)
*/
BOOL32 THUNK_EnumResourceLanguages32A( HMODULE32 hmod,LPCSTR type,LPCSTR name,ENUMRESLANGPROC32A func, LONG lParam )
{
DECL_THUNK( thunk, func, CallTo32_5 );
return EnumResourceLanguages32A( hmod,type,name,(ENUMRESLANGPROC32A)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumResourceNames32A (KERNEL32.88)
*/
BOOL32 THUNK_EnumResourceNames32A( HMODULE32 hmod,LPCWSTR type,ENUMRESNAMEPROC32A func, LONG lParam )
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumResourceNames32A( hmod,type,(ENUMRESNAMEPROC32A)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumResourceNames32W (KERNEL32.89)
*/
BOOL32 THUNK_EnumResourceNames32W( HMODULE32 hmod,LPCWSTR type,ENUMRESNAMEPROC32W func, LONG lParam )
{
DECL_THUNK( thunk, func, CallTo32_4 );
return EnumResourceNames32W( hmod,type,(ENUMRESNAMEPROC32W)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumResourceTypes32A (KERNEL32.90)
*/
BOOL32 THUNK_EnumResourceTypes32A( HMODULE32 hmod,ENUMRESTYPEPROC32A func, LONG lParam )
{
DECL_THUNK( thunk, func, CallTo32_3 );
return EnumResourceTypes32A( hmod,(ENUMRESTYPEPROC32A)&thunk, lParam );
}
/***********************************************************************
* THUNK_EnumResourceTypes32W (KERNEL32.91)
*/
BOOL32 THUNK_EnumResourceTypes32W( HMODULE32 hmod,ENUMRESTYPEPROC32W func, LONG lParam )
{
DECL_THUNK( thunk, func, CallTo32_3 );
return EnumResourceTypes32W( hmod,(ENUMRESTYPEPROC32W)&thunk, lParam );
}
Release 961117 Sun Nov 17 15:01:45 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [graphics/bitblt.c] [graphics/x11drv/bitblt.c] Moved BitBlt operations to the new graphics driver interface. Implemented PatBlt32, BitBlt32 and StretchBlt32. * [memory/global.c] Unified MemManInfo() and GlobalMemoryStatus(). * [objects/text.c] Fixed ExtTextOut() to always use physical coords for clip rect. * [windows/dialog.c] Implemented DlgDirSelectEx() and Win32 version of DlgDirSelect*. * [windows/event.c] Avoid busy-looping in EVENT_WaitXEvent when no timer is pending (thanks to Thomas Koenig). * [windows/painting.c] Moved update region clipping for CS_PARENTDC windows to BeginPaint(). * [windows/scroll.c] Implemented Win32 version of ScrollWindow() and ScrollDC(). Tue Nov 12 09:52:17 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/*.c] [win32/file.c] Some win32 filetime conversion functions added. Fixed behaviour with DOS drives pointing to UNIX / SetCurrentDirectory() may also get X:\xxx paths. Fixed FILE_Open when called from CreateFile(). Added GetFileSize(), MapViewOfFile(), SetFileTime(), GetFileTime(). * [misc/crtdll.c] [if1632/crtdll.spec] Added some new functions. * [if1632/user32.spec] Some thunks into win16 code added. * [win32/init.c] Added GetSystemInfo(), removed GetModuleFileName() stub. * [win32/code_page.c] [if1632/thunk.c] Added EnumSystemCodePages* (untested). * [objects/font.c] [if1632/thunk.c] Added EnumFontFamilies32*. Mon Nov 11 14:50:24 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [controls/menu.c] [windows/mdi.c] Don't delete the MDI `windows' menu if it's already been deleted. * [misc/exec.c] Notepad always calls WinHelp(.., HELP_QUIT, ...) at termination and complains if it returns FALSE. * [windows/winpos.c] Get maximized MDI child's nonclient area redrawn after resize. Thu Nov 7 13:32:34 1996 Lee Jaekil <juria@seodu.co.kr> * [memory/global.c] Use /proc filesystem for GlobalMemoryStatus() on Linux. Mon Nov 4 18:30:00 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/event.c] Added OffiX-style file drop handling. File paths must be DOS-mappable by Wine (via wine.conf). * [controls/combo.c] Added WM_GETTEXT handler. * [objects/palette.c] Added ResizePalette() (untested). * [objects/cursoricon.c] Implemented icon to cursor conversion. * [objects/color.c] Fixed crash on startup when no colorcells are writeable. Mon Nov 4 00:49:41 1996 Ulrich Schmid <uschmid@mail.hh.provi.de> * [rc/winerc.c] Added support for win32 output. * [library/libres.c] [include/libres.h] [loader/resource.c] Renamed LIBRES_FindResource to LIBRES_FindResource16. Added LIBRES_FindResource32. Sun Nov 3 21:21:45 1996 Robert Pouliot <krynos@clic.net> * [loader/builtin.c] [if1632/Makefile.in] [if1632/wing.spec] Added the spec file for WinG, it's only stub for now, but it should be easy to do by someone with Windows programming knowledge. See: ftp.microsoft.com/SoftLib/MSLFILES/wing10.exe. * [if1632/crtdll.spec] Added some string and memory functions to make sfxed95.exe (of Warcraft 2) almost work.
1996-11-17 19:59:11 +01:00
Release 960805 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.
1996-08-05 19:42:43 +02:00
/***********************************************************************
* THUNK_GrayString16 (USER.185)
*/
BOOL16 THUNK_GrayString16( HDC16 hdc, HBRUSH16 hbr, GRAYSTRINGPROC16 func,
LPARAM lParam, INT16 cch, INT16 x, INT16 y,
INT16 cx, INT16 cy )
{
DECL_THUNK( thunk, func, CallTo16_word_wlw );
if (!func)
return GrayString( hdc, hbr, NULL, lParam, cch, x, y, cx, cy );
else
return GrayString( hdc, hbr, (GRAYSTRINGPROC16)&thunk, lParam, cch,
x, y, cx, cy );
}
Release 960818 Sun Aug 18 12:17:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Added 'Filesystem' option in drives configuration. * [files/dos_fs.c] Added handling of case-insensitive filesystems. * [memory/selector.c] [include/stackframe.h] Removed MAKE_SEGPTR. * [misc/commdlg.c] [multimedia/mcistring.c] Replaced MAKE_SEGPTR by the SEGPTR_* macros. * [objects/bitblt.c] [windows/graphics.c] Use an intermediary pixmap to avoid some BadMatch errors on XGetImage(). Sun Aug 18 09:21:27 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Added handling of WM_NC...mouse messages in JOURNALRECORD hook. * [misc/ver.c] Fixed a bad string result in VerQueryValue[16|32A|32W]. Fri Aug 16 19:55:04 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [if1632/crtdll.spec] [misc/crtdll.c] More additions to get win95 programs further down the road. * [if1632/kernel.spec] [loader/module.c] GetModuleName() added. LoadModule(): params->showCmd can be NULL. * [if1632/kernel32.spec] [if1632/thunk.c] ThunkConnect32() stub added. * [loader/resource.c] Entries include lastentry. * [misc/shell.c] [files/file.c] Made progman work again. Fri Aug 16 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/defwnd.c] [windows/winpos.c] [windows/painting.c] Icon painting fixes. * [windows/winpos.c] [windows/painting.c] Enforce and follow hrgnUpdate more closely to cut down on redundant RedrawWindow() calls. * [windows/event.c] Process ConfigureNotify only for managed windows. * [windows/winpos.c] Do not redraw parent if the window was hidden before SetWindowPos(). * [windows/nonclient.c] Omit some nonclient decoration painting for managed windows. * [controls/menu.c] [windows/mdi.c] [windows/nonclient.c] Implemented WM_NEXTMENU. * [controls/listbox.c] Multicolumn listboxes return WVR_VREDRAW on WM_NCCALCSIZE. * [misc/shell.c] Added .ICO file handling to ExtractIcon().
1996-08-18 18:21:52 +02:00
/***********************************************************************
* THUNK_SetWindowsHook16 (USER.121)
*/
FARPROC16 THUNK_SetWindowsHook16( INT16 id, HOOKPROC16 proc )
{
HINSTANCE16 hInst = FarGetOwner( HIWORD(proc) );
HTASK16 hTask = (id == WH_MSGFILTER) ? GetCurrentTask() : 0;
THUNK *thunk = THUNK_Alloc( (FARPROC16)proc, (RELAY)CallTo16_long_wwl );
if (!thunk) return 0;
return (FARPROC16)SetWindowsHookEx16( id, (HOOKPROC16)thunk, hInst, hTask);
}
/***********************************************************************
* THUNK_UnhookWindowsHook16 (USER.234)
*/
BOOL16 THUNK_UnhookWindowsHook16( INT16 id, HOOKPROC16 proc )
{
BOOL16 ret;
THUNK *thunk = THUNK_Find( (FARPROC16)proc );
if (!thunk) return FALSE;
ret = UnhookWindowsHook16( id, (HOOKPROC16)thunk );
THUNK_Free( thunk );
return ret;
}
/***********************************************************************
* THUNK_SetWindowsHookEx16 (USER.291)
*/
HHOOK THUNK_SetWindowsHookEx16( INT16 id, HOOKPROC16 proc, HINSTANCE16 hInst,
HTASK16 hTask )
{
THUNK *thunk = THUNK_Alloc( (FARPROC16)proc, (RELAY)CallTo16_long_wwl );
if (!thunk) return 0;
return SetWindowsHookEx16( id, (HOOKPROC16)thunk, hInst, hTask );
}
/***********************************************************************
* THUNK_UnhookWindowHookEx16 (USER.292)
*/
BOOL16 THUNK_UnhookWindowsHookEx16( HHOOK hhook )
{
THUNK *thunk = (THUNK *)HOOK_GetProc16( hhook );
BOOL16 ret = UnhookWindowsHookEx16( hhook );
if (thunk) THUNK_Free( thunk );
return ret;
}
Release 970202 Sun Feb 2 12:31:03 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Fixed SetCurrentDirectory() to also change the current drive. * [win32/except.c] [tools/build.c] Use Win32 register functions to implement exception handling. Fixed UnhandledExceptionFilter. Fri Jan 31 15:42:41 1997 David Faure <david.faure@ihamy.insa-lyon.fr> * [windows/keyboard.c] Added KEYBOARD_GenerateMsg to generate Caps Lock and NumLock events Added calls to KEYBOARD_GenerateMsg when the key is pressed/released or when the state has changed, out of wine. Changed type 3-state 'ToggleKeyState' to boolean. The On/Off is given by InputKeyStateTable. Wed Jan 29 21:53:04 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [loader/*resource.c][if1632/thunk.c] EnumResource* added. * [loader/pe_resource.] [loader/resource.c] SizeofResource32(), LoadAccelerators32() added. * [misc/lstr.c] FormatMessage %n added. * [misc/crtdll.c][include/ctrdll.h][if1632/crtdll.spec] _chdrive,_errno,_isctype added. * [misc/cpu.c] Replaced runtime_cpu by GetSystemInfo(). * [windows/hook.c][include/hook.h] Fixed mapping of hooks to win32/unicode. * [windows/keyboard.c] [windows/defwnd.c] Updated to win32 standard. ALT-<Menukey> fixed. * [windows/queue.c] GetWindowThreadProcessId() implemented. Mon Jan 27 16:42:49 1997 John Harvey <john@division.co.uk> * [graphics/metafiledrv/*] [graphics/x11drv/*] [objects/bitmap.c] [objects/brush.c] [objects/font.c] [objects/gdiobj.c] [objects/pen.c] Moved SelectObject to graphics drivers. Printer support now works in a few cases but is definitely not complete. Generic/text driver works. The postscript driver works if true type fonts are disabled from the control panel. To enable printer support add Printer=on to the wine section of your wine.conf file. This causes write not to work properly. I know that several other printer drivers do not work. * [tools/build.c] Make .stabs not used for svr4 since it doesn't use GNU assembler. * [misc/fontengine.c] Make sure a printf doesn't crash the system. Sat Jan 25 15:53:35 1997 Huw D M Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Fixed some problems with PlayMetaFileRecord(). * [objects/dc.c] hClipRgn gets initialized in GetDCState(). Fri Jan 24 21:22:26 1997 Philippe De Muyter <phdm@info.ucl.ac.be> * [debugger/stabs.c] Handle file names beginning with '/'. Fri Jan 24 18:33:04 1997 Robert Pouliot <krynos@clic.net> * [*/*] Some more patches for OS/2 support. Fri Jan 24 11:30:41 1997 Bang Jun-Young <bangjy@nownuri.nowcom.co.kr> * [resources/sysres_Ko.rc] Updated support for Korean (Ko) language.
1997-02-02 20:01:52 +01:00
/*************************************************************
* THUNK_SetUnhandledExceptionFilter (KERNEL32.516)
*/
LPTOP_LEVEL_EXCEPTION_FILTER THUNK_SetUnhandledExceptionFilter(
LPTOP_LEVEL_EXCEPTION_FILTER filter )
{
LPTOP_LEVEL_EXCEPTION_FILTER old;
THUNK *thunk = THUNK_Alloc( (FARPROC16)filter, (RELAY)CallTo32_1 );
if (!thunk) return NULL;
old = SetUnhandledExceptionFilter( (LPTOP_LEVEL_EXCEPTION_FILTER)thunk );
if (!old) return NULL;
thunk = (THUNK *)old;
old = (LPTOP_LEVEL_EXCEPTION_FILTER)thunk->proc;
THUNK_Free( thunk );
return old;
}
static FARPROC16 defDCHookProc = NULL;
/***********************************************************************
* THUNK_SetDCHook (GDI.190)
*/
BOOL16 THUNK_SetDCHook( HDC16 hdc, FARPROC16 proc, DWORD dwHookData )
{
THUNK *thunk, *oldThunk;
if (!defDCHookProc) /* Get DCHook Win16 entry point */
defDCHookProc = MODULE_GetEntryPoint( GetModuleHandle("USER"), 362 );
if (proc != defDCHookProc)
{
thunk = THUNK_Alloc( proc, (RELAY)CallTo16_word_wwll );
if (!thunk) return FALSE;
}
else thunk = (THUNK *)DCHook;
/* Free the previous thunk */
GetDCHook( hdc, (FARPROC16 *)&oldThunk );
if (oldThunk && (oldThunk != (THUNK *)DCHook)) THUNK_Free( oldThunk );
return SetDCHook( hdc, (FARPROC16)thunk, dwHookData );
}
/***********************************************************************
* THUNK_GetDCHook (GDI.191)
*/
DWORD THUNK_GetDCHook( HDC16 hdc, FARPROC16 *phookProc )
{
THUNK *thunk = NULL;
DWORD ret = GetDCHook( hdc, (FARPROC16 *)&thunk );
if (thunk)
{
if (thunk == (THUNK *)DCHook)
{
if (!defDCHookProc) /* Get DCHook Win16 entry point */
defDCHookProc = MODULE_GetEntryPoint( GetModuleHandle("USER"),
362 );
*phookProc = defDCHookProc;
}
else *phookProc = thunk->proc;
}
return ret;
}
Release 960818 Sun Aug 18 12:17:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Added 'Filesystem' option in drives configuration. * [files/dos_fs.c] Added handling of case-insensitive filesystems. * [memory/selector.c] [include/stackframe.h] Removed MAKE_SEGPTR. * [misc/commdlg.c] [multimedia/mcistring.c] Replaced MAKE_SEGPTR by the SEGPTR_* macros. * [objects/bitblt.c] [windows/graphics.c] Use an intermediary pixmap to avoid some BadMatch errors on XGetImage(). Sun Aug 18 09:21:27 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Added handling of WM_NC...mouse messages in JOURNALRECORD hook. * [misc/ver.c] Fixed a bad string result in VerQueryValue[16|32A|32W]. Fri Aug 16 19:55:04 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [if1632/crtdll.spec] [misc/crtdll.c] More additions to get win95 programs further down the road. * [if1632/kernel.spec] [loader/module.c] GetModuleName() added. LoadModule(): params->showCmd can be NULL. * [if1632/kernel32.spec] [if1632/thunk.c] ThunkConnect32() stub added. * [loader/resource.c] Entries include lastentry. * [misc/shell.c] [files/file.c] Made progman work again. Fri Aug 16 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/defwnd.c] [windows/winpos.c] [windows/painting.c] Icon painting fixes. * [windows/winpos.c] [windows/painting.c] Enforce and follow hrgnUpdate more closely to cut down on redundant RedrawWindow() calls. * [windows/event.c] Process ConfigureNotify only for managed windows. * [windows/winpos.c] Do not redraw parent if the window was hidden before SetWindowPos(). * [windows/nonclient.c] Omit some nonclient decoration painting for managed windows. * [controls/menu.c] [windows/mdi.c] [windows/nonclient.c] Implemented WM_NEXTMENU. * [controls/listbox.c] Multicolumn listboxes return WVR_VREDRAW on WM_NCCALCSIZE. * [misc/shell.c] Added .ICO file handling to ExtractIcon().
1996-08-18 18:21:52 +02:00
struct thunkstruct
{
char magic[4];
DWORD x1;
DWORD x2;
};
UINT32 ThunkConnect32( struct thunkstruct *ths, LPSTR thunkfun16,
LPSTR module16, LPSTR module32, HMODULE32 hmod32,
DWORD dllinitarg1 )
{
HINSTANCE16 hmm;
fprintf(stdnimp,"ThunkConnect32(<struct>,%s,%s,%s,%x,%lx)\n",
Release 960818 Sun Aug 18 12:17:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [files/drive.c] Added 'Filesystem' option in drives configuration. * [files/dos_fs.c] Added handling of case-insensitive filesystems. * [memory/selector.c] [include/stackframe.h] Removed MAKE_SEGPTR. * [misc/commdlg.c] [multimedia/mcistring.c] Replaced MAKE_SEGPTR by the SEGPTR_* macros. * [objects/bitblt.c] [windows/graphics.c] Use an intermediary pixmap to avoid some BadMatch errors on XGetImage(). Sun Aug 18 09:21:27 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Added handling of WM_NC...mouse messages in JOURNALRECORD hook. * [misc/ver.c] Fixed a bad string result in VerQueryValue[16|32A|32W]. Fri Aug 16 19:55:04 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [if1632/crtdll.spec] [misc/crtdll.c] More additions to get win95 programs further down the road. * [if1632/kernel.spec] [loader/module.c] GetModuleName() added. LoadModule(): params->showCmd can be NULL. * [if1632/kernel32.spec] [if1632/thunk.c] ThunkConnect32() stub added. * [loader/resource.c] Entries include lastentry. * [misc/shell.c] [files/file.c] Made progman work again. Fri Aug 16 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/defwnd.c] [windows/winpos.c] [windows/painting.c] Icon painting fixes. * [windows/winpos.c] [windows/painting.c] Enforce and follow hrgnUpdate more closely to cut down on redundant RedrawWindow() calls. * [windows/event.c] Process ConfigureNotify only for managed windows. * [windows/winpos.c] Do not redraw parent if the window was hidden before SetWindowPos(). * [windows/nonclient.c] Omit some nonclient decoration painting for managed windows. * [controls/menu.c] [windows/mdi.c] [windows/nonclient.c] Implemented WM_NEXTMENU. * [controls/listbox.c] Multicolumn listboxes return WVR_VREDRAW on WM_NCCALCSIZE. * [misc/shell.c] Added .ICO file handling to ExtractIcon().
1996-08-18 18:21:52 +02:00
thunkfun16,module32,module16,hmod32,dllinitarg1
);
fprintf(stdnimp," magic = %c%c%c%c\n",
ths->magic[0],
ths->magic[1],
ths->magic[2],
ths->magic[3]
);
fprintf(stdnimp," x1 = %lx\n",ths->x1);
fprintf(stdnimp," x2 = %lx\n",ths->x2);
hmm=LoadModule(module16,NULL);
return TRUE;
}