Commit Graph

375 Commits

Author SHA1 Message Date
Alexandre Julliard 83decd25ad Changed the CreateDC driver entry point to use an HDC instead of a DC
pointer.
2004-03-04 06:26:11 +00:00
Alexandre Julliard ebd24807fe Pass the gdiFont object to the SelectFont driver entry point so that
we don't need to look into the DC structure for it.
2004-03-04 04:05:04 +00:00
Alexandre Julliard 8d18b2a518 Pass the breakExtra value in the ExtTextOut driver call, since there
is no function to retrieve it from the HDC.
2004-03-04 01:42:57 +00:00
Alexandre Julliard cb4ecc878f Implemented Get/SetBoundsRect based on a patch by Ken Belleau. 2004-03-03 05:29:44 +00:00
Alexandre Julliard 589e115233 We no longer use the .exe.spec.c files. 2004-03-02 21:16:37 +00:00
Rein Klazes 8677fbf362 Add stub implementation for SetICMProfileA(). 2004-02-20 01:08:16 +00:00
Alexandre Julliard 492ac292b9 Added support for building a dll from a .def file for cases where we
don't want to write a full .spec.
Renamed --spec option to --dll for consistency.
2004-02-17 20:36:16 +00:00
Alexandre Julliard 7fd58cb13f Get rid of a few 16-bit exports in gdi32. 2004-02-13 20:58:27 +00:00
Alexandre Julliard e04fe7da4e Moved hGCClipRgn handling to the graphics driver. 2004-02-13 20:26:27 +00:00
Alexandre Julliard 85106cdaf3 Moved remaining files from graphics/ to dlls/gdi. 2004-02-12 23:11:30 +00:00
Huw Davies 2cd9ee9528 GetCharABCWidths returns the widths of unrotated glyphs like
GetCharWidth already does.
2004-02-12 20:05:47 +00:00
Alexandre Julliard beacd10175 Moved some code out of the graphics/ directory into dlls/gdi. 2004-02-12 02:17:51 +00:00
Kevin Koltzau 4a4b5d407c Implementation of gdi32.GdiTransparentBlt and msimg32.TransparentBlt. 2004-02-02 23:10:35 +00:00
Huw Davies 8607f28b6b GulimChe has the IsFixedPitch flag set, yet contains glyphs of
differing widths.  To cope with this we need to call FT_Load_Glyph
with the FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH flag in order to get
back the correct glyph metrics from FreeType.
2004-02-02 23:03:54 +00:00
Francois Gouget 6b6ed724ae Add missing '\n's to debug traces. 2004-01-27 00:01:43 +00:00
Francois Gouget 7494b5b980 Add trailing '\n's to ok() calls.
Check whether _MSC_VER is defined.
2004-01-23 02:11:12 +00:00
Rein Klazes f20ce3b816 Fix MultiByteToWideChar and WideCharToMultiByte when called with code
page CP_SYMBOL.
Remove the symbol font from the code page table, so it is not reported
as a valid/supported/installed code page.
Remove workarounds for the badly behaved MultiByteToWideChar and co.
in a few places.
2004-01-20 22:39:06 +00:00
Huw Davies 5e86e9d5bc Fix compilation if Freetype isn't installed. 2004-01-19 21:51:45 +00:00
Alexandre Julliard 32f1ac3a66 Use the exported FONTENUMPROCW as parameter in the EnumDeviceFonts
driver function instead of defining a private function type.
2004-01-18 23:35:12 +00:00
Vincent Béron 82ceaca3ec Fix compilation with ICU after introduction of gdi_private.h. 2004-01-16 02:01:32 +00:00
Alexandre Julliard 7342390852 Get rid of the global INTERNAL_[XY]WSTODS macros. 2004-01-15 06:19:35 +00:00
Alexandre Julliard 6ec42c0c3b Moved a bunch of definitions from gdi.h into a new gdi_private.h to
make sure we don't use them outside of gdi32.
2004-01-15 00:35:38 +00:00
Alexandre Julliard 85dcf1e1a0 Moved SetDrawable, StartGraphicsExposures and EndGraphicsExposures
functionality to x11drv escapes so that we don't have to access the DC
structure directly.
2004-01-14 04:53:11 +00:00
Alexandre Julliard 53145d96f6 Moved some code around to avoid exporting DIB functions from gdi32. 2004-01-13 23:31:46 +00:00
Marcus Meissner 219731197a Added stub for EnumICMProfilesA/W. 2004-01-13 05:20:17 +00:00
Eric Pouech 5bf3a2669b Made wine_get_unix_file_name take a Unicode string pointer. 2004-01-05 23:42:09 +00:00
Marcus Meissner 7d7ce505f4 Older versions of freetype do not have FT_Get_First_Char. 2003-12-15 19:50:59 +00:00
Huw Davies c91c868692 If a font has a version 0 OS2 table then Windows uses ANSI_CHARSET if
the first charcode < 0x100, else it uses SYMBOL_CHARSET.  Based on a
patch by Rein Klazes.
2003-12-10 00:36:22 +00:00
Huw Davies 6d4fc7efe6 If usWinAscent + usWinDescent == 0 then use the Ascender and Descender
values instead.
2003-12-08 21:53:15 +00:00
Huw Davies 1025ff0c9b Implement CopyEnhMetaFileW. 2003-12-01 22:42:56 +00:00
Mike McCormack 7eab865d99 Use the handle deletion mechanism in wmfs. 2003-11-26 03:38:11 +00:00
Huw Davies 9e8ce63e2e Let enhmetafiles reuse gdi handles. This works by a dc 'registering'
with an object that it wants to know when the object is deleted. Until
the dc gets delete notification it's free to assume that it doesn't
need to write the create record for that object again.  Upon receiving
the delete notification it writes the DeleteObject record. Windows
seems to do it this way too.
2003-11-25 05:03:09 +00:00
Rein Klazes e617a9c528 Include ft2build.h before freetype/freetype.h. Libfreetype 2.1.7
requires this.
2003-11-19 02:18:13 +00:00
Alexandre Julliard f9be2f3d21 Removed some unnecessary includes. 2003-11-17 20:31:29 +00:00
Huw Davies ef2ac7acc3 Scale the OUTLINETEXTMETRIC's bounding box with the font size.
Fix wineps's font downloaders to cope with this behaviour.
2003-11-12 22:42:55 +00:00
Dmitry Timoshkov bec6cfe0d0 Constify strings. 2003-11-11 20:39:34 +00:00
Huw Davies 6e12807b55 Load any TrueType fonts that fontconfig knows about. 2003-11-09 00:30:13 +00:00
Vincent Béron bd699e5edc Implemented GetDCPenColor and GetDCBrushColor. 2003-11-05 23:25:37 +00:00
Ulrich Czekalla 16ff6689df Implemented SetDCPenColor and SetDCBrushColor. 2003-11-05 01:43:57 +00:00
Marcus Meissner d9b1bb7152 Use freetype 2.0 defines for font encodings instead of misuse of
MS_MAKE_TAG.
2003-10-28 00:08:28 +00:00
Alexandre Julliard b83789fdc3 Updated some of the generated tests. 2003-10-24 04:45:35 +00:00
Dave Belanger 46329e83f0 Fix EMF driver UpdateBBox routine. The EMF bounding box must be stored
in device coordinates in the metafile.
2003-10-22 03:02:08 +00:00
Marcus Meissner b1b1e297ef Specify fourcc codes for encodings directly, instead of using changing
enum names.
2003-10-15 20:51:22 +00:00
Dave Belanger 2925d6ad17 Improved selection of freetype face charmap. 2003-10-15 02:33:55 +00:00
Dave Belanger 53f2e61e37 Implemented BitBlt, StretchBlt and SetDIBitsToDevice EMF driver
callbacks.
Cleaned up redundant code in EMFDRV_StretchDIBits.
2003-10-15 02:33:15 +00:00
Dmitry Timoshkov 2581db8f6a Fixed some problems found while compiling and linking Wine under
Cygwin.
2003-10-14 05:27:43 +00:00
Dave Belanger 9973af57e9 Implementation of underline and strikeout text in xrender. 2003-10-11 05:24:22 +00:00
Dimitrie O. Paun fbdfd910c1 Remove SYMBOLFILE and LDDLLFLAGS from Makefiles. 2003-10-11 01:09:15 +00:00
Dave Belanger 3da1e24643 Implementation of SetTextJustication EMF driver callback. 2003-10-10 00:06:59 +00:00
Dave Belanger 43e8471a55 Improved font glyph transformation support in GetGlyphOutline. 2003-10-10 00:06:35 +00:00
Dave Belanger 5735c58eb1 Improved the bounding box calculation for the EMF driver ExtTextOut
metarecord. It takes the text alignment into account.
2003-10-09 19:44:35 +00:00
Dave Belanger 36a6c740c4 Implementation of EMF driver OffsetViewportOrg and OffsetWindowOrg
callbacks using the EMR_SETVIEWPORTORGEX and EMR_SETWINDOWORGEX
metarecords respectively.
2003-10-09 04:42:45 +00:00
Dave Belanger 633e379eb9 Implementation of SetPixel metarecord. 2003-10-08 22:34:15 +00:00
Dave Belanger a7bbf47f1b Avoid excessive heap memory reallocation when generating EMF
metarecords in memory.
2003-10-08 22:33:35 +00:00
Francois Gouget 61ef356347 Some spelling fixes. 2003-10-08 19:09:44 +00:00
Dave Belanger d1fa4b2d73 Spit out EMR_RESTOREDC metarecords with -1 as argument as long as we
don't get to the saved state we want.
2003-10-07 03:32:28 +00:00
Dave Belanger 78711dd6f5 Improved generation of font signature from freetype face charmaps. 2003-10-04 04:15:47 +00:00
Dave Belanger f0d96a2619 Face families are in the top 4 bits of lfPitchAndFamily, so mask with
0xF0 before testing.
2003-10-04 04:00:08 +00:00
Dave Belanger 325f646fdc Implemented the SetArcDirection metarecord in EMF driver. 2003-10-04 03:08:25 +00:00
Jon Griffiths 4c1fa161a3 Documentation updates. 2003-10-01 03:20:21 +00:00
Daniel Marmier a613de2a22 Use #ifdef instead of #if for all feature tests.
Check that _MSC_VER is defined before using it.
2003-09-30 00:33:47 +00:00
Dimitrie O. Paun 8b255842ec Remove the obsolete pascal16 (replaced by pascal -ret16). 2003-09-26 04:32:19 +00:00
Alexandre Julliard 16cd86197a Moved DLLFLAGS to a separate variable instead of including it in
DEFS.
2003-09-24 19:01:44 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard 038ede8474 Avoid heap reallocation each time a metarecord is written in memory
(based on a patch by Warren Baird).
2003-09-03 00:18:33 +00:00
Dave Belanger 549e247844 Implementation of SelectPalette and RealizePalette in the metafile
driver.
2003-08-30 00:15:12 +00:00
Warren Baird 2c754a6ec0 Save the ext alignment information in a 8-bytes metarecord as it
should be.
2003-08-30 00:13:34 +00:00
Alexandre Julliard 19b6a49845 Allocate DebugInfo field for all critical sections (based on a patch
by Alex Pasadyn).
Get rid of the Wine-specific CRITICAL_SECTION_INIT macro.
2003-08-12 23:50:54 +00:00
Dmitry Timoshkov 3a910c7d1f Convert CreateDC to unicode in the driver interface. 2003-08-12 20:42:18 +00:00
Dmitry Timoshkov 4e1ef0c114 For all DLLs with defined DllMain and which do not require
DLL_THREAD_ATTACH/DLL_THREAD_DETACH notifications, call
DisableThreadLibraryCalls() in order to slightly improve performance
on thread creation/exiting.
2003-06-30 20:53:48 +00:00
Shachar Shemesh 409374d914 Implementation of the reordering algorithm by calling ICU's reordering
functions.
2003-06-27 20:47:16 +00:00
Mike McCormack 69ac76d050 Handle CreateMetaFileW(NULL) correctly. 2003-06-24 02:34:42 +00:00
Alexandre Julliard 280528a07e Added special case for "display" in DRIVER_GetDriverName so that
GetDC(NULL,"display") works.
2003-06-23 20:51:41 +00:00
Huw Davies c23f8578c3 Don't enable client side fonts unless we have at least one non-symbol
font installed - this avoids a nasty Wingdings only scenario.
Add the ability to perform font replacements, this essentially lets
you give a second name to a font family so that familyA gets
enumerated as familyB too.
If we encounter two copies of the same font then use the one with the
larger version number.

