Commit Graph

506 Commits

Author SHA1 Message Date
Huw Davies 29637c1441 gdi32: Keep track of the number of unique fonts that are created and return this in the second DWORD of the GdiRealizationInfo structure. 2008-08-05 14:09:34 +02:00
Paul Vriens d1bcc32bf2 gdi32/tests: Don't test unimplemented functions. 2008-08-01 10:36:52 +02:00
Alexandre Julliard 680233f235 gdi32/tests: Allow some more rounding errors in glyph sizes. 2008-07-31 17:16:50 +02:00
Francois Gouget eb16f43bdf Add some API documentation stubs to make winapi_check happy. 2008-07-28 11:34:45 +02:00
Francois Gouget 56aab13ecc gdi32: Include config.h before using HAVE_XXX. 2008-07-28 11:34:23 +02:00
Lei Zhang 9b4f17f630 gdi32: Glyph advances should be measured for unrotated characters. 2008-07-23 11:56:09 +02:00
Lei Zhang 78a1e07c93 gdi32: Add a test for font orientation. 2008-07-23 11:56:00 +02:00
Lei Zhang ce552d4451 gdi32: CreateDIBitmap should check for SetDIBits failure. 2008-07-21 14:36:55 +02:00
Dmitry Timoshkov 02631adc8a Revert "gdi32: Reselect objects into the DC only if scaling factors change.".
This reverts commit 3cbd9639da.
2008-07-21 13:00:48 +02:00
Dmitry Timoshkov 7976d993f5 gdi32: Relax the gm.gmCellIncX comparison. 2008-07-21 13:00:42 +02:00
Andrew Talbot 613d17ae92 gdi32: Remove unneeded address-of operator from array name. 2008-07-11 13:58:48 +02:00
Michael Karcher 49eb123739 Add support for compatibility mode in WineEngCreateFontInstance. 2008-07-08 10:44:54 +02:00
James Hawkins 36e703b409 gdi32: Fix two tests that fail for all platforms. 2008-07-02 12:20:27 +02:00
Michael Karcher 8da833494d winex11: Fix GetDIBits of 1 bit DDBs.
1 bpp DDBs seem to always carry an implicit palette of black and white,
regardless of what the DC says. Based on a patch from Eric Pouech.
2008-07-01 14:59:14 +02:00
Michael Karcher fd8746b43c gdi32: Fix palette of 1bpp DIB in GetDIBits.
Windows always generates a black/white palette for 1 bit DIBs
generated from DDBs. Copying from the current palette only takes place
for color DDBs (not explicitly mentioned in MSDN), and only if depth
equal (MSDN states it, explicitly).
2008-07-01 14:58:54 +02:00
Michael Karcher 3f64708818 gdi32: Fix double->fixpoint conversion in freetype.c. 2008-07-01 14:58:41 +02:00
Alistair Leslie-Hughes 641d6aa5c2 gdi32: Stop crash in font tests. 2008-07-01 13:45:37 +02:00
James Hawkins 6796c880fa gdi32: Fix a failing test in win95. 2008-06-30 15:07:20 +02:00
Andrew Talbot 1dcc70ac17 gdi32: Pass correct pointer value to HeapFree(). 2008-06-27 11:29:58 +02:00
Dan Hipschman 92c8cac214 gdi32: Return the correct value from GetTextFace. 2008-06-25 11:41:00 +02:00
Dmitry Timoshkov 0d6dcc1e4e gdi32: Perform correct glyph scaling even if font metrics haven't been cached yet. 2008-06-24 12:23:10 +02:00
Dmitry Timoshkov 6f7457d8ad gdi32: Add a test for outline text metrics. 2008-06-24 12:23:03 +02:00
Dmitry Timoshkov e02168791e gdi32: Indent a block of code using 4 spaces instead of 5. 2008-06-24 12:22:49 +02:00
Dmitry Timoshkov b2fa21e4bb gdi32: Scale outline font metrics. 2008-06-24 12:22:42 +02:00
Dmitry Timoshkov 433c3cfeec gdi32: Don't return cached glyph metrics if a custom transformation was requested. 2008-06-24 12:22:31 +02:00
Dmitry Timoshkov 7ef471220d gdi32: Don't cache glyph metrics if they have a custom transformation. 2008-06-24 12:22:24 +02:00
Dmitry Timoshkov 8cdca3980a gdi32: Apply the custom transform to a glyph only if it's not an identity one. 2008-06-24 12:22:18 +02:00
Dmitry Timoshkov df76fe6f0c gdi32: Perform the world transform separately from font scaling. 2008-06-24 12:21:42 +02:00
Dmitry Timoshkov 8a6628aea5 gdi32: Font scaling transform is performed separately. 2008-06-24 12:21:28 +02:00
Dmitry Timoshkov 85c16fc45b gdi32: Don't forget to update the glyph advance in the case of a custom transformation. 2008-06-24 12:21:16 +02:00
Dmitry Timoshkov 9675720510 gdi32: Initialize otmMacAscent, otmMacDescent, otmMacLineGap in outline text metrics. 2008-06-24 12:21:06 +02:00
Dmitry Timoshkov e378795970 gdi32: Perform font height scaling with higher precision. 2008-06-24 12:20:55 +02:00
Dmitry Timoshkov ade4132b25 gdi32: Make GetOutlineTextMetrics set tmDigitizedAspectX/Y to real values as GetTextMetrics does. 2008-06-24 12:20:50 +02:00
Dmitry Timoshkov 41aad2dce2 gdi32: Extend the font substitution test, make it pass under Wine. 2008-06-23 12:53:22 +02:00
Dan Kegel 32393796bb gdi32: GdiConvertToDevmodeW should not refer to unintialized name bytes. 2008-06-23 12:46:12 +02:00
Dan Hipschman c1480126b1 gdi32: Add tests for GetTextFace.
Currently only GetTextFaceA is tested, and in an ancillary way, and the
behavior differs from GetTextFaceW.
2008-06-21 11:37:20 +02:00
Lei Zhang 71ed7573aa gdi32: Check for regular fonts by style instead of style name. 2008-06-21 11:37:00 +02:00
Dmitry Timoshkov e976877fa5 gdi32: Add a test for combined mapping mode/world transform changes. 2008-06-18 17:34:27 +02:00
Huw Davies 82c7ff811e gdi32: Initialize the handle table.
Fixes Valgrind warning: 'Conditional jump or move depends on
uninitialised value(s)' in metafile test.
2008-06-18 16:15:23 +02:00
Dmitry Timoshkov ecd5048ea7 gdi32: Use 0xffff as a default character as Vista does. 2008-06-18 15:21:49 +02:00
Dmitry Timoshkov 0cae67eaa5 gdi32: Print the assigned world transform. 2008-06-18 15:21:49 +02:00
Zhangrong Huang a21b3f0abd gdi32: Add more Asian codepages to get default fallback fonts. 2008-06-09 19:09:29 +02:00
Michael Karcher 5333923253 gdi32: Respect DIB_PAL_COLORS in every case. 2008-06-09 12:40:48 +02:00
Francois Gouget 8f91acc894 gdi32/tests: Take into account several Win9x bugs in GetObject(). 2008-06-05 15:53:32 +02:00
Alexandre Julliard 8f7f203649 gdi32/tests: Reduce the size of the test output a little. 2008-06-04 12:52:18 +02:00
Austin English bde1187488 gdi32: Fix a test failure in 2k. 2008-05-29 12:08:41 +02:00
Dmitry Timoshkov 02a15500fb gdi32: Make generated EMFs fully match Windows ones. 2008-05-27 12:05:37 +02:00
Dmitry Timoshkov 7aff723ccc gdi32: If there is no clipping rect, EMREXTTEXTOUT shouldn't have a bounding rect. 2008-05-27 12:04:52 +02:00
Dmitry Timoshkov 0c59e312c1 gdi32: Ignore exScale/eyScale when comparing EMREXTTEXTOUT EMF records. 2008-05-27 12:04:43 +02:00
Alexandre Julliard 00388c1b6a gdi32: Use atan2 to compute angles in WidenPath without triggering floating point errors. 2008-05-22 20:43:55 +02:00
Alexandre Julliard 93cbb7a5db gdi32: Perform coordinate transformations using doubles instead of floats to avoid precision loss. 2008-05-22 17:43:01 +02:00
Dmitry Timoshkov 8021a9d903 gdi32: Slightly relax EMF record comparisons allowing rounding errors. 2008-05-21 17:16:04 +02:00
James Hawkins 617d8fee03 gdi32: Fix two tests that fail in win2k3. 2008-05-19 13:36:05 +02:00
Dmitry Timoshkov a5d288f08c gdi32: Add more font substitution tests, make them pass under Wine. 2008-05-13 20:25:50 +02:00
Huw Davies 68420896eb gdi32: Move a couple of TRACEs to the beginning of functions. 2008-05-13 20:16:27 +02:00
Alexandre Julliard 7e2e30bade gdi32: Make sure the DC is up-to-date before accessing the pixel format. 2008-05-12 19:58:23 +02:00
Nikolay Sivov 1441311d36 gdi32: Avoid null pointer dereference in CreateDIBSection. 2008-05-12 13:59:13 +02:00
Alexandre Julliard 1d76b94b47 gdi32: Add missing braces in EMFDRV_SelectPalette. 2008-05-09 12:02:21 +02:00
Dmitry Timoshkov 2820682202 gdi32: Implement EMFDRV_SelectPalette. 2008-05-07 17:52:02 +02:00
Dmitry Timoshkov 51c28a1493 gdi32: More carefully compare EMF records in tests. 2008-05-07 17:51:43 +02:00
Dmitry Timoshkov 4efbf36cd5 gdi32: Set offPalEntries member of EMREOF to what XP sets it to. 2008-05-07 17:50:59 +02:00
Francois Gouget 125dac3af8 gdi32/tests: Add a trailing '\n' to a couple of ok() calls. 2008-05-06 16:10:01 +02:00
Maarten Lankhorst f74075b776 gdi32: Make mapping test slightly less strict so it passes on windows XP. 2008-05-06 11:25:26 +02:00
Huw Davies 515b40c2de gdi32: Rename DIB_BitmapInfoSize to bitmap_info_size and fix to take into account bit field masks. 2008-05-02 16:07:47 +02:00
Dan Hipschman c3537c4086 gdi32: Add font faces to families in a specific order. 2008-05-01 12:41:30 +02:00
James Hawkins c17bb019f4 gdi32: Remove a dependency on the amount of available memory. 2008-05-01 11:14:46 +02:00
Jeremy White f4625d1ae1 gdi32: Shift default height used in EnumStructs to the standard em size of 2048.
As pointed out by Dmitry Timoshkov.
2008-04-29 14:37:53 +02:00
Dmitry Timoshkov 80c1508bf1 gdi32: Make the bitmap test pass under Windows 2000. 2008-04-29 12:46:41 +02:00
Dmitry Timoshkov 5c15cf5f12 gdi32: info->state.next is always NULL, there is no need to save/restore it. 2008-04-29 12:46:35 +02:00
Dmitry Timoshkov c814d17c76 gdi32: Add SetPixel to the EMF DC functions. 2008-04-28 14:29:36 +02:00
Dmitry Timoshkov c871d9a81d gdi32: Save/restore internal EMF playing state on EMR_SAVEDC/EMR_RESTOREDC, add a test for this. 2008-04-28 13:27:52 +02:00
Dmitry Timoshkov d01438bd53 gdi32: Do not reselect objects while recording a metafile, that's done at the playing time. 2008-04-28 13:27:52 +02:00
James Hawkins b48118b472 gdi32: Remove a dependence on the amount of available memory. 2008-04-25 11:33:51 +02:00
Roderick Colenbrander f0307d9366 wgl: Add a wine specific WGL extension which allows you to change the pixel format multiple times. 2008-04-24 12:32:38 +02:00
Dmitry Timoshkov 3cbd9639da gdi32: Reselect objects into the DC only if scaling factors change. 2008-04-23 12:31:14 +02:00
Paul Vriens 55902e0ce0 gdi32/tests: Run tests on win9x again. 2008-04-23 12:23:15 +02:00
Dmitry Timoshkov 5201c78b2e gdi32: Add a test for EMR_EXTSELECTCLIPRGN, make it pass under Wine. 2008-04-21 16:59:03 +02:00
Alexandre Julliard baceb8d07e gdi32: Return bitmask for 32-bit bitmaps too in GetDIBits. 2008-04-21 12:10:37 +02:00
Dmitry Timoshkov f52b92efe5 gdi32: Add a test for ExtCreateRegion, make it pass under Wine. 2008-04-21 11:53:14 +02:00
Alexandre Julliard 99892d6bae gdi32: Fixed initialization of bit masks in GetDIBits for 16-bit bitmaps.
Fix and improve the test cases.
2008-04-18 13:57:15 +02:00
Andrew Talbot c3c219c905 gdi32: Remove unused variable. 2008-04-17 20:18:29 +02:00
Huw Davies 65d5c20a6b gdi32: LineDDA shouldn't include the end point. Add some tests. 2008-04-16 14:07:07 +02:00
Dmitry Timoshkov baded8789d gdi32: Map glyph to Symbol range only if the font supports symbol encoding. 2008-04-14 21:28:46 +02:00
Dmitry Timoshkov 2a2c66c062 gdi32: Clarify which font doesn't contain 'x'. 2008-04-14 12:40:22 +02:00
Alexandre Julliard 0482c8e818 gdi32: Fix CreateCompatibleDC to reject invalid DCs. 2008-04-14 12:06:24 +02:00
Colin Finck 8a2e787161 gdi32: Add a test to demonstrate a CreateCompatibleDC problem. 2008-04-14 12:05:29 +02:00
Huw Davies a643337c26 gdi32: Don't overrun the current scanline while copying a glyph's bitmap. 2008-04-08 13:25:02 +02:00
Dmitry Timoshkov 0fdd381f26 gdi32: Move negative lfWidth test into a separate body, skip the test if there is no 'x' in the font. 2008-04-07 20:34:49 +02:00
Dmitry Timoshkov c5d07b7c22 gdi32: Fix lfWidth before caching the font to avoid duplicate entries in the cache. 2008-04-07 20:34:37 +02:00
Dmitry Timoshkov 1f35b6e62e gdi32: Fully initialize face->ntmFlags on font load. 2008-04-07 12:14:14 +02:00
Austin English cb2274e690 Spelling fixes. 2008-04-04 11:51:40 +02:00
Dmitry Timoshkov 90265ac586 gdi32: Add a font scaling test when lfHeight == 0 and lfWidth != 0, make it pass under Wine. 2008-04-04 11:03:42 +02:00
Nikolay Sivov caafb52559 gdi32: PlgBlt implementation. 2008-04-02 13:30:15 +02:00
Mikołaj Zalewski 4094ff0256 gdi32: Fix GetGlyphIndices to select properly the invalid char glyph for TrueType fonts. 2008-04-02 12:36:42 +02:00
Dan Kegel 338539c709 gdi32: Test retrieving BI_BITFIELDS info for 16bpp modes. 2008-03-31 16:07:47 +02:00
Alexandre Julliard 6e387f34c5 gdi32: Store the return value separately in StretchDIBits instead of overwriting heightSrc. 2008-03-26 23:38:36 +01:00
Austin English 45b944ed51 gdi32: Spelling fixes. 2008-03-25 19:58:31 +01:00
Huw Davies 4b6d284de6 gdi32: Ignore fonts with names that begin with a '.'. 2008-03-21 12:44:20 +01:00
Aric Stewart bdaa54e64f freetype: Fix a typo that prevented checking more than the first range in Range Format 2. 2008-03-19 11:23:22 +01:00
Francois Gouget 8d38b1d60b gdi32: Remove a trailing space in a Wine trace. 2008-03-19 11:21:19 +01:00
Aric Stewart 36ac341b55 gdi32: Add loading and processing of GSUB table vert/vrt2 functions for proper tategaki (vertical writing). 2008-03-13 12:06:02 +01:00
Huw Davies e0693a1813 gdi32: Factor out FreeType initialization into a separate function. 2008-03-12 18:14:27 +01:00
Aric Stewart 5c1229982a gdi32: Skip leading @ from FontFace when looking for font to load. 2008-03-11 15:30:45 +01:00
Huw Davies 0436a5d14a gdi32: Store the Windows path (if it's available) in the font registry entries. 2008-03-10 19:12:54 +01:00
Alexandre Julliard 5953a86ab1 gdi32: Properly handle SetDIBits failure in StretchDIBits. 2008-03-10 19:12:53 +01:00
Jeremy White 5e1dd9577d gdi32: Revise CreateScalableFontResourceA to pass through CreateScalableFontResourceW. 2008-03-10 12:08:55 +01:00
Huw Davies 025d84e644 gdi32: Update both winnt and win9x font keys and factor out the cleanup code. 2008-03-10 11:23:19 +01:00
Hans Leidekker 81e9b43fb2 gdi32: Move GetICMProfile to the driver. 2008-03-05 19:46:03 +01:00
Rob Shearman 48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
Francois Gouget e637e83ec4 gdi32/tests: Add the trailing '\n' to a couple of ok() calls. 2008-03-03 12:03:52 +01:00
James Hawkins 26ad93947b janitorial: Remove links to any microsoft site. 2008-03-01 12:04:09 +01:00
Rob Shearman de75fe0a08 gdi32: Move 16-bit printing functions to printdrv16.c. 2008-02-29 20:08:21 +01:00
Andrew Talbot a4e8f4dcdd gdi32: Assign to structs instead of using memcpy. 2008-02-28 10:50:57 +01:00
Huw Davies 34002d4c7e gdi32: Add a partial implementation of GdiRealizationInfo. 2008-02-28 10:44:35 +01:00
Hans Leidekker d6bb9e76b3 gdi32: Return registered monitor profile from GetICMProfile. 2008-02-28 10:44:02 +01:00
Paul Vriens 7911424f9d gdi32/tests: Skip a test as it crashes on Vista. 2008-02-27 14:52:24 +01:00
Paul Vriens e9ccee0501 gdi32/tests: Skip functions that are available but not implemented. 2008-02-27 14:52:24 +01:00
Rob Shearman 582de7ba0d gdi32: Optimise StretchBlt for the case where no stretching is being done and the whole image is being set.
In this case, we can just call SetDIBits which is likely to be a lot faster.
2008-02-22 11:44:58 +01:00
Michael Stefaniuc de66aebebd gdi32: Move EnumFontFamiliesEx16() to gdi16.c and reimplement it based on EnumFontFamiliesExW(). 2008-02-20 12:07:03 +01:00
Aric Stewart a41e77448c gdi32: Japanese Windows had a default fallback Font SystemLink of Microsoft Sans Serif. Implement that for Japanese. 2008-02-19 14:56:22 +01:00
Michael Stefaniuc e9a8e6a426 gdi32: Move EnumFonts16 and EnumFontFamilies16 to gdi16.c. 2008-02-19 13:39:24 +01:00
Roderick Colenbrander c937634376 gdi32: GetPaletteEntries should not filter peFlags (test included). 2008-02-19 12:06:10 +01:00
Alexandre Julliard 1fa9e526ff gdi32: Avoid calling GetObject16 from 32-bit code. 2008-02-18 18:07:51 +01:00
Alexandre Julliard 30e2cb1616 gdi32: Move a few more gdiobj functions to gdi16.c. 2008-02-18 17:53:43 +01:00
Alexandre Julliard aa500d266f gdi32: Get rid of the 16-bit GetObject functions. 2008-02-18 17:50:35 +01:00
Alexandre Julliard a306af0c62 gdi32: Reimplemented GetObject16 and moved it to gdi16.c. 2008-02-18 17:46:29 +01:00
Alexandre Julliard 1fdae2b2a5 gdi32: Reimplemented IsGDIObject16 and moved it to gdi16.c. 2008-02-18 17:26:31 +01:00
Alexandre Julliard 50dea38178 gdi32: Export the DC hook functions as 32-bit functions. 2008-02-17 20:29:55 +01:00
Michael Stefaniuc 3db6eeeda9 gdi32: Move two 16bit function stubs to gdi16.c. 2008-02-13 16:41:03 +01:00
Gerald Pfeifer 21b334713c gdi32: For unsigned types, directly use INTERNAL_YDS 2008-02-12 22:35:43 +01:00
Detlef Riekenberg cbb85daa8f gdi32: Add stub for GdiInitSpool and GdiGetSpoolMessage. 2008-02-07 11:59:53 +01:00
Reece H. Dunn dc267e75b4 gdi32: Improve the failure reporting in the bitmap tests. 2008-02-06 13:49:52 +01:00
Alexandre Julliard 7fdb61bd7e gdi32: DC_GetDCPtr and DC_ReleaseDCPtr are not longer used. 2008-02-05 21:58:04 +01:00
Alexandre Julliard 1e3c47eae9 gdi32: Get rid of DC_GetDCPtr in the palette functions. 2008-02-05 21:57:35 +01:00
Alexandre Julliard 8815e63835 gdi32: Get rid of DC_GetDCPtr in the GDI object functions. 2008-02-05 21:17:28 +01:00
Alexandre Julliard 4b14a080fe gdi32: Get rid of DC_GetDCPtr in font functions. 2008-02-05 21:16:27 +01:00
Alexandre Julliard 35c09c01b2 gdi32: Use a separate critical section for freetype locking instead of relying on the GDI lock. 2008-02-05 21:16:06 +01:00
Alexandre Julliard 31576d408e gdi32: Avoid locking in BITMAP_CopyBitmap. 2008-02-05 18:26:25 +01:00
Alexandre Julliard 630c976f88 gdi32: Don't hold the GDI lock when calling DC_InitDC. 2008-02-05 18:26:18 +01:00
Alexandre Julliard 67a9edbdf4 gdi32: Get rid of a few more uses of DC_GetDCPtr. 2008-02-05 17:35:40 +01:00
Alexandre Julliard b962fca75c gdi32: Avoid locking in CreateCompatibleBitmap. 2008-02-05 17:34:56 +01:00
Aric Stewart 1ce79f87dd gdi32: Child fonts need to be scaled like their parent. With input from Dmitry Timoshkov. 2008-02-05 12:19:50 +01:00
Reece H. Dunn e3a5167ffe gdi32: Vista returns UNICODE_NOCHAR if a character does not exist. 2008-01-25 12:30:24 +01:00
Francois Gouget d0794c4aeb Assorted spelling fixes. 2008-01-23 21:16:22 +01:00
Kai Blin a12f7069b0 gdi32: Fix spec file to export the right symbols for GetGlyphOutline. 2008-01-23 12:05:54 +01:00
Hans Leidekker 8d35fd8d23 gdi32: Add tests for GetICMProfile and SetICMMode. 2008-01-22 12:01:54 +01:00
Hans Leidekker 20c1e503e9 gdi32: Make GetICMProfile behave more like native. Rewrite ansi version as a wrapper and move color management functions to their own file. 2008-01-22 12:01:36 +01:00
Hans Leidekker 6f3607af0b gdi32: Last parameter of GetICMProfile is an output parameter. 2008-01-22 12:00:55 +01:00
Marcus Meissner a63664f1ec gdi32: Fix possible NULL ptr in TRACE. 2008-01-21 11:50:49 +01:00
Dmitry Timoshkov 0acfe68864 gdi32: Actually perform the fractional scaling test, make it pass under Wine. 2008-01-21 11:39:20 +01:00