Tue May 21 14:06:07 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/button.c]
Made ButtonWndProc a 32-bit window procedure.
* [controls/desktop.c]
Made DesktopWndProc a 32-bit window procedure.
Added handling of WM_SETCURSOR.
* [controls/menu.c]
Allocate menu items and strings on the 32-bit system heap.
Implemented Win32 versions for ChangeMenu, InsertMenu, ModifyMenu,
AppendMenu and LoadMenuIndirect.
* [controls/widgets.c]
Added possibility to have 32-bit built-in classes.
* [files/drive.c]
Implemented GetLogicalDrive() and GetLogicalDriveStrings().
* [misc/spy.c] [include/spy.h]
Added support for spying Win32 messages.
* [loader/builtin.c]
Fixed bug in -dll option parsing.
* [memory/local.c]
Added back the change by Huw D. M. Davies to free the block in
LocalRealloc() before allocating the new one.
* [objects/bitmap.c] [objects/cursoricon.c] [objects/oembitmap.c]
Fixed bug in bitmap size that caused memory corruption for 24bpp.
* [windows/defwnd.c]
Implemented Win32 version of DefWindowProc().
* [windows/dialog.c]
Implemented Win32 version of SendDlgItemMessage,
Get/SetDlgItemText and Get/SetDlgItemInt.
* [windows/mdi.c]
Implemented Win32 version of DefFrameProc() and DefMDIChildProc().
Don't make a copy of the OBM bitmaps for every MDI window.
* [windows/message.c]
Implemented Win32 version of SendMessage().
* [windows/winproc.c] [windows/class.c] [windows/win.c]
New scheme for 32-bit window procedures to replace aliases. All
32-bit window procedure get a 16-bit address pointing to a
WINDOWPROC structure.
Implemented Ansi<->Unicode translation for CallWindowProc().
Added translation of WM_DRAWITEM between Win16 and Win32.
* [windows/win.c] [include/callback.h]
Added ugly hack to build CREATESTRUCT on the stack when sending
WM_NCCREATE.
Implemented Win32 version of Get/SetWindowWord/Long and
Get/SetWindowText.
Fri May 17 10:20:16 1996 Albrecht Kleine <kleine@ak.sax.de>
* [controls/button.c]
Avoid gray text on gray background in disabled push buttons
using a b/w raster and some raster operations (PatBlt,BitBlt).
* [objects/text.c]
DrawText(): don't draw an underbar anymore if DT_CALCRECT is set.
Mon May 6 12:56:26 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [DEVELOPERS-HINTS]
Added paragraph on naming conventions for Win16/Win32/Winelib.
* [controls/menu.c]
Create a default system menu that is the same for all windows
instead of making a copy every time.
* [include/wintypes.h]
Added WINELIB_NAME and DECL_WINELIB_TYPE macros.
Added xx16 and xx32 definitions for most types. General clean-up.
* [memory/global.c] [memory/local.c] [*/*]
Renamed Global and Local heap functions to xxx16. Added all xxx32
versions of the same functions.
* [memory/selector.c]
Mask out lower bits of selector in FreeSelector().
* [misc/lstr.c]
Fixed wvsprintf().
* [windows/class.c]
Changed the class structure to make Win32 support easier.
* [windows/defwnd.c]
Added handling of WM_INITMENUPOPUP for system menu to gray out
invalid options.
* [windows/winpos.c]
Bug fix: the WINDOSPOS structure pointer in WM_NCCALCSIZE must be
a SEGPTR.
Sun May 5 03:51:26 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk>
* [memory/local.c]
Implementation of moveable and (rudimentary) support for
discardable local memory, plus several bug fixes.
Sat May 4 18:33:35 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [include/windows.h] [windows/win.c] [if1632/user.spec]
FindWindowEx() implemented (someone reported it was missing
for FrameMaker 4.1).
* [if1632/kernel32.spec] [if1632/user32.spec] [win32/memory.c]
[win32/resource.c]
Misc small stubs/small functions which bring win95 binaries
further down the road. (IsBadCodePtr, LocalReAlloc,GetCursorPos)
Small fix in WIN32_LoadAcceleratorsA.
Fri May 3 19:43:12 1996 Frans van Dorsselaer <dorssel@rulhm1.LeidenUniv.nl>
* [controls/edit.c] [controls/EDIT.TODO]
Changed / fixed some types and typecasts.
Fixed the scrollbar reset after WM_SETHANDLE / WM_SETTEXT.
Added heap initialization in WM_CREATE.
Fri May 3 19:30:02 1996 Greg Kreider <kreider@natlab.research.philips.com>
* [controls/combo.c] [controls/listbox.c]
Pass WM_[HV]SCROLL to listbox, but not combo.
Don't try to redraw non-existant scroll bars (changes dwStyle flags).
Combo box gets border.
Combo box includes button (otherwise button won't trigger dropdown).
Proper border around RectButton.
Check size consistancy of combo, listbox, and button after resizing
or before painting. These routines still aren't completely correct.
Localize size checks in separate routines.
Listboxes are white.
Thu May 2 19:21:23 1996 Albrecht Kleine <kleine@ak.sax.de>
* [controls/combo.c][include/commdlg.h][include/commdlg.c]
[resources/sysres_De.rc][resources/sysres_En.rc]
Introduced ChooseFont dialog, but needed some patches in
handling of comboboxes with edit controls.
Tue Apr 30 00:33:27 1996 Ulrich Schmid <uschmid@mail.hh.provi.de>
* [programs/winhelp/*]
Added a help viewer and a simple `.hlp' to `.sgml' converter.
Mon Apr 29 14:17:57 1996 Tristan Tarrant <tst@sthinc.demon.co.uk>
* [resources/sysres_*.rc] [misc/shell.c]
Modified size of "About" dialog boxes.
Sat Apr 27 18:10:11 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/Makefile.in][loader/builtin.c]
crtdll.spec, ntdll.spec, wsock32.spec: new files.
* [loader/pe_image.c]
Fix error message if import by ordinal failed.
Sun Oct 1 15:48:34 1995 Alexandre Julliard <julliard@sunsite.unc>
* [controls/menu.c]
Fixed GetMenuString() for non-string items.
* [debugger/*.c]
First attempt to check validity of pointers before memory
accesses. For now only segmented pointers are checked.
* [debugger/dbg.y] [memory/ldt.c]
Added possibility to dump only one segment with 'info segment'.
* [include/bitmaps/ocr_*]
Added all OEM cursors as XPM bitmaps.
* [include/cursoricon.h] [objects/cursoricon.c]
Rewrote all cursor and icon management to use the same memory
layout as Windows, and to factor common code between icons and
cursors. Implemented icon directory lookup to find the best
matching icon (i.e. the color one).
Implemented CopyCursor() and DumpIcon().
* [loader/module.c]
For disabled built-in modules, we now try to load the Windows DLL
first, and if this fails we fall back to using the built-in module
anyway.
* [memory/global.c]
Fixed GlobalHandle() to return the correct selector in the high
word even if we are passed a handle in the first place.
* [miscemu/instr.c]
Take into account the size of the operand and of the stack segment
when incrementing the stack pointer.
Avoid referencing FS_reg and GS_reg on *BSD.
* [objects/dib.c]
All DIB functions now accept a BITMAPCOREHEADER format bitmap.
Monochrome DIBs are created as monochrome bitmap iff they are
black and white.
* [objects/oembitmap.c]
Added support for OEM cursors, changed OBM_LoadIcon to use the new
icon memory layout.
* [rc/sysres_Fr.rc]
Added French [Fr] language support.
* [win32/environment.c]
Fixed GetCommandLineA() to use current PDB.
* [windows/event.c] [windows/winpos.c]
Simulate a mouse motion event upon SetWindowPos() to force the
cursor to be set correctly.
Sat Sep 30 17:49:32 Cameron Heide (heide@ee.ualberta.ca)
* [win32/*]
New Win32 kernel functions: GetACP, GetCPInfo,
GetEnvironmentVariableA, GetFileType, GetLastError, GetOEMCP,
GetStartupInfoA, GetTimeZoneInformation, SetEnvironmentVariable,
SetFilePointer, SetLastError, VirtualAlloc, VirtualFree,
WriteFile. Completed implementations of GetCommandLineA.
* [include/kernel32.h]
New file.
* [loader/main.c]
Call initialization function for Win32 data (doesn't currently do
anything).
* [misc/main.c]
Implemented GetEnvironmentVariableA, SetEnvironmentVariableA.
Sat Sep 30 00:26:56 1995 Niels de Carpentier <niels@cindy.et.tudelft.nl>
* [windows/winpos.c][miscemu/emulate.c][loader/module.c]
[misc/commdlg.c]
Misc. bug fixes
Fri Sep 29 16:16:13 1995 Jim Peterson <jspeter@birch.ee.vt.edu>
* [*/*]
For Winelib, explicit casts have been placed where warnings were
usually generated.
printf formats which give the format for printing a handle as
"%04x" or something similar have been changed to use the NPFMT
macro defined in include/wintypes.h. Some times, explicit casts
were also necessary.
Parameter, field, and variable declarations have been made more
exact, such as converting 'WORD wParam' to 'WPARAM wParam' or
'WORD hFont' to 'HFONT hFont'.
Any call of the form GetWindowWord(hwnd,GWW_HINSTANCE) has been
replaced with a call to WIN_GetWindowInstance(hwnd).
* [controls/combo.c]
Added WINELIB32 support in CLBoxGetCombo().
* [include/dialog.h]
Commented out the '#ifndef WINELIB' around the '#pragma pack(1)'.
winelib needs the packing as well (e.g. when accessing resources
like sysres_DIALOG_SHELL_ABOUT_MSGBOX).
* [include/windows.h]
Got rid of the F[a-k] macros, which were cluttering up the global
namespace.
* [include/windows.h] [windows/defwnd.c]
Added Win32 messages WM_CTLCOLOR*.
* [include/wintypes.h]
Put in preprocessor '#define WINELIB32' if appropriate and changed
the types of some typedefs (WPARAM, HANDLE) based on this.
* [loader/module.c] [toolkit/miscstubs.c]
Added #ifdef'd portion in LoadModule to handle loading a WINElib
module (already loaded, just init values). '#ifdef'ed out the
definition for GetWndProcEntry16 and added a new version to
toolkit/miscstubs.c.
* [misc/shell.c]
Adjusted the lengths of AppName and AppMisc from 512,512 to 128,906.
Same amount of total storage, but much more reasonable. Also, changed
calls to strcpy() in ShellAbout() to calls to strncpy() instead.
This was a difficult bug to track down, but the AppMisc field was
being initialized with the contributers text, which was much larger
than 512 characters.
* [toolkit/atom.c]
New file for atom-handling functions. Copied from memory/atom.c and
then heavily modified. Right now, it's just a linked list of atoms.
Consider it as a hash table with just one entry. It's easily changed
later.
* [toolkit/heap.c]
Commented out the heap functions with a "#ifdef WINELIB16" and put in
a Win32 version (which is basically a modified copy).
* [toolkit/sup.c] [toolkit/miscstubs.c]
Moved the stuff I put in toolkit/sup.c into toolkit/miscstubs.c and
added quite a few more stubs.
* [toolkit/winmain.c]
Rearranged startup code in _WinMain. I think this will work.
* [toolkit/Makefile.in]
Added targets for 'hello' and 'hello2' in case anyone cares to try
out the sample programs.
Wed Sep 27 23:13:43 1995 Anand Kumria <akumria@ozemail.com.au>
* [miscemu/int2f.c] [miscemu/vxd.c] [if1632/winprocs.spec]
First attempt at support for some VxDs. Comm, Shell and Pagefile.
Tue Sep 26 21:34:45 1995 Hans de Graaff <graaff@twi72.twi.tudelft.nl>
* [misc/dos_fs.c]
DOS_SimplifyPath: Also remove "/./" from path. (Happens when
starting applications like 'wine ./excel.exe')
Sat Sep 23 23:32:40 1995 Morten Welinder <terra@diku.dk>
* [configure.in]
Avoid relative path for wine.ini.
* [rc/sysres_Da.rc]
Support for Danish [Da] language.
* [misc/main.c] [miscemu/cpu.c]
Return the processor we're running on correctly.
* [miscemu/int2f.c]
Minor stuff in int 0x2f, function 0x16.
Sat Sep 23 1995 17:58:04 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [misc/shell.c] [misc/main.c]
Implement saving and loading of the registry database (needed for
OLE). Very experimental. Fixed ShellExecute().
* [miscemu/int21.c]
EEXIST is not a critical error condition for mkdir().
Fri Sep 22 01:33:34 1995 Alex Korobka <alex@phm6.pharm.sunysb.edu>
* [include/shell.h] [misc/shell.c]
Implemented 4 drag/drop functions with documented functionality.
* [multimedia/time.c]
"Fixed" MMSysTimeCallback kludge so Excel5 loads up without crashing.
* [*/*]
Added new files, more message definitions, structures, debug info,
etc. Rewrote message logging functions to produce output similar
to WinSight. Check out -debugmsg +message option.
* [misc/file.c]
Fixed GetDriveType return value.
* [windows/message.c]
Hooks are invoked in normal order.
* [miscemu/*]
Added some functions and interrupts.
* [misc/shell.c]
Implemented Drag... functions.
Thu Sep 21 23:50:12 1995 Jukka Iivonen <iivonen@cc.helsinki.fi>
* [rc/sysres_Fi.rc] [rc/sysres.rc]
First attempt at Finnish [Fi] language support.
Sun Mar 19 16:30:20 1995 Alexandre Julliard (julliard@sunsite.unc.edu)
* [*/*]
Implemented a new memory mapping scheme. There's no longer a
one-to-one mapping between 16-bit and 32-bit pointers. Please see
file DEVELOPERS-HINTS for technical details.
* [controls/scroll.c]
Fixed bug when dragging mouse in horizontal scrollbars.
* [tools/build.c] [if1632/*.spec]
Removed support for C callback functions and for re-ordering
of the 32-bit arguments, as these were never used. This should
allow a more efficient callback scheme to be implemented.
* [if1632/olecli.spec]
Reduced the number of entries to make the 16-bit code fit in 64k.
This limitation will soon be removed.
* [loader/ldt.c]
Rewrote LDT manipulation functions and implemented LDT_GetEntry().
* [memory/global.c]
Rewrote Global*() routines to use the new selector allocation
mechanism.
* [memory/local.c]
Rewrote local heap handling to use a Windows-compatible layout
(not really finished yet).
Implemented TOOLHELP heap-walking routines.
* [memory/selector.c]
Implemented LDT manipulation API functions.
Tue Mar 14 19:50:28 EST 1995 William Magro (wmagro@tc.cornell.edu)
* [windows/defdlg.c]
Fixed problem where dialogs closed using the System menu
('Close' item or double click on close box) would
hang Wine.
Sun Mar 12 14:28:13 1995 Michael Patra <micky@marie.physik.TU-Berlin.DE>
* [controls/listbox.c]
Removed most of the statements for sending a notification message
ListBoxDirectory(), DlgDirSelect(), DlgDirList(): Improved the
code; Borland's standard file open dialog will work now.
* [misc/main.c], [misc/file.c], [miscemu/int21.c]
Added support for new command line option "-allowreadonly". If set
an attempt to open a read only file in write mode will be converted
to opening it read only (many programs try to open all files in
read/write mode even if they only intend to read it - this might
cause a few under problems under an unix-like environment where most
files are read only for a "normal" user)
* [loader/selector.c]
GetMemoryReference(): Added support for __AHIncr and __AHShift
* [misc/dos_fs.c]
DOS_SimplifyPath(): This routine simplifies path names ( e.g., it
will change "/usr///local/bin/../lib//a" to "/usr/local/lib/a" )
match(): rewritten
* [objects/text.c]
TEXT_NextLine(): Removed a bug in the handling of LF's
* [miscemu/int21.c]
GetFileDateTime(): Fixed. SetFileDateTime() is still broken.
Sat Mar 11 19:46:19 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/menu.c]
ChangeMenu: defaults to MF_INSERT
InsertMenu: allow insertion even if position is one after last item
* [if1632/Imakefile] [if1632/compobj.spec] [if1632/relay.c]
[if1632/storage.spec] [include/dlls.h]
Added stubs for STORAGE.DLL and COMPOBJ.DLL
* [if1632/user.spec] [windows/message.c]
InSendMessage: new function
* [include/neexe.h][include/ne_image.c]
NE_FixupSegment: fixed handling of additive records
* [loader/selector.c]
GetEntryDLLName: return NULL instead of pointer to DLL.0 if not found
* [loader/signal.c]
win_fault: Enter debugger on SIGFPE, too
Wed Mar 1 21:47:42 1995 Cameron Heide (heide@ee.ualberta.ca)
* [miscemu/int*.c]
Various minor modifications to the clock tick counter,
FindFirst/FindNext funcs, and DPB handling.
Thu Feb 16 18:57:31 1995 Alexandre Julliard (julliard@sunsite.unc.edu)
* [if1632/call.S]
Only save the lower 16-bits of SP and BP.
* [if1632/callback.c]
When calling to 16-bit code, restore DS from its previous value on
entry to the 32-bit code, instead of from the code segment owner.
* [if1632/relay.c] [include/stackframe.h]
Use a structure to represent the 16-bit stack frame layout
instead of hard-coded offsets.
* [rc/Imakefile]
Use y.tab.c for bison output file for compatibility with yacc.
* [tools/build.c]
Small optimization for calls to 32-bit code.
Sun Feb 12 03:19:47 1995 Michael Veksler (s1678223@t2.technion.ac.il)
* [tools/build.c]
Fixed bug (inflicted by previous change) - SEGV on ZMAGIC file format.
Sun Feb 11 20:00:00 1995 Göran Thyni (goran@norrsken.bildbasen.se)
* [debugger/dbg.y]
Remove unnecessary sym-table loading when stopped in 16-bit mode.
* [include/segmem.h] [loader/selector.c]
Added dynamic alloction of selectors.
Fixed some problems with large programs SIGSEGV-ing while
running out of selectors.
* [include/segmem.h] [loader/selector.c] [if1632/callback.c]
[memory/global.c] [memory/heap.c] [memory/linear.c]
Use __AHSHIFT and __AHINCR instead of 3 and 8.
Mon Feb 6 18:07:38 1995 Cameron Heide (heide@ee.ualberta.ca)
* [misc/dos_fs.c]
Better relative path handling when converting filenames between
dos and unix, allowing '.' to be used in the Windows path.
Startup working dir is now based on current working dir.
Sat Feb 4 21:21:13 1995 Michael Veksler (s1678223@t2.technion.ac.il)
* [if1632/relay.c] [include/dlls.h] [tools/build.c]
Squeezed data structure that references internal dll's (mostly
"struct dll_table_entry_s"). Caused 20% reduction in executable
code size.
Fri Feb 3 18:53:15 1995 Martin v. Loewis (loewis@marie)
* [Imakefile]
make wine.sym only when making emulator
* [misc/file.c]
OpenFile(): report as not implemented for WINELIB
* [misc/winsock.c]
Fix CONVERT_HOSTENT and friends for use with WINELIB
* [rc/Imakefile][rc/rc.y][rc/parser.c]
Rename rc.y to parser.y
Use flex and bison on Sun
* [toolkit/sup.c]
CallWindowProc: fix parameter type
* [windows/event.c]
Commented #ifdef sparc
Wed Dec 7 14:52:25 1994 Alexandre Julliard (julliard@lamisun.epfl.ch)
* [controls/listbox.c]
Fixed problems due to new scroll-bar code.
* [loader/signal.c] [miscemu/ioports.c]
Handle I/O opcodes that use an absolute address.
* [objects/text.c]
Implemented TabbedTextOut().
Sat Dec 3 18:53:08 1994 Kenneth MacDonald <K.MacDonald@ed.ac.uk>
* [objects/metafile.c]
Implemented GetMetafile().
Fixed bug in PlayMetaFile() when reading disc based metafile records.
Added META_POLYPOLYGON, META_DELETEOBJECT and META_EOF to
PlayMetaFileRecord().
Wed Nov 30 06:32:25 1994 Martin von Loewis (martin@cs.csufresno.edu)
* [Imakefile]
wine.sym: Remove gcc2_compiled and friends
* [controls/listbox.c][if1632/relay.c][if1632/relay.c]
[loader/resource.c][memory/heap.c][objects/dib.c][windows/dialog.c]
Replace #ifdef DEBUG_XXX with if(debugging_xxx){
* [if1632/call.S]
CallToLibMain: New function
* [if1632/relay.c][include/options.h][misc/main.c]
[miscemu/int1a.c][miscemu/int21.c][miscemu/kernel.c]
removed Options.relay_debug
* [include/heap.h]
HEAP_OWNER: Use ds instead of cs:ip
* [loader/ne_image.c]
LoadNEImage: Remember current exe, handle nodata dlls
InitNEDLL: handle nodata dlls, call CallToLibMain
* [loader/selector.c]
CreateSelectors: Initialize auto_data_sel with 0
* [memory/heap.c]
HEAP_CheckHeap: Check prev
HEAP_CheckLocalHeaps: new function
* [misc/profile]
Remember and dump only changed profiles
* [tools/makedebug]
Introduce debugging_xxx flags
Sun Nov 27 23:13:22 MET 1994 <erik@xs4all.nl>
* [clipboard.h color.h dc.h dos_fs.h event.h font.h graphics.h
if1632.h kernel.h library.h miscemu.h ne_image.h nonclient.h
pe_image.h selectors.h wintypes.h]
Added.
* [*/*]
- Commented all 'static char copyright statements', see misc/main.c
- moved prototypes to headers files, fixed wrong prototypes.
- *please* add a header file for each .c if you need to export
things.
* [misc/main.c]
Added one static string which list the names of the contributors.
Fri Nov 25 16:24:27 MET 1994 Dag Asheim (dash@ifi.uio.no)
* [Configure]
Made the support for multiple languages more automatic. Added
a [fonts] section to the wine.conf file. Made the defaults
better. Generally cleaned it up.
* [rc/sysres_No.rc] [rc/sysres_De.rc] [rc/sysres.c]
Norwegian resources and small fixes to the german resources.
Wed Nov 23 20:28:59 1994 Martin von Loewis (martin@cs.csufresno.edu)
* [debugger/break.c]
bark(), toggle_next(), should_continue(): New functions
insert_break(): Fixed, adds write access to page before writing
wine_bp.next_addr: new structure field
* [debugger/dbg.y]
Changed symbol's value to be it's value instead of the value
pointed to by the symbol.
Changed SIGTRAP handling to allow continuation after break point
* [misc/shell.c]
ShellAbout(): Load resource from memory
Sun Oct 16 13:29:07 1994 Alexandre Julliard (julliard@lamisun.epfl.ch)
* [controls/button.c]
Implemented WM_GETDLGCODE, WM_SETFONT, BM_SETSTYLE, BM_SETCHECK,
BM_SETSTATE.
Implemented default button painting.
Optimised redrawing.
Fixed owner-draw buttons.
* [controls/static.c]
Implemented WM_SETFONT.
A few optimisations in painting code.
Bug fix for SS_SIMPLE controls.
* [if1632/callback.c]
Preliminary GetCodeHandle().
* [if1632/gdi.spec]
Changed 'pascal' to 'pascal16' everywhere it's needed.
* [include/windows.h]
Fixed a few data structures.
* [memory/heap.c]
Bug fix in HEAP_ReAlloc().
* [misc/cursor.c]
Fixed SetCursor().
* [objects/bitblt.c]
Fixed PatBlt() when using BLACKNESS or WHITENESS codes.
* [objects/font.c]
Better font mapping code.
Implemented GetTextFace().
* [objects/region.c]
Bug fix in REGION_MakePixmap().
Faster region copying.
* [objects/text.c]
Implemented ExtTextOut().
Implemented DT_NOCLIP style for DrawText().
* [windows/dc.c]
Free the bitmap when deleting a memory DC.
* [windows/dce.c]
Added support for windows that have no associated X window.
Implemented DCX_CLIPSIBLINGS and DCX_PARENTCLIP in GetDCEx().
* [windows/defdlg.c]
Implemented default push button handling and DM_SETDEFID.
Implemented WM_NEXTDLGCTL.
* [windows/dialog.c]
Implemented default push button handling.
Beginning of a keyboard interface in dialogs
(does not really work yet).
Fixed dialogs that use a special font.
* [windows/event.c] [windows/focus.c]
Added support for non-X windows.
* [windows/graphics.c]
Rewritten FloodFill() and implemented ExtFloodFill().
* [windows/message.c]
Cleaner hardware messages and X events handling.
* [windows/defwnd.c] [windows/painting.c]
Implemented WM_SETREDRAW.
* [windows/win.c]
Only create an X window for top-level windows, or for the desktop.
Child windows now use their parent's drawable.
* [windows/winpos.c]
Beginning of support for non-X windows (still somewhat broken).
Implemented *DeferWindowPos().
* [*/Imakefile]
Cleaned up some Imakefiles.
Moved dc.c from windows/ to objects/.
Moved cursor.c from misc/ to windows/.
Sun Oct 16 12:21:52 1994 Michael Patra <micky@marie.physik.tu-berlin.d400.de>
* [include/debug.h]
[include/stddebug.h]
[*/*.c]
Rewritten all the calls to printf for displaying debug-information
(messages like "LoadImage: loading SOL (SOL.EXE)" etc.)
Added option "-debugmsg" to Wine. Example: "-debugmsg +all" will turn
all these messages on, "-debugmsg -dll" will turn all messages
concerning DLLs off.
* [controls/combo.c]
Added some handling for combo controls with ownerdraw-styles
(just creating and passing the necessary messages to the
corresponding listbox control; the edit-control needs to be
replaced with something else).
* [controls/edit.c]
[windows/dialog.c]
Added support for use of global heap memory in dialogs with
edit controls.
* [controls/listbox.c]
Added support for item data.
ListBoxInsertString(): Fixed bug for elements which are not inserted
after the currently last element.
* [misc/dos_fs.c]
[miscemu/int21.c]
DOS_ValidDirectory(): Checks whether a given string is in fact the
valid name of a directory.
Sat Oct 15 17:35:00 PDT 1994 <martin@cs.csufresno.edu>
* [Imakefile]
generate wine.sym after creating wine
* [debugger/dbg.y]
load "wine.sym" when entering debugger
* [debugger/info.c]
symbolic backtrace for 32-bit stack. Breaks 16-bit bt.
Sun Sep 25 12:00:00 PDT 1994 <martin@osiris.cs.csufresno.edu>
* [rc/rc.y] [rc/rc.h] [rc/rc.l] [rc/winerc.c]
Files created
Sun Sep 18 11:04:45 MET DST 1994 Dag Asheim (dash@ifi.uio.no)
* [misc/spy.c]
Exclude and Include no longer requires a terminating ';' to
register the last component.
Thu Sep 15 23:10:09 MET DST 1994 Dag Asheim (dash@ifi.uio.no)
* [Configure]
Rewrote much of it. Added capability to generate a wine.ini
file. Commented out the processor emulator options until that
becomes interesting. Gives a warning if it sees any *.rej
files. I hope I haven't assumed to much about the shell/OS so
that it breaks under *BSD.
* [misc/dos_fs.c]
Removed/changed calls to ToUnix() (which calls tolower()) so
that the part of the pathname which correspond with the drive
letter on DOS no longer will be mapped to lowercase. This
means that it should be possible to have uppercase letters in
the [drives] section of wine.ini.
* [LICENSE]
Cosmetic changes so that it displays better in the window you
get from pressing "Credit_License" in the "About WINE" window.
Sun Aug 21 21:12:06 MET DST 1994 <erik@xs4all.nl>
* [controls/menu.c]
LoadMenu() moved to loader/resource.c.
* [misc/main.c]
Added stub for FileCDR().
* [include/peexe.h]
Added, from Eric's pe-test.
* [include/resource.h]
Added.
* [loader/resources.c]
Removed duplicated code in *Resource() functions.
Moved NE-program specific functions into ne_image.c.
Moved NE-fileformat functions to ne_resource.c.
* [pe_image.c] [pe_resource.c]
Added. Nothing implemented to run PE-executables, resource
loading only.
* [misc/file.c]
Changed OpenFile() to use macros.
* [misc/shell.c]
Added NULL-ptr checks to ShellAbout().
* [miscemu/int21.c]
Fixed a few typos.
* [miscemu/kernel.c]
Added _DI = _DS, to put the caller's instance in DI. Doesn't
work properly if caller changed DS :-(
Tue Jun 14 08:09:14 1994 Bob Amstadt (bob@pooh)
* loader/selector.c (GetCurrentPDB):
Added trivial function GetCurrentPDB() which returns the program
segment prefix selector.
* memory/heap.c (HEAP_Free):
If free list is empty, make the freed block the free list.
Fri Jun 10 07:56:49 1994 Bob Amstadt (bob@pooh)
* controls/edit.c (EDIT_SetTextMsg):
Do not append a newline at the end of the last line.
* windows/event.c (SetCapture):
Set winHasCursor if mouse capture succeeds.
Jun 13, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
* [controls/listbox.c]
Fix bug in listbox : InsertString should call AddString if -1.
* [controls/menu.c]
New function GetMenuState().
* [controls/scroll.c] [windows/nonclient.c]
Try to make ShowScrollBar() recalc NC_ regions. Not finished !
* [objects/text.c]
Add Stub for TabbedTextOut(), which temporarely call Textout().
* [windows/keyboard.c] [windows/event.c]
New function GetKeyBoardState() with an KeyStateTable array
& associated handling in function EVENT_key().
Mon Jun 13 16:45:24 MET DST 1994 (erik@hacktic.nl)
* [controls/menu.c]
IsMenu() added.
* [loader/library.c]
ModuleFirst(), ModuleNext(), ModuleFindName(), ModuleFindHandle()
added.
* [object/gdiobj.c]
IsGDIObject() added.
* [miscemu/int2[56].c]
bugfix: both didn't leave flags pushed on 16bit-stack.
(winfile gets a bit further)
* [miscemu/int16.c]
Added (empty).
Sat Jun 11 22:56:48 1994 Jon Tombs (jon@esix2.us.es)
* windows/event.c:
Added code to drop redundant motion Events in the XEvent queue.
Thu Jun 9 10:55:55 MET DST 1994 Jochen Hein ( Hein@Student.TU-Clausthal.de )
* [misc/main.c misc/message.c include/texts.h]
Removed the text-constants from message.c into variables
which may be changed from X-resources.
* [misc/main.c misc/message.c]
added <locale.h> and setlocale() to main.c, used toupper() in message.c
Mon, 13 Jun 94 09:41:16 -0500 Paul Bramel <paulbr@comm.mot.com>
* controls/button.c ( [CR]B_LButton* )
left rc.right at full window width so click on label also
activates the control (MSWin behavior)
Sat Jun 11 19:05:40 1994 Olaf Flebbe (flebbe@tat.physik.uni-tuebingen.de)
* include/windows.h:
functions pointers can not be packed.
(annoying warnings with forthcomming gcc-2.6.x)
* loader/main.c (InitDLL):
Fixed a printf statement. (for control.exe)
(InitializeLoadedDLLs):
deleted shadow definition of *wpnt.
(Breaks many programs, because now COMMDLG will be
initialized :-(
* windows/win.c (SetWindowText):
added missing breaks; (PENSATE starts)
* windows/graphics.c (FloodFill):
Proper boundarys. (BANGBANG starts) FloodFile_rec should
be rewritten.
* objects/font.c (FONT_GetMetrics):
TYPO: use font->perchar only if it is defined. (WRITE starts)
Sun June 12, Peter Broadhurst (pbr@ua.nwl.ac.uk)
controls/scroll.c:
Fixes for improved behaviour when dragging thumb;
Added SB_THUMBPOSITION message when thumb is released.
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()
Tue Feb 1 21:14:47 1994 Bob Amstadt (bob@pooh)
* [loader/selector.c]
Added function CreateNewSegments(). Modified IPCCopySelector
to allow aliasing to any arbitrary memory space.
* [memory/global.c]
Fixed potential bug in GlobalGetFreeSegments().
* [memory/linear.c]
Created functions GlobalLinearLock() and GlobalLinearUnlock().
Tue Feb 1 05:51:43 1994 julliard@di.epfl.ch (Alexandre Julliard)
* [controls/widgets.c]
Removed CAPTION window class.
* [loader/cursor.c]
Bug fix in LoadCursor(): don't allocate memory every time for
built-in cursors.
* [windows/clipping.c]
Invalidate child windows in InvalidateRgn().
* [windows/defwnd.c]
Added repaint of the caption when changing window text.
* [windows/event.c]
Modified SetCapture() to allow keyboard events while capturing.
* [windows/message.c]
New function MSG_GetHardwareMessage(), to do mouse tracking
without returning control to the Windows program.
* [windows/nonclient.c]
A couple of changes in frame drawing for DLGMODALFRAME windows.
Rewritten window moving code, to use MSG_GetHardwareMessage()
instead of non-client mouse events (this is the way Windows
does it), and to send WM_ENTERSIZEMOVE messages.
Removed WM_NCBUTTONUP and WM_NCMOUSEMOVE handlers.
* [windows/win.c]
Allocate temporary structures on the USER heap instead of
using GlobalAlloc().
* [windows/winpos.c]
Added function WINPOS_GetMinMaxInfo() to get sizing informations.
Jan 31, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
* [windows/nonclient.c]
Call to StdDrawScrollBar() during NC's drawing.
Call to NC_ScrollBarButtonDown() on NC mouse events WM_LBUTTONDOWN.
Call to NC_ScrollBarButtonUp() on NC mouse events WM_LBUTTONUP.
Call to NC_ScrollBarMouseMove() on NC mouse events WM_MOUSEMOVE.
* [controls/menu.c]
New GetSubMenu() function.
Move GetMenu() & SetMenu() functions from 'windows/win.c'.
* [controls/listbox.c]
Start changes to satisfy recent changes in scrollbars/windows.
* [loader/resource.c]
Put some code in LoadAccelerators() stub.
New TranslateAccelerator() function.
* [windows/win.c]
Remove GetMenu() & SetMenu() functions.
Call to NC_CreateScrollBars() if required by CreateWindow().
Mon Jan 24 10:40:10 EST 1994 John Richardson (jrichard@cs.uml.edu)
* [window/win.c]
Added functions EnumWindows, EnumChildWindows, and helper
WIN_EnumChildWin. EnumWindows won't list all wine windows
because GetDesktopWindow isn't complete. However, the code
is in place for it to work correctly and only needs
GetDesktopWindow to do so.
Tue Jan 25 05:51:47 1994 julliard@di.epfl.ch (Alexandre Julliard)
* [windows/defwnd.c]
Added handling of activation messages (WM_ACTIVATE,
WM_NCACTIVATE, WM_MOUSEACTIVATE)
* [windows/event.c]
De-activate the window when losing input focus.
* [windows/focus.c]
Bug fix in SetFocus().
* [windows/message.c]
Added activation of the window on mouse-clicks.
* [windows/nonclient.c]
Changed non-client area painting to use the correct colors
depending upon the activation state.
Added WM_NCACTIVATE message handling.
Fixed a couple of bugs in window moving and resizing.
* [windows/winpos.c]
Implemented Get/SetActiveWindow().
Implemented SWP_NOACTIVATE flag in SetWindowPos().
Jan 17, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
* [misc/message.c]
MessageBox has a CaptionBar for his title except for
MB_SYSTEMMODAL with MB_ICONHAND.
* [windows/nonclient.c]
Call to NC_TrackSysMenu on SysMenu button mouse click.
* [windows/defwnd.c]
Call to NC_TrackSysMenu on Alt key (VK_MENU).
* [controls/menu.c]
New GetSystemMenu() function.
New CopySystemMenu() internal function.
New NC_TrackSysMenu() internal function.
* [include/windows.h]
New WM_INITMENU, WM_INITMENUPOPUP, WM_MENUSELECT & WM_MENUCHAR defines.