Commit Graph

480 Commits

Author SHA1 Message Date
Aviad Pineles bbdb9dbba6 Avoid infinite loop in CreateRoundRectRgn(). 2000-10-25 21:20:25 +00:00
Patrik Stridvall f87b96e711 - Explicitly initialize structures.
- Fixed strange code probably caused by a merge conflict.
2000-10-24 02:20:31 +00:00
Dmitry Timoshkov ff59c33d49 Make EnumEnhMetaFile work. 2000-10-24 01:37:49 +00:00
Ulrich Weigand 409eb44eb0 Fixed painting problems in non-MM_TEXT modes. 2000-10-23 00:35:28 +00:00
Marcus Meissner 97827ead5b Stubbed GetDeviceGammaRamp. 2000-10-13 20:22:59 +00:00
Marcus Meissner bcbb6ec92b Return values are reversed in failure/rgdata == NULL case in
GetRegionData (was merge error by me).
2000-10-12 20:39:31 +00:00
Andreas Mohr ea8795b99c GDISelectPalette16 checked GetObjectType() return value for
PALETTE_MAGIC instead of OBJ_PAL.
2000-09-29 01:03:57 +00:00
Alexandre Julliard 15bfcd0398 Moved $(MODULE).o rule out of Make.rules into the individual
Makefiles.
2000-09-29 00:28:25 +00:00
Sergei Ivanov 3b216de5cd Fixed return values of GetRegionData. 2000-09-29 00:25:18 +00:00
Marcus Meissner 13de9b3579 WORD is unsigned, so we need to transalte 0xffff into -1. 2000-09-26 22:45:05 +00:00
Gerald Pfeifer 1b490b42bf Fixed format strings. 2000-09-24 03:05:11 +00:00
Alexandre Julliard ab86a9e563 Henning Hoffmann
Avoid deadlocks in EnumMetaFile.
2000-09-19 02:37:48 +00:00
Alexandre Julliard 3993216776 Moved Select/RealizePalette implementation to USER and use
pfnSelect/RealizePalette function pointers in GDI.
Make sure the palette handle is valid in GDISelectPalette16 (thanks to
Uwe Bonnes).
2000-09-16 20:57:39 +00:00
Andreas Mohr 007fb24088 Added support for non-deletable system brushes and pens created by
USER.
2000-09-16 20:53:51 +00:00
Eric Pouech 26501596da Fixed fallback code for StretchBlt on RLE DIBs with gaps. 2000-09-10 03:13:41 +00:00
Gerard Patel feb87374ba Make GetDeviceCaps16 (hdc, NUMCOLORS) not return -1 for 16 bits programs. 2000-09-07 18:37:52 +00:00
Gerard Patel 5faa5d74c3 Restored the hPseudoBitmap hack for programs deleting the 1x1 bitmap
in memory DCs.
2000-08-25 21:54:23 +00:00
Alexandre Julliard 2ad1a94d28 Backed out font codepage change. 2000-08-25 21:35:11 +00:00
Andreas Mohr 024e881230 GetObjectA: unlock the object again even in case of failure. 2000-08-25 21:30:34 +00:00
Hidenori Takeshima 7901c0b505 Handle the codepage of fonts if supported by the graphics driver. 2000-08-20 20:08:35 +00:00
Alexandre Julliard 9bfb173c22 Fixed GDI locking in GetDeviceCaps. 2000-08-20 18:49:08 +00:00
Huw D M Davies c7acd78070 Implemented playback of EMR_POLYBEZIER{TO}16, EMR_POLYLINE16 and
EMR_POLYPOLYLINE.
2000-08-20 03:40:04 +00:00
Alexandre Julliard 2a2321bbca Authors: Alexandre Julliard <julliard@codeweavers.com> (for Corel), Albert den Haan <albertd@corel.com>
Added syslevel locking for GDI operations.
Propagate the changes through the graphics code.
2000-08-19 21:38:55 +00:00
Alexandre Julliard c7e7df8b17 Replaced all lstr* calls from inside Wine code by their str* equivalent. 2000-08-14 14:41:19 +00:00
Alexandre Julliard 5ab9d860f2 Removed some unnecessary #includes and dll dependencies. 2000-08-09 22:35:05 +00:00
Alexandre Julliard 4fef2f1917 Removed obsolete SHMDATA parameter in GLOBAL_CreateBlock. 2000-08-09 22:27:11 +00:00
Alexandre Julliard cb10fdab99 Replaced lstrlen/lstrcmp by libc equivalents everywhere we don't need
to trap exceptions.
2000-08-06 02:41:16 +00:00
Alexandre Julliard 93652e1a68 Moved a bunch of functions out of libwine/kernel/gdi into USER. 2000-08-04 04:21:02 +00:00
Alexandre Julliard b0efe28f6c Removed a few dependencies on GDI internals from USER dll. 2000-08-04 04:18:04 +00:00
Alexandre Julliard 15467bfb1f Moved MulDiv() and VGA routines out of GDI. 2000-08-01 22:03:18 +00:00
Phillip Ezolt 3c41fabc6a Fixed CreateDC to work properly when it is called with a device. 2000-08-01 02:15:34 +00:00
Alexandre Julliard 946a4448af Cleaned up a few USER dependencies. 2000-07-30 13:50:27 +00:00
Alexandre Julliard 58d5a0a786 Removed some unnecessary inclusions of wingdi.h and winuser.h 2000-07-29 21:58:17 +00:00
Stephane Lussier 23259ce5c9 In CreateDIBSection function, if hdc is NULL it now uses the desktop DC
instead of failing.
2000-07-11 22:04:44 +00:00
Gerard Patel 5131f21fb2 hookThunk was not initialized in GetDcState. 2000-06-12 21:52:58 +00:00
James Abbatiello 355c523624 Don't print uiLengthDrawn in the FIXME in DrawTextExA. Its an output
variable, not an input variable.
2000-06-11 19:58:49 +00:00
Alexandre Julliard a660c7903f Moved DIB_FixColorsToLoadflags to cursoricon.c. 2000-06-03 20:45:20 +00:00
Patrik Stridvall e4174d5d57 GetRelAbs for some reason takes 2 parameters, even though the second
one is ignored at least on Windows NT 3.51 according to Marcus Meissner.
2000-05-18 00:51:52 +00:00
Alexandre Julliard 6725dc61eb Fixed DrawTextW length handling. 2000-05-03 17:43:42 +00:00
Dimitrie O. Paun 4d48dd3048 Removed HEAP_xalloc. 2000-04-30 12:22:18 +00:00
Ove Kaaven 8b9f33851a Added DIB_CreateDIBSection with extra parameter ovr_pitch, added
ovr_pitch to pCreateDIBSection in DC_FUNCS. If ovr_pitch is nonzero,
it is a pitch override (specifies bytes per line), and tells to treat
the offset parameter as an already-mapped virtual memory address (if
the section parameter is zero). Fixed a DIB status init bug in
creating DIB sections from file mappings (if created from mapping, the
DIB is *not* really InSync).
2000-04-29 16:47:07 +00:00
Huw D M Davies f46e1d8a51 Fix return value for OffsetRgn if x and y are 0. 2000-04-18 11:54:29 +00:00
Huw D M Davies c9315fe820 Tidy up of PlayEnhMetaFileRecord - fixes PolyPoly* functions. 2000-04-18 11:52:58 +00:00
Huw D M Davies 2cf4ebc1aa Fixes and cleans up some of the GetEnhMetaFile* functions.
Fixes scaling of EMFs in playback.  Will probably be right
when World Transforms work properly...
2000-04-13 15:57:34 +00:00
Patrik Stridvall 54fe8380a1 Fixed some issues reported by winapi_check. 2000-04-06 20:21:16 +00:00
Junichi Kuchinishi 34b7b3f74f Added conversion from DBCS lpDx to WCHAR lpDx. 2000-04-06 20:12:16 +00:00
Huw D M Davies 280aeb9689 Delete objects after use in EnumEnhMetaFile.
Make PlayEnhMetaFile call EnumEnhMetaFile.
Move EnumEnhMetaFile prototype to wingdi.h.
2000-03-30 20:22:41 +00:00
Patrik Stridvall 2d6457c11a Added/fixed some documentation reported by winapi_check. 2000-03-28 20:22:59 +00:00
Alexandre Julliard a7116b0559 Fixed memory allocations. 2000-03-28 20:02:37 +00:00
Alexandre Julliard a08e2cf19f Merged DDBitmap and physBitmap into the generic bitmap structure
(suggested by Andrew Lewycky).
2000-03-28 13:37:50 +00:00
Hidenori Takeshima e2905ea478 Fixes for i18n. 2000-03-26 14:43:22 +00:00
Francois Gouget 6d77d3a1df Use min/max instead of MIN/MAX. 2000-03-25 21:44:35 +00:00
Alexandre Julliard b52aed4e10 Moved LoadImage and related functions to cursoricon.c. 2000-03-24 21:40:30 +00:00
Alexandre Julliard d6c0d8642c Moved gdi/user thunking functions into their respective dlls.
Moved keyboard.spec into user dll.
2000-03-24 21:38:30 +00:00
Alexandre Julliard 28c3a1baf3 Moved graphics initialisation to the x11drv/ttydrv dll init code.
Merged event, keyboard and mouse drivers into USER driver.
2000-03-20 18:21:19 +00:00
Alexandre Julliard aafd54dab9 Moved font resource functions out of the X11 driver. 2000-03-19 21:20:54 +00:00
Alexandre Julliard 07e4213642 Added GetDCOrgEx in graphics device interface and removed X11 code
from dc.c.
2000-03-19 21:19:21 +00:00
Dimitrie O. Paun 9ad9636725 Removed most calls to xmalloc/xrealloc. 2000-03-19 14:29:50 +00:00
Alexandre Julliard 1dac57f05f Created separate dlls for user,gdi,ttydrv,x11drv.
Fixed Winelib argc handling (thanks to Eric Pouech).
2000-03-19 12:08:09 +00:00
Alexandre Julliard 62f824f7cb Avoid calling the *Rect USER functions from inside GDI.
Moved a few USER functions to a more appropriate location.
2000-03-18 22:12:33 +00:00
Rein Klazes ad5d10f223 Correct rounding of the result in MulDiv16(). 2000-03-12 21:12:38 +00:00
Alexandre Julliard 09f8a751e8 Lilia Roumiantseva
cbCountSizeOfEnhMetafile callback function instead of increasing a
contents of the pointer to the size increased the pointer itself.
2000-03-04 19:18:23 +00:00
Serge Ivanov 15f86464c0 CURSORICON_IconToCursor: inconsistent Lock/Unlock 2000-03-04 19:07:08 +00:00
Patrik Stridvall 0ee98cc39f Fixed ANSI C violations. 2000-02-26 13:17:55 +00:00
Juergen Schmied 44016841cf Fixed allocation of 16x16 icons. 2000-02-25 20:52:01 +00:00
Serge Ivanov ed5ac5f60b Not all region functions updated 'type' field to reflect current
region state.
2000-02-25 20:42:11 +00:00
Alexandre Julliard 90476d6b4a Moved SystemHeap allocations to the process heap. 2000-02-16 22:47:24 +00:00
Matthew Cline 20512fd854 GetObjectA() now rejects GDI handles which are invalid. 2000-02-13 16:00:17 +00:00
Alexandre Julliard fc296da4e2 Removed extra includes from ole.h and wingdi.h. 2000-02-10 19:39:48 +00:00
Jeremy White d3e22d9d55 Removed #include of wingdi.h and windef.h from winuser.h (and resolved
the resulting compilation failures).
2000-02-10 19:03:02 +00:00
Marcus Meissner 382354e687 GetDeviceCaps: spot yet unsupported accesses to the DeviceCaps struct. 2000-01-30 22:19:08 +00:00
Alexandre Julliard 0dd3655fd0 Removed debugstr.h. 2000-01-29 19:49:58 +00:00
Marcus Meissner 718b0e4059 Corrected arguments in DIB_DeleteDIBSection. 2000-01-23 02:18:52 +00:00
Peter Hunnisett f2b8492285 - Added some missing EMR record types and updated and fixed others
- Added stubs and headers for CreateColorSpace,DeleteColorSpace and SetColorSpace
- Added header for SetICMMode
- Added ability to play more enhanced metafile records
2000-01-15 22:17:49 +00:00
Gerard Patel 82f37be914 Removed DeleteObject call left over from previous patch. 2000-01-15 22:11:21 +00:00
Gerard Patel d1795f674c Avoid deleting of the default 1x1 bitmap for memory DCs. 2000-01-09 20:52:53 +00:00
Huw D M Davies c553924ddd Move DCFuncs ExtTextOut and GetTextExtentPoint to Unicode.
Map a few Unicode chars to the first 0xff in psdrv.
Don't expect x11drv to display Unicode chars yet.
1999-12-26 00:47:03 +00:00
Peter Hunnisett 27548eeb4a Added support for playing more record types (still more to come). 1999-12-25 22:58:59 +00:00
Huw D M Davies 7c57a72c57 PlayMetaFile and EnumMetaFile should work if the hdc is a
(enh)metafile DC.
1999-12-20 03:56:09 +00:00
Eric Pouech a35e345c04 Allows DrawText(16|A|W) to get a NULL string as parameter. 1999-12-12 19:38:17 +00:00
Peter Hunnisett 0cdc4d9307 - Implemented GetEnhMetaFilePaletteEntries
- Added fixme stubs for SetMetaRgn and GetMetaRgn
- Added support for playing several enhanced metafile records
- Added beginnings of implementation for playing the rest of the
  enhanced metafile records
