1993-09-04 12:09:32 +02:00
|
|
|
/*
|
|
|
|
* GDI region objects
|
|
|
|
*
|
1995-01-24 17:21:01 +01:00
|
|
|
* Copyright 1993, 1994, 1995 Alexandre Julliard
|
1994-12-10 14:02:28 +01:00
|
|
|
*
|
1995-01-24 17:21:01 +01:00
|
|
|
*/
|
|
|
|
|
1993-09-04 12:09:32 +02:00
|
|
|
#include <stdlib.h>
|
|
|
|
#include <stdio.h>
|
1994-09-16 11:24:37 +02:00
|
|
|
|
1995-01-09 19:21:16 +01:00
|
|
|
#include "region.h"
|
1994-10-17 19:12:41 +01:00
|
|
|
#include "stddebug.h"
|
1994-12-10 14:02:28 +01:00
|
|
|
/* #define DEBUG_REGION */
|
1994-10-17 19:12:41 +01:00
|
|
|
#include "debug.h"
|
1993-09-04 12:09:32 +02:00
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* REGION_DeleteObject
|
|
|
|
*/
|
|
|
|
BOOL REGION_DeleteObject( HRGN hrgn, RGNOBJ * obj )
|
|
|
|
{
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region(stddeb, "DeleteRegion: %04x\n", hrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
if (obj->xrgn) XDestroyRegion( obj->xrgn );
|
1993-09-04 12:09:32 +02:00
|
|
|
return GDI_FreeObject( hrgn );
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* OffsetRgn (GDI.101)
|
|
|
|
*/
|
|
|
|
int OffsetRgn( HRGN hrgn, short x, short y )
|
|
|
|
{
|
|
|
|
RGNOBJ * obj = (RGNOBJ *) GDI_GetObjPtr( hrgn, REGION_MAGIC );
|
|
|
|
if (!obj) return ERROR;
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region(stddeb, "OffsetRgn: %04x %d,%d\n", hrgn, x, y );
|
1995-01-24 17:21:01 +01:00
|
|
|
if (!obj->xrgn) return NULLREGION;
|
|
|
|
XOffsetRegion( obj->xrgn, x, y );
|
|
|
|
return COMPLEXREGION;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* GetRgnBox (GDI.134)
|
|
|
|
*/
|
|
|
|
int GetRgnBox( HRGN hrgn, LPRECT rect )
|
|
|
|
{
|
|
|
|
RGNOBJ * obj = (RGNOBJ *) GDI_GetObjPtr( hrgn, REGION_MAGIC );
|
|
|
|
if (!obj) return ERROR;
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region(stddeb, "GetRgnBox: %04x\n", hrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
if (!obj->xrgn)
|
|
|
|
{
|
|
|
|
SetRectEmpty( rect );
|
|
|
|
return NULLREGION;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
XRectangle xrect;
|
|
|
|
XClipBox( obj->xrgn, &xrect );
|
|
|
|
SetRect( rect, xrect.x, xrect.y,
|
|
|
|
xrect.x + xrect.width, xrect.y + xrect.height);
|
|
|
|
return COMPLEXREGION;
|
|
|
|
}
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* CreateRectRgn (GDI.64)
|
|
|
|
*/
|
Release 960218
Sun Feb 18 16:35:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/desktop.c]
Look for the wallpaper file in the Windows directory.
* [controls/menu.c]
Fixed swapped parameters in SetMenuItemBitmaps().
Create a separator in MENU_SetItemData() when the string is NULL.
* [file/dosfs.c]
DOSFS_FindNext: don't return '.' and '..' in a drive root dir.
* [files/file.c]
Added a DOS_FILE structure to store per-file information (not
really used yet).
Fixed _lread and _hread to check the size of the buffer before
calling Unix read() to avoid EFAULT error.
* [misc/exec.c]
Return TRUE in WinHelp() for HELP_QUIT to quiet Notepad on exit.
* [miscemu/instr.c]
Call DOSMEM_Alarm() in INSTR_ReplaceSelector(). This should fix
programs that poll the BIOS counter, provided they reload the
selector on every read.
* [miscemu/int21.c]
Re-implemented FindFirst/FindNext for FCB calls.
* [windows/message.c] [windows/winpos.c]
Merged MSG_GetWindowForEvent() and WINPOS_WindowFromPoint().
* [windows/nonclient.c] [windows/win.c] [include/windows.h]
Added a per-window WIN_MANAGED flag; only windows that have a
dialog frame or a sizing border are managed.
Sat Feb 17 18:25:00 1996 Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
* [if1632/Makefile.in]
Added -g flag to compilation of .c files generated from *32.spec.
* [if1632/gdi32.spec]
Numerous additional functions implemented.
* if1632/user32.spec]
wsprintfA maps to vsprintf not wsprintf
Numerous additional functions implemented.
* [include/gdi.h] [objects/gdiobj.c]
New #define MAGIC_DONTCARE added. This is used in
GDI_GetObjPtr to enable getting a pointer to a GDI object of
unknow type.
* [win32/gdi32.c]
New file.
* [win32/param32.c]
WIN32_MoveToEx() - handle NULL pointer argument.
* [win32/user32.c]
USER32_InvalidateRect - handle passing of a NULL pointer.
USER32_SetTimer - New function.
* [files/directory.c]
Fixed DIR_Init() (off by one in allocation of space for
environment variables).
* [files/drive.c]
Added <sys/types.h> to #includes (prerequisite for <sys/stat.h>
on FreeBSD).
Fri Feb 16 10:26:56 1996 Andreas Kirschbaum <ank@rbg.informatik.th-darmstadt.de>
* [controls/menu.c]
Memory leak plugged.
* [controls/edit.c]
Erase space with function ExtTextOut(). This eliminates the use of
xmalloc(). Memory leak in EDIT_WriteText plugged.
* [debugger/db_disasm.c]
Operand for scas now is di.
* [files/profile.c]
PROFILE_GetSection was copying too much data.
PROFILE_GetSection now returns the correct value. It was returning
the number of unused instead of used bytes.
* [objects/dc.c]
Corrected two typos in comments.
* [objects/font.c]
FONT_MatchFont didn't return if it couldn't find any font.
* [objects/oembitmap.c]
Free object only if it has been allocated.
* [windows/scroll.c]
Memory leak in ScrollDC plugged.
Tue Feb 13 11:17:00 1996 William Magro <wmagro@tc.cornell.edu>
* [controls/edit.c]
Implemented ES_NOHIDESEL style, shift+click selection,
shift+{arrow,home,end,pgup,pgdn} selection. Optimized
(de)selection drawing. Changed selection drawing to use correct
system colors instead of inverting. Fixed deleting or backspacing
across a '\r\n' end of line pair. Selection now anchors
correctly. Fixed text leaking and extra garbage problem bug
uncovered by change in class style in wine960131.
* [controls/widgets.c]
Class flags now match those of Windows.
Mon Feb 12 21:28:19 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/widgets.c]
WIDGETS_Init: RELAY32_GetEntryPoint does not take a string anymore.
* [if1632/Makefile.in][if1632/relay32.c][include/relay32.h]
comctl32.spec ole32.spec winspool.spec: new files.
RELAY32_Init: call initialization of new DLLs.
RELAY32_GetEntryPoint: expects WIN32_builtin* now.
RELAY32_MakeFakeModule: new function.
* [if1632/gdi32.spec][if1632/kernel32.spec][if1632/user32.spec]
Added Win95 functions. Ordinals now differ from both NT and Win95
HeapCreate, CreateDialogIndirectParamA, CreateDialogIndirectParamW,
CreateDialogParamA, CreateDialogParamW, DialogBoxIndirectParamA
DialogBoxIndirectParamW, DialogBoxParamA, DialogBoxParamW:
new relays.
* [if1632/shell32.spec]
shell32.spec: renumbered all functions to take into account ordinals.
These seem to be identical between NT and Win95.
* [include/dialog.h][windows/dialog.c]
xBaseUnit,yBaseUnit,DIALOG_DoDialogBox: made non-static.
* [include/handle32.h]
New handle types VRANGE, HEAP, HEAPITEM.
* [include/pe_image.h][loader/pe_image.c]
struct w_files: new field builtin.
PE_FindExportedFunction: support ordinals.
PE_GetProcAddress: call RELAY32_GetEntryPoint for builtins.
fixup_imports: support ordinals.
PE_LoadImage: prefer directories over segments.
* [include/resource.h][win32/resource.c]
FindResource32: changed parameter from LPCTSTR to LPCWSTR
check LANG_NEUTRAL if LANG_ENGLISH fails.
LoadAcceleratorsW,SizeofResource32,AccessResource32:
disabled because it's broken.
Casted to and from LPWSTR at various places.
* [include/string32.h][win32/string32.c]
Changed prototypes to take const arguments where appropriate.
* [include/struct32.h]
New structures DLGTEMPLATE32, DLGITEMTEMPLATE32.
* [tools/build.c]
BuildSpec32Files: generate Base value into code, generate call to
RELAY32_MakeFakeModule.
* [win32/heap.c]
This is still not finished and needs rework.
HeapAlloc: renamed to SIMPLE_HeapAlloc, implemented HeapAlloc.
HeapCreate: implemented on top of VirtualAlloc, which does not work yet
HeapDestroy, HEAP_GrowHeap, HeapFree: new functions.
* [win32/memory.c]
Support for VRANGE_OBJECT. This is not yet called from any place,
and needs more platform specific support
MEMORY_FindVrange, MEMORY_IsVrangeFree, MEMORY_InsertVrange,
MEMORY_AllocVrange, MEMORY_ReleaseVrange: new functions.
* [win32/user32.c]
WIN32_CreateWindowExA: don't GlobalAlloc for integer class and window
names, as in dialogs.
Implemented dialog functions (see user32.spec).
* [windows/caret.c]
CARET_Initialize: call RELAY32_GetBuiltinDLL.
Mon Feb 12 18:52:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [controls/edit.c]
Removed commented out #ifdefs for WINELIB.
* [tools/makehtml.pl]
Put in error checking when trying to open a file.
* [libtest/Makefile.in] [libtest/new.c] [libtest/hello4.c]
Added two new targets: hello4 and new.
* [include/windows.h]
Added definition of DEVMODE structure, although it's not yet used.
Modified various API functions from CreateDC() to Escape(), in
order to make them more compliant with the strict API definitions.
* [include/wintypes.h]
Added 'typedef char TCHAR'. It probably should be defined as
'short', but then we would have to support such characters. Also did
'typedef const TCHAR* LPCTSTR' and 'typedef TCHAR* LPTSTR'.
Also defined WNDENUMPROC, FONTENUMPROC, GOBJENUMPROC, PROPENUMPROC
MFENUMPROC, and HGDIOBJ.
Mon Feb 5 16:42:07 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [misc/commdlg.c]
Patched a bug that occurred in the internal COMMDLG module for the
FileOpen(), FileSave() and FileSaveAs() functions. The file-type
combobox is now handled correctly.
Fri Feb 2 22:52:58 1996 Roman Dolejsi <roman@sorry.vse.cz>
* [resources/sysres_Cz.rc]
Added support for Czech [Cz] language.
Thu Feb 1 00:35:04 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/font.c]
FONT_matchfont : for fixed-spacing fonts, allow 'c' if 'm' fails;
for variable-spacing fonts : allow '*' if 'p' fails; if asked lfHeight
is -1, assume 0.
CreateFontIndirect : if font parameter is NULL, issue an error message.
CreateFont : null-terminate lfFaceName.
ParseFontParms : debug code turned off : too verbose.
InitFontsList : recognize *-c-* fonts as fixed-spacing fonts.
* [objects/color.c]
ColorToPhysical : admit 0xff...... COLORREF's as 0x00...... ones.
1996-02-18 19:44:41 +01:00
|
|
|
HRGN CreateRectRgn( INT left, INT top, INT right, INT bottom )
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
HRGN hrgn;
|
|
|
|
RGNOBJ *obj;
|
|
|
|
|
|
|
|
if (!(hrgn = GDI_AllocObject( sizeof(RGNOBJ), REGION_MAGIC ))) return 0;
|
1995-03-19 18:39:39 +01:00
|
|
|
obj = (RGNOBJ *) GDI_HEAP_LIN_ADDR( hrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
if ((right > left) && (bottom > top))
|
|
|
|
{
|
|
|
|
XRectangle rect = { left, top, right - left, bottom - top };
|
|
|
|
if (!(obj->xrgn = XCreateRegion()))
|
|
|
|
{
|
|
|
|
GDI_FreeObject( hrgn );
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
XUnionRectWithRegion( &rect, obj->xrgn, obj->xrgn );
|
|
|
|
}
|
|
|
|
else obj->xrgn = 0;
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region( stddeb, "CreateRectRgn(%d,%d-%d,%d): returning %04x\n",
|
1995-01-24 17:21:01 +01:00
|
|
|
left, top, right, bottom, hrgn );
|
|
|
|
return hrgn;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* CreateRectRgnIndirect (GDI.65)
|
|
|
|
*/
|
Release 960218
Sun Feb 18 16:35:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/desktop.c]
Look for the wallpaper file in the Windows directory.
* [controls/menu.c]
Fixed swapped parameters in SetMenuItemBitmaps().
Create a separator in MENU_SetItemData() when the string is NULL.
* [file/dosfs.c]
DOSFS_FindNext: don't return '.' and '..' in a drive root dir.
* [files/file.c]
Added a DOS_FILE structure to store per-file information (not
really used yet).
Fixed _lread and _hread to check the size of the buffer before
calling Unix read() to avoid EFAULT error.
* [misc/exec.c]
Return TRUE in WinHelp() for HELP_QUIT to quiet Notepad on exit.
* [miscemu/instr.c]
Call DOSMEM_Alarm() in INSTR_ReplaceSelector(). This should fix
programs that poll the BIOS counter, provided they reload the
selector on every read.
* [miscemu/int21.c]
Re-implemented FindFirst/FindNext for FCB calls.
* [windows/message.c] [windows/winpos.c]
Merged MSG_GetWindowForEvent() and WINPOS_WindowFromPoint().
* [windows/nonclient.c] [windows/win.c] [include/windows.h]
Added a per-window WIN_MANAGED flag; only windows that have a
dialog frame or a sizing border are managed.
Sat Feb 17 18:25:00 1996 Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
* [if1632/Makefile.in]
Added -g flag to compilation of .c files generated from *32.spec.
* [if1632/gdi32.spec]
Numerous additional functions implemented.
* if1632/user32.spec]
wsprintfA maps to vsprintf not wsprintf
Numerous additional functions implemented.
* [include/gdi.h] [objects/gdiobj.c]
New #define MAGIC_DONTCARE added. This is used in
GDI_GetObjPtr to enable getting a pointer to a GDI object of
unknow type.
* [win32/gdi32.c]
New file.
* [win32/param32.c]
WIN32_MoveToEx() - handle NULL pointer argument.
* [win32/user32.c]
USER32_InvalidateRect - handle passing of a NULL pointer.
USER32_SetTimer - New function.
* [files/directory.c]
Fixed DIR_Init() (off by one in allocation of space for
environment variables).
* [files/drive.c]
Added <sys/types.h> to #includes (prerequisite for <sys/stat.h>
on FreeBSD).
Fri Feb 16 10:26:56 1996 Andreas Kirschbaum <ank@rbg.informatik.th-darmstadt.de>
* [controls/menu.c]
Memory leak plugged.
* [controls/edit.c]
Erase space with function ExtTextOut(). This eliminates the use of
xmalloc(). Memory leak in EDIT_WriteText plugged.
* [debugger/db_disasm.c]
Operand for scas now is di.
* [files/profile.c]
PROFILE_GetSection was copying too much data.
PROFILE_GetSection now returns the correct value. It was returning
the number of unused instead of used bytes.
* [objects/dc.c]
Corrected two typos in comments.
* [objects/font.c]
FONT_MatchFont didn't return if it couldn't find any font.
* [objects/oembitmap.c]
Free object only if it has been allocated.
* [windows/scroll.c]
Memory leak in ScrollDC plugged.
Tue Feb 13 11:17:00 1996 William Magro <wmagro@tc.cornell.edu>
* [controls/edit.c]
Implemented ES_NOHIDESEL style, shift+click selection,
shift+{arrow,home,end,pgup,pgdn} selection. Optimized
(de)selection drawing. Changed selection drawing to use correct
system colors instead of inverting. Fixed deleting or backspacing
across a '\r\n' end of line pair. Selection now anchors
correctly. Fixed text leaking and extra garbage problem bug
uncovered by change in class style in wine960131.
* [controls/widgets.c]
Class flags now match those of Windows.
Mon Feb 12 21:28:19 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/widgets.c]
WIDGETS_Init: RELAY32_GetEntryPoint does not take a string anymore.
* [if1632/Makefile.in][if1632/relay32.c][include/relay32.h]
comctl32.spec ole32.spec winspool.spec: new files.
RELAY32_Init: call initialization of new DLLs.
RELAY32_GetEntryPoint: expects WIN32_builtin* now.
RELAY32_MakeFakeModule: new function.
* [if1632/gdi32.spec][if1632/kernel32.spec][if1632/user32.spec]
Added Win95 functions. Ordinals now differ from both NT and Win95
HeapCreate, CreateDialogIndirectParamA, CreateDialogIndirectParamW,
CreateDialogParamA, CreateDialogParamW, DialogBoxIndirectParamA
DialogBoxIndirectParamW, DialogBoxParamA, DialogBoxParamW:
new relays.
* [if1632/shell32.spec]
shell32.spec: renumbered all functions to take into account ordinals.
These seem to be identical between NT and Win95.
* [include/dialog.h][windows/dialog.c]
xBaseUnit,yBaseUnit,DIALOG_DoDialogBox: made non-static.
* [include/handle32.h]
New handle types VRANGE, HEAP, HEAPITEM.
* [include/pe_image.h][loader/pe_image.c]
struct w_files: new field builtin.
PE_FindExportedFunction: support ordinals.
PE_GetProcAddress: call RELAY32_GetEntryPoint for builtins.
fixup_imports: support ordinals.
PE_LoadImage: prefer directories over segments.
* [include/resource.h][win32/resource.c]
FindResource32: changed parameter from LPCTSTR to LPCWSTR
check LANG_NEUTRAL if LANG_ENGLISH fails.
LoadAcceleratorsW,SizeofResource32,AccessResource32:
disabled because it's broken.
Casted to and from LPWSTR at various places.
* [include/string32.h][win32/string32.c]
Changed prototypes to take const arguments where appropriate.
* [include/struct32.h]
New structures DLGTEMPLATE32, DLGITEMTEMPLATE32.
* [tools/build.c]
BuildSpec32Files: generate Base value into code, generate call to
RELAY32_MakeFakeModule.
* [win32/heap.c]
This is still not finished and needs rework.
HeapAlloc: renamed to SIMPLE_HeapAlloc, implemented HeapAlloc.
HeapCreate: implemented on top of VirtualAlloc, which does not work yet
HeapDestroy, HEAP_GrowHeap, HeapFree: new functions.
* [win32/memory.c]
Support for VRANGE_OBJECT. This is not yet called from any place,
and needs more platform specific support
MEMORY_FindVrange, MEMORY_IsVrangeFree, MEMORY_InsertVrange,
MEMORY_AllocVrange, MEMORY_ReleaseVrange: new functions.
* [win32/user32.c]
WIN32_CreateWindowExA: don't GlobalAlloc for integer class and window
names, as in dialogs.
Implemented dialog functions (see user32.spec).
* [windows/caret.c]
CARET_Initialize: call RELAY32_GetBuiltinDLL.
Mon Feb 12 18:52:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [controls/edit.c]
Removed commented out #ifdefs for WINELIB.
* [tools/makehtml.pl]
Put in error checking when trying to open a file.
* [libtest/Makefile.in] [libtest/new.c] [libtest/hello4.c]
Added two new targets: hello4 and new.
* [include/windows.h]
Added definition of DEVMODE structure, although it's not yet used.
Modified various API functions from CreateDC() to Escape(), in
order to make them more compliant with the strict API definitions.
* [include/wintypes.h]
Added 'typedef char TCHAR'. It probably should be defined as
'short', but then we would have to support such characters. Also did
'typedef const TCHAR* LPCTSTR' and 'typedef TCHAR* LPTSTR'.
Also defined WNDENUMPROC, FONTENUMPROC, GOBJENUMPROC, PROPENUMPROC
MFENUMPROC, and HGDIOBJ.
Mon Feb 5 16:42:07 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [misc/commdlg.c]
Patched a bug that occurred in the internal COMMDLG module for the
FileOpen(), FileSave() and FileSaveAs() functions. The file-type
combobox is now handled correctly.
Fri Feb 2 22:52:58 1996 Roman Dolejsi <roman@sorry.vse.cz>
* [resources/sysres_Cz.rc]
Added support for Czech [Cz] language.
Thu Feb 1 00:35:04 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/font.c]
FONT_matchfont : for fixed-spacing fonts, allow 'c' if 'm' fails;
for variable-spacing fonts : allow '*' if 'p' fails; if asked lfHeight
is -1, assume 0.
CreateFontIndirect : if font parameter is NULL, issue an error message.
CreateFont : null-terminate lfFaceName.
ParseFontParms : debug code turned off : too verbose.
InitFontsList : recognize *-c-* fonts as fixed-spacing fonts.
* [objects/color.c]
ColorToPhysical : admit 0xff...... COLORREF's as 0x00...... ones.
1996-02-18 19:44:41 +01:00
|
|
|
HRGN CreateRectRgnIndirect( const RECT* rect )
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
return CreateRectRgn( rect->left, rect->top, rect->right, rect->bottom );
|
|
|
|
}
|
1993-09-04 12:09:32 +02:00
|
|
|
|
|
|
|
|
1995-01-24 17:21:01 +01:00
|
|
|
/***********************************************************************
|
|
|
|
* SetRectRgn (GDI.172)
|
|
|
|
*/
|
|
|
|
void SetRectRgn( HRGN hrgn, short left, short top, short right, short bottom )
|
|
|
|
{
|
|
|
|
RGNOBJ * obj;
|
|
|
|
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region(stddeb, "SetRectRgn: %04x %d,%d-%d,%d\n",
|
1995-01-24 17:21:01 +01:00
|
|
|
hrgn, left, top, right, bottom );
|
|
|
|
|
|
|
|
if (!(obj = (RGNOBJ *) GDI_GetObjPtr( hrgn, REGION_MAGIC ))) return;
|
|
|
|
if (obj->xrgn) XDestroyRegion( obj->xrgn );
|
|
|
|
if ((right > left) && (bottom > top))
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
XRectangle rect = { left, top, right - left, bottom - top };
|
|
|
|
if ((obj->xrgn = XCreateRegion()) != 0)
|
|
|
|
XUnionRectWithRegion( &rect, obj->xrgn, obj->xrgn );
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
1995-01-24 17:21:01 +01:00
|
|
|
else obj->xrgn = 0;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* CreateRoundRectRgn (GDI.444)
|
|
|
|
*/
|
Release 960218
Sun Feb 18 16:35:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/desktop.c]
Look for the wallpaper file in the Windows directory.
* [controls/menu.c]
Fixed swapped parameters in SetMenuItemBitmaps().
Create a separator in MENU_SetItemData() when the string is NULL.
* [file/dosfs.c]
DOSFS_FindNext: don't return '.' and '..' in a drive root dir.
* [files/file.c]
Added a DOS_FILE structure to store per-file information (not
really used yet).
Fixed _lread and _hread to check the size of the buffer before
calling Unix read() to avoid EFAULT error.
* [misc/exec.c]
Return TRUE in WinHelp() for HELP_QUIT to quiet Notepad on exit.
* [miscemu/instr.c]
Call DOSMEM_Alarm() in INSTR_ReplaceSelector(). This should fix
programs that poll the BIOS counter, provided they reload the
selector on every read.
* [miscemu/int21.c]
Re-implemented FindFirst/FindNext for FCB calls.
* [windows/message.c] [windows/winpos.c]
Merged MSG_GetWindowForEvent() and WINPOS_WindowFromPoint().
* [windows/nonclient.c] [windows/win.c] [include/windows.h]
Added a per-window WIN_MANAGED flag; only windows that have a
dialog frame or a sizing border are managed.
Sat Feb 17 18:25:00 1996 Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
* [if1632/Makefile.in]
Added -g flag to compilation of .c files generated from *32.spec.
* [if1632/gdi32.spec]
Numerous additional functions implemented.
* if1632/user32.spec]
wsprintfA maps to vsprintf not wsprintf
Numerous additional functions implemented.
* [include/gdi.h] [objects/gdiobj.c]
New #define MAGIC_DONTCARE added. This is used in
GDI_GetObjPtr to enable getting a pointer to a GDI object of
unknow type.
* [win32/gdi32.c]
New file.
* [win32/param32.c]
WIN32_MoveToEx() - handle NULL pointer argument.
* [win32/user32.c]
USER32_InvalidateRect - handle passing of a NULL pointer.
USER32_SetTimer - New function.
* [files/directory.c]
Fixed DIR_Init() (off by one in allocation of space for
environment variables).
* [files/drive.c]
Added <sys/types.h> to #includes (prerequisite for <sys/stat.h>
on FreeBSD).
Fri Feb 16 10:26:56 1996 Andreas Kirschbaum <ank@rbg.informatik.th-darmstadt.de>
* [controls/menu.c]
Memory leak plugged.
* [controls/edit.c]
Erase space with function ExtTextOut(). This eliminates the use of
xmalloc(). Memory leak in EDIT_WriteText plugged.
* [debugger/db_disasm.c]
Operand for scas now is di.
* [files/profile.c]
PROFILE_GetSection was copying too much data.
PROFILE_GetSection now returns the correct value. It was returning
the number of unused instead of used bytes.
* [objects/dc.c]
Corrected two typos in comments.
* [objects/font.c]
FONT_MatchFont didn't return if it couldn't find any font.
* [objects/oembitmap.c]
Free object only if it has been allocated.
* [windows/scroll.c]
Memory leak in ScrollDC plugged.
Tue Feb 13 11:17:00 1996 William Magro <wmagro@tc.cornell.edu>
* [controls/edit.c]
Implemented ES_NOHIDESEL style, shift+click selection,
shift+{arrow,home,end,pgup,pgdn} selection. Optimized
(de)selection drawing. Changed selection drawing to use correct
system colors instead of inverting. Fixed deleting or backspacing
across a '\r\n' end of line pair. Selection now anchors
correctly. Fixed text leaking and extra garbage problem bug
uncovered by change in class style in wine960131.
* [controls/widgets.c]
Class flags now match those of Windows.
Mon Feb 12 21:28:19 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/widgets.c]
WIDGETS_Init: RELAY32_GetEntryPoint does not take a string anymore.
* [if1632/Makefile.in][if1632/relay32.c][include/relay32.h]
comctl32.spec ole32.spec winspool.spec: new files.
RELAY32_Init: call initialization of new DLLs.
RELAY32_GetEntryPoint: expects WIN32_builtin* now.
RELAY32_MakeFakeModule: new function.
* [if1632/gdi32.spec][if1632/kernel32.spec][if1632/user32.spec]
Added Win95 functions. Ordinals now differ from both NT and Win95
HeapCreate, CreateDialogIndirectParamA, CreateDialogIndirectParamW,
CreateDialogParamA, CreateDialogParamW, DialogBoxIndirectParamA
DialogBoxIndirectParamW, DialogBoxParamA, DialogBoxParamW:
new relays.
* [if1632/shell32.spec]
shell32.spec: renumbered all functions to take into account ordinals.
These seem to be identical between NT and Win95.
* [include/dialog.h][windows/dialog.c]
xBaseUnit,yBaseUnit,DIALOG_DoDialogBox: made non-static.
* [include/handle32.h]
New handle types VRANGE, HEAP, HEAPITEM.
* [include/pe_image.h][loader/pe_image.c]
struct w_files: new field builtin.
PE_FindExportedFunction: support ordinals.
PE_GetProcAddress: call RELAY32_GetEntryPoint for builtins.
fixup_imports: support ordinals.
PE_LoadImage: prefer directories over segments.
* [include/resource.h][win32/resource.c]
FindResource32: changed parameter from LPCTSTR to LPCWSTR
check LANG_NEUTRAL if LANG_ENGLISH fails.
LoadAcceleratorsW,SizeofResource32,AccessResource32:
disabled because it's broken.
Casted to and from LPWSTR at various places.
* [include/string32.h][win32/string32.c]
Changed prototypes to take const arguments where appropriate.
* [include/struct32.h]
New structures DLGTEMPLATE32, DLGITEMTEMPLATE32.
* [tools/build.c]
BuildSpec32Files: generate Base value into code, generate call to
RELAY32_MakeFakeModule.
* [win32/heap.c]
This is still not finished and needs rework.
HeapAlloc: renamed to SIMPLE_HeapAlloc, implemented HeapAlloc.
HeapCreate: implemented on top of VirtualAlloc, which does not work yet
HeapDestroy, HEAP_GrowHeap, HeapFree: new functions.
* [win32/memory.c]
Support for VRANGE_OBJECT. This is not yet called from any place,
and needs more platform specific support
MEMORY_FindVrange, MEMORY_IsVrangeFree, MEMORY_InsertVrange,
MEMORY_AllocVrange, MEMORY_ReleaseVrange: new functions.
* [win32/user32.c]
WIN32_CreateWindowExA: don't GlobalAlloc for integer class and window
names, as in dialogs.
Implemented dialog functions (see user32.spec).
* [windows/caret.c]
CARET_Initialize: call RELAY32_GetBuiltinDLL.
Mon Feb 12 18:52:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [controls/edit.c]
Removed commented out #ifdefs for WINELIB.
* [tools/makehtml.pl]
Put in error checking when trying to open a file.
* [libtest/Makefile.in] [libtest/new.c] [libtest/hello4.c]
Added two new targets: hello4 and new.
* [include/windows.h]
Added definition of DEVMODE structure, although it's not yet used.
Modified various API functions from CreateDC() to Escape(), in
order to make them more compliant with the strict API definitions.
* [include/wintypes.h]
Added 'typedef char TCHAR'. It probably should be defined as
'short', but then we would have to support such characters. Also did
'typedef const TCHAR* LPCTSTR' and 'typedef TCHAR* LPTSTR'.
Also defined WNDENUMPROC, FONTENUMPROC, GOBJENUMPROC, PROPENUMPROC
MFENUMPROC, and HGDIOBJ.
Mon Feb 5 16:42:07 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [misc/commdlg.c]
Patched a bug that occurred in the internal COMMDLG module for the
FileOpen(), FileSave() and FileSaveAs() functions. The file-type
combobox is now handled correctly.
Fri Feb 2 22:52:58 1996 Roman Dolejsi <roman@sorry.vse.cz>
* [resources/sysres_Cz.rc]
Added support for Czech [Cz] language.
Thu Feb 1 00:35:04 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/font.c]
FONT_matchfont : for fixed-spacing fonts, allow 'c' if 'm' fails;
for variable-spacing fonts : allow '*' if 'p' fails; if asked lfHeight
is -1, assume 0.
CreateFontIndirect : if font parameter is NULL, issue an error message.
CreateFont : null-terminate lfFaceName.
ParseFontParms : debug code turned off : too verbose.
InitFontsList : recognize *-c-* fonts as fixed-spacing fonts.
* [objects/color.c]
ColorToPhysical : admit 0xff...... COLORREF's as 0x00...... ones.
1996-02-18 19:44:41 +01:00
|
|
|
HRGN CreateRoundRectRgn( INT left, INT top, INT right, INT bottom,
|
|
|
|
INT ellipse_width, INT ellipse_height )
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
RGNOBJ * obj;
|
1993-09-04 12:09:32 +02:00
|
|
|
HRGN hrgn;
|
1995-01-24 17:21:01 +01:00
|
|
|
XRectangle rect;
|
|
|
|
int asq, bsq, d, xd, yd;
|
|
|
|
|
|
|
|
/* Check if we can do a normal rectangle instead */
|
|
|
|
|
|
|
|
if ((right <= left) || (bottom <= top) ||
|
|
|
|
(ellipse_width <= 0) || (ellipse_height <= 0))
|
|
|
|
return CreateRectRgn( left, top, right, bottom );
|
1993-09-04 12:09:32 +02:00
|
|
|
|
|
|
|
/* Create region */
|
|
|
|
|
|
|
|
if (!(hrgn = GDI_AllocObject( sizeof(RGNOBJ), REGION_MAGIC ))) return 0;
|
1995-03-19 18:39:39 +01:00
|
|
|
obj = (RGNOBJ *) GDI_HEAP_LIN_ADDR( hrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
obj->xrgn = XCreateRegion();
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region(stddeb,"CreateRoundRectRgn(%d,%d-%d,%d %dx%d): return=%04x\n",
|
1995-01-24 17:21:01 +01:00
|
|
|
left, top, right, bottom, ellipse_width, ellipse_height, hrgn );
|
|
|
|
|
|
|
|
/* Check parameters */
|
|
|
|
|
|
|
|
if (ellipse_width > right-left) ellipse_width = right-left;
|
|
|
|
if (ellipse_height > bottom-top) ellipse_height = bottom-top;
|
|
|
|
|
|
|
|
/* Ellipse algorithm, based on an article by K. Porter */
|
|
|
|
/* in DDJ Graphics Programming Column, 8/89 */
|
|
|
|
|
|
|
|
asq = ellipse_width * ellipse_width / 4; /* a^2 */
|
|
|
|
bsq = ellipse_height * ellipse_height / 4; /* b^2 */
|
|
|
|
d = bsq - asq * ellipse_height / 2 + asq / 4; /* b^2 - a^2b + a^2/4 */
|
|
|
|
xd = 0;
|
|
|
|
yd = asq * ellipse_height; /* 2a^2b */
|
|
|
|
|
|
|
|
rect.x = left + ellipse_width / 2;
|
|
|
|
rect.width = right - left - ellipse_width;
|
|
|
|
rect.height = 1;
|
|
|
|
|
|
|
|
/* Loop to draw first half of quadrant */
|
|
|
|
|
|
|
|
while (xd < yd)
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
if (d > 0) /* if nearest pixel is toward the center */
|
|
|
|
{
|
|
|
|
/* move toward center */
|
|
|
|
rect.y = top++;
|
|
|
|
XUnionRectWithRegion( &rect, obj->xrgn, obj->xrgn );
|
|
|
|
rect.y = --bottom;
|
|
|
|
XUnionRectWithRegion( &rect, obj->xrgn, obj->xrgn );
|
|
|
|
yd -= 2*asq;
|
|
|
|
d -= yd;
|
|
|
|
}
|
|
|
|
rect.x--; /* next horiz point */
|
|
|
|
rect.width += 2;
|
|
|
|
xd += 2*bsq;
|
|
|
|
d += bsq + xd;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
1995-01-24 17:21:01 +01:00
|
|
|
/* Loop to draw second half of quadrant */
|
|
|
|
|
|
|
|
d += (3 * (asq-bsq) / 2 - (xd+yd)) / 2;
|
|
|
|
while (yd >= 0)
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
/* next vertical point */
|
|
|
|
rect.y = top++;
|
|
|
|
XUnionRectWithRegion( &rect, obj->xrgn, obj->xrgn );
|
|
|
|
rect.y = --bottom;
|
|
|
|
XUnionRectWithRegion( &rect, obj->xrgn, obj->xrgn );
|
|
|
|
if (d < 0) /* if nearest pixel is outside ellipse */
|
|
|
|
{
|
|
|
|
rect.x--; /* move away from center */
|
|
|
|
rect.width += 2;
|
|
|
|
xd += 2*bsq;
|
|
|
|
d += xd;
|
|
|
|
}
|
|
|
|
yd -= 2*asq;
|
|
|
|
d += asq - yd;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
1995-01-24 17:21:01 +01:00
|
|
|
/* Add the inside rectangle */
|
1993-09-04 12:09:32 +02:00
|
|
|
|
1995-01-24 17:21:01 +01:00
|
|
|
if (top <= bottom)
|
|
|
|
{
|
|
|
|
rect.y = top;
|
|
|
|
rect.height = bottom - top + 1;
|
|
|
|
XUnionRectWithRegion( &rect, obj->xrgn, obj->xrgn );
|
|
|
|
}
|
|
|
|
return hrgn;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* CreateEllipticRgn (GDI.54)
|
|
|
|
*/
|
Release 960131
Wed Jan 31 10:58:00 1996 Alexandre Julliard <julliard@sunsite.unc.edu>
* [configure.in]
Added --with-dll option to build libwine.so.
* [controls/listbox.c]
Fixed ListBoxDirectory(), DlgDirSelect() and
DlgDirList(). Hopefully their behavior is correct now.
* [controls/menu.c]
Use SEGPTRs in ChangeMenu(), InsertMenu(), AppendMenu() and
ModifyMenu() for the item data, to avoid corrupting the pointer
for owner-drawn items.
* [controls/static.c]
Attempt to load OEM icons for SS_ICON controls. Probably not
entirely correct.
Don't clip the text output.
* [files/directory.c]
Add temp dir and Windows dir to environment.
* [files/dos_fs.c]
Fixed a few path handling bugs in DOSFS_GetUnixFileName().
Cache last used directory in DOSFS_FindNext() to avoid quadratic
search time.
* [files/drive.c]
New format for drives configuration in wine.conf; allows
specifying the type, label and serial number of a drive.
* [files/file.c]
New function FILE_OpenUnixFile to make sure we don't open a
directory instead of a file.
Fixed DOSFS_GetUnixFileName() check_last flag in FILE_MakeDir().
* [files/profile.c]
Rewrote profile handling. Should be closer to Windows behavior now.
New function PROFILE_GetWineIniString() to get a string from wine.conf.
Support environment variables in wine.conf.
* [loader/task.c]
Fixed the order of deletion in TASK_DeleteTask() to avoid memory
corruption.
* [memory/global.c]
Create a discarded block on GlobalAlloc() if the size is 0; thanks
to John Harvey for noticing this.
* [memory/local.c]
LOCAL_GetHeap: make sure the pointer is valid before checking
magic number.
* [misc/main.c]
Moved profile and registry saving to ExitWindows(), so we don't
try to save them in case of a crash.
* [miscemu/int21.c]
INT21_GetFreeDiskSpace: try to compute the cluster size from the
filesystem size instead of hard-coding it to 64.
Fixed functions 0x3f and 0x40 to use _hread and _hwrite to allow
reading or writing 65535 bytes (thanks to Bruce Milner for this one).
* [windows/message.c]
Fixed bug in linked-list handling in MSG_DeleteQueue().
Simplified SetMessageQueue().
* [wine.ini] [wine.man]
Updated for new drives configuration format.
Tue Jan 30 11:24:46 1996 William Magro <wmagro@tc.cornell.edu>
* [controls/edit.c]
Implemented ES_PASSWORD style, EM_SETPASSWORDCHAR and
EM_GETPASSWORDCHAR messages.
* [controls/widgets.c]
Adjusted class creation flags to better match values Windows uses.
* [include/windows.h]
Fixed ES_NOHIDESEL typo.
* [loader/ne_image.c]
Added detection for zero offset in RADDR fixups. Quicken
was in an infinite loop here.
Mon Jan 29 20:12:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [files/dos_fs.c]
Bugfix: range error in month value (0..11 set to 1..12).
* [windows/caret.c]
Changed ROP2-mode to R2_NOTXORPEN in CARET_Callback for pulsed
appearance of the caret.
* [windows/mdi.c] [include/mdi.h]
Changed MDITile(): added a new parameter WORD wParam for
WM_MDITILE second tiling method (MDITILE_HORIZONTAL in wParam) as
used in Win3.1
Sun Jan 28 14:20:00 1996 Cameron Heide <heide@ee.ualberta.ca>
* [miscemu/int2f.c]
Added a small bit of MSCDEX emulation.
* [windows/alias.c]
ALIAS_RegisterAlias was returning the hash value when it should
have been returning the record number.
Sat Jan 27 10:53:51 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/shell.h] [include/wintypes.h]
Moved definition of HKEY and LPHKEY types to include/wintypes.h.
Declared FONTENUMPROC in wintypes.h.
* [include/windows.h]
Added definition of KERNINGPAIR and LPKERNINGPAIR types. Added
declarations for CopyCursor(), CopyIcon(), EnumFontFamilies(),
ExtractIcon(), FatalAppExit(), FindExecutable(), GetClipCursor(),
GetKerningPairs(), GetQueueStatus(), GetRasterizerCaps(),
IsGDIObject(), IsMenu(), IsTask(), RegCloseKey(), RegCreateKey(),
RegDeleteKey(), RegEnumKey(), RegOpenKey(), RegQueryValue(),
RegSetValue(), ResetDC(), ShellExecute(), SystemParametersInfo(),
and wsprintf().
* [tools/makehtml.pl] [documentation/apiw.index]
New files that scan windows.h, commdlg.h, and toolhelp.h and output
an HTML sorted list with optional links to www.willows.com and a
tally of unimplemented APIW functions.
* [objects/cursoricon.c]
Added Win32 versions of CopyIcon() and CopyCursor() for use in
libwine.
* [win32/resource.c] [win32/winprocs.c]
Added '#include "libres.h"' and explicit declarations of windows
procs in order to avoid warnings.
* [windows/utility.c]
Added Win32 version of MulDiv() for libwine.
* [*/*] [include/windows.h]
Changed several function declarations to comply more strictly to
the windows API (without, hopefully, altering their functionality).
* [controls/menu.c]
Made the return value of CheckMenuItem be the previous state of
the menu item if it was found, otherwise -1 as specified in the
SDK. This conflicts with the APIW specification, which says it
should return TRUE if successful, otherwise FALSE.
* [include/windows.h]
Added obsolete WM_SIZE message wParam names for compatibility.
Added WinHelp() command constants, even though they are not yet
supported.
* [rc/winerc.c]
Tidied up transform_binary_file(). In argument checking, flattened
any invalid characters specified with the prefix argument.
* [library/libres.c]
Made FindResource() case-insensitive when parameter 'name' is a string.
Sat Jan 27 02:30 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de
* [files/drive.c]
If root "/" is given in wine.conf, use it as last resort.
* [files/file.c]
Report ER_AccessDenied it disk ist not writable
More Debug Output
* [miscemu/int21.c]
Squeezed some bugs in ExtendedOpenCreateFile
* [windows/winpos.c]
Some windows may not be moved or resized. We are missing some
structures to be exact, but the approach should help in some cases
and make things worse in much fewer.
Fri Jan 26 10:24:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [loader/pe_image.c]
fixup_imports: Find builtins for Borland style entries, too
Fri Jan 26 10:24:00 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/menu.c]
LoadMenu: branch to Win32 for PE modules
* [if1632/gdi.spec][if1632/kernel32.spec][if1632/user32.spec]
DeleteObject, GetPixel, SetPixel,WritePrivateProfileStringA,
WriteProfileStringA, EmptyClipboard, EnableMenuItem, EnableScrollBar,
EnableWindow, InvalidateRect, SetWindowTextA, WinHelpA: new relays
DrawTextA, MoveToEx, GetClientRect, InvalidateRect, LoadBitmapA/W,
LoadAcceleratorsA/W, LoadMenu[Indirect]A/W, LoadStringA/W: changed
to convert parameters or naming convention
* [include/kernel32.h][include/wintypes.h]
moved WCHAR, defined LPWSTR
* [include/string32.h][win32/string32.c][include/struct32.h]
New files
* [loader/module.h]
LoadModule: exit after returning from PE_LoadModule
* [loader/pe_image.c]
my_wcstombs: isascii does not work on Linux for Unicode
PE_LoadImage: Handle directories
* [misc/user32.c]
USER32_RECT32to16, USER32_RECT16to32: new functions
implemented new user32 relays
* [misc/newfns.c]
WIN32_WinHelpA: new function
* [win32/param32.c]
New file
* [win32/resource.c]
GetResDirEntry: added support for named entries
WIN32_LoadAcceleratorsW: invoke *32 resource functions
WIN32_LoadBitmapA: convert name to unicode if appropriate
WIN32_ParseMenu: new function
implemented new resource functions from user32.spec
Wed Jan 24 18:09:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [objects/cursoricon.c]
GetIconId() and LoadIconHandler() functions.
* [windows/mdi.c]
Better maximization support, TranslateMDISysAccel() function,
misc improvements.
* [windows/defwnd.c]
Fix for WM_WINDOWPOSCHANGED message handler.
* [windows/winpos.c]
Rewrote WindowFromPoint() function.
Sun Jan 21 1996 17:05:09 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/toolhelp.h] [misc/toolhelp.c]
Added Notify(Un)Register, but no callbacks yet.
Fri Jan 19 01:43:37 1996 Victor Schneider <root@tailor.roman.org>
* [Makefile.in]
Added target for libwine.so.1.0.
* [library/winmain.c]
For WINELIBDLL, _WinMain just returns hInstance instead of calling
WinMain().
* [misc/main.c]
For WINELIBDLL, renamed main() to _wine_main() for calling from the
stub main function.
* [library/winestub.c] (new file)
Provides a stub main() function for using libwine.so.
Tue Jan 16 11:04:34 1996 Anand Kumria <akumria@ozemail.com.au>
* [winsocket.c]
Fix EPERM problem.
* [global.c]
Attempt to do some sanity checking in MemManInfo().
* [Changelog]
Fix changelog oversight for previous entry.
1996-01-31 20:02:28 +01:00
|
|
|
HRGN CreateEllipticRgn( INT left, INT top, INT right, INT bottom )
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
return CreateRoundRectRgn( left, top, right, bottom,
|
|
|
|
right-left, bottom-top );
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* CreateEllipticRgnIndirect (GDI.55)
|
|
|
|
*/
|
|
|
|
HRGN CreateEllipticRgnIndirect( LPRECT rect )
|
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
return CreateRoundRectRgn(rect->left, rect->top, rect->right, rect->bottom,
|
|
|
|
rect->right-rect->left, rect->bottom-rect->top );
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* CreatePolygonRgn (GDI.63)
|
|
|
|
*/
|
Release 960218
Sun Feb 18 16:35:54 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/desktop.c]
Look for the wallpaper file in the Windows directory.
* [controls/menu.c]
Fixed swapped parameters in SetMenuItemBitmaps().
Create a separator in MENU_SetItemData() when the string is NULL.
* [file/dosfs.c]
DOSFS_FindNext: don't return '.' and '..' in a drive root dir.
* [files/file.c]
Added a DOS_FILE structure to store per-file information (not
really used yet).
Fixed _lread and _hread to check the size of the buffer before
calling Unix read() to avoid EFAULT error.
* [misc/exec.c]
Return TRUE in WinHelp() for HELP_QUIT to quiet Notepad on exit.
* [miscemu/instr.c]
Call DOSMEM_Alarm() in INSTR_ReplaceSelector(). This should fix
programs that poll the BIOS counter, provided they reload the
selector on every read.
* [miscemu/int21.c]
Re-implemented FindFirst/FindNext for FCB calls.
* [windows/message.c] [windows/winpos.c]
Merged MSG_GetWindowForEvent() and WINPOS_WindowFromPoint().
* [windows/nonclient.c] [windows/win.c] [include/windows.h]
Added a per-window WIN_MANAGED flag; only windows that have a
dialog frame or a sizing border are managed.
Sat Feb 17 18:25:00 1996 Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
* [if1632/Makefile.in]
Added -g flag to compilation of .c files generated from *32.spec.
* [if1632/gdi32.spec]
Numerous additional functions implemented.
* if1632/user32.spec]
wsprintfA maps to vsprintf not wsprintf
Numerous additional functions implemented.
* [include/gdi.h] [objects/gdiobj.c]
New #define MAGIC_DONTCARE added. This is used in
GDI_GetObjPtr to enable getting a pointer to a GDI object of
unknow type.
* [win32/gdi32.c]
New file.
* [win32/param32.c]
WIN32_MoveToEx() - handle NULL pointer argument.
* [win32/user32.c]
USER32_InvalidateRect - handle passing of a NULL pointer.
USER32_SetTimer - New function.
* [files/directory.c]
Fixed DIR_Init() (off by one in allocation of space for
environment variables).
* [files/drive.c]
Added <sys/types.h> to #includes (prerequisite for <sys/stat.h>
on FreeBSD).
Fri Feb 16 10:26:56 1996 Andreas Kirschbaum <ank@rbg.informatik.th-darmstadt.de>
* [controls/menu.c]
Memory leak plugged.
* [controls/edit.c]
Erase space with function ExtTextOut(). This eliminates the use of
xmalloc(). Memory leak in EDIT_WriteText plugged.
* [debugger/db_disasm.c]
Operand for scas now is di.
* [files/profile.c]
PROFILE_GetSection was copying too much data.
PROFILE_GetSection now returns the correct value. It was returning
the number of unused instead of used bytes.
* [objects/dc.c]
Corrected two typos in comments.
* [objects/font.c]
FONT_MatchFont didn't return if it couldn't find any font.
* [objects/oembitmap.c]
Free object only if it has been allocated.
* [windows/scroll.c]
Memory leak in ScrollDC plugged.
Tue Feb 13 11:17:00 1996 William Magro <wmagro@tc.cornell.edu>
* [controls/edit.c]
Implemented ES_NOHIDESEL style, shift+click selection,
shift+{arrow,home,end,pgup,pgdn} selection. Optimized
(de)selection drawing. Changed selection drawing to use correct
system colors instead of inverting. Fixed deleting or backspacing
across a '\r\n' end of line pair. Selection now anchors
correctly. Fixed text leaking and extra garbage problem bug
uncovered by change in class style in wine960131.
* [controls/widgets.c]
Class flags now match those of Windows.
Mon Feb 12 21:28:19 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/widgets.c]
WIDGETS_Init: RELAY32_GetEntryPoint does not take a string anymore.
* [if1632/Makefile.in][if1632/relay32.c][include/relay32.h]
comctl32.spec ole32.spec winspool.spec: new files.
RELAY32_Init: call initialization of new DLLs.
RELAY32_GetEntryPoint: expects WIN32_builtin* now.
RELAY32_MakeFakeModule: new function.
* [if1632/gdi32.spec][if1632/kernel32.spec][if1632/user32.spec]
Added Win95 functions. Ordinals now differ from both NT and Win95
HeapCreate, CreateDialogIndirectParamA, CreateDialogIndirectParamW,
CreateDialogParamA, CreateDialogParamW, DialogBoxIndirectParamA
DialogBoxIndirectParamW, DialogBoxParamA, DialogBoxParamW:
new relays.
* [if1632/shell32.spec]
shell32.spec: renumbered all functions to take into account ordinals.
These seem to be identical between NT and Win95.
* [include/dialog.h][windows/dialog.c]
xBaseUnit,yBaseUnit,DIALOG_DoDialogBox: made non-static.
* [include/handle32.h]
New handle types VRANGE, HEAP, HEAPITEM.
* [include/pe_image.h][loader/pe_image.c]
struct w_files: new field builtin.
PE_FindExportedFunction: support ordinals.
PE_GetProcAddress: call RELAY32_GetEntryPoint for builtins.
fixup_imports: support ordinals.
PE_LoadImage: prefer directories over segments.
* [include/resource.h][win32/resource.c]
FindResource32: changed parameter from LPCTSTR to LPCWSTR
check LANG_NEUTRAL if LANG_ENGLISH fails.
LoadAcceleratorsW,SizeofResource32,AccessResource32:
disabled because it's broken.
Casted to and from LPWSTR at various places.
* [include/string32.h][win32/string32.c]
Changed prototypes to take const arguments where appropriate.
* [include/struct32.h]
New structures DLGTEMPLATE32, DLGITEMTEMPLATE32.
* [tools/build.c]
BuildSpec32Files: generate Base value into code, generate call to
RELAY32_MakeFakeModule.
* [win32/heap.c]
This is still not finished and needs rework.
HeapAlloc: renamed to SIMPLE_HeapAlloc, implemented HeapAlloc.
HeapCreate: implemented on top of VirtualAlloc, which does not work yet
HeapDestroy, HEAP_GrowHeap, HeapFree: new functions.
* [win32/memory.c]
Support for VRANGE_OBJECT. This is not yet called from any place,
and needs more platform specific support
MEMORY_FindVrange, MEMORY_IsVrangeFree, MEMORY_InsertVrange,
MEMORY_AllocVrange, MEMORY_ReleaseVrange: new functions.
* [win32/user32.c]
WIN32_CreateWindowExA: don't GlobalAlloc for integer class and window
names, as in dialogs.
Implemented dialog functions (see user32.spec).
* [windows/caret.c]
CARET_Initialize: call RELAY32_GetBuiltinDLL.
Mon Feb 12 18:52:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [controls/edit.c]
Removed commented out #ifdefs for WINELIB.
* [tools/makehtml.pl]
Put in error checking when trying to open a file.
* [libtest/Makefile.in] [libtest/new.c] [libtest/hello4.c]
Added two new targets: hello4 and new.
* [include/windows.h]
Added definition of DEVMODE structure, although it's not yet used.
Modified various API functions from CreateDC() to Escape(), in
order to make them more compliant with the strict API definitions.
* [include/wintypes.h]
Added 'typedef char TCHAR'. It probably should be defined as
'short', but then we would have to support such characters. Also did
'typedef const TCHAR* LPCTSTR' and 'typedef TCHAR* LPTSTR'.
Also defined WNDENUMPROC, FONTENUMPROC, GOBJENUMPROC, PROPENUMPROC
MFENUMPROC, and HGDIOBJ.
Mon Feb 5 16:42:07 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [misc/commdlg.c]
Patched a bug that occurred in the internal COMMDLG module for the
FileOpen(), FileSave() and FileSaveAs() functions. The file-type
combobox is now handled correctly.
Fri Feb 2 22:52:58 1996 Roman Dolejsi <roman@sorry.vse.cz>
* [resources/sysres_Cz.rc]
Added support for Czech [Cz] language.
Thu Feb 1 00:35:04 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/font.c]
FONT_matchfont : for fixed-spacing fonts, allow 'c' if 'm' fails;
for variable-spacing fonts : allow '*' if 'p' fails; if asked lfHeight
is -1, assume 0.
CreateFontIndirect : if font parameter is NULL, issue an error message.
CreateFont : null-terminate lfFaceName.
ParseFontParms : debug code turned off : too verbose.
InitFontsList : recognize *-c-* fonts as fixed-spacing fonts.
* [objects/color.c]
ColorToPhysical : admit 0xff...... COLORREF's as 0x00...... ones.
1996-02-18 19:44:41 +01:00
|
|
|
HRGN CreatePolygonRgn( const POINT * points, INT count, INT mode )
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
|
|
|
return CreatePolyPolygonRgn( points, &count, 1, mode );
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* CreatePolyPolygonRgn (GDI.451)
|
|
|
|
*/
|
1996-05-06 18:06:24 +02:00
|
|
|
HRGN CreatePolyPolygonRgn( const POINT * points, const INT16 * count,
|
Release 951105
Fri Nov 3 20:08:17 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [configure.in]
Attempt to check for -li386 on NetBSD. Please test this.
Mon Oct 30 12:40:32 EST 1995 Jim Peterson <jspeter@birch.ee.vt.edu>
* [*/*]
Eliminated various warnings with either explicit casts or more
accurate variable/parameter declarations (e.g. INT instead of short
or WORD).
Changed macros 'min' and 'max' to 'MIN' and 'MAX', since they're
macros.
* [controls/edit.c] [windows/defdlg.c]
Added '#ifdef SUPERFLUOUS_FUNCTIONS' wrappers around function
definition of EDIT_KeyVScrollDoc, EDIT_TextLineNumber, and
DEFDLG_FindDefButton to avoid warnings.
* [controls/button.c] [controls/scroll.c] [windows/defwnd.c]
[windows/message.c] [windows/nonclient.c]
Converted MAKEPOINT macro call to manual conversion.
* [include/windows.h]
For WINELIB32, structures POINT, SIZE, and RECT have LONG members
instead of INT. This also invalidates the macro MAKEPOINT(), which
is not supported in Win32. Also defined the POINTS structure (SHORT
members) and the MAKEPOINTS macro.
* [misc/commdlg.c]
Changed a lot of 'strcpy' calls to 'strncpy' calls. I'm desperate to
find this memory bug, and this should be done anyway.
* [controls/edit.c]
Well, the alteration mentioned above didn't do it, but #ifdef'ing out
a few lines in EDIT_ClearText did. This leads to bugs, but for now,
it's better than bizzare memory troubles.
* [toolkit/miscstubs.c]
Removed warning messages in GLOBAL_CreateBlock(), GLOBAL_FreeBlock(),
and RELAY32_GetEntryPoint(). These are the most popular warnings, and
their current implementation seems fine.
Sat Oct 28 09:39:18 1995 Jochen Karrer <cip307@wpax01.Physik.Uni-Wuerzburg.DE>
* [objects/cursoricon.c]
Fix for "broken" X servers that invert masked cursor colors.
Fri Oct 27 19:27:21 1995 Alex Korobka <alex@phm6.pharm.sunysb.edu>
* [windows/dialog.c] [windows/nonclient.c]
Remove unnecessary items from the system menu.
Thu Oct 26 05:03:03 MET 1995 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/color.c] [objects/palette.c]
Make GetNearestColor return a RGB value instead of a pixel value.
Wed Oct 25 23:33:39 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/desktop.c][controls/menu.c][include/menu.h]
Changed WORD parameters to UINT parameters.
* [include/wintypes.h]
Made UINT 32bit for WINELIB.
* [loader/main.c]
Disabled RELAY32_Init and MODULE_Init for WINELIB.
* [misc/main.c]
Assume CPU386 for WINELIB.
* [rc/winerc]
add_popup: set MF_POPUP flag on menu item.
* [toolkit/Makefile.in][toolkit/hello3.c][toolkit/hello3res.c]
Add resource demo hello3 for WINELIB.
New file README.resources.
* [toolkit/miscstubs.c]
Add a case for 17.
Tue Oct 17 15:13:10 IST 1995 Itai Nahshon <nahshon@vnet.ibm.com>
* [loader/module.c]
Do not append .exe if the file name already has an extension.
* [misc/profile.c]
Avoid creating a file with a junk name if a .ini file does not
exist.
* [if1632/gdi.spec] [if1632/user.spec] [if1632/dummy.c]
Added a lot of dummy stubs for Windows Hebrew version.
Tue Oct 17 01:03:24 1995 William Magro <wmagro@tc.cornell.edu>
* [controls/button.c]
Fix for buttons with no label.
* [controls/combo.c][controls/listbox.c]
Fixes for scrollbar positioning. Now disappears correctly
for short lists.
* [controls/edit.c]
Handle memory allocation differently when building as library.
* [controls/static]
Don't destroy old icon before drawing new icon. (Fixes landscape/
portrait toggle icon in print dialog.)
* [if1632/gdi.spec]
New functions SetMetaFileBits and GetMetaFileBits
* [include/sysmetrics.h] [windows/sysmetrics.c]
Add support for GetSystemMetrics(SM_CMETRICS) == SM_CMETRICS
* [include/windows.h]
META_EXTTEXTOUT, not META_SETTEXTOUT
define GetCurrentTime as GetTickCount (for wine library)
* [loader/main.c]
Don't initialize built-in modules in wine library
* [memory/local.c]
LocalReAlloc was defined incorrectly. Swap flags and size arguments.
* [misc/main.c]
Always report CPUTYPE=4 to wine library.
* [objects/dib.c]
RLE8 images were missing top line when decompressed.
* [objects/metafile.c]
SetMetaFileBits and GetMetaFileBits implemented. Works when called
from winhelp. More testing needed. Various memory leaks plugged.
Various other bug fixes. New metafile operations added in
PlayMetaFileRecord: CreatePalette, SetTextAlign, SelectPalette,
SetMapperFlags, RealizePalette, ExtTextOut, Escape. Testing needed.
* [toolkit/heap.c]
LocalUnLock changed to LocalUnlock
Sun Oct 15 21:55:33 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsock.c]
Return the correct error number, for host lookup operations.
Also, correct the problem with send_message.
Fri Oct 13 19:04:35 1995 Morten Welinder <terra@diku.dk>
* [Makefile.in]
Using nm's built-in sorting.
* [*/*.c]
Use xmalloc for malloc and xrealloc for realloc in all ungarded
cases.
* [debugger/dbg.y]
Handle C-like expressions. Clean-up.
* [debugger/debug.l]
Lots of new tokens for expressions.
* [debugger/info.c]
Implement "list" command for disassembling.
* [misc/ole2nls.c]
Implement more Danish stuff.
Fri Oct 6 10:39:39 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
* [loader/module.c]
Updated self-loading modules to support for new 32 bit
stack frames.
1995-11-05 15:39:02 +01:00
|
|
|
INT nbpolygons, INT mode )
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
RGNOBJ * obj;
|
1993-09-04 12:09:32 +02:00
|
|
|
HRGN hrgn;
|
1994-09-16 11:24:37 +02:00
|
|
|
int i, j, maxPoints;
|
|
|
|
XPoint *xpoints, *pt;
|
|
|
|
Region xrgn;
|
|
|
|
|
|
|
|
/* Allocate points array */
|
1993-09-04 12:09:32 +02:00
|
|
|
|
1994-09-16 11:24:37 +02:00
|
|
|
if (!nbpolygons) return 0;
|
|
|
|
for (i = maxPoints = 0; i < nbpolygons; i++)
|
|
|
|
if (maxPoints < count[i]) maxPoints = count[i];
|
|
|
|
if (!maxPoints) return 0;
|
|
|
|
if (!(xpoints = (XPoint *) malloc( sizeof(XPoint) * maxPoints )))
|
|
|
|
return 0;
|
1993-09-04 12:09:32 +02:00
|
|
|
|
1994-09-16 11:24:37 +02:00
|
|
|
/* Allocate region */
|
1993-09-04 12:09:32 +02:00
|
|
|
|
1994-09-16 11:24:37 +02:00
|
|
|
if (!(hrgn = GDI_AllocObject( sizeof(RGNOBJ), REGION_MAGIC )))
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
|
|
|
free( xpoints );
|
|
|
|
return 0;
|
|
|
|
}
|
1995-03-19 18:39:39 +01:00
|
|
|
obj = (RGNOBJ *) GDI_HEAP_LIN_ADDR( hrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
obj->xrgn = 0;
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region(stddeb, "CreatePolyPolygonRgn: %d polygons, returning %04x\n",
|
1995-01-24 17:21:01 +01:00
|
|
|
nbpolygons, hrgn );
|
1993-09-04 12:09:32 +02:00
|
|
|
|
1994-09-16 11:24:37 +02:00
|
|
|
/* Create X region */
|
1993-09-04 12:09:32 +02:00
|
|
|
|
1994-09-16 11:24:37 +02:00
|
|
|
for (i = 0; i < nbpolygons; i++, count++)
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1994-09-16 11:24:37 +02:00
|
|
|
for (j = *count, pt = xpoints; j > 0; j--, points++, pt++)
|
|
|
|
{
|
|
|
|
pt->x = points->x;
|
|
|
|
pt->y = points->y;
|
|
|
|
}
|
|
|
|
xrgn = XPolygonRegion( xpoints, *count,
|
|
|
|
(mode == WINDING) ? WindingRule : EvenOddRule );
|
1995-01-09 19:21:16 +01:00
|
|
|
if (!xrgn)
|
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
if (obj->xrgn) XDestroyRegion( obj->xrgn );
|
1995-01-09 19:21:16 +01:00
|
|
|
free( xpoints );
|
|
|
|
GDI_FreeObject( hrgn );
|
|
|
|
return 0;
|
|
|
|
}
|
1994-09-16 11:24:37 +02:00
|
|
|
if (i > 0)
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1994-09-16 11:24:37 +02:00
|
|
|
Region tmprgn = XCreateRegion();
|
1995-01-24 17:21:01 +01:00
|
|
|
if (mode == WINDING) XUnionRegion( xrgn, obj->xrgn, tmprgn );
|
|
|
|
else XXorRegion( xrgn, obj->xrgn, tmprgn );
|
|
|
|
XDestroyRegion( obj->xrgn );
|
|
|
|
obj->xrgn = tmprgn;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
1995-01-24 17:21:01 +01:00
|
|
|
else obj->xrgn = xrgn;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
1994-09-16 11:24:37 +02:00
|
|
|
|
1993-09-04 12:09:32 +02:00
|
|
|
free( xpoints );
|
|
|
|
return hrgn;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* PtInRegion (GDI.161)
|
|
|
|
*/
|
|
|
|
BOOL PtInRegion( HRGN hrgn, short x, short y )
|
|
|
|
{
|
|
|
|
RGNOBJ * obj;
|
|
|
|
|
|
|
|
if (!(obj = (RGNOBJ *) GDI_GetObjPtr( hrgn, REGION_MAGIC ))) return FALSE;
|
1995-01-24 17:21:01 +01:00
|
|
|
if (!obj->xrgn) return FALSE;
|
|
|
|
return XPointInRegion( obj->xrgn, x, y );
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* RectInRegion (GDI.181)
|
|
|
|
*/
|
|
|
|
BOOL RectInRegion( HRGN hrgn, LPRECT rect )
|
|
|
|
{
|
|
|
|
RGNOBJ * obj;
|
|
|
|
|
|
|
|
if (!(obj = (RGNOBJ *) GDI_GetObjPtr( hrgn, REGION_MAGIC ))) return FALSE;
|
1995-01-24 17:21:01 +01:00
|
|
|
if (!obj->xrgn) return FALSE;
|
|
|
|
return (XRectInRegion( obj->xrgn, rect->left, rect->top,
|
|
|
|
rect->right-rect->left,
|
|
|
|
rect->bottom-rect->top ) != RectangleOut);
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* EqualRgn (GDI.72)
|
|
|
|
*/
|
|
|
|
BOOL EqualRgn( HRGN rgn1, HRGN rgn2 )
|
|
|
|
{
|
|
|
|
RGNOBJ *obj1, *obj2;
|
|
|
|
if (!(obj1 = (RGNOBJ *) GDI_GetObjPtr( rgn1, REGION_MAGIC ))) return FALSE;
|
|
|
|
if (!(obj2 = (RGNOBJ *) GDI_GetObjPtr( rgn2, REGION_MAGIC ))) return FALSE;
|
1995-01-24 17:21:01 +01:00
|
|
|
if (!obj1->xrgn || !obj2->xrgn) return (!obj1->xrgn && !obj2->xrgn);
|
|
|
|
return XEqualRegion( obj1->xrgn, obj2->xrgn );
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
1994-10-17 19:12:41 +01:00
|
|
|
/***********************************************************************
|
|
|
|
* REGION_CopyRegion
|
|
|
|
*
|
|
|
|
* Copy region src into dest.
|
|
|
|
*/
|
|
|
|
static int REGION_CopyRegion( RGNOBJ *src, RGNOBJ *dest )
|
|
|
|
{
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
Region tmprgn;
|
1995-01-24 17:21:01 +01:00
|
|
|
if (src->xrgn)
|
1994-10-17 19:12:41 +01:00
|
|
|
{
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
if (src->xrgn == dest->xrgn) return COMPLEXREGION;
|
|
|
|
tmprgn = XCreateRegion();
|
1995-01-24 17:21:01 +01:00
|
|
|
if (!dest->xrgn) dest->xrgn = XCreateRegion();
|
|
|
|
XUnionRegion( tmprgn, src->xrgn, dest->xrgn );
|
1994-10-17 19:12:41 +01:00
|
|
|
XDestroyRegion( tmprgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
return COMPLEXREGION;
|
1994-10-17 19:12:41 +01:00
|
|
|
}
|
1995-01-24 17:21:01 +01:00
|
|
|
else
|
1994-10-17 19:12:41 +01:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
if (dest->xrgn) XDestroyRegion( dest->xrgn );
|
|
|
|
dest->xrgn = 0;
|
|
|
|
return NULLREGION;
|
1994-10-17 19:12:41 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
Release 950727
Sat Jul 22 22:39:09 IDT 1995 Michael Veksler <e1678223@tochnapc2.technion.ac.il>
* [ipc/*]
New directory. This directory contains the new inter-wine
communications support. It enables DDE protocols between two wine
instances. Currently it is limited to DDE, but can be enhanced to
support OLE between 2 different wine instances. This is very
important for libwine.a DDE/OLE support.
* [tools/ipcl]
A script to delete garbage IPC handles (shared memory, semaphores
and message queues). The current inter-wine communication is not
perfect, and sometimes leaves garbage behind.
* [if1632/relay.c] [include/atom.h] [include/global.h]
[loader/selector.c] [loader/task.c] [loader/module.c]
[loader/signal.c] [memory/global.c] [misc/atom.c]
[windows/class.c] [windows/message.c] [windows/win.c]
[Imakefile]
Hooks for inter-wine DDE support, current Global.*Atom functions
renamed to Local.*Atom since Global.*Atom are used for Inter-Wine
DDE communication. (The first call to these functions sets up the
IPC structures - which otherwise cause unneeded overhead.
Mon Jul 17 19:55:21 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [controls/menu.c]
Don't crash if a NULL string is passed to menu functions.
* [memory/selector.c]
We now use a bit in ldt_flags_copy to indicate free LDT entries.
Fixed a bug in SELECTOR_ReallocBlock that could cause it to
overwrite valid LDT entries when growing a block.
* [miscemu/instr.c]
Emulate int xx instruction by storing the interrupt vector in
CS:IP and returning directly. This allows a program to install an
interrupt vector.
* [windows/win.c]
Added function WIN_GetTopParent to get the top-level parent of a
window.
Sun Jul 16 18:17:17 1995 Gregory Trubetskoy <grisha@mira.com>
* [loader/resource.c]
Added LoadIconHandler. It doesn't do anything yet, but now you
can use borland help files with winhelp.exe.
Sun Jul 16 11:58:45 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/main.c]
Fixed to return 386 Enhanced mode correctly. Also return the same
type of CPU, for both Enhanced and Standard mode, namely a 386.
Sun Jul 16 00:02:04 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [Configure] [include/options.h] [include/wineopts.h]
[misc/main.c][misc/spy.c]
Removed support of spy file. Redirected spy messages to stddeb.
Removed -spy option. Added -debugmsg +spy option.
* [debugger/dbg.y][debugger/debug.l]
Enabled segmented addresses (seg:offs) for break and x commands.
* [if1632/gdi.spec] [objects/region.c] [windows/graphics.c]
[include/region.h]
FrameRgn, REGION_FrameRgn: New functions
* [if1632/kernel.spec]
IsWinOldApTask: Return false
* [if1632/mouse.spec]
CplApplet: Removed
* [if1632/user.spec] [windows/win.c]
ShowOwnedPopups: New function
* [if1632/winsock.spec] [misc/winsocket.c]
inet_addr, select: New prototypes in relay code
Fixed memory layout for netdb functions (getXbyY).
WINSOCK_ioctlsocket: Translated FIONREAD, FIONBIO, and FIOASYNC
* [objects/clipping.c]
RectVisible: Fixed call to LPToDP
* [rc/winerc.c]
main: Removed extra argument to getopt for Linux.
Tue Jul 11 00:14:41 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [controls/listbox.c]
Yet another fix for ListBoxDirectory().
* [loader/module.c] [if1632/kernel.spec]
Make GetModuleHandle() accept instance handles as parameter.
* [if1632/relay.c] [loader/task.c]
Put a magic cookie at the bottom of the 32 bit stack, and check on
each return from a 32 bit function whether it's still there. Complain
if it's not.
* [if1632/user.spec]
Wrong entry for CloseDriver().
* [misc/dos_fs.c] [loader/task.c] [include/dos_fs.h] [misc/file.c]
[miscemu/int21.c]
Large parts of dos_fs.c simplified. Changed it to use one
current drive/directory per task, which is set to the module path on
task creation.
Prevent CorelPaint from closing stdin.
open() with O_CREAT set must be passed three parameters.
DOS FindFirst()/FindNext() could crash when FA_LABEL was set. Fixed,
it's in DOS_readdir() now.
* [misc/profile.c]
Some badly written software (Lotus Freelance Graphics) passes a bogus
size parameter that caused Wine to write off the end of a segment.
Fixed. (It's probably too paranoid now.)
* [multimedia/mmsystem.c] [multimedia/time.c] [multimedia/joystick.c]
[multimedia/Imakefile] [if1632/winprocs.spec]
16 bit entry point for MMSysTimeCallback.
Split off time.c and joystick.c from mmsystem.c.
* [objects/dib.c]
GetDIBits(): call XGetImage() via CallTo32_LargeStack.
* [windows/cursor.c]
DestroyCursor(): do nothing for builtin cursors.
* [windows/mdi.c]
Half of WM_MDISETMENU implemented.
* [windows/win.c]
EnumWindows() and EnumTaskWindows() never enumerated any windows.
Fixed.
* [windows/*.c]
Fixed GetParent() to return correct values for owned windows.
* [windows/message.c]
Don't try to activate disabled top-level windows.
* [windows/nonclient.c]
Work around a bug in gcc-2.7.0.
* [tools/build.c] [include/stackframe.h] [memory/global.c]
[loader/task.c] [memory/selector.c]
Some Visual Basic programs (and possibly others, too) expect ES to be
preserved by a call to an API function, so we have to save it.
In GlobalFree() and FreeSelector(), we must clear CURRENT_STACK16->es
to prevent segfaults if ES contained the selector to be freed.
Sun Jul 9 20:21:20 1995 Jon Tombs <jon@gtex02.us.es>
* [*/*]
Added missing prototypes to header files and relevant includes
to reduce compile time warnings.
Sun Jul 9 18:32:56 1995 Michael Patra <micky@marie.physik.tu-berlin.de>
* [configure.in] [include/config.h] [*/Makefile.in]
New configuration scheme based on autoconf.
Sat Jul 8 14:12:45 1995 Morten Welinder <terra+@cs.cmu.edu>
* [miscemu/ioports.c]
Revamp to have only one in- and one out- variant, both really
implemented.
* [miscemu/instr.c]
INSTR_EmulateInstruction: Use new ioport interface. Implement
string io. Correct instruction pointer for 32-bit code.
* [include/miscemu.h]
Update port function prototypes.
* [include/registers.h]
Defined FS and GS.
Sat Jul 8 13:38:54 1995 Hans de Graaff <graaff@twi72.twi.tudelft.nl>
* [misc/dos_fs.c]
ChopOffSlash(): A path consisting off a single slash is left
intact, and multiple slashes are all removed.
1995-07-29 15:09:43 +02:00
|
|
|
/***********************************************************************
|
|
|
|
* REGION_CreateFrameRgn
|
|
|
|
*
|
|
|
|
* Create a region that is a frame around another region
|
|
|
|
*/
|
|
|
|
BOOL REGION_FrameRgn( HRGN hDest, HRGN hSrc, int x, int y )
|
|
|
|
{
|
|
|
|
RGNOBJ *destObj,*srcObj;
|
|
|
|
Region result;
|
|
|
|
|
|
|
|
destObj = (RGNOBJ*) GDI_GetObjPtr( hDest, REGION_MAGIC );
|
|
|
|
srcObj = (RGNOBJ*) GDI_GetObjPtr( hSrc, REGION_MAGIC );
|
|
|
|
if (!srcObj->xrgn) return 0;
|
|
|
|
REGION_CopyRegion( srcObj, destObj );
|
|
|
|
XShrinkRegion( destObj->xrgn, -x, -y );
|
|
|
|
result = XCreateRegion();
|
|
|
|
XSubtractRegion( destObj->xrgn, srcObj->xrgn, result );
|
|
|
|
XDestroyRegion( destObj->xrgn );
|
|
|
|
destObj->xrgn = result;
|
|
|
|
return 1;
|
|
|
|
}
|
1994-10-17 19:12:41 +01:00
|
|
|
|
1993-09-04 12:09:32 +02:00
|
|
|
/***********************************************************************
|
|
|
|
* CombineRgn (GDI.451)
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
*
|
|
|
|
* The behavior is correct even if src and dest regions are the same.
|
1993-09-04 12:09:32 +02:00
|
|
|
*/
|
Release 960131
Wed Jan 31 10:58:00 1996 Alexandre Julliard <julliard@sunsite.unc.edu>
* [configure.in]
Added --with-dll option to build libwine.so.
* [controls/listbox.c]
Fixed ListBoxDirectory(), DlgDirSelect() and
DlgDirList(). Hopefully their behavior is correct now.
* [controls/menu.c]
Use SEGPTRs in ChangeMenu(), InsertMenu(), AppendMenu() and
ModifyMenu() for the item data, to avoid corrupting the pointer
for owner-drawn items.
* [controls/static.c]
Attempt to load OEM icons for SS_ICON controls. Probably not
entirely correct.
Don't clip the text output.
* [files/directory.c]
Add temp dir and Windows dir to environment.
* [files/dos_fs.c]
Fixed a few path handling bugs in DOSFS_GetUnixFileName().
Cache last used directory in DOSFS_FindNext() to avoid quadratic
search time.
* [files/drive.c]
New format for drives configuration in wine.conf; allows
specifying the type, label and serial number of a drive.
* [files/file.c]
New function FILE_OpenUnixFile to make sure we don't open a
directory instead of a file.
Fixed DOSFS_GetUnixFileName() check_last flag in FILE_MakeDir().
* [files/profile.c]
Rewrote profile handling. Should be closer to Windows behavior now.
New function PROFILE_GetWineIniString() to get a string from wine.conf.
Support environment variables in wine.conf.
* [loader/task.c]
Fixed the order of deletion in TASK_DeleteTask() to avoid memory
corruption.
* [memory/global.c]
Create a discarded block on GlobalAlloc() if the size is 0; thanks
to John Harvey for noticing this.
* [memory/local.c]
LOCAL_GetHeap: make sure the pointer is valid before checking
magic number.
* [misc/main.c]
Moved profile and registry saving to ExitWindows(), so we don't
try to save them in case of a crash.
* [miscemu/int21.c]
INT21_GetFreeDiskSpace: try to compute the cluster size from the
filesystem size instead of hard-coding it to 64.
Fixed functions 0x3f and 0x40 to use _hread and _hwrite to allow
reading or writing 65535 bytes (thanks to Bruce Milner for this one).
* [windows/message.c]
Fixed bug in linked-list handling in MSG_DeleteQueue().
Simplified SetMessageQueue().
* [wine.ini] [wine.man]
Updated for new drives configuration format.
Tue Jan 30 11:24:46 1996 William Magro <wmagro@tc.cornell.edu>
* [controls/edit.c]
Implemented ES_PASSWORD style, EM_SETPASSWORDCHAR and
EM_GETPASSWORDCHAR messages.
* [controls/widgets.c]
Adjusted class creation flags to better match values Windows uses.
* [include/windows.h]
Fixed ES_NOHIDESEL typo.
* [loader/ne_image.c]
Added detection for zero offset in RADDR fixups. Quicken
was in an infinite loop here.
Mon Jan 29 20:12:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [files/dos_fs.c]
Bugfix: range error in month value (0..11 set to 1..12).
* [windows/caret.c]
Changed ROP2-mode to R2_NOTXORPEN in CARET_Callback for pulsed
appearance of the caret.
* [windows/mdi.c] [include/mdi.h]
Changed MDITile(): added a new parameter WORD wParam for
WM_MDITILE second tiling method (MDITILE_HORIZONTAL in wParam) as
used in Win3.1
Sun Jan 28 14:20:00 1996 Cameron Heide <heide@ee.ualberta.ca>
* [miscemu/int2f.c]
Added a small bit of MSCDEX emulation.
* [windows/alias.c]
ALIAS_RegisterAlias was returning the hash value when it should
have been returning the record number.
Sat Jan 27 10:53:51 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/shell.h] [include/wintypes.h]
Moved definition of HKEY and LPHKEY types to include/wintypes.h.
Declared FONTENUMPROC in wintypes.h.
* [include/windows.h]
Added definition of KERNINGPAIR and LPKERNINGPAIR types. Added
declarations for CopyCursor(), CopyIcon(), EnumFontFamilies(),
ExtractIcon(), FatalAppExit(), FindExecutable(), GetClipCursor(),
GetKerningPairs(), GetQueueStatus(), GetRasterizerCaps(),
IsGDIObject(), IsMenu(), IsTask(), RegCloseKey(), RegCreateKey(),
RegDeleteKey(), RegEnumKey(), RegOpenKey(), RegQueryValue(),
RegSetValue(), ResetDC(), ShellExecute(), SystemParametersInfo(),
and wsprintf().
* [tools/makehtml.pl] [documentation/apiw.index]
New files that scan windows.h, commdlg.h, and toolhelp.h and output
an HTML sorted list with optional links to www.willows.com and a
tally of unimplemented APIW functions.
* [objects/cursoricon.c]
Added Win32 versions of CopyIcon() and CopyCursor() for use in
libwine.
* [win32/resource.c] [win32/winprocs.c]
Added '#include "libres.h"' and explicit declarations of windows
procs in order to avoid warnings.
* [windows/utility.c]
Added Win32 version of MulDiv() for libwine.
* [*/*] [include/windows.h]
Changed several function declarations to comply more strictly to
the windows API (without, hopefully, altering their functionality).
* [controls/menu.c]
Made the return value of CheckMenuItem be the previous state of
the menu item if it was found, otherwise -1 as specified in the
SDK. This conflicts with the APIW specification, which says it
should return TRUE if successful, otherwise FALSE.
* [include/windows.h]
Added obsolete WM_SIZE message wParam names for compatibility.
Added WinHelp() command constants, even though they are not yet
supported.
* [rc/winerc.c]
Tidied up transform_binary_file(). In argument checking, flattened
any invalid characters specified with the prefix argument.
* [library/libres.c]
Made FindResource() case-insensitive when parameter 'name' is a string.
Sat Jan 27 02:30 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de
* [files/drive.c]
If root "/" is given in wine.conf, use it as last resort.
* [files/file.c]
Report ER_AccessDenied it disk ist not writable
More Debug Output
* [miscemu/int21.c]
Squeezed some bugs in ExtendedOpenCreateFile
* [windows/winpos.c]
Some windows may not be moved or resized. We are missing some
structures to be exact, but the approach should help in some cases
and make things worse in much fewer.
Fri Jan 26 10:24:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [loader/pe_image.c]
fixup_imports: Find builtins for Borland style entries, too
Fri Jan 26 10:24:00 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/menu.c]
LoadMenu: branch to Win32 for PE modules
* [if1632/gdi.spec][if1632/kernel32.spec][if1632/user32.spec]
DeleteObject, GetPixel, SetPixel,WritePrivateProfileStringA,
WriteProfileStringA, EmptyClipboard, EnableMenuItem, EnableScrollBar,
EnableWindow, InvalidateRect, SetWindowTextA, WinHelpA: new relays
DrawTextA, MoveToEx, GetClientRect, InvalidateRect, LoadBitmapA/W,
LoadAcceleratorsA/W, LoadMenu[Indirect]A/W, LoadStringA/W: changed
to convert parameters or naming convention
* [include/kernel32.h][include/wintypes.h]
moved WCHAR, defined LPWSTR
* [include/string32.h][win32/string32.c][include/struct32.h]
New files
* [loader/module.h]
LoadModule: exit after returning from PE_LoadModule
* [loader/pe_image.c]
my_wcstombs: isascii does not work on Linux for Unicode
PE_LoadImage: Handle directories
* [misc/user32.c]
USER32_RECT32to16, USER32_RECT16to32: new functions
implemented new user32 relays
* [misc/newfns.c]
WIN32_WinHelpA: new function
* [win32/param32.c]
New file
* [win32/resource.c]
GetResDirEntry: added support for named entries
WIN32_LoadAcceleratorsW: invoke *32 resource functions
WIN32_LoadBitmapA: convert name to unicode if appropriate
WIN32_ParseMenu: new function
implemented new resource functions from user32.spec
Wed Jan 24 18:09:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [objects/cursoricon.c]
GetIconId() and LoadIconHandler() functions.
* [windows/mdi.c]
Better maximization support, TranslateMDISysAccel() function,
misc improvements.
* [windows/defwnd.c]
Fix for WM_WINDOWPOSCHANGED message handler.
* [windows/winpos.c]
Rewrote WindowFromPoint() function.
Sun Jan 21 1996 17:05:09 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/toolhelp.h] [misc/toolhelp.c]
Added Notify(Un)Register, but no callbacks yet.
Fri Jan 19 01:43:37 1996 Victor Schneider <root@tailor.roman.org>
* [Makefile.in]
Added target for libwine.so.1.0.
* [library/winmain.c]
For WINELIBDLL, _WinMain just returns hInstance instead of calling
WinMain().
* [misc/main.c]
For WINELIBDLL, renamed main() to _wine_main() for calling from the
stub main function.
* [library/winestub.c] (new file)
Provides a stub main() function for using libwine.so.
Tue Jan 16 11:04:34 1996 Anand Kumria <akumria@ozemail.com.au>
* [winsocket.c]
Fix EPERM problem.
* [global.c]
Attempt to do some sanity checking in MemManInfo().
* [Changelog]
Fix changelog oversight for previous entry.
1996-01-31 20:02:28 +01:00
|
|
|
INT CombineRgn( HRGN hDest, HRGN hSrc1, HRGN hSrc2, INT mode )
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
|
|
|
RGNOBJ *destObj, *src1Obj, *src2Obj;
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
Region destrgn;
|
|
|
|
|
Release 960324
Sun Mar 24 13:13:11 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [include/win.h] [windows/*.c]
Replaced next, parent, child and owner handles by pointers in WND
structure. This should improve performance, and should be
reasonably safe since Microsoft did the same in Win95.
* [include/wintypes.h] [*/*]
Redefined HANDLE to be UINT instead of a pointer for Winelib. This
allows removing a lot of unnecessary casts and NPFMTs.
* [windows/caret.c]
Create the caret brush upon CreateCaret(); use the bitmap
dimensions for the caret.
Fixed CARET_DisplayCaret() to use PatBlt().
Fri Mar 22 16:00:00 1996 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsocket.c]
More sanity checks, fixup some erroneous return codes.
* [documentation/winsock]
Description of how compatible the winsock is currently.
Fri Mar 22 13:05:34 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [library/winmain.c]
Set `lpszCmdParam' by concatenating arguments.
* [loader/module.c]
WinExec: accept Unix commands, use Wine emulator.
Mon Mar 18 12:16:27 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
DeleteCriticalSection, EnterCriticalSection,
InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
TlsFree, TlsGetValue, TlsSetValue: new functions.
CRITICAL_SECTION: new structure.
* [if1632/kernel32.spec][win32/code_page.c]
WideCharToMultiByte: new function.
* [if1632/kernel32.spec][win32/file.c]
GetFileAttributesA: new function.
* [if1632/kernel32.spec][misc/main.c]
GetEnvironmentStringsW, FreeEnvironmentStringsA,
FreeEnvironmentStringsW: new functions.
* [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
cursoricon32.c: new file.
LoadCursorA, LoadCursorW: modified implementation from LoadCursor
to WIN32_*.
LoadIconA, LoadIconW: modified implementation from LoadIconA32
to WIN32_*.
* [include/struct32.h]
pragma pack inserted.
CURSORICON32 structures added.
* [include/winnls.h]
Constants CP_* and WC_* added.
* [loader/pe_image.c]
PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
Sun Mar 17 16:59:12 1996 Albrecht Kleine <kleine@ak.sax.de>
* [misc/commdlg.c]
Introduced hook function handling in file dialog.
Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
Thu Mar 14 10:50:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
* [if1632/gdi32.spec]
Added GetNearestColor.
* [if1632/kernel32.spec]
Added GlobalAddAtomA.
* [win32/param32.c]
Added stackframe.h to includes.
WIN32_GlobalAddAtomA() - new function.
1996-03-24 17:20:51 +01:00
|
|
|
dprintf_region(stddeb, "CombineRgn: %04x,%04x -> %04x mode=%x\n",
|
1995-01-24 17:21:01 +01:00
|
|
|
hSrc1, hSrc2, hDest, mode );
|
1993-09-04 12:09:32 +02:00
|
|
|
|
|
|
|
if (!(destObj = (RGNOBJ *) GDI_GetObjPtr( hDest, REGION_MAGIC )))
|
|
|
|
return ERROR;
|
|
|
|
if (!(src1Obj = (RGNOBJ *) GDI_GetObjPtr( hSrc1, REGION_MAGIC )))
|
|
|
|
return ERROR;
|
1994-10-17 19:12:41 +01:00
|
|
|
if (mode == RGN_COPY) return REGION_CopyRegion( src1Obj, destObj );
|
|
|
|
|
|
|
|
if (!(src2Obj = (RGNOBJ *) GDI_GetObjPtr( hSrc2, REGION_MAGIC )))
|
|
|
|
return ERROR;
|
1993-09-04 12:09:32 +02:00
|
|
|
|
1994-12-27 15:11:53 +01:00
|
|
|
/* Some optimizations for null regions */
|
|
|
|
|
1995-01-24 17:21:01 +01:00
|
|
|
if (!src1Obj->xrgn || !src2Obj->xrgn)
|
1994-12-27 15:11:53 +01:00
|
|
|
{
|
|
|
|
switch(mode)
|
|
|
|
{
|
|
|
|
case RGN_DIFF:
|
1995-01-24 17:21:01 +01:00
|
|
|
if (src1Obj->xrgn)
|
|
|
|
return REGION_CopyRegion( src1Obj, destObj );
|
|
|
|
/* else fall through */
|
1994-12-27 15:11:53 +01:00
|
|
|
case RGN_AND:
|
1995-01-24 17:21:01 +01:00
|
|
|
if (destObj->xrgn) XDestroyRegion( destObj->xrgn );
|
|
|
|
destObj->xrgn = 0;
|
1994-12-27 15:11:53 +01:00
|
|
|
return NULLREGION;
|
|
|
|
case RGN_OR:
|
|
|
|
case RGN_XOR:
|
1995-01-24 17:21:01 +01:00
|
|
|
if (src1Obj->xrgn)
|
|
|
|
return REGION_CopyRegion( src1Obj, destObj );
|
|
|
|
else
|
|
|
|
return REGION_CopyRegion( src2Obj, destObj );
|
1994-12-27 15:11:53 +01:00
|
|
|
default:
|
|
|
|
return ERROR;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
1995-01-24 17:21:01 +01:00
|
|
|
/* Perform the operation with the two X regions */
|
1994-09-16 11:24:37 +02:00
|
|
|
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
if (!(destrgn = XCreateRegion())) return ERROR;
|
1993-09-04 12:09:32 +02:00
|
|
|
switch(mode)
|
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
case RGN_AND:
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
XIntersectRegion( src1Obj->xrgn, src2Obj->xrgn, destrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
break;
|
|
|
|
case RGN_OR:
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
XUnionRegion( src1Obj->xrgn, src2Obj->xrgn, destrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
break;
|
|
|
|
case RGN_XOR:
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
XXorRegion( src1Obj->xrgn, src2Obj->xrgn, destrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
break;
|
|
|
|
case RGN_DIFF:
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
XSubtractRegion( src1Obj->xrgn, src2Obj->xrgn, destrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
break;
|
|
|
|
default:
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
XDestroyRegion( destrgn );
|
1995-01-24 17:21:01 +01:00
|
|
|
return ERROR;
|
Release 940405
Tue Apr 5 14:36:59 1994 Bob Amstadt (bob@pooh)
* [include/mdi.h] [windows/mdi.c]
Use WM_PARENTNOTIFY messages to activate children.
Generate WM_CHILDACTIVATE messages.
Beginnings handler for maxmized child window.
Clean up when children are destroyed.
* [windows/message.c] [windows/nonclient.c] [windows/winpos.c]
Removed code add 94/03/26.
Apr 4, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
* [control/menu.c]
Make mouse menu navigation working again. :-))
(be carefull, clicking outside menus (ie.: clientrect)
not resolved yet)
* [windows/nonclient.c] [controls/scroll.c]
Bugs fix in NCTrackScrollBars().
* [misc/dos_fs.c]
Bug fix in 'ToDos()' in conversion for '/',
(example: '/window/' was translated to 'WINDOWs').
* [miscemu/int21.c]
Function ChangeDir() extract possible drive before DOS_ChangeDir().
* [loader/library.c] [loader/wine.c]
Playing around moving function GetProcAddress() and put some code in.
Mon Apr 4 21:39:07 1994 Alexandre Julliard (julliard@lamisun.epfl.ch)
* [misc/main.c]
Better explanation of command-line options.
* [objects/dib.c]
Implemented SetDIBitsToDevice().
* [windows/dc.c]
Bug fix in SetDCState().
* [windows/event.c]
Removed WS_DISABLED handling (now done in message.c).
* [windows/message.c]
Added sending a WM_PARENTNOTIFY message in MSG_TranslateMouseMsg().
Use WindowFromPoint() to find the window for mouse events, taking
into account disabled windows.
* [windows/painting.c]
Bug fix in BeginPaint() to allow calling it at other times than
on WM_PAINT (Solitaire needs it...)
* [windows/win.c]
Implemented FindWindow().
Rewritten EnableWindow() to behave more like Windows.
* [windows/winpos.c]
Rewritten WindowFromPoint() to also search child windows.
Mon Apr 4 17:36:32 1994 Erik Bos (erik@trashcan.hacktic.nl)
* [include/int21.h] -> [msdos.h]
renamed.
* [miscemu/int10.h] [miscemu/int25.h] [miscemu/int26.h]
new, added for int 10, 25 and 26.
* [miscemu/ioports.c]
new, added to allow win apps to use ioports.
* [loader/signal.c]
Added support for in, inb, out, outb instructions.
Sun Mar 27 13:40:25 1994 Bob Amstadt (bob@pooh)
* controls/menu.c (InsertMenu): Changed to use FindMenuItem().
Sat Mar 26 21:23:55 1994 Bob Amstadt (bob@pooh)
* [windows/mdi.c]
Window list properly updated.
* [windows/message.c]
Call WINPOS_ChildActivate() when mouse pressed.
* [windows/nonclient.c]
Use WINPOS_IsAnActiveWindow() instead of GetActiveWindow() in
NC_HandleNCPaint().
* [windows/winpos.c]
Created functions WINPOS_IsAnActiveWindow() and WINPOS_ActivateChild()
Thu Mar 24 14:49:17 1994 Bob Amstadt (bob@pooh)
* controls/menu.c (DeleteMenu): Changed to use FindMenuItem
(DeleteMenu): Many bug fixes.
* [controls/menu.c]
Created function FindMenuItem().
Thu Mar 24 14:17:24 1994 Bob Amstadt (bob@pooh)
* [windows/win.c]
Removed incorrect MDI handling code from CreateWindowEx().
* [controls/menu.c]
MF_STRING items needed to allocate a private copy of string.
* [controls/menu.c]
Fixed buggy calls to GlobalFree().
* [memory/global.c]
Eliminated some redundant code with function call.
Wed Mar 23 1994 Pentti Moilanen (pentti.moilanen@ntc.nokia.com)
* [windows/timer.c]
timer list pointers looped in InsertTimer
Tue Mar 29 13:32:08 MET DST 1994 julliard@di.epfl.ch (Alexandre Julliard)
* [misc/cursor.c]
A few changes for desktop window support.
* [misc/main.c]
Added -depth option.
* [misc/rect.c]
Yet another bug fix in SubtractRect().
* [objects/bitmap.c]
Changes to use only one depth (specified with -depth)
for color bitmaps.
* [objects/brush.c]
Added support for dithered solid brushes.
* [objects/color.c]
Use the same 20 system colors as in Windows.
System palette initialisation now done in COLOR_InitPalette().
Added support for a color mapping table to map logical color
indexes to X colormap entries.
Implemented GetNearestColor() and RealizeDefaultPalette().
* [objects/dib.c]
Added support for color mapping table.
* [objects/dither.c] (New file)
Implemented solid color dithering.
* [objects/palette.c]
Implemented GetSystemPaletteEntries() and SelectPalette().
* [windows/class.c]
Make a copy of the menu name in RegisterClass().
* [windows/dc.c]
Fixed device caps when using a desktop window.
Added support for the color mapping table in DCs.
* [windows/event.c]
Added ConfigureNotify handler on desktop window.
* [windows/message.c]
Removed call to XTranslateCoordinates() on every mouse motion
New function MSG_Synchronize() to synchronize with the X server.
* [windows/syscolor.c]
Rewritten SYSCOLOR_Init() to read the system colors from WIN.INI.
* [windows/winpos.c]
Added synchronization on window mapping. Solves the double redraw
problem when starting Solitaire.
Mar 27, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
* [control/menu.c] * [windows/defwnd.c]
Make keyboard navigation working with menubar,
but temporarely inserted a bug in menubar mouse handling ... :-((
(it will be fix next week !)
* [windows/defwnd.c]
Connect VK_MENU to menubar navigation.
* [loader/library.c]
GetModuleHandle() return 'fictive 0xF000+ handles' for built-in DLLs.
Sun Mar 20 22:32:13 1994 Erik Bos (erik@trashcan.hacktic.nl)
* [misc/main.c]
Added Copy(). Added a check for `-h' to show usage.
* [misc/dos_fs.c]
Fixed bug in FindFile(), to load directories as dlls.
* [misc/dos_fs.c]
Fixed ToUnix() and ToDos() again, as my previous patch
didn't make it.
* [misc/dos_fs.c] [miscemu/int21.c]
Bug fixes, should be able to handle all winfile and progman int21
requests now except for a few small things.
Tue Mar 29 06:25:54 1994 crw@harris.mlb.semi.harris.com (Carl Williams)
* [memory/heap.c]
Implemented GetFreeSystemResources().
Mon Mar 21 17:32:25 1994 Bob Amstadt (bob@pooh)
* controls/menu.c (GetSubMenu): Function did not return correct value
* [windows/mdi.c]
Beginnings of menu handling.
Thu Mar 10 11:32:06 1994 Stefan (SAM) Muenzel (muenzel@tat.physik.uni-tuebingen.de)
* [objects/font.c]
if font.width equals zero use asterix instead.
Mon Mar 21 17:23:37 MET 1994 julliard@di.epfl.ch (Alexandre Julliard)
* [objects/bitmap.c]
Rewritten bitmap code to use exclusively X pixmaps; *much* faster.
* [objects/brush.c]
Some changes with pattern brushes because of the new bitmap code.
* [objects/color.c]
Added function COLOR_ToPhysical for better color mapping.
* [objects/dib.c]
Heavily optimized SetDIBits().
* [windows/dc.c]
Opimized SetDCState() and DC_SetupGC*() functions.
Added stub for CreateIC().
Mar 20, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
* [misc/message.c]
Call SetFocus() after closing box to give back focus to previous owner.
* [misc/files.c]
Small bug fix in GetTempFilename() : replace a '\' to '\\'.
* [control/scroll.c]
Calls to BitBlt() replace by StretchBlt().
* [control/menu.c]
Call SetFocus() to previous owner after closing Popups.
Fill stub DeleteMenu().
* [control/listbox.c]
* [control/combo.c]
Use SetFocus() in WM_LBUTTONDOWN.
Close ComboBox List upon WM_KILLFOCUS.
Early development of WM_MEASUREITEM mecanism.
* [windows/defwnd.c]
Early development of WM_MEASUREITEM mecanism.
Tue Mar 22 10:44:57 1994 Miguel de Icaza (miguel@xochitl)
* [misc/atom.c]
Fixed sintaxis problem when building the library.
Tue Mar 15 13:11:56 1994 Bob Amstadt (bob@pooh)
* [include/windows.h]
Added message types and structures for MDI
* [include/mdi.h]
Created internal structures for handling MDI
* [windows/mdi.c]
Began creating MDI support
Thu Mar 10 16:51:46 1994 Bob Amstadt (bob@pooh)
* [loader/wine.c] [include/wine.h]
Added new field to "struct w_files" to hold the "name table"
resource for Windows 3.0 programs
* [loader/resource.c]
Added code to handle programs with a "name table" resource.
LoadResourceByName() modified to check for the existence of
this resource.
Mon Mar 14 22:31:42 MET 1994 julliard@di.epfl.ch (Alexandre Julliard)
* [objects/color.c]
Added installing the private colormap on the desktop window.
* [windows/event.c]
Cleaned up focus event handling (see focus.c).
Use GetFocus() to direct key events to the correct window.
* [windows/focus.c]
Rewritten SetFocus() to:
- only set X focus on top-level windows
- send WM_SETFOCUS and WM_KILLFOCUS messages (was done in event.c)
- prevent setting focus to disabled windows
- install private colormap so -privatemap option works again
* [windows/message.c] [windows/timer.c]
Changed timer management to no longer use PostMessage(), but
to generate timer messages on the fly. Also fixed a related bug
in GetMessage() which could cause busy-waiting.
* [windows/win.c]
Only select focus events on top-level windows.
* [windows/winpos.c]
Added some sanity checks for desktop window.
Fri Mar 4 20:42:01 1994 Erik Bos (erik@trashcan.hacktic.nl)
* [misc/dos_fs.c]
bug fixes in ToUnix(), WinIniFileName(), GetUnixFileName().
Support for tilde symbol added for rootdirectories in [drives]
section of wine's configfile.
* [misc/file.c]
hread(), hwrite() added.
* [misc/main.c]
hmemcpy() added.
* [if1632/stress.spec] [include/stress.h] [misc/stress.c]
Added STRESS.DLL, an useless dll used to stress a windows system.
* [*/*]
Added missing #includes, fixed prototypes for prototype checking.
* [include/prototypes.h]
Added prototypes for loader/*c, if1632/*c.
Tue Mar 8 09:54:34 1994 Bob Amstadt (bob@pooh)
* [Configure]
Added reminder to set WINEPATH, if it is not set.
* [Imakefile]
Removed #elif's
* [controls/button.c]
Added BN_CLICKED notification for owner-draw buttons.
* [if1632/kernel.spec] [memory/heap.c]
Changed Local* functions to WIN16_Local* to prevent unconcious use
of these functions.
* [if1632/relay.c]
Push old Stack16Frame on stack before setting.
* [include/atom.h] [misc/atom.c] [include/heap.h] [memory/local.c]
Added multiple local heap handling in Atom* functions.
* [include/regfunc.h] [miscemu/int21.c]
Rewrote DOS3Call() use context frame that is already on the stack.
* [misc/profile.c]
Fixed to allow leading ";" to mark comments.
* [misc/spy.c]
Fixed bugs and added support for "include" and "exclude" filters.
* [misc/user.c]
Rearranged calls in InitApp().
* [misc/font.c]
Fixed font handling to create system fonts, if they are used.
* [windows/dc.c]
If text drawn on window with no font specified, then default the
font to the system font.
Mon Mar 7 20:32:09 MET 1994 julliard@di.epfl.ch (Alexandre Julliard)
* [controls/desktop.c]
Added handling of WM_NCCREATE and WM_ERASEBKGND functions.
Implemented SetDeskPattern().
* [misc/main.c]
Added -desktop option to get a large desktop window with
everything inside it.
Added -name option.
* [misc/rect.c]
Bug fix in SubtractRect().
* [objects/*.c]
Replaced the DefaultRootWindow() macro by the rootWindow variable.
* [windows/event.c] [windows/message.c]
[windows/nonclient.c] [windows/win.c]
A few changes to accomodate the new desktop window.
Tue Mar 8 11:13:03 1994 Miguel de Icaza (miguel@xochitl.nuclecu.unam.mx)
* [toolkit/arch.c] --New file--
Routines for converting little endian data structures to
big-endian data structures, currently only BITMAP structures are
converted.
* [misc/atom.c]
When used as part of the WineLib, the code is much simpler.
Doesn't depend on alignement.
* [loader/wine.c]
Ifdefed Emulator dependent code if compiling WineLib.
* [loader/resource.c]
Moved misc/resource.c to loader/resource.c.
* [loader/dump.c,ldt.c,ldtlib.c,library,c,selector.c,signal.c]
Ifdefed whole code if compiling WINELIB.
* [include/winsock.h]
Added compilation define to allow compilation on SunOS.
* [include/wine.h]
Removed load_typeinfo and load_nameinfo prototypes, they belong
to neexe.h
* [include/neexe.h]
Added load_typeinfo and load_nameinfo prototypes.
* [include/arch.h]
Fixed some bugs in the conversion routines.
Added macros for Bitmap loading.
Tue Mar 8 12:52:05 1994 crw@maniac.mlb.semi.harris.com (Carl Williams)
* [if1632/kernel.spec] [memory/global.c]
Implemented GetFreeSpace()
* [if1632/user.spec] [loader/resource.c]
Implemented CreateIcon()
1994-04-05 23:42:43 +02:00
|
|
|
}
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
if (destObj->xrgn) XDestroyRegion( destObj->xrgn );
|
|
|
|
destObj->xrgn = destrgn;
|
1995-01-24 17:21:01 +01:00
|
|
|
if (XEmptyRegion(destObj->xrgn))
|
1993-09-04 12:09:32 +02:00
|
|
|
{
|
1995-01-24 17:21:01 +01:00
|
|
|
XDestroyRegion( destObj->xrgn );
|
|
|
|
destObj->xrgn = 0;
|
|
|
|
return NULLREGION;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|
Release 960309
Fri Mar 8 19:07:18 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [configure.in]
Quote '[' and ']' in the test program for the strength-reduce
bug. This should work much better...
* [files/file.c]
Augmented DOS_FILE structure. Most internal functions now return a
DOS_FILE* instead of a Unix handle.
Added a local file array to replace the PDB list upon startup, to
allow using file I/O functions before the first task is created.
Added FILE_SetDateTime() and FILE_Sync() functions.
* [loader/module.c]
Use the DOS file I/O functions in MODULE_LoadExeHeader().
* [objects/bitblt.c]
Use visible region instead of GC clip region to clip source
area. This fixes the card drawing bug in freecell.
* [objects/region.c]
Fixed CombineRgn() to allow src and dest regions to be the same.
Fri Mar 8 16:32:23 1996 Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
* [controls/EDIT.TODO]
Updated so it reflects the current status.
* [controls/edit.c]
Implemented internal EDIT_WordBreakProc().
Implemented ES_READONLY.
Implemented WM_LBUTTONDBLCLK to select whole words.
Fixed a lot of types in the function definitions.
Wed Mar 6 19:55:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
* [debugger/info.c]
Added "walk window" command to walk window list.
* [windows/mdi.c]
Added proper(?) WM_MDISETMENU message handling.
Wed Mar 6 09:27:12 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/callback.c][if1632/relay32.c]
RELAY32_CallWindowProcConvStruct: new function.
* [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
struct32.c: new file. Moved all structure conversions into that file
PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16:
renamed to STRUCT32_POINT32to16, ...
WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
POINT32, ...
New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
CREATESTRUCT.
* [include/windows.h][misc/exec.c]
WINHELP, MULTIKEYHELP, HELPWININFO: new structures
WinHelp: Reimplemented. Thanks to Peter Balch
(100710.2566@compuserve.com) for his valuable research.
* [win32/winprocs.c]
WIN32_CallWindowProcTo16: new function, call in
USER32_DefWindowProcA,...
Mon Mar 4 23:22:40 1996 Jim Peterson <jspeter@birch.ee.vt.edu>
* [include/wintypes.h]
Added "#define __export".
* [objects/bitblt.c]
Put in a few hacks to make bitblt-ing work when upside-down and/or
mirrored. BITBLT_StretchImage should really be checked over
thoroughly.
* [programs/progman/main.c]
Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
* [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
Eliminated shift/reduce conflict in style definition.
Added crude error message support: "stdin:%d: parse error before '%s'".
Implemented string table support to the best of my ability (it works
with LoadString() calls).
* [windows/nonclient.c]
Fixed bug in NC_DoSizeMove() that made system menu pop up when title
bar of non-iconized window was clicked (checked for iconization).
Mon Mar 04 20:55:19 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [if1632/lzexpand.spec] [if1632/relay.c]
[include/lzexpand.h][misc/lzexpand.c]
LZEXPAND.DLL added.
Sun Mar 03 18:10:22 1996 Albrecht Kleine <kleine@ak.sax.de>
* [windows/win.c]
Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
this prevents too early termination of EnumChildWindows().
1996-03-09 17:12:43 +01:00
|
|
|
return COMPLEXREGION;
|
1993-09-04 12:09:32 +02:00
|
|
|
}
|