Sweden-Number/controls/status.c

501 lines
12 KiB
C
Raw Normal View History

Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
/*
* Interface code to StatusWindow widget/control
*
* Copyright 1996 Bruce Milner
*/
Release 960928 Fri Sep 27 14:18:42 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/button.c] Fixed focus rectangle size and clipping. * [controls/scroll.c] Converted to Win32 and added support for scroll page. Completed SetScrollInfo() and implemented other Win32 functions. * [files/file.c] Removed FILE_Read() (use _lread32 instead). * [objects/dce.c] [include/dce.h] Allocate DCE on the Win32 heap, and use pointers instead of handles. Implemented Win32 version of DC functions. * [windows/painting.c] Attempt to make CS_PARENTDC style work again. Wed Sep 25 23:40:52 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/dce.c] [windows/winpos.c] Override SaveUnder attribute when painting took place in a window below. Force X to raise activated window in seamless mode. * [misc/clipboard.c] [windows/event.c] Translation between DOS and Unix text formats and several other fixes for the sudden selection loss. * [windows/message.c] Apply "first" and "last" when checking for WM_QUIT in MSG_PeekMessage(). * [windows/win.c] Rearranged DestroyWindow() to fit "Windows Internals" description. * [windows/win.c] [windows/winpos.c] [windows/nonclient.c] Misc. fixes to CBT hook calls. * [controls/menu.c] [misc/user.c] Fixup resident popup menu window so that it doesn't get destroyed by USER_AppExit(). * [loader/module.c] [loader/task.c] [windows/event.c] Process "unsafe" X events outside the scheduler to prevent deadlocks. * [windows/message.c] [windows/queue.c] [windows/winpos.c] Lots of fixes for better Win16 multitasking. Wed Sep 25 20:36:30 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [include/windows.h] Added some missing HOOK defines. * [misc/shell.c][if1632/shell32.spec][include/shell.h] SHGetFileInfoA stub added (win95 mplayer.exe /play bla.avi). * [win32/console.c][include/wincon.h] GetConsoleScreenBufferInfo, GetLargestConsoleWindowSize added. * [misc/registry.c] Some null ptr fixes. * [loader/pe_image.c] Fixed exported function lookup. (msvcrt20.dll) Add debugsyms for entrypoint, exported functions and sections. * [multimedia/mmsystem.c] MCIOpen: support for element opens (mplayer.exe /play bla.avi). * [several] Added several missing things/stubs/simple thunks from win32 to win16 code. Sat Sep 21 17:27:44 1996 O.Flebbe <flebbe@science-computing.uni-tuebingen.de> * [windows/property.c] Fixed debugging of 16 Bit RemoveProp(). * [debugger/memory.c] Added DEBUG_checkmap_bad() for linux. Thu Sep 19 20:48:31 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/hook.c] Use EnableHardwareInput() for JournalPlayback hook. * [controls/listbox.c] Changed handling of LB_GETITEMRECT in empty listboxes. Thu Sep 19 13:34:35 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [misc/main.c] Fixes to X resources handling. Wed Sep 18 00:31:15 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] [include/gdi.h] [objects/dc.c] Individual handle table created for each metafile. Fixed GlobalReAlloc() bug in MF_AddHandleDC() (was MF_AddHandleInternal). * [windows/graphics.c] [objects/dc.c] Rectangle() changed to work better with wide pens and PS_NULL. Use JoinMiter. * [windows/winpos.c] Make the whole (non X) window invalid on resize if CS_[VH]REDRAW is set. * [windows/nonclient.c] AdjustWindowRectEx() should perform calculations even if the window is minimized. * [windows/mdi.c] Better handling of system button painting. Maximized windows can contain scroll bars. Icons now maximize properly. * [windows/defwnd.c] [windows/nonclient.c] [controls/menu.c] Improved greying of items in system menu. WM_INITMEMUPOPUP no longer caught in DefWndProc, DEFWND_InitSysMenuPopup moved to menu.c. Mon Sep 16 21:30:00 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> * [several files] Fix missing includes and wrong printing arguments. * [controls/listbox.c] Don't sort drives in ListBoxDirectory(). Sat Sep 14 09:05:47 1996 Petri Tuomola <ptuomola@xs4all.nl> * [windows/dialog.c] Fixed handling of Shift-TAB in dialogs. Thu Sep 12 18:31:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/gdi32.spec] Added SelectClipRgn - call win16 version. * [if1632/user32.spec] Added GetAsyncKeyState, GetMenuItemID and GetMenuStringA. * [include/wincon.h] Added COORD and SMALL_RECT typedefs, moved CONSOLE_SCREEN_BUFFER_INFO out of #if 0 protected portion of file. * [loader/pe_image.c] PE_InitTEB() - Tidy up, bug fix to stack pointer value (Borland programs now work better) * [win32/console.c] Added stub functions for GetConsoleScreenBufferInfo and GetLargestConsoleWindowSize * [win32/findfile.c] FindFirstFile32A() - removed erroneous strcpy * [windows/keyboard.c] GetAsyncKeyState() - bug fix - now returns value as per Microsoft specification. NB - I still have doubts about some other functions in this file.
1996-09-28 20:11:01 +02:00
#define NO_TRANSITION_TYPES /* This file is Win32-clean */
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
#include <stdio.h>
#include <stdlib.h>
#include "windows.h"
#include "status.h"
#include "commctrl.h"
#include "heap.h"
#include "syscolor.h"
#include "win.h"
/*
* Run tests using Waite Group Windows95 API Bible Vol. 1&2
* The second cdrom contains executables drawstat.exe,gettext.exe,
* simple.exe, getparts.exe, setparts.exe, statwnd.exe
*/
/*
* Fixme/Todo
* 1) Add size grip to status bar - SBARS_SIZEGRIP
* 2) Don't hard code bar to bottom of window, allow CCS_TOP also
* 3) Fix SBT_OWNERDRAW
* 4) Add DrawStatusText32A funtion
*/
static STATUSWINDOWINFO *GetStatusInfo(HWND32 hwnd)
{
WND *wndPtr;
wndPtr = WIN_FindWndPtr(hwnd);
return ((STATUSWINDOWINFO *) &wndPtr->wExtra[0]);
}
/***********************************************************************
* DrawStatusText32A (COMCTL32.3)
*/
void DrawStatusText32A( HDC32 hdc, LPRECT32 lprc, LPCSTR text, UINT32 style )
{
RECT32 r, rt;
int oldbkmode;
r = *lprc;
if (style == 0 ||
style == SBT_POPOUT) {
InflateRect32(&r, -1, -1);
SelectObject32(hdc, sysColorObjects.hbrushScrollbar);
Rectangle32(hdc, r.left, r.top, r.right, r.bottom);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
/* draw border */
SelectObject32(hdc, sysColorObjects.hpenWindowFrame);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
if (style == 0)
DrawEdge32(hdc, &r, EDGE_SUNKEN, BF_RECT);
else
DrawEdge32(hdc, &r, EDGE_RAISED, BF_RECT);
}
else if (style == SBT_NOBORDERS) {
SelectObject32(hdc, sysColorObjects.hbrushScrollbar);
Rectangle32(hdc, r.left, r.top, r.right, r.bottom);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
}
else { /* fixme for SBT_OWNERDRAW, SBT_RTLREADING */
}
/* now draw text */
if ((style != SBT_OWNERDRAW) && text) {
SelectObject32(hdc, sysColorObjects.hpenWindowText);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
oldbkmode = SetBkMode(hdc, TRANSPARENT);
rt = r;
rt.left += 3;
DrawText32A(hdc, text, lstrlen32A(text),
&rt, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
if (oldbkmode != TRANSPARENT)
SetBkMode(hdc, oldbkmode);
}
}
static BOOL32 SW_Refresh( HWND32 hwnd, HDC32 hdc, STATUSWINDOWINFO *self )
{
int i;
if (!IsWindowVisible(hwnd)) {
return (TRUE);
}
if (self->simple) {
DrawStatusText32A(hdc,
&self->part0.bound,
self->part0.text,
self->part0.style);
}
else {
for (i = 0; i < self->numParts; i++) {
DrawStatusText32A(hdc,
&self->parts[i].bound,
self->parts[i].text,
self->parts[i].style);
}
}
return TRUE;
}
static LRESULT
SW_GetBorders(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
LPINT32 out;
/* FIXME for sizegrips */
out = (LPINT32) lParam;
out[0] = 1; /* vertical border width */
out[1] = 1; /* horizontal border width */
out[2] = 1; /* width of border between rectangles */
return TRUE;
}
static void
SW_SetPartBounds(HWND32 hwnd, STATUSWINDOWINFO *self)
{
int i;
RECT32 rect, *r;
STATUSWINDOWPART *part;
int sep = 1;
/* get our window size */
GetClientRect32(hwnd, &rect);
/* set bounds for simple rectangle */
self->part0.bound = rect;
/* set bounds for non-simple rectangles */
for (i = 0; i < self->numParts; i++) {
part = &self->parts[i];
r = &self->parts[i].bound;
r->top = rect.top;
r->bottom = rect.bottom;
if (i == 0)
r->left = 0;
else
r->left = self->parts[i-1].bound.right+sep;
if (part->x == -1)
r->right = rect.right;
else
r->right = part->x;
}
}
static LRESULT
SW_SetText(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
int part_num;
int style;
LPSTR text;
int len;
STATUSWINDOWPART *part;
text = (LPSTR) lParam;
part_num = ((INT32) wParam) & 0x00ff;
style = ((INT32) wParam) & 0xff00;
if (part_num > 255)
return FALSE;
if (self->simple)
part = &self->part0;
else
part = &self->parts[part_num];
part->style = style;
if (style == SBT_OWNERDRAW) {
part->text = text;
}
else {
/* duplicate string */
if (part->text)
HeapFree(SystemHeap, 0, part->text);
part->text = 0;
if (text && (len = lstrlen32A(text))) {
part->text = HeapAlloc(SystemHeap, 0, len+1);
lstrcpy32A(part->text, text);
}
}
InvalidateRect32(hwnd, &part->bound, FALSE);
return TRUE;
}
static LRESULT
SW_SetParts(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
HDC32 hdc;
LPINT32 parts;
STATUSWINDOWPART * tmp;
int i;
int oldNumParts;
if (self->simple) {
self->simple = FALSE;
}
oldNumParts = self->numParts;
self->numParts = (INT32) wParam;
parts = (LPINT32) lParam;
if (oldNumParts > self->numParts) {
for (i = self->numParts ; i < oldNumParts; i++) {
if (self->parts[i].text && (self->parts[i].style != SBT_OWNERDRAW))
HeapFree(SystemHeap, 0, self->parts[i].text);
}
}
else if (oldNumParts < self->numParts) {
tmp = HeapAlloc(SystemHeap, HEAP_ZERO_MEMORY,
sizeof(STATUSWINDOWPART) * self->numParts);
for (i = 0; i < oldNumParts; i++) {
tmp[i] = self->parts[i];
}
if (self->parts)
HeapFree(SystemHeap, 0, self->parts);
self->parts = tmp;
}
for (i = 0; i < self->numParts; i++) {
self->parts[i].x = parts[i];
}
SW_SetPartBounds(hwnd, self);
Release 960928 Fri Sep 27 14:18:42 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/button.c] Fixed focus rectangle size and clipping. * [controls/scroll.c] Converted to Win32 and added support for scroll page. Completed SetScrollInfo() and implemented other Win32 functions. * [files/file.c] Removed FILE_Read() (use _lread32 instead). * [objects/dce.c] [include/dce.h] Allocate DCE on the Win32 heap, and use pointers instead of handles. Implemented Win32 version of DC functions. * [windows/painting.c] Attempt to make CS_PARENTDC style work again. Wed Sep 25 23:40:52 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/dce.c] [windows/winpos.c] Override SaveUnder attribute when painting took place in a window below. Force X to raise activated window in seamless mode. * [misc/clipboard.c] [windows/event.c] Translation between DOS and Unix text formats and several other fixes for the sudden selection loss. * [windows/message.c] Apply "first" and "last" when checking for WM_QUIT in MSG_PeekMessage(). * [windows/win.c] Rearranged DestroyWindow() to fit "Windows Internals" description. * [windows/win.c] [windows/winpos.c] [windows/nonclient.c] Misc. fixes to CBT hook calls. * [controls/menu.c] [misc/user.c] Fixup resident popup menu window so that it doesn't get destroyed by USER_AppExit(). * [loader/module.c] [loader/task.c] [windows/event.c] Process "unsafe" X events outside the scheduler to prevent deadlocks. * [windows/message.c] [windows/queue.c] [windows/winpos.c] Lots of fixes for better Win16 multitasking. Wed Sep 25 20:36:30 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [include/windows.h] Added some missing HOOK defines. * [misc/shell.c][if1632/shell32.spec][include/shell.h] SHGetFileInfoA stub added (win95 mplayer.exe /play bla.avi). * [win32/console.c][include/wincon.h] GetConsoleScreenBufferInfo, GetLargestConsoleWindowSize added. * [misc/registry.c] Some null ptr fixes. * [loader/pe_image.c] Fixed exported function lookup. (msvcrt20.dll) Add debugsyms for entrypoint, exported functions and sections. * [multimedia/mmsystem.c] MCIOpen: support for element opens (mplayer.exe /play bla.avi). * [several] Added several missing things/stubs/simple thunks from win32 to win16 code. Sat Sep 21 17:27:44 1996 O.Flebbe <flebbe@science-computing.uni-tuebingen.de> * [windows/property.c] Fixed debugging of 16 Bit RemoveProp(). * [debugger/memory.c] Added DEBUG_checkmap_bad() for linux. Thu Sep 19 20:48:31 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/hook.c] Use EnableHardwareInput() for JournalPlayback hook. * [controls/listbox.c] Changed handling of LB_GETITEMRECT in empty listboxes. Thu Sep 19 13:34:35 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [misc/main.c] Fixes to X resources handling. Wed Sep 18 00:31:15 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] [include/gdi.h] [objects/dc.c] Individual handle table created for each metafile. Fixed GlobalReAlloc() bug in MF_AddHandleDC() (was MF_AddHandleInternal). * [windows/graphics.c] [objects/dc.c] Rectangle() changed to work better with wide pens and PS_NULL. Use JoinMiter. * [windows/winpos.c] Make the whole (non X) window invalid on resize if CS_[VH]REDRAW is set. * [windows/nonclient.c] AdjustWindowRectEx() should perform calculations even if the window is minimized. * [windows/mdi.c] Better handling of system button painting. Maximized windows can contain scroll bars. Icons now maximize properly. * [windows/defwnd.c] [windows/nonclient.c] [controls/menu.c] Improved greying of items in system menu. WM_INITMEMUPOPUP no longer caught in DefWndProc, DEFWND_InitSysMenuPopup moved to menu.c. Mon Sep 16 21:30:00 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> * [several files] Fix missing includes and wrong printing arguments. * [controls/listbox.c] Don't sort drives in ListBoxDirectory(). Sat Sep 14 09:05:47 1996 Petri Tuomola <ptuomola@xs4all.nl> * [windows/dialog.c] Fixed handling of Shift-TAB in dialogs. Thu Sep 12 18:31:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/gdi32.spec] Added SelectClipRgn - call win16 version. * [if1632/user32.spec] Added GetAsyncKeyState, GetMenuItemID and GetMenuStringA. * [include/wincon.h] Added COORD and SMALL_RECT typedefs, moved CONSOLE_SCREEN_BUFFER_INFO out of #if 0 protected portion of file. * [loader/pe_image.c] PE_InitTEB() - Tidy up, bug fix to stack pointer value (Borland programs now work better) * [win32/console.c] Added stub functions for GetConsoleScreenBufferInfo and GetLargestConsoleWindowSize * [win32/findfile.c] FindFirstFile32A() - removed erroneous strcpy * [windows/keyboard.c] GetAsyncKeyState() - bug fix - now returns value as per Microsoft specification. NB - I still have doubts about some other functions in this file.
1996-09-28 20:11:01 +02:00
hdc = GetDC32(hwnd);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
SW_Refresh(hwnd, hdc, self);
Release 960928 Fri Sep 27 14:18:42 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/button.c] Fixed focus rectangle size and clipping. * [controls/scroll.c] Converted to Win32 and added support for scroll page. Completed SetScrollInfo() and implemented other Win32 functions. * [files/file.c] Removed FILE_Read() (use _lread32 instead). * [objects/dce.c] [include/dce.h] Allocate DCE on the Win32 heap, and use pointers instead of handles. Implemented Win32 version of DC functions. * [windows/painting.c] Attempt to make CS_PARENTDC style work again. Wed Sep 25 23:40:52 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/dce.c] [windows/winpos.c] Override SaveUnder attribute when painting took place in a window below. Force X to raise activated window in seamless mode. * [misc/clipboard.c] [windows/event.c] Translation between DOS and Unix text formats and several other fixes for the sudden selection loss. * [windows/message.c] Apply "first" and "last" when checking for WM_QUIT in MSG_PeekMessage(). * [windows/win.c] Rearranged DestroyWindow() to fit "Windows Internals" description. * [windows/win.c] [windows/winpos.c] [windows/nonclient.c] Misc. fixes to CBT hook calls. * [controls/menu.c] [misc/user.c] Fixup resident popup menu window so that it doesn't get destroyed by USER_AppExit(). * [loader/module.c] [loader/task.c] [windows/event.c] Process "unsafe" X events outside the scheduler to prevent deadlocks. * [windows/message.c] [windows/queue.c] [windows/winpos.c] Lots of fixes for better Win16 multitasking. Wed Sep 25 20:36:30 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [include/windows.h] Added some missing HOOK defines. * [misc/shell.c][if1632/shell32.spec][include/shell.h] SHGetFileInfoA stub added (win95 mplayer.exe /play bla.avi). * [win32/console.c][include/wincon.h] GetConsoleScreenBufferInfo, GetLargestConsoleWindowSize added. * [misc/registry.c] Some null ptr fixes. * [loader/pe_image.c] Fixed exported function lookup. (msvcrt20.dll) Add debugsyms for entrypoint, exported functions and sections. * [multimedia/mmsystem.c] MCIOpen: support for element opens (mplayer.exe /play bla.avi). * [several] Added several missing things/stubs/simple thunks from win32 to win16 code. Sat Sep 21 17:27:44 1996 O.Flebbe <flebbe@science-computing.uni-tuebingen.de> * [windows/property.c] Fixed debugging of 16 Bit RemoveProp(). * [debugger/memory.c] Added DEBUG_checkmap_bad() for linux. Thu Sep 19 20:48:31 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/hook.c] Use EnableHardwareInput() for JournalPlayback hook. * [controls/listbox.c] Changed handling of LB_GETITEMRECT in empty listboxes. Thu Sep 19 13:34:35 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [misc/main.c] Fixes to X resources handling. Wed Sep 18 00:31:15 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] [include/gdi.h] [objects/dc.c] Individual handle table created for each metafile. Fixed GlobalReAlloc() bug in MF_AddHandleDC() (was MF_AddHandleInternal). * [windows/graphics.c] [objects/dc.c] Rectangle() changed to work better with wide pens and PS_NULL. Use JoinMiter. * [windows/winpos.c] Make the whole (non X) window invalid on resize if CS_[VH]REDRAW is set. * [windows/nonclient.c] AdjustWindowRectEx() should perform calculations even if the window is minimized. * [windows/mdi.c] Better handling of system button painting. Maximized windows can contain scroll bars. Icons now maximize properly. * [windows/defwnd.c] [windows/nonclient.c] [controls/menu.c] Improved greying of items in system menu. WM_INITMEMUPOPUP no longer caught in DefWndProc, DEFWND_InitSysMenuPopup moved to menu.c. Mon Sep 16 21:30:00 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> * [several files] Fix missing includes and wrong printing arguments. * [controls/listbox.c] Don't sort drives in ListBoxDirectory(). Sat Sep 14 09:05:47 1996 Petri Tuomola <ptuomola@xs4all.nl> * [windows/dialog.c] Fixed handling of Shift-TAB in dialogs. Thu Sep 12 18:31:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/gdi32.spec] Added SelectClipRgn - call win16 version. * [if1632/user32.spec] Added GetAsyncKeyState, GetMenuItemID and GetMenuStringA. * [include/wincon.h] Added COORD and SMALL_RECT typedefs, moved CONSOLE_SCREEN_BUFFER_INFO out of #if 0 protected portion of file. * [loader/pe_image.c] PE_InitTEB() - Tidy up, bug fix to stack pointer value (Borland programs now work better) * [win32/console.c] Added stub functions for GetConsoleScreenBufferInfo and GetLargestConsoleWindowSize * [win32/findfile.c] FindFirstFile32A() - removed erroneous strcpy * [windows/keyboard.c] GetAsyncKeyState() - bug fix - now returns value as per Microsoft specification. NB - I still have doubts about some other functions in this file.
1996-09-28 20:11:01 +02:00
ReleaseDC32(hwnd, hdc);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
return TRUE;
}
static LRESULT
SW_GetParts(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
LPINT32 parts;
INT32 num_parts;
int i;
self = GetStatusInfo(hwnd);
num_parts = (INT32) wParam;
parts = (LPINT32) lParam;
if (parts) {
return (self->numParts);
for (i = 0; i < num_parts; i++) {
parts[i] = self->parts[i].x;
}
}
return (self->numParts);
}
static LRESULT
SW_Create(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
RECT32 rect;
LPCREATESTRUCT32A lpCreate = (LPCREATESTRUCT32A) lParam;
int height, width;
HDC32 hdc;
HWND32 parent;
self->numParts = 0;
self->parts = 0;
self->simple = TRUE;
GetClientRect32(hwnd, &rect);
/* initialize simple case */
self->part0.bound = rect;
self->part0.text = 0;
self->part0.x = 0;
self->part0.style = 0;
height = 40;
Release 960928 Fri Sep 27 14:18:42 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/button.c] Fixed focus rectangle size and clipping. * [controls/scroll.c] Converted to Win32 and added support for scroll page. Completed SetScrollInfo() and implemented other Win32 functions. * [files/file.c] Removed FILE_Read() (use _lread32 instead). * [objects/dce.c] [include/dce.h] Allocate DCE on the Win32 heap, and use pointers instead of handles. Implemented Win32 version of DC functions. * [windows/painting.c] Attempt to make CS_PARENTDC style work again. Wed Sep 25 23:40:52 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/dce.c] [windows/winpos.c] Override SaveUnder attribute when painting took place in a window below. Force X to raise activated window in seamless mode. * [misc/clipboard.c] [windows/event.c] Translation between DOS and Unix text formats and several other fixes for the sudden selection loss. * [windows/message.c] Apply "first" and "last" when checking for WM_QUIT in MSG_PeekMessage(). * [windows/win.c] Rearranged DestroyWindow() to fit "Windows Internals" description. * [windows/win.c] [windows/winpos.c] [windows/nonclient.c] Misc. fixes to CBT hook calls. * [controls/menu.c] [misc/user.c] Fixup resident popup menu window so that it doesn't get destroyed by USER_AppExit(). * [loader/module.c] [loader/task.c] [windows/event.c] Process "unsafe" X events outside the scheduler to prevent deadlocks. * [windows/message.c] [windows/queue.c] [windows/winpos.c] Lots of fixes for better Win16 multitasking. Wed Sep 25 20:36:30 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [include/windows.h] Added some missing HOOK defines. * [misc/shell.c][if1632/shell32.spec][include/shell.h] SHGetFileInfoA stub added (win95 mplayer.exe /play bla.avi). * [win32/console.c][include/wincon.h] GetConsoleScreenBufferInfo, GetLargestConsoleWindowSize added. * [misc/registry.c] Some null ptr fixes. * [loader/pe_image.c] Fixed exported function lookup. (msvcrt20.dll) Add debugsyms for entrypoint, exported functions and sections. * [multimedia/mmsystem.c] MCIOpen: support for element opens (mplayer.exe /play bla.avi). * [several] Added several missing things/stubs/simple thunks from win32 to win16 code. Sat Sep 21 17:27:44 1996 O.Flebbe <flebbe@science-computing.uni-tuebingen.de> * [windows/property.c] Fixed debugging of 16 Bit RemoveProp(). * [debugger/memory.c] Added DEBUG_checkmap_bad() for linux. Thu Sep 19 20:48:31 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/hook.c] Use EnableHardwareInput() for JournalPlayback hook. * [controls/listbox.c] Changed handling of LB_GETITEMRECT in empty listboxes. Thu Sep 19 13:34:35 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [misc/main.c] Fixes to X resources handling. Wed Sep 18 00:31:15 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] [include/gdi.h] [objects/dc.c] Individual handle table created for each metafile. Fixed GlobalReAlloc() bug in MF_AddHandleDC() (was MF_AddHandleInternal). * [windows/graphics.c] [objects/dc.c] Rectangle() changed to work better with wide pens and PS_NULL. Use JoinMiter. * [windows/winpos.c] Make the whole (non X) window invalid on resize if CS_[VH]REDRAW is set. * [windows/nonclient.c] AdjustWindowRectEx() should perform calculations even if the window is minimized. * [windows/mdi.c] Better handling of system button painting. Maximized windows can contain scroll bars. Icons now maximize properly. * [windows/defwnd.c] [windows/nonclient.c] [controls/menu.c] Improved greying of items in system menu. WM_INITMEMUPOPUP no longer caught in DefWndProc, DEFWND_InitSysMenuPopup moved to menu.c. Mon Sep 16 21:30:00 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> * [several files] Fix missing includes and wrong printing arguments. * [controls/listbox.c] Don't sort drives in ListBoxDirectory(). Sat Sep 14 09:05:47 1996 Petri Tuomola <ptuomola@xs4all.nl> * [windows/dialog.c] Fixed handling of Shift-TAB in dialogs. Thu Sep 12 18:31:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/gdi32.spec] Added SelectClipRgn - call win16 version. * [if1632/user32.spec] Added GetAsyncKeyState, GetMenuItemID and GetMenuStringA. * [include/wincon.h] Added COORD and SMALL_RECT typedefs, moved CONSOLE_SCREEN_BUFFER_INFO out of #if 0 protected portion of file. * [loader/pe_image.c] PE_InitTEB() - Tidy up, bug fix to stack pointer value (Borland programs now work better) * [win32/console.c] Added stub functions for GetConsoleScreenBufferInfo and GetLargestConsoleWindowSize * [win32/findfile.c] FindFirstFile32A() - removed erroneous strcpy * [windows/keyboard.c] GetAsyncKeyState() - bug fix - now returns value as per Microsoft specification. NB - I still have doubts about some other functions in this file.
1996-09-28 20:11:01 +02:00
if ((hdc = GetDC32(0))) {
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
TEXTMETRIC32A tm;
GetTextMetrics32A(hdc, &tm);
self->textHeight = tm.tmHeight;
Release 960928 Fri Sep 27 14:18:42 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/button.c] Fixed focus rectangle size and clipping. * [controls/scroll.c] Converted to Win32 and added support for scroll page. Completed SetScrollInfo() and implemented other Win32 functions. * [files/file.c] Removed FILE_Read() (use _lread32 instead). * [objects/dce.c] [include/dce.h] Allocate DCE on the Win32 heap, and use pointers instead of handles. Implemented Win32 version of DC functions. * [windows/painting.c] Attempt to make CS_PARENTDC style work again. Wed Sep 25 23:40:52 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/dce.c] [windows/winpos.c] Override SaveUnder attribute when painting took place in a window below. Force X to raise activated window in seamless mode. * [misc/clipboard.c] [windows/event.c] Translation between DOS and Unix text formats and several other fixes for the sudden selection loss. * [windows/message.c] Apply "first" and "last" when checking for WM_QUIT in MSG_PeekMessage(). * [windows/win.c] Rearranged DestroyWindow() to fit "Windows Internals" description. * [windows/win.c] [windows/winpos.c] [windows/nonclient.c] Misc. fixes to CBT hook calls. * [controls/menu.c] [misc/user.c] Fixup resident popup menu window so that it doesn't get destroyed by USER_AppExit(). * [loader/module.c] [loader/task.c] [windows/event.c] Process "unsafe" X events outside the scheduler to prevent deadlocks. * [windows/message.c] [windows/queue.c] [windows/winpos.c] Lots of fixes for better Win16 multitasking. Wed Sep 25 20:36:30 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [include/windows.h] Added some missing HOOK defines. * [misc/shell.c][if1632/shell32.spec][include/shell.h] SHGetFileInfoA stub added (win95 mplayer.exe /play bla.avi). * [win32/console.c][include/wincon.h] GetConsoleScreenBufferInfo, GetLargestConsoleWindowSize added. * [misc/registry.c] Some null ptr fixes. * [loader/pe_image.c] Fixed exported function lookup. (msvcrt20.dll) Add debugsyms for entrypoint, exported functions and sections. * [multimedia/mmsystem.c] MCIOpen: support for element opens (mplayer.exe /play bla.avi). * [several] Added several missing things/stubs/simple thunks from win32 to win16 code. Sat Sep 21 17:27:44 1996 O.Flebbe <flebbe@science-computing.uni-tuebingen.de> * [windows/property.c] Fixed debugging of 16 Bit RemoveProp(). * [debugger/memory.c] Added DEBUG_checkmap_bad() for linux. Thu Sep 19 20:48:31 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/hook.c] Use EnableHardwareInput() for JournalPlayback hook. * [controls/listbox.c] Changed handling of LB_GETITEMRECT in empty listboxes. Thu Sep 19 13:34:35 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [misc/main.c] Fixes to X resources handling. Wed Sep 18 00:31:15 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] [include/gdi.h] [objects/dc.c] Individual handle table created for each metafile. Fixed GlobalReAlloc() bug in MF_AddHandleDC() (was MF_AddHandleInternal). * [windows/graphics.c] [objects/dc.c] Rectangle() changed to work better with wide pens and PS_NULL. Use JoinMiter. * [windows/winpos.c] Make the whole (non X) window invalid on resize if CS_[VH]REDRAW is set. * [windows/nonclient.c] AdjustWindowRectEx() should perform calculations even if the window is minimized. * [windows/mdi.c] Better handling of system button painting. Maximized windows can contain scroll bars. Icons now maximize properly. * [windows/defwnd.c] [windows/nonclient.c] [controls/menu.c] Improved greying of items in system menu. WM_INITMEMUPOPUP no longer caught in DefWndProc, DEFWND_InitSysMenuPopup moved to menu.c. Mon Sep 16 21:30:00 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> * [several files] Fix missing includes and wrong printing arguments. * [controls/listbox.c] Don't sort drives in ListBoxDirectory(). Sat Sep 14 09:05:47 1996 Petri Tuomola <ptuomola@xs4all.nl> * [windows/dialog.c] Fixed handling of Shift-TAB in dialogs. Thu Sep 12 18:31:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/gdi32.spec] Added SelectClipRgn - call win16 version. * [if1632/user32.spec] Added GetAsyncKeyState, GetMenuItemID and GetMenuStringA. * [include/wincon.h] Added COORD and SMALL_RECT typedefs, moved CONSOLE_SCREEN_BUFFER_INFO out of #if 0 protected portion of file. * [loader/pe_image.c] PE_InitTEB() - Tidy up, bug fix to stack pointer value (Borland programs now work better) * [win32/console.c] Added stub functions for GetConsoleScreenBufferInfo and GetLargestConsoleWindowSize * [win32/findfile.c] FindFirstFile32A() - removed erroneous strcpy * [windows/keyboard.c] GetAsyncKeyState() - bug fix - now returns value as per Microsoft specification. NB - I still have doubts about some other functions in this file.
1996-09-28 20:11:01 +02:00
ReleaseDC32(0, hdc);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
}
Release 960902 Sun Sep 1 19:22:46 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [misc/commdlg.c] [if1632/commdlg.spec] Fixed some SEGPTR problems. * [windows/winproc.c] Added message translation for WM_COMPAREITEM, WM_DELETEITEM and WM_MEASUREITEM Fixed 16-to-32 translation for WM_HSCROLL/WM_VSCROLL. Fri Aug 30 13:39:00 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/drive.c] GetDriveType16 should report CDROMs as DRIVE_REMOTE (ACME setup). * [multimedia/audio.c] The minimum audiobuffer size shrunk somewhere in linux 1.3.xx below 4096 bytes. * [multimedia/mcistring.c] Segptr string handling fixed & enhanced. * [if1632/crtdll.spec][misc/crtdll.c] malloc,free,_strupr,_stricmp,_strcmpi added. * [if1632/wsock32.spec][misc/winsock.c] More direct thunks into unix libc and WsControl-stub added. Thu Aug 29 23:54:25 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Bug fixes to both recording and playback of ExtTextOut(). Tue Aug 27 15:43:21 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [multimedia/audio.c] [multimedia/mcianim.c] [multimedia/mcicda.c] [multimedia/midi.c] Made cdaudio, audio and midi work for FreeBSD. Sun Aug 25 20:18:56 1996 Jukka Iivonen <iivonen@cc.helsinki.fi> * [misc/crtdll.c] [if1632/crtdll.spec] Added a lot of functions. * [misc/ole2nls.c] Added ID values for all languages in GetUserDefaultLCID(). Fri Aug 24 21:02:28 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/message.c] First attempt at hook WH_JOURNALPLAYBACK.
1996-09-02 18:46:30 +02:00
parent = GetParent32(hwnd);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
GetClientRect32(parent, &rect);
width = rect.right - rect.left;
height = (self->textHeight * 3)/2;
MoveWindow(hwnd, lpCreate->x, lpCreate->y-1, width, height, FALSE);
SW_SetPartBounds(hwnd, self);
return 0;
}
static LRESULT
SW_GetRect(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
int part_num;
LPRECT32 rect;
part_num = ((INT32) wParam) & 0x00ff;
rect = (LPRECT32) lParam;
if (self->simple)
*rect = self->part0.bound;
else
*rect = self->parts[part_num].bound;
return TRUE;
}
static LRESULT
SW_GetText(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
int part_num;
LRESULT result;
STATUSWINDOWPART *part;
LPSTR out_text;
part_num = ((INT32) wParam) & 0x00ff;
out_text = (LPSTR) lParam;
if (self->simple)
part = &self->part0;
else
part = &self->parts[part_num];
if (part->style == SBT_OWNERDRAW)
result = (LRESULT) part->text;
else {
result = part->text ? lstrlen32A(part->text) : 0;
result |= (part->style << 16);
if (out_text) {
lstrcpy32A(out_text, part->text);
}
}
return result;
}
static LRESULT
SW_GetTextLength(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
int part_num;
STATUSWINDOWPART *part;
DWORD result;
part_num = ((INT32) wParam) & 0x00ff;
if (self->simple)
part = &self->part0;
else
part = &self->parts[part_num];
if (part->text)
result = lstrlen32A(part->text);
else
result = 0;
result |= (part->style << 16);
return result;
}
static LRESULT
SW_SetMinHeight(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
/* FIXME */
/* size is wParam | 2*pixels_of_horz_border */
return TRUE;
}
static LRESULT
SW_Simple(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
BOOL32 simple;
HDC32 hdc;
simple = (BOOL32) wParam;
self->simple = simple;
Release 960928 Fri Sep 27 14:18:42 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/button.c] Fixed focus rectangle size and clipping. * [controls/scroll.c] Converted to Win32 and added support for scroll page. Completed SetScrollInfo() and implemented other Win32 functions. * [files/file.c] Removed FILE_Read() (use _lread32 instead). * [objects/dce.c] [include/dce.h] Allocate DCE on the Win32 heap, and use pointers instead of handles. Implemented Win32 version of DC functions. * [windows/painting.c] Attempt to make CS_PARENTDC style work again. Wed Sep 25 23:40:52 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/dce.c] [windows/winpos.c] Override SaveUnder attribute when painting took place in a window below. Force X to raise activated window in seamless mode. * [misc/clipboard.c] [windows/event.c] Translation between DOS and Unix text formats and several other fixes for the sudden selection loss. * [windows/message.c] Apply "first" and "last" when checking for WM_QUIT in MSG_PeekMessage(). * [windows/win.c] Rearranged DestroyWindow() to fit "Windows Internals" description. * [windows/win.c] [windows/winpos.c] [windows/nonclient.c] Misc. fixes to CBT hook calls. * [controls/menu.c] [misc/user.c] Fixup resident popup menu window so that it doesn't get destroyed by USER_AppExit(). * [loader/module.c] [loader/task.c] [windows/event.c] Process "unsafe" X events outside the scheduler to prevent deadlocks. * [windows/message.c] [windows/queue.c] [windows/winpos.c] Lots of fixes for better Win16 multitasking. Wed Sep 25 20:36:30 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [include/windows.h] Added some missing HOOK defines. * [misc/shell.c][if1632/shell32.spec][include/shell.h] SHGetFileInfoA stub added (win95 mplayer.exe /play bla.avi). * [win32/console.c][include/wincon.h] GetConsoleScreenBufferInfo, GetLargestConsoleWindowSize added. * [misc/registry.c] Some null ptr fixes. * [loader/pe_image.c] Fixed exported function lookup. (msvcrt20.dll) Add debugsyms for entrypoint, exported functions and sections. * [multimedia/mmsystem.c] MCIOpen: support for element opens (mplayer.exe /play bla.avi). * [several] Added several missing things/stubs/simple thunks from win32 to win16 code. Sat Sep 21 17:27:44 1996 O.Flebbe <flebbe@science-computing.uni-tuebingen.de> * [windows/property.c] Fixed debugging of 16 Bit RemoveProp(). * [debugger/memory.c] Added DEBUG_checkmap_bad() for linux. Thu Sep 19 20:48:31 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/hook.c] Use EnableHardwareInput() for JournalPlayback hook. * [controls/listbox.c] Changed handling of LB_GETITEMRECT in empty listboxes. Thu Sep 19 13:34:35 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [misc/main.c] Fixes to X resources handling. Wed Sep 18 00:31:15 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] [include/gdi.h] [objects/dc.c] Individual handle table created for each metafile. Fixed GlobalReAlloc() bug in MF_AddHandleDC() (was MF_AddHandleInternal). * [windows/graphics.c] [objects/dc.c] Rectangle() changed to work better with wide pens and PS_NULL. Use JoinMiter. * [windows/winpos.c] Make the whole (non X) window invalid on resize if CS_[VH]REDRAW is set. * [windows/nonclient.c] AdjustWindowRectEx() should perform calculations even if the window is minimized. * [windows/mdi.c] Better handling of system button painting. Maximized windows can contain scroll bars. Icons now maximize properly. * [windows/defwnd.c] [windows/nonclient.c] [controls/menu.c] Improved greying of items in system menu. WM_INITMEMUPOPUP no longer caught in DefWndProc, DEFWND_InitSysMenuPopup moved to menu.c. Mon Sep 16 21:30:00 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> * [several files] Fix missing includes and wrong printing arguments. * [controls/listbox.c] Don't sort drives in ListBoxDirectory(). Sat Sep 14 09:05:47 1996 Petri Tuomola <ptuomola@xs4all.nl> * [windows/dialog.c] Fixed handling of Shift-TAB in dialogs. Thu Sep 12 18:31:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/gdi32.spec] Added SelectClipRgn - call win16 version. * [if1632/user32.spec] Added GetAsyncKeyState, GetMenuItemID and GetMenuStringA. * [include/wincon.h] Added COORD and SMALL_RECT typedefs, moved CONSOLE_SCREEN_BUFFER_INFO out of #if 0 protected portion of file. * [loader/pe_image.c] PE_InitTEB() - Tidy up, bug fix to stack pointer value (Borland programs now work better) * [win32/console.c] Added stub functions for GetConsoleScreenBufferInfo and GetLargestConsoleWindowSize * [win32/findfile.c] FindFirstFile32A() - removed erroneous strcpy * [windows/keyboard.c] GetAsyncKeyState() - bug fix - now returns value as per Microsoft specification. NB - I still have doubts about some other functions in this file.
1996-09-28 20:11:01 +02:00
hdc = GetDC32(hwnd);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
SW_Refresh(hwnd, hdc, self);
Release 960928 Fri Sep 27 14:18:42 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [controls/button.c] Fixed focus rectangle size and clipping. * [controls/scroll.c] Converted to Win32 and added support for scroll page. Completed SetScrollInfo() and implemented other Win32 functions. * [files/file.c] Removed FILE_Read() (use _lread32 instead). * [objects/dce.c] [include/dce.h] Allocate DCE on the Win32 heap, and use pointers instead of handles. Implemented Win32 version of DC functions. * [windows/painting.c] Attempt to make CS_PARENTDC style work again. Wed Sep 25 23:40:52 1996 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/dce.c] [windows/winpos.c] Override SaveUnder attribute when painting took place in a window below. Force X to raise activated window in seamless mode. * [misc/clipboard.c] [windows/event.c] Translation between DOS and Unix text formats and several other fixes for the sudden selection loss. * [windows/message.c] Apply "first" and "last" when checking for WM_QUIT in MSG_PeekMessage(). * [windows/win.c] Rearranged DestroyWindow() to fit "Windows Internals" description. * [windows/win.c] [windows/winpos.c] [windows/nonclient.c] Misc. fixes to CBT hook calls. * [controls/menu.c] [misc/user.c] Fixup resident popup menu window so that it doesn't get destroyed by USER_AppExit(). * [loader/module.c] [loader/task.c] [windows/event.c] Process "unsafe" X events outside the scheduler to prevent deadlocks. * [windows/message.c] [windows/queue.c] [windows/winpos.c] Lots of fixes for better Win16 multitasking. Wed Sep 25 20:36:30 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [include/windows.h] Added some missing HOOK defines. * [misc/shell.c][if1632/shell32.spec][include/shell.h] SHGetFileInfoA stub added (win95 mplayer.exe /play bla.avi). * [win32/console.c][include/wincon.h] GetConsoleScreenBufferInfo, GetLargestConsoleWindowSize added. * [misc/registry.c] Some null ptr fixes. * [loader/pe_image.c] Fixed exported function lookup. (msvcrt20.dll) Add debugsyms for entrypoint, exported functions and sections. * [multimedia/mmsystem.c] MCIOpen: support for element opens (mplayer.exe /play bla.avi). * [several] Added several missing things/stubs/simple thunks from win32 to win16 code. Sat Sep 21 17:27:44 1996 O.Flebbe <flebbe@science-computing.uni-tuebingen.de> * [windows/property.c] Fixed debugging of 16 Bit RemoveProp(). * [debugger/memory.c] Added DEBUG_checkmap_bad() for linux. Thu Sep 19 20:48:31 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/hook.c] Use EnableHardwareInput() for JournalPlayback hook. * [controls/listbox.c] Changed handling of LB_GETITEMRECT in empty listboxes. Thu Sep 19 13:34:35 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [misc/main.c] Fixes to X resources handling. Wed Sep 18 00:31:15 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] [include/gdi.h] [objects/dc.c] Individual handle table created for each metafile. Fixed GlobalReAlloc() bug in MF_AddHandleDC() (was MF_AddHandleInternal). * [windows/graphics.c] [objects/dc.c] Rectangle() changed to work better with wide pens and PS_NULL. Use JoinMiter. * [windows/winpos.c] Make the whole (non X) window invalid on resize if CS_[VH]REDRAW is set. * [windows/nonclient.c] AdjustWindowRectEx() should perform calculations even if the window is minimized. * [windows/mdi.c] Better handling of system button painting. Maximized windows can contain scroll bars. Icons now maximize properly. * [windows/defwnd.c] [windows/nonclient.c] [controls/menu.c] Improved greying of items in system menu. WM_INITMEMUPOPUP no longer caught in DefWndProc, DEFWND_InitSysMenuPopup moved to menu.c. Mon Sep 16 21:30:00 1996 Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> * [several files] Fix missing includes and wrong printing arguments. * [controls/listbox.c] Don't sort drives in ListBoxDirectory(). Sat Sep 14 09:05:47 1996 Petri Tuomola <ptuomola@xs4all.nl> * [windows/dialog.c] Fixed handling of Shift-TAB in dialogs. Thu Sep 12 18:31:00 1996 Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk> * [if1632/gdi32.spec] Added SelectClipRgn - call win16 version. * [if1632/user32.spec] Added GetAsyncKeyState, GetMenuItemID and GetMenuStringA. * [include/wincon.h] Added COORD and SMALL_RECT typedefs, moved CONSOLE_SCREEN_BUFFER_INFO out of #if 0 protected portion of file. * [loader/pe_image.c] PE_InitTEB() - Tidy up, bug fix to stack pointer value (Borland programs now work better) * [win32/console.c] Added stub functions for GetConsoleScreenBufferInfo and GetLargestConsoleWindowSize * [win32/findfile.c] FindFirstFile32A() - removed erroneous strcpy * [windows/keyboard.c] GetAsyncKeyState() - bug fix - now returns value as per Microsoft specification. NB - I still have doubts about some other functions in this file.
1996-09-28 20:11:01 +02:00
ReleaseDC32(hwnd, hdc);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
return TRUE;
}
static LRESULT
SW_Size(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
/* Need to resize width to match parent */
INT32 width, height, x, y;
RECT32 parent_rect;
HWND32 parent;
INT32 flags;
flags = (INT32) wParam;
/* FIXME for flags =
* SIZE_MAXIMIZED, SIZE_MAXSHOW, SIZE_MINIMIZED, SIZE_RESTORED
*/
if (flags == SIZE_RESTORED) {
/* width and height don't apply */
Release 960902 Sun Sep 1 19:22:46 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [misc/commdlg.c] [if1632/commdlg.spec] Fixed some SEGPTR problems. * [windows/winproc.c] Added message translation for WM_COMPAREITEM, WM_DELETEITEM and WM_MEASUREITEM Fixed 16-to-32 translation for WM_HSCROLL/WM_VSCROLL. Fri Aug 30 13:39:00 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/drive.c] GetDriveType16 should report CDROMs as DRIVE_REMOTE (ACME setup). * [multimedia/audio.c] The minimum audiobuffer size shrunk somewhere in linux 1.3.xx below 4096 bytes. * [multimedia/mcistring.c] Segptr string handling fixed & enhanced. * [if1632/crtdll.spec][misc/crtdll.c] malloc,free,_strupr,_stricmp,_strcmpi added. * [if1632/wsock32.spec][misc/winsock.c] More direct thunks into unix libc and WsControl-stub added. Thu Aug 29 23:54:25 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk> * [objects/metafile.c] Bug fixes to both recording and playback of ExtTextOut(). Tue Aug 27 15:43:21 1996 Slaven Rezic <eserte@cs.tu-berlin.de> * [multimedia/audio.c] [multimedia/mcianim.c] [multimedia/mcicda.c] [multimedia/midi.c] Made cdaudio, audio and midi work for FreeBSD. Sun Aug 25 20:18:56 1996 Jukka Iivonen <iivonen@cc.helsinki.fi> * [misc/crtdll.c] [if1632/crtdll.spec] Added a lot of functions. * [misc/ole2nls.c] Added ID values for all languages in GetUserDefaultLCID(). Fri Aug 24 21:02:28 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/event.c] [windows/message.c] First attempt at hook WH_JOURNALPLAYBACK.
1996-09-02 18:46:30 +02:00
parent = GetParent32(hwnd);
Release 960811 Sun Aug 11 13:00:20 1996 Alexandre Julliard <julliard@lrc.epfl.ch> * [configure.in] [include/acconfig.h] [tools/build.c] Added check for underscore on external symbols. * [memory/selector.c] [memory/global.c] Fixed FreeSelector() to free only one selector. Added SELECTOR_FreeBlock() to free an array of selectors. * [objects/color.c] Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on hi-color displays. * [tools/build.c] [if1632/crtdll.spec] Added 'extern' type, used for external variables or functions. * [windows/winpos.c] Allow de-activating a window in WINPOS_ChangeActiveWindow(). * [windows/winproc.c] Added 32-to-16 translation for button messages. Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that happen to be valid SEGPTRs. Sat Aug 10 18:22:25 1996 Albrecht Kleine <kleine@ak.sax.de> * [windows/message.c] Removed a FIXME in MSG_PeekHardwareMsg(): produces correct data for the JOURNALRECORD-hook (using EVENTMSG16 structure). * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c] Introduced undocumented API function IsValidMetaFile(), plus a minor fix in last patch of CopyMetaFile(). * [objects/gdiobj.c] Removed a FIXME in IsGDIObject(): added magic word check. Sun Aug 10 18:10:10 1996 Bruce Milner <Bruce.Milner@genetics.utah.edu> * [controls/statuswin.c] First pass at implementing the StatusWindow class. * [include/commctrl.h] Header file for common controls. * [controls/widgets.c] Added InitCommonControls(). * [if1632/comctl32.spec] Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls. * [win32/findfile.c] [if1632/kernel32.spec] Add FindNextFile32A, FindClose. Modified FindFirstFile32A so it works with FindNextFile32A. * [include/winbase.h] Fixed WIN32_FIND_DATA structure member names. Sat Aug 10 09:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu> * [windows/scroll.c] Changed scrolling routines to benefit from DCE code update. Thu Aug 8 18:05:09 1996 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [files/file.c] SearchPath* could get NULL for lastpart argument. * [if1632/build-spec.txt] [documentation/debugging] Varargs documentation added, debugging hints updated. * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in] Started to implement CRTDLL. * [if1632/wsock32.spec] Some thunks to standard libc functions (structures have the same elements, but perhaps wrong offset due to packing). * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c] Merged kernel32.h into windows.h. * [misc/lstr.c] Enhanced FormatMessage(). * [misc/main.c] [if1632/kernel.spec] [include/windows.h] GetVersion() updated to new naming standard. Changed language handling to support language ids. * [misc/shell.c] Enhanced FindExecutable, so it finds files in the search path too. * [win32/environment.c] GetCommandLine* updated. * [loader/resource.c] [loader/pe_resource.c] FindResourceEx32* added. Loading of messagetables added. Language handling now uses Wine default language id.
1996-08-11 17:49:51 +02:00
GetClientRect32(parent, &parent_rect);
height = (self->textHeight * 3)/2;
width = parent_rect.right - parent_rect.left;
x = parent_rect.left;
y = parent_rect.bottom - height;
MoveWindow(hwnd, parent_rect.left, parent_rect.bottom - height - 1,
width, height, TRUE);
SW_SetPartBounds(hwnd, self);
}
return 0;
}
static LRESULT
SW_Destroy(STATUSWINDOWINFO *self, HWND32 hwnd, WPARAM32 wParam, LPARAM lParam)
{
int i;
for (i = 0; i < self->numParts; i++) {
if (self->parts[i].text && (self->parts[i].style != SBT_OWNERDRAW))
HeapFree(SystemHeap, 0, self->parts[i].text);
}
if (self->part0.text && (self->part0.style != SBT_OWNERDRAW))
HeapFree(SystemHeap, 0, self->part0.text);
HeapFree(SystemHeap, 0, self->parts);
return 0;
}
static LRESULT
SW_Paint(STATUSWINDOWINFO *self, HWND32 hwnd)
{
HDC32 hdc;
PAINTSTRUCT32 ps;
hdc = BeginPaint32(hwnd, &ps);
SW_Refresh(hwnd, hdc, self);
EndPaint32(hwnd, &ps);
return 0;
}
LRESULT StatusWindowProc( HWND32 hwnd, UINT32 msg,
WPARAM32 wParam, LPARAM lParam )
{
STATUSWINDOWINFO *self;
self = GetStatusInfo(hwnd);
switch (msg) {
case SB_GETBORDERS:
return SW_GetBorders(self, hwnd, wParam, lParam);
case SB_GETPARTS:
return SW_GetParts(self, hwnd, wParam, lParam);
case SB_GETRECT:
return SW_GetRect(self, hwnd, wParam, lParam);
case SB_GETTEXT32A:
return SW_GetText(self, hwnd, wParam, lParam);
case SB_GETTEXTLENGTH32A:
return SW_GetTextLength(self, hwnd, wParam, lParam);
case SB_SETMINHEIGHT:
return SW_SetMinHeight(self, hwnd, wParam, lParam);
case SB_SETPARTS:
return SW_SetParts(self, hwnd, wParam, lParam);
case SB_SETTEXT32A:
return SW_SetText(self, hwnd, wParam, lParam);
case SB_SIMPLE:
return SW_Simple(self, hwnd, wParam, lParam);
case WM_CREATE:
return SW_Create(self, hwnd, wParam, lParam);
case WM_DESTROY:
return SW_Destroy(self, hwnd, wParam, lParam);
case WM_PAINT:
return SW_Paint(self, hwnd);
case WM_SIZE:
return SW_Size(self, hwnd, wParam, lParam);
default:
return DefWindowProc32A(hwnd, msg, wParam, lParam);
}
return 0;
}
/***********************************************************************
* CreateStatusWindow32A (COMCTL32.4)
*/
HWND32 CreateStatusWindow32A( INT32 style, LPCSTR text, HWND32 parent,
UINT32 wid )
{
HWND32 ret;
ATOM atom;
atom = GlobalFindAtom32A(STATUSCLASSNAME32A);
if (!atom) {
/* Some apps don't call InitCommonControls */
InitCommonControls();
}
ret = CreateWindowEx32A(0, STATUSCLASSNAME32A, "Status Window",
style, CW_USEDEFAULT32, CW_USEDEFAULT32,
CW_USEDEFAULT32, CW_USEDEFAULT32, parent, 0, 0, 0);
return (ret);
}