1999-12-11 23:18:10 +00:00
Dimitrie O. Paun dd03cc19fd Make use of the DEFAULT_DEBUG_CHANNEL where appropriate.
Use the default version of FIXME, ERR, WARN, TRACE for the default
channel.
1999-12-08 03:56:23 +00:00
Peter Hunnisett c821a75b9c - Added stub for conversion from meta to enhance meta files.
- Implemented GetEnhMetaFileBits for enhanced meta files.
1999-12-04 03:56:53 +00:00
Ulrich Weigand d1682aab05 Removed some unaligned accesses. 1999-11-21 02:21:17 +00:00
Huw D M Davies cdf191a205 Stub for GetFontData16. 1999-11-21 02:01:41 +00:00
Huw D M Davies f64e0d7e37 Add stubs for Get/SetLayout(). 1999-11-21 00:49:50 +00:00
Lionel Ulmer acc7467c03 Added the possibility to have mouse movements reported relative to
Wine's mouse driver.
1999-11-07 21:25:57 +00:00
Ian Schmidt e04b3e9a02 Removed unnecessary USER call from GetFontMetrics. Fixes native USER. 1999-11-04 01:45:53 +00:00
Francis Beaudet 12668f5e2f Return correct height and width for stock fonts in GetObject. 1999-10-31 17:32:26 +00:00
Patrik Stridvall 3a9c476a03 Fixed documentation. 1999-10-31 02:07:05 +00:00
Patrik Stridvall 96336324cf - Added missing configuration #if:s and #includes:s.
- Minor configuration related changes.
1999-10-24 22:13:47 +00:00
Patrik Stridvall 900290aa9f Added Win16 variants of existing Win32 functions. 1999-10-24 21:32:43 +00:00
Matthew J. Francis ed744e787c Fixed top-down DIB handling in StretchDIBits32(). 1999-10-24 17:28:23 +00:00
Ulrich Czekalla e6ab9d308a Make sure that all calls use the extended structures which are a
superset of the regular structures.
1999-10-24 17:26:45 +00:00
Ulrich Czekalla 04df4cffdf Copy bitmaps properly. 1999-10-23 18:56:30 +00:00
Alexandre Julliard 54e477588c Backed out previous change (breaks with metafiles). 1999-10-13 16:16:23 +00:00
Eric Pouech 2818a67635 Optimized StretchDIBits to call SetDIBitsToDevice (when src & dst
dimensions are equal).
1999-10-13 15:40:17 +00:00
Francis Beaudet ec09a400a7 DPtoLP needs to round the result.
Fixed MulDiv to deal better with negative numbers.
1999-09-27 11:44:01 +00:00
Richard Cohen 8b47ec24c4 Fixed GetRandomRgn. 1999-09-27 11:41:13 +00:00
Francois Boisvert 3d696d93de CreateDIBitmap creates a monochrome bitmap only when the first color of the
colormap is black followed by white. Otherwise it creates a color bitmap.
1999-09-23 11:40:38 +00:00
Ian Schmidt 31b47218c8 Added partial implementation of GetICMProfileA, required by Paint Shop
Pro 5.
1999-09-22 15:12:41 +00:00
Patrik Stridvall e92331ffd0 Fixed ANSI C violations. 1999-09-20 18:52:06 +00:00
Ulrich Weigand f86aab84ba DC hook proc thunk management simplified. 1999-09-20 18:47:14 +00:00
Noel Borthwick d05b7beb5a - Add clipboard support for copying/pasting bitmaps or Pixmaps between Wine
and native Linux applications.
- Respond to the MULTIPLE selection request target when Wine is the
  selection owner.