Dmitry Timoshkov <dmitry@codeweavers.com>
Move GetTextCharsetInfo implementation to the font driver.
2003-06-23 20:51:06 +00:00
Mike McCormack 10c3764058 Record SetWorldTransform and ModifyWorldTransform in enhanced
metafiles.
2003-06-23 19:46:56 +00:00
Alexandre Julliard 4ee8290b96 Added checks for ICU libraries (based on a patch by Shachar Shemesh). 2003-06-20 21:38:10 +00:00
Mike McCormack 399967c10d Implemented GdiComment for enhanced metafiles. 2003-05-21 18:28:49 +00:00
Huw Davies cc5f3cd9b8 Implemented a few more device caps. 2003-05-19 21:51:44 +00:00
Mike McCormack 3b5708640c Implemented StretchDIBits in the EMF code. 2003-05-19 18:49:52 +00:00
Dmitry Timoshkov 7faae4c5d5 Fixed some issues in EMFDRV_ExtTextOut. 2003-05-19 18:48:37 +00:00
Huw Davies 6ac675188a Record escapes in metafiles. 2003-05-19 18:44:58 +00:00
Alexandre Julliard e1147baa00 Use a different magic for memory DCs and get rid of the DC_MEMORY
flag.
2003-05-13 23:56:12 +00:00
Alexandre Julliard fde5ab17f9 Reset signal handlers when starting child process. 2003-05-13 00:45:44 +00:00
Warren Baird 2711374bc5 Fix the PolyPolygon function so it really generates a polypolygon and
not multiple sets of polygons.
2003-05-12 03:27:24 +00:00
Huw Davies ee3e98653a Allow the cups port to be redirectable. This gives us the option of
piping the PostScript through something before it gets sent to the
printer (like we can already do for non-cups systems).
2003-05-12 03:26:28 +00:00
Alexandre Julliard ebc9abd1a1 Added partial stub for GetTransform. 2003-05-11 03:31:53 +00:00
Huw Davies 4bdeae37a1 Added stub for SetVirtualResolution. 2003-05-11 03:03:25 +00:00
Dimitrie O. Paun 1a1f9bffb3 Make it easy to use something other than wrc to compile resources. 2003-05-06 18:34:53 +00:00
Alexandre Julliard 2e12d33dfd Removed no longer needed uses of LDPATH. 2003-04-21 23:54:05 +00:00
Alexandre Julliard fc09423d3d Allow overriding CFLAGS when running configure. Other small cleanups. 2003-04-14 21:46:41 +00:00
Maxime Bellengé 065ac4de85 Implemented the GRADIENT_FILL_RECT{H|V} cases of GdiGradientFill. 2003-04-07 23:21:03 +00:00
Alexandre Julliard 06a8c1203f Portability fixes. 2003-04-01 00:12:50 +00:00
Adam Gundy ac89a159ac Don't look at the second character of the path unless the first
character is non-NUL.
2003-03-30 01:36:09 +00:00
Dimitrie O. Paun 8794935e12 Remove unused options -a and -C.
Collapse the -w into -O, for symmetry with -J.
Update the man page to the latest options.
2003-03-27 18:37:59 +00:00
Alexandre Julliard e048adab83 List 16-bit spec files explicitly to avoid problems with some versions
of make.
2003-03-23 20:00:02 +00:00
Alexandre Julliard 9e4fc4c9b6 Converted winebuild option parsing to use getopt_long. Added a number
of long aliases for the existing short options.
2003-03-23 01:12:30 +00:00
Alexandre Julliard 114a31a2a8 Take advantage of new winebuild syntax to remove redundant function
names in spec files.
2003-03-20 03:53:12 +00:00
Paul Rupe 3e91931820 Fix a couple INT/UINT comparisons. 2003-03-17 04:42:30 +00:00
Tony Lambregts 361e691961 Janitorial. Get rid of W->A call. 2003-03-07 23:08:59 +00:00
Alexandre Julliard 7e92c9af7b Replaced most uses of the auto-generated glue code by explicit calls
to WOWCallback16Ex.
2003-02-27 21:09:45 +00:00
Alexandre Julliard b59bdbfa41 Get rid of win16drv directory. 2003-02-27 00:28:50 +00:00
Alexandre Julliard 69e631d168 Removed the 16-bit graphics driver support; this has been broken for a
long time anyway.
2003-02-27 00:11:54 +00:00
Warren Baird 41bbe7073f Implementation of GetDeviceCaps in metafile driver. 2003-02-12 01:17:25 +00:00
Warren Baird 6552e83a2d Fix wrong structure used to determine the size of a memcpy in
MFDRV_CreateBrushIndirect.
2003-02-11 22:13:11 +00:00
Marcus Meissner f63e5b646a Remove errno.h from files that do not need it. 2003-01-23 22:51:04 +00:00
Alexandre Julliard f8aa3b506c Added -Wpointer-arith gcc flag, and fixed the resulting warnings. 2003-01-23 21:32:35 +00:00
Dimitrie O. Paun 4a883a55f6 Collapse the -hHrs options into the -O option.
Generate .res files by default.
2003-01-09 00:03:53 +00:00
Alexandre Julliard dbf8b78acd Added .spec.def files. 2002-12-12 22:04:04 +00:00
Alexandre Julliard 2a93f8505c Pass the -J option to wrc to avoid including installed headers. 2002-12-11 01:34:51 +00:00
Alexandre Julliard 9169729b0b Merged font.h and path.h into gdi.h. Moved x11font.h to
dlls/x11drv. Removed a number of unnecessary #includes.
2002-12-03 19:18:41 +00:00
Alexandre Julliard 547cdc2b02 Made gdi compile with -DSTRICT. 2002-11-22 22:16:53 +00:00
Alexandre Julliard 6c428e5c07 Fixed a number of -DSTRICT issues. 2002-11-22 21:58:03 +00:00
Michael Stefaniuc 28a632a830 Some -DSTRICT fixes. 2002-11-21 21:50:04 +00:00
Steve Lustbader 361b9e8763 Stub for SetDCBrushColor. 2002-11-21 03:56:29 +00:00
Alexandre Julliard a9135e8333 Removed support for 'rsrc' spec file statement. 2002-11-18 23:16:09 +00:00
Huw Davies bc71031240 Proper handling of SetTextCharacterExtra. 2002-11-15 01:02:16 +00:00
Huw Davies 0446f54694 We need to compare the world transforms (at least the 4 scaling
elements) when we accept a font from the cache.
Get the correct values for the underscore size and position.
Added a missing closedir().
2002-11-13 23:54:50 +00:00
Patrik Stridvall 9398d9c129 Updated the generated tests. 2002-11-12 01:13:10 +00:00
Patrik Stridvall 74476416b0 Updated the generated tests. 2002-11-06 21:59:15 +00:00
Alexandre Julliard 1e1313d54c Made the dll entry point default to DllMain and removed most of the
'init' spec file declarations.
2002-11-04 23:53:41 +00:00
Patrik Stridvall ba9dc78e39 Fixed mismatches between the Wine headers and the Microsoft headers. 2002-11-04 22:43:24 +00:00
Patrik Stridvall df7ffb8017 Updated the generated tests. 2002-11-04 22:40:40 +00:00
Patrik Stridvall 7d226139e9 Updated the generated tests. 2002-10-29 21:24:09 +00:00
Patrik Stridvall ab974c310c Updated the generated tests. 2002-10-23 18:45:15 +00:00
Alexandre Julliard 23bb3715f7 Added support for building certain dlls with -DSTRICT.
Added -DWINE_NO_STRICT flag to dlls that don't support STRICT yet.
2002-10-18 23:46:28 +00:00
Alexandre Julliard fdd6db2384 Moved EnumObjects16, LineDDA16 and associated glue code to gdi16.c. 2002-10-18 23:33:41 +00:00
Alexandre Julliard 9a8de13d77 Split out some 16-bit GDI code. 2002-10-18 04:06:47 +00:00
Alexandre Julliard 15b9ed9f61 Converted PlayMetaFileRecord and related functions to 32-bit. 2002-10-18 03:33:37 +00:00
Alexandre Julliard 0ca051e555 Fixed wownt32.h to make it usable from inside Wine, and use it to
avoid some duplication of the handle conversion macros.
2002-10-17 16:43:42 +00:00
Patrik Stridvall ebf582cd48 Updated the generated tests. 2002-10-15 01:53:45 +00:00
Alexandre Julliard 3b059b2a3e Moved CreateBrushIndirect16 and CreateDIBPatternBrush16 to gdi16.c. 2002-10-03 19:48:59 +00:00
Patrik Stridvall 928ecb4891 Added some more autogenerated tests. 2002-10-02 19:58:27 +00:00
Alexandre Julliard c728efc3c9 Added --disable-win16 configure option. 2002-10-02 02:34:09 +00:00
Patrik Stridvall b5bb32c09a Fixed some issues found by winapi_check. 2002-09-24 18:29:39 +00:00
Patrik Stridvall 1a4db3e72a Cleaned up the code so it would be easier to parse with the new C
parser.
2002-09-23 20:45:57 +00:00
Alexandre Julliard 16a303b376 Replaced 'heap' .spec statement by a command line option.
Updated winebuild manpage.
2002-09-12 22:51:20 +00:00
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Patrik Stridvall a62a26ced0 Fixed some issues found by winapi_check. 2002-09-09 19:26:55 +00:00
Michael Stefaniuc 025c0b716b Prepare dlls/{comctl32,gdi,msvideo,setupapi,shell32,twain,winmm} for
the conversion of HWND to a void*.
2002-09-06 19:41:17 +00:00
Alexandre Julliard cea2e825b2 Link all remaining dlls except kernel32 as separated dlls, by
temporarily exporting the few functions that are not properly
separated yet.
2002-09-06 18:51:31 +00:00
Patrik Stridvall 51e6c0ccb1 MSVC compatibility fixes. 2002-08-31 19:04:14 +00:00
Alexandre Julliard a0b32d7c1b Added internal 32-bit versions of GDISelectPalette and
GDIRealizePalette.
2002-08-29 01:55:16 +00:00
Patrik Stridvall 9aab47ed24 MSVC compatibility fixes. 2002-08-28 23:42:34 +00:00
Alexandre Julliard aface53759 Fixed a number of dll separation issues. 2002-08-28 22:35:23 +00:00
Huw D M Davies e161c12e5b BitBlt and StretchBlt generate META_DIBSTRETCHBLT records. 2002-08-28 00:55:52 +00:00
François Gouget 330098fa54 Detect the FreeType version and adapt the sfnt offset accordingly. 2002-08-17 18:34:34 +00:00
Huw D M Davies 3d10c1fc6e Mapping mode functions should change dc settings when dc is an enhmf. 2002-08-17 18:32:12 +00:00
Dmitry Timoshkov 8f05f90fb2 Do not leave uninitialized pointer. 2002-08-17 01:38:48 +00:00
Huw D M Davies 908a2abe10 Implement simple ExtTextOut for enhmfdrv. 2002-08-17 01:36:55 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00