- Relax type checking for TARGETS selection.
1999-09-20 15:42:47 +00:00
Juergen Schmied cb2e4d3a3c Fixed crash when loading *.ani files. 1999-09-19 18:56:40 +00:00
Peter Ganten 87d95b7bc5 Stubs for PolyTextOutA/W. 1999-09-19 14:17:14 +00:00
Karl Lessard c73a1fd62d Some more minor GDI fixes. 1999-09-19 14:15:41 +00:00
Huw D M Davies 1bb9860547 Small DIB fixes. 1999-09-19 12:04:17 +00:00
Karl Lessard dee464c4c6 Fixed GetDIBits problems. 1999-09-14 11:51:01 +00:00
Huw D M Davies 304d9a4737 Change interfaces to THUNK_Alloc/Free slightly and make them non-static.
Remove relays for win16drv from CallBack table, instead use build to
generate them directly in graphics/win16drv/prtdrv.c.
If Printer AbortProc is 16bit then allocate thunk and store that as a
32bit proc in DC.  Setting of abortprocs now done in the correct place
(i.e. not in the driver).
1999-09-13 15:15:45 +00:00
Kai Morich 9e9fc1b9b6 Relaxed parameter checking for GetDIBits. 1999-09-13 15:13:24 +00:00
Francis Beaudet 699900bdb3 Use a special value in the hotspot coordinate to identify which HICON
are cursors and which are icons.
1999-09-05 12:15:49 +00:00
Huw D M Davies fc348622ed Fixed compiler warnings. 1999-09-04 14:25:02 +00:00
Pierre Mageau 4ac8db783d Changed CopyImage to accept desiredX, desiredY and LR_COPYFROMRESOURCE.
CURSORICON_FindBestIcon changed to find the correct icon.
ImageList_ReplaceIcon now calls CopyImage internally.
Assign a value for the hIconSm CLASS member (using CopyImage).
1999-09-04 11:16:48 +00:00
Karl Lessard 41875795cc Ian Ward
Dan Langlois
Speed up conversion between XImages and DIBSections.
1999-09-03 16:49:17 +00:00
Richard Cohen 05bf5344f0 Make stock fonts independent of mapping mode.
System font should only be bold for Win31.
1999-09-03 15:16:23 +00:00
Steve Tibbett c5255354ab Fixed cursor stretch code. 1999-08-15 18:52:32 +00:00
Gerard Patel 9dd16f0a1a Added protection against possible memory corruption. 1999-08-15 16:38:07 +00:00
Steve Tibbett 85692c8cbf Fixed cursor selection to find the correct cursor when more than one
available.
1999-08-15 16:35:21 +00:00
Juergen Schmied 2259e44e27 First implementation of GetCharacterPlacementA. 1999-08-15 14:22:48 +00:00
Eric Kohl b694b006a4 Improved GetRandomRegion(). 1999-07-31 13:04:36 +00:00
Ulrich Weigand 98c3053e6e Added FinalUserInit16/FinalGdiInit16 stubs.
Call out to FinalUserInit in MAIN_EmulatorRun.
1999-07-27 17:10:06 +00:00
Huw D M Davies d016b0a02d Implement handling of 32 bit AbortProc. 1999-07-24 12:09:34 +00:00
Huw D M Davies aec373ca0d String to GetTextExtentPoint is not necessarily 0 terminated.
Fix function name `32's in comments - API naming madness makes this
worthwhile.
1999-07-23 19:25:11 +00:00
Thuy Nguyen 6e133d5d3b Fixed rounding in MulDiv. 1999-07-18 18:36:18 +00:00
Eric Pouech ec133cea9a Check better that handles are actual handles to a region. 1999-07-18 18:24:56 +00:00
Juergen Schmied a904e16faa Fixed crash due to invalid pointer. 1999-07-10 10:09:58 +00:00
Patrik Stridvall d96e1f133e Moved code to the X11 driver. 1999-07-04 13:31:03 +00:00
Eric Kohl 121e672e87 Improved GetRandomRegion(). 1999-06-26 11:53:56 +00:00
Marcus Meissner b8830034d9 Do not reuse a passed CONST RECT * pointer. 1999-06-13 08:36:34 +00:00
Patrik Stridvall fdcfdb9a6d Added missing/wrong includes. 1999-06-12 14:55:11 +00:00
Huw D M Davies e987634c44 Open files with more appropriate sharing mode. 1999-06-12 06:50:57 +00:00
Huw D M Davies 0ae4e09188 Small fixes for EnhMetaFile playback. 1999-06-12 06:49:52 +00:00
Eric Pouech 7990b7c011 Fixed CreateCompatibleBitmap when called with 0 width or height. 1999-06-07 17:46:39 +00:00
Joshua Thielen 50e96dc2a6 Allow pens with styles greater than PS_INSIDEFRAME to be created with
ExtCreatePen.
1999-06-05 15:11:43 +00:00
Noel Borthwick 86b686fb8c From CreateCompatibleDC, pass the device name associated with the
source DC in order to allow PSDRV_CreateDC to locate the printer info
for the device.
1999-06-05 08:52:30 +00:00
Alexandre Julliard 156570906f Converted to the new debug interface, using script written by Patrik
Stridvall.
1999-05-23 10:25:25 +00:00
Eric Pouech 578621349a Check if dc has been created before using it. 1999-05-22 18:41:25 +00:00
Marcus Meissner ddca315388 Replaced all occurences of SYSMETRICS_xx and sysMetrics[SM_xx] by
GetSystemMetrics(SM_xx), removed no longer needed includes of
sysmetrics.h.
1999-05-22 11:33:23 +00:00
Pascal Lessard 8903e536fb Add some null checking in the Get/SetBitmapBits functions. 1999-05-22 10:39:00 +00:00
Huw D M Davies e39b676ae9 Implement DocumentProperties, DeviceCapabilities, beginnings of
Open/Get/ClosePrinter.  Additions to PSDRV_DeviceCapabilities.
Split off WINSPOOL into its own directory.
Several functions added to DC_Funcs.
Based largely on a patch by Pascal Lessard <pascal@macadamian.com>
1999-05-17 16:20:51 +00:00
Alex Korobka 98447497b7 Rearranged PAINT_RedrawWindow() so that it first recursively updates
invalid regions and only then starts sending out messages. This should
help with reentrancy during message processing and now it needs just
one (or none) scratch region for all there is to do. Also, small fixes
for SetWindowPos().
1999-05-08 17:57:09 +00:00
Patrik Stridvall 896889f317 ANSI C fixes. 1999-05-08 12:50:36 +00:00
Huw D M Davies a9f55c46c1 Split off wingdi16.h from wingdi.h. Add many more #defines/typedefs
to bring wingdi.h almost upto a complete NT4.0 interface.
Fix return value of SetRectRgn().
1999-05-08 12:45:18 +00:00
Ulrich Weigand e6ea9ebb5e Check for busy DCE moved to DCHook16(). 1999-05-08 09:50:52 +00:00
Francis Beaudet 179e8deb6d Check if DC is busy before deleting it. 1999-05-04 16:55:22 +00:00
Alexandre Julliard 06c275a643 Converted to the new debugging interface (done with the help of the
script written by Patrik Stridvall).
1999-05-02 14:32:27 +00:00
Michael Veksler 92ae219e04 Removed redundant include of winbase.h from winuser16.h.
Moved types from winbase.h to winuser16.h .
1999-05-02 11:39:09 +00:00
Huw D M Davies 585c8466ab Several improvements to Enhanced MetaFile playback. 1999-05-02 09:23:51 +00:00
Pavel Roskin ffd5e82b97 LoadImageW fixed for hicolor displays. 1999-05-01 10:41:02 +00:00