Commit Graph

908 Commits

Author SHA1 Message Date
Charles Davis d456f99a04 gdi32/enhmfdrv: Don't fill in the PelsPerMeter fields in the BITMAPINFOHEADER when blitting. 2009-11-23 14:35:22 +01:00
Roderick Colenbrander 41f061ea1b wgl: Add initial WGL_ARB_create_context support. 2009-11-18 11:39:57 +01:00
André Hentschel 762280eab0 gdi32/tests: Simplify testcase. 2009-11-18 11:14:24 +01:00
Alexandre Julliard 17349a06b1 gdi32: Remove remaining references to gdi32 internals from gdi16.c. 2009-11-17 22:30:08 +01:00
Alexandre Julliard 06e09f67b4 gdi32: Disable SetSolidBrush16 since it requires access to gdi32 internals. 2009-11-17 22:29:37 +01:00
Alexandre Julliard d9700b6a77 gdi32: Reimplement the 16-bit metafile functions on top of the 32-bit ones. 2009-11-17 19:58:02 +01:00
Alexandre Julliard c73e2d5e02 gdi32: Reset the visible region in ResetDC. 2009-11-17 15:14:56 +01:00
André Hentschel e4beddb664 gdi32: Don't strip font suffix. 2009-11-17 15:14:56 +01:00
Alexandre Julliard 1c67717876 gdi32: Get rid of the SetDCOrg driver entry point. 2009-11-17 15:14:54 +01:00
Alexandre Julliard 1fd7159cae gdi32: Disable SetDCOrg16. 2009-11-17 15:14:54 +01:00
Alexandre Julliard 16da76923d gdi32: Reimplement SaveVisRgn16/RestoreVisRgn16 to avoid accessing the DC internals. 2009-11-17 15:14:54 +01:00
Alexandre Julliard 61925b7e89 gdi32: Return copies of the region in InquireVisRgn16 and GetClipRgn16. 2009-11-17 15:14:54 +01:00
Alexandre Julliard 569f56e87a gdi32: Disable the 16-bit visible region manipulation functions. 2009-11-17 15:14:54 +01:00
Alexandre Julliard 250237e1c1 gdi32: Reimplement LPtoDP16/DPtoLP16 on top of the 32-bit functions. 2009-11-17 15:14:54 +01:00
Alexandre Julliard 9a145d13f1 gdi32: Don't crash when we don't have AbortProc thunks. 2009-11-17 15:14:54 +01:00
Roderick Colenbrander f4b88e34ec wgl: Get rid of delayed GLX context creation. Instead attempt to re-create a context when wglShareLists is called. 2009-11-16 17:42:54 +01:00
Detlef Riekenberg 495267e5f1 wineps: Don't depend on 16-bit PrinterData functions from gdi. 2009-11-16 13:48:18 +01:00
Eric Pouech 40eea7acd7 gdi.exe: Rewrite QueryAbort16 to be independant of gdi32.dll internals. 2009-11-16 13:47:38 +01:00
Eric Pouech 8e248c063f gdi.exe: No longer use 16bit abort procs inside the DC structure. 2009-11-16 13:47:29 +01:00
André Hentschel 8f31df1dd8 gdi32/tests: Test CreateFontIndirect for suffix stripping. 2009-11-16 13:25:00 +01:00
Huw Davies 16c20d3c73 gdi32/tests: Test the return value of GetClipBox before trying to access the rect. 2009-11-13 13:36:35 +01:00
Alexandre Julliard 872feb47c4 gdi32: Don't update the metafile bounding box in ExtTextOut if there's no rectangle. 2009-11-11 13:07:10 +01:00
Nikolay Sivov 2854884a42 gdi32: Always create a context for DIB_RGB_COLORS. 2009-10-22 14:39:21 +02:00
Nikolay Sivov dd0a7078e0 gdi32: Prevent possible buffer overrun. 2009-10-20 14:09:25 +02:00
Dmitry Timoshkov 2158999382 gdi32: Rework the test for too large width/height font ratio to pass with different font heights, make it pass under Wine. 2009-10-07 12:27:51 +02:00
Joel Holdsworth 170e425b00 gdi32: Added tests for StretchDIBits. 2009-10-02 11:50:01 +02:00
Joel Holdsworth fb0b7381d0 gdi32: Added tests for StretchBlt. 2009-10-02 11:49:46 +02:00
Alexandre Julliard ab15d13290 gdi32: Fall back to StretchBlt if the driver doesn't export PatBlt or BitBlt. 2009-09-30 20:55:26 +02:00
Alexandre Julliard 29d68b3fa7 gdi32: Move the 16-bit DIB pointer support to gdi16.c. 2009-09-26 13:50:37 +02:00
Alexandre Julliard 3411821ff6 gdi32: Get rid of the 16-bit DC hook support.
It can only work with native user32 anyway.
2009-09-26 13:32:47 +02:00
Alexandre Julliard 6ad951804a gdi32: Make wing.dll into a stand-alone 16-bit module. 2009-09-26 13:32:25 +02:00
Alexandre Julliard 7582b13d8d gdi32: Move remaining 16-bit metafile functions to metafile16.c 2009-09-26 13:31:45 +02:00
Alexandre Julliard d69dd56495 gdi32: BS_DIBPATTERN brushes use a 32-bit handle in 32-bit mode. 2009-09-26 13:30:06 +02:00
Rico Schüller 43ce10d168 gdi32: Check the current context in wglMakeCurrent(). 2009-09-22 17:47:10 +02:00
Markus Stockhausen e51b20bf05 gdi32: Check for NULL pointer in GdiAlphaBlend. 2009-09-18 09:14:16 -05:00
Ilya Shpigor dad99e2aa9 gdi32/tests: Add test for SelectClipRgn in metafile. 2009-09-08 14:16:31 +02:00
Andrew Nguyen 4569eb2e66 gdi32: Fix the type of a few return values. 2009-08-06 17:26:29 +02:00
Aric Stewart 7214f650ef gdi32: Ensure child fonts have names. 2009-08-03 16:00:42 +02:00
Dmitry Timoshkov 69b29fa07e gdi32: Use a better heuristics for tmWeight.
Marlett uses FW_MEDIUM (500) and current code allows only FW_REGULAR and
FW_BOLD. New heuristics detects if flags and usWeightClass in the font match.
2009-08-03 14:59:08 +02:00
Dmitry Timoshkov 16aa1369f8 gdi32: Some fonts have a broken last segment of cmap4 table, avoid a crash in that case.
Freetype has a similar consistency check.
2009-08-03 14:58:57 +02:00
Huw Davies 1d66e20ead gdi32/tests: Add a broken case for some versions of winxp. 2009-07-17 12:38:08 +02:00
Joel Holdsworth 91f458314b gdi32/tests: Added tests for BitBlt. 2009-07-16 16:18:20 +02:00
Aric Stewart 6a5bb87e3a gdi32: In init_system_links, reinitialize val_len and data_len before continuing. 2009-07-16 11:13:02 +02:00
Huw Davies e5c614e6b1 gdi32/tests: Allow a small tolerance when comparing scaling values. 2009-07-13 10:32:11 +02:00
Huw Davies 904b2749f7 gdi32/tests: Don't continue with the tests if GetWinMetaFileBits fails. 2009-07-08 20:15:00 +02:00
Huw Davies 787ead8088 gdi32: Use a modified version of MulDiv to match native behaviour. 2009-07-07 13:22:13 +02:00
Paul Vriens 31d82c5fdc gdi32/tests: Mark an intermittent failure as broken() on Win9x/ME. 2009-07-06 14:35:25 +02:00
Huw Davies 395436d2e9 gdi32/tests: Fix tests on win9x and winMe. 2009-07-03 11:28:06 +02:00
Huw Davies dca1b517ec gdi32/tests: Add some traces and fix a few comments. 2009-07-02 13:17:49 +02:00
Huw Davies 12adc3e1fb gdi32: Add tests for the map mode and window size records. 2009-07-02 13:17:44 +02:00
Huw Davies 8edbd0639e gdi32: Write the map mode and window size records after the mfcomment. 2009-07-02 13:17:35 +02:00
Huw Davies d79943446f gdi32/tests: Dump the correct metafile if the test fails. 2009-07-01 14:50:53 +02:00
Huw Davies 470e8fe2f4 gdi32/tests: Add a test for the MFCOMMENT record's size. 2009-07-01 14:50:50 +02:00
Huw Davies d6bb2b7591 gdi32: Add tests for the GetWinMetaFileBits MFCOMMENT record. 2009-06-30 12:58:17 +02:00
Huw Davies 41bbc007a4 gdi32: Store the original emf as a sequence of MFCOMMENT records. 2009-06-30 12:58:10 +02:00
Huw Davies db6a9e6f75 gdi32: Remove obviously incorrect calls to SetMapMode. 2009-06-30 12:57:55 +02:00
Huw Davies d7af14f1b5 gdi32: Use the unicode version of CreateMetaFile. 2009-06-30 12:57:43 +02:00
Francois Gouget 8b93e1fe06 gdi32/tests: Make test_GetTextMetrics2() static. 2009-06-29 13:22:51 +02:00
Francois Gouget 4f0c6a3172 gdi32/tests: Fix the trailing '\n' of a few ok() calls. 2009-06-26 14:40:08 +02:00
Huw Davies 08453c1f2b configure: Remove reference to obsolete ftnames.h. 2009-06-25 14:34:13 +02:00
Rein Klazes 08ca2fa6a9 gdi32/tests: Show that there is an upper limit to the width of a font that can be specified. 2009-06-25 12:08:12 +02:00
Huw Davies 4b9c22d66b gdi32: Add tests for GetTransform. 2009-06-24 14:52:21 +02:00
Huw Davies 6260af2a7c gdi32: Implement GetTransform for the other valid transform types. 2009-06-24 14:52:19 +02:00
Huw Davies e920f5f7d7 gdi32: Add tests for SetVirtualResolution. 2009-06-23 16:21:46 +02:00
Huw Davies 5c386041fc gdi32: Implement SetVirtualResolution. 2009-06-23 16:21:42 +02:00
Huw Davies 3742389d45 gdi32: CBM_INIT is a flag. 2009-06-22 14:32:28 +02:00
Paul Vriens 53b1e8909f gdi32/tests: Fix the last test failure on NT4. 2009-06-16 13:37:21 +02:00
Paul Vriens eae4b22b61 gdi32/tests: Fix some test failures on NT4. 2009-06-16 13:37:11 +02:00
Louis Lenders afce86b4bc gdi32: Add stub for GdiEntry13. 2009-06-15 13:42:31 +02:00
Paul Vriens cf43e2cac7 gdi32/tests: Fix several test failures on Win9x/WinME/NT4. 2009-06-15 13:42:30 +02:00
Francois Gouget 34accb382b gdi32/tests: Small indentation fix. 2009-06-15 13:42:29 +02:00
Rein Klazes d145f399ca gdi32: Fix RectInRegion() if right < left or bottom < top. 2009-06-08 13:18:58 +02:00
Michael Stefaniuc 0737fc2c72 gdi32: Avoid using long when not needed. 2009-06-02 11:57:22 +02:00
Paul Vriens 9f4283dcc6 gdi32/tests: Fix a test failure on Win9x/WinME. 2009-05-22 15:16:29 +02:00
Paul TBBle Hampson 87cd36db5e gdi32: Autopopulate FontLinks when autopopulating FontSubstitutes.
When Wine's codepage changes, FontSubstitutes is redefined to use
fonts appropriate for that codepage. Configure FontLinks to reasonable
defaults at the same time.
2009-05-12 13:19:05 +02:00
Paul TBBle Hampson ce426d6ad1 gdi32: Don't add system_links entries for substituted fonts.
When a Font is looked up in the FontLinks table, they have already
been normalised by FontSubstitutes.

So no need to store system_links entries for fonts that appear as keys
in the FontSubstitutes list.
2009-05-05 15:39:58 +02:00
Paul TBBle Hampson 8a4b77883e gdi32: Fetch child fonts by real parent font name.
Entries in the list of linked fonts are keyed by the substituted font
name, so need to be looked up by the substituted font name.
2009-05-05 15:39:36 +02:00
Nikolay Sivov 0f9bc1d3b7 gdi32: Check header pointer in CreateDIBitmap. 2009-05-04 14:57:32 +02:00
Paul TBBle Hampson 4b45767e2a gdi32: Remove tabs from init_system_links TRACEs. 2009-04-30 12:46:09 +02:00
Paul TBBle Hampson 0cde093fdc gdi32: Ensure font name comparisons are case-insensitive. 2009-04-30 12:45:58 +02:00
Rein Klazes 5265e0f2e5 winex11: GetPixel() on a monochrome bitmap should return black or white, not dark red. 2009-04-29 15:50:25 +02:00
Paul Vriens f043f3db27 gdi32/tests: Fix a test failure on NT4. 2009-04-28 11:58:27 +02:00
Paul Vriens 75f6b1d636 gdi32/tests: Fix some test failures on Win9x/WinME. 2009-04-28 11:58:14 +02:00
Paul Vriens 05c50725db gdi32/tests: Fix a test failure on NT4. 2009-04-23 18:14:27 +02:00
Paul Vriens 59cc56b15a gdi32/tests: Skip several tests on Win9x. 2009-04-20 14:12:43 +02:00
Alexandre Julliard 55fc90220f gdi32: Fix SetEnhMetaFileBits last error handling. 2009-04-07 20:55:59 +02:00
Alexandre Julliard eceed527f6 gdi32: Completely implement RestoreDC in the driver, having it call restore_dc_state if necessary. 2009-04-07 20:55:56 +02:00
Alexandre Julliard e2f888a617 gdi32: Allow the visible region to be zero since this is the case for metafiles. 2009-04-07 20:55:42 +02:00
Alexandre Julliard bbb1626bf8 gdi32: Completely implement SaveDC in the driver, having it call save_dc_state if necessary. 2009-04-07 20:55:28 +02:00
Alexandre Julliard d4c54be272 gdi32: Move the whole DC restoring functionality into set_dc_state, and rename it to restore_dc_state. 2009-04-07 20:28:08 +02:00
Alexandre Julliard a23725785e gdi32: Move the whole DC saving functionality into get_dc_state, and rename it to save_dc_state. 2009-04-07 20:18:58 +02:00
Alexandre Julliard 1380f0ac40 gdi32: Remove Get/SetDCState16 implementation, it should not be used by apps. 2009-04-07 20:13:45 +02:00
Alexandre Julliard 88e01969c2 gdi32: Move freeing of the DC path and regions into free_dc_ptr. 2009-04-07 20:13:08 +02:00
Alexandre Julliard 1f1d157237 gdi32/tests: Add some metafile tests. Fix typos. 2009-04-07 15:20:13 +02:00
Aric Stewart cac6b96de4 gdi32/tests: Demonstrate issues in wine with SaveDC and RestoreDC in metafiles and enhmetafiles. 2009-04-06 13:52:14 +02:00
Dmitry Timoshkov 95156d1b5f gdi32: Use GdiGetCodePage() instead of duplicating its functionality. 2009-04-06 12:57:21 +02:00
Dmitry Timoshkov 4bb8d9c1c2 gdi32: Cache current font code page in the DC structure. 2009-04-06 12:57:11 +02:00
Dmitry Timoshkov 301b5d2772 gdi32: Add a couple of SetGraphicsMode/SetWorldTransform tests, make them pass under Wine. 2009-04-06 12:56:50 +02:00
Massimo Del Fedele da6a94cd96 gdi32: Fix PATH_add_outline when mapping mode != MM_TEXT. 2009-03-31 16:43:05 +02:00
Massimo Del Fedele a11a450e33 gdi32: PATH_ExtTextOut remove incorrect shift to DC origin. 2009-03-31 16:43:04 +02:00
Massimo Del Fedele 23acdb7143 gdi32: Correctly handle space char on Path_ExtTextOut(). 2009-03-31 16:43:04 +02:00
Massimo Del Fedele 97e81bc3bd gdi32/tests: Add test for GetGlyphOutlineW() requesting buffer size for space char. 2009-03-31 16:43:04 +02:00
Michael Stefaniuc 4114cea302 gdi32: Use "%p" to TRACE() pointers. 2009-03-25 11:09:19 +01:00
Paul Vriens 3668edcdf4 gdi32/tests: Fix some test failures on Win9x. 2009-03-13 14:52:52 +01:00
Paul Vriens dde935f0bf gdi32/tests: Fix two test failures on Win9x. 2009-03-12 15:39:51 +01:00
Huw Davies 908ff58339 gdi32/tests: Under win9x GetBitmapBits returns zero when passed a NULL buffer. 2009-03-11 13:03:33 +01:00
Huw Davies f1e1ae7483 gdi32/tests: Mark as broken another case where win9x doesn't set biSizeImage. 2009-03-11 13:03:33 +01:00
Huw Davies d77ed15f05 gdi32/tests: win9x doesn't initialise the bitmap bits. Mark this behaviour as broken. 2009-03-11 13:03:33 +01:00
Huw Davies e41e1f8f84 gdi32/tests: Remove a cut and paste error. 2009-03-11 13:03:33 +01:00
Huw Davies 3d461dbe85 gdi32/tests: Win9x's GetDIBits() sets biSizeImage to zero for BI_RGB dibs. 2009-03-10 12:09:12 +01:00
Huw Davies f7608053e7 gdi32/tests: Marked another win9x failure as broken. 2009-03-10 12:09:08 +01:00
Huw Davies bbafe93858 gdi32/tests: Fix yet another place where win9x returns bmType equal to 0x5250. 2009-03-10 12:09:04 +01:00
Huw Davies 5ccf92f512 gdi32/tests: Fix another case where win9x returns bmType equal to 0x5250. 2009-03-09 13:55:48 +01:00
Huw Davies a88e6e0182 gdi32/tests: win9x doesn't return the correct number of colours used with dib sections created via DIB_PAL_COLORS. 2009-03-09 13:55:45 +01:00
Huw Davies 240651e0c1 gdi32/tests: Mark win9x behaviour as broken. 2009-03-09 13:55:42 +01:00
Alexandre Julliard 86f54f4c89 gdi32: Make dispdib.dll into a stand-alone 16-bit module. 2009-03-04 14:27:05 +01:00
Huw Davies 17a866df29 gdi32/tests: Fix tests on NT4. 2009-03-04 13:06:23 +01:00
Huw Davies 246a9a6f7a gdi32/tests: Win9x doesn't initialize the bitmap bits, so skip this test. 2009-03-04 13:06:20 +01:00
Huw Davies 1ad19cc9ce gdi32/tests: Improve some test failure messages. 2009-03-03 13:26:20 +01:00
Eric Pouech 21c3e79e52 winex11: Correctly pad 1 bpp DDB's lines with 0 values. 2009-03-02 15:02:43 +01:00
Dmitry Timoshkov d15619b215 gdi32: Fix the font rotation direction.
Apparently at some point either freetype got fixed, or other gdi32
changes made the matrix members usage match freetype. This patch makes
my test application match the Windows behaviour in font rotation direction.
2009-03-02 12:11:35 +01:00
Huw Davies 973ac6dbd2 gdi32/tests: Winnt doesn't set last error when a NULL dc is passed to GetDIBits. 2009-02-27 16:22:38 +01:00
Huw Davies 103f3db95f gdi32/tests: Don't expect the screen dc's bitmap to be mono 1x1. 2009-02-27 16:22:27 +01:00
Huw Davies e270f5a89d gdi32/tests: Add a broken() to an always true test. 2009-02-27 16:22:08 +01:00
Dmitry Timoshkov b3e65ba399 gdi32: Revert an unrelated part of 028617b90b.
It was not a very nice idea to break bitmap fonts which request a custom
width (therefore a transformation) in a patch that pretended to do something
unrelated.
2009-02-27 13:15:44 +01:00
Francois Gouget 9de60b9c2c gdi32/tests: Use win_skip() to skip over unimplemented functionality. 2009-02-24 16:57:26 +01:00
Huw Davies 5b183a208f gdi32/tests: Don't test the height that is 1.75 times the original font height. This is unscaled in winnt yet doubled in win9x. 2009-02-23 15:24:56 +01:00
Huw Davies ff2f88cf08 gdi32: Fix fractional scaling threshold. 2009-02-20 18:46:04 +01:00
Paul Vriens ac6077023f gdi32/tests: Report a missing function only once. 2009-02-20 18:07:42 +01:00
Huw Davies 5c8c151aa8 gdi32/tests: Add tests for the 120 dpi bitmap fonts. 2009-02-19 15:57:47 +01:00
Huw Davies 4f25723853 gdi32: Set the font family as FF_MODERN if the panose marks it as monospaced. 2009-02-19 15:57:47 +01:00
Huw Davies e6a0fa9f44 gdi32/tests: Output the requested font name on failure. 2009-02-19 15:57:47 +01:00
Huw Davies ee339afa3f gdi32/tests: Output the required font height if the test fails. 2009-02-19 15:57:47 +01:00
Rob Shearman ccce11d2c3 gdi32: Move 16-bit functions not exported in gdi32.dll into files compiled only when 16-bit functionality is enabled. 2009-02-19 12:51:50 +01:00
Huw Davies f4e3e18b42 gdi32/tests: From Vista onwards TabbedTextOut ignores justification, so remove that bit of the test. 2009-02-18 14:48:05 +01:00
Huw Davies 2c6ddb8030 gdi32: The special handling of the character codes metrics for symbol fonts should be based on the presence of the MS symbol charmap rather than whether the font is enumerated as SYMBOL_CHARSET. 2009-02-18 13:13:29 +01:00
Huw Davies c40b434172 gdi32/tests: Win9x truncates the LONG elements of LOGFONT to 16 bit values. 2009-02-18 13:13:26 +01:00
Huw Davies bd69c2e95a gdi32/tests: Allow the first char code to point to glyph 0 (the .notdef glyph). 2009-02-17 15:14:57 +01:00
Huw Davies 24c9a37aaf gdi32: In a Baltic locale the last char of a symbol font is reported as 0xf8fd rather than 0xf0ff. 2009-02-17 15:14:53 +01:00
Huw Davies aecf29ae84 gdi32/tests: Win9x doesn't ensure the facename is nul terminated. Compare the logfont one element at a time. 2009-02-17 15:14:35 +01:00
Huw Davies 7cc7ad5ec4 gdi32/tests: Win98 and WinMe actually do set error codes. 2009-02-17 15:14:29 +01:00
Huw Davies c404d00b3d gdi32/tests: GetTextFaceA called with a NULL buffer returns 0 on win98 and winMe. 2009-02-17 15:14:25 +01:00
Michael Stefaniuc 056359cc4e gdi32: SetAbortProc is not a 16bit function but a 32bit one. 2009-02-17 12:47:32 +01:00
Huw Davies 3fa05ae6a7 gdi32/tests: Only test the lowest byte of GdiRealizationInfo flags so that the test passes on Vista. 2009-02-16 16:01:38 +01:00
Huw Davies e93d348109 gdi32: Improve calculation of the character code text metrics. 2009-02-16 16:01:37 +01:00
Huw Davies d9811e6927 gdi32/tests: Use the ANSI text metrics so the tests work on win9x. 2009-02-12 17:53:34 +01:00
Huw Davies aaefb75f8d gdi32: Add missing serif types. 2009-02-12 17:53:34 +01:00
Huw Davies 8ab829a68a gdi32: Correct the font family values returned in the text metrics. 2009-02-11 16:14:46 +01:00
Francois Gouget f250f4fa04 Assorted spelling fixes. 2009-02-11 15:56:02 +01:00
Dmitry Timoshkov 5804470f26 gdi32: Make sure that World2Vport DC transformation is valid before using it. 2009-02-05 13:15:17 +01:00
Dmitry Timoshkov 24937a4f0f gdi32: Add a test for the MAT2 parameter of GetGlyphOutline, make it pass under Wine. 2009-02-03 12:40:27 +01:00
Dmitry Timoshkov 44589c6f8f gdi32: The MAT2 parameter of GetGlyphOutline is mandatory. 2009-02-03 12:40:24 +01:00
Alexandre Julliard 687dfd69e9 gdi32: Check for memory allocation failure in region functions and propagate the error correctly. 2009-01-29 21:45:01 +01:00
Alexandre Julliard ec4af0764b gdi32: Replace the MEMCHECK macro in the region code by a proper function. 2009-01-29 21:45:01 +01:00
Alexandre Julliard 919b1076c9 gdi32: Don't hold the GDI lock while creating regions. 2009-01-29 21:45:01 +01:00
Alexandre Julliard a686b8b583 gdi32: Store the region data directly in the GDI object. 2009-01-29 21:45:01 +01:00
Alexandre Julliard 73593cbf5a gdi32: Store a separate flag to mark a GDI object for delayed destruction. 2009-01-29 21:45:01 +01:00
Alexandre Julliard 827e1f1de3 gdi32: Increment the reference count for the initial DC stock objects. 2009-01-29 21:44:52 +01:00
Alexandre Julliard 7b82b98ee8 gdi32: Don't hold the GDI lock while calling the Freetype font engine functions. 2009-01-28 19:38:15 +01:00
Alexandre Julliard f1ea7a40f8 gdi32: Get rid of GDI_ReallocObject. 2009-01-28 19:04:04 +01:00
Alexandre Julliard a83c81b544 gdi32: Allocate palette entries separately from the main GDI object.
This allows resizing the palette without changing the object pointer.
2009-01-28 19:02:17 +01:00
Alexandre Julliard de831f334c gdi32: Release GDI handles before freeing the object.
This makes it unnecessary to hold the GDI lock during destruction.
2009-01-28 18:45:21 +01:00
Alexandre Julliard 311c53db4f gdi32: Allocate and initialize GDI objects before giving them a handle.
This makes it unnecessary to hold the GDI lock since the object
cannot be accessed before it has a handle.
2009-01-28 18:43:06 +01:00
Alexandre Julliard 5811a2ccb4 gdi32: Use the official constants instead of the old Win9x magic numbers for GDI object types. 2009-01-28 16:20:56 +01:00
Igor Tarasov 1b17c8d057 gdi32: Add logcal points to device points conversion for source bitmap before bit stretching. 2009-01-28 14:28:01 +01:00
Alexandre Julliard 68d19b9552 gdi32: Don't hold the GDI lock while calling the GetObjectA/W methods for GDI objects. 2009-01-27 16:30:43 +01:00
Alexandre Julliard 9ff44b815b gdi32: Don't hold the GDI lock while calling the UnrealizeObject method for GDI objects. 2009-01-27 16:26:35 +01:00
Alexandre Julliard f03871094c gdi32: Don't hold the GDI lock while calling the DeleteObject method for GDI objects. 2009-01-27 16:19:37 +01:00
Alexandre Julliard b4255d295d gdi32: Release the GDI lock when calling the DC DeleteObject function. 2009-01-27 16:15:47 +01:00
Andrew Nguyen e670b01f39 gdi32: Stub the NamedEscape function. 2009-01-27 15:22:40 +01:00
Alexandre Julliard 3939cb5c82 gdi32: Avoid some pointer casts. 2009-01-26 15:09:18 +01:00
Michael Stefaniuc 667a1ed5be gdi32: Remove superfluous pointer casts. 2009-01-26 14:31:13 +01:00
Alexandre Julliard cbe6e71775 gdi32/tests: Fix the mapping test to handle the more precise LOMETRIC settings on Vista. 2009-01-25 17:08:55 +01:00
Alexandre Julliard d2b217e90a gdi32/tests: Add a test case for calling WriteFile with the DIB section bits as buffer. 2009-01-15 12:06:15 +01:00
Alexandre Julliard ac543e5bc7 gdi32/tests: Fix an uninitialized value check and a structure size for Win64. 2009-01-10 21:05:52 +01:00
Alexandre Julliard 328ca0e00c gdi32/tests: Fix an uninitialized pointer check for Win64. 2009-01-09 18:08:50 +01:00
Francois Gouget 581e390115 winapi_test: The tests don't support WIN64 yet so disable them there. 2009-01-08 12:47:22 +01:00
Francois Gouget 411f5d22c0 winapi_test: The real tests are done at compile time so use C_ASSERT() instead of ok(). Do only one test per line so one can know exactly what went wrong. 2009-01-08 12:46:39 +01:00
Francois Gouget 9f62c9b7a8 winapi_test: Fix TEST_FIELD() so it correctly tests the field size. 2009-01-08 12:44:49 +01:00
Francois Gouget 43c18c1321 winapi_test: FIELD_ALIGNMENT() is redundant so remove it. 2009-01-08 12:43:15 +01:00
Francois Gouget 2e668d2572 winapi_test: Updated so the generated tests work. 2009-01-08 12:42:12 +01:00
Francois Gouget ca82e0f5b3 gdi32: Remove some dead code. 2009-01-07 14:40:25 +01:00
Alexandre Julliard 428de06982 gdi32/tests: Fix a pointer casting warning on 64-bit. 2009-01-03 20:13:29 +01:00
Byeongsik Jeon f2e1b254ce gdi32: Restore the trimmed bitmap image by FT_Render_Glyph(). 2008-12-29 12:41:45 +01:00
Byeongsik Jeon 45a081f142 gdi32: Don't truncate the added pixels with FT_LCD_FILTER_DEFAULT. 2008-12-24 10:58:59 +01:00
Maarten Lankhorst 131d0a79a1 gdi32/winex11.drv: Change all gdi/opengl operations to use CDECL calling convention. 2008-12-23 13:02:33 +01:00
Alexandre Julliard 30137f168c gdi32: Fix the build without Freetype LCD support. 2008-12-23 12:34:01 +01:00
ByeongSik Jeon 028617b90b gdi32, winex11: Add support for subpixel font rendering. 2008-12-22 16:33:03 +01:00
Maarten Lankhorst a411f25d85 gdi32/user32: Make __wine_make_gdi_object_system CDECL. 2008-12-17 15:02:26 +01:00
Lei Zhang 6d790d6ed0 gdi32: Prevent integer overflow in CreateBitmapIndirect. 2008-12-17 13:52:41 +01:00
Paul Vriens 098f2f231d gdi32/tests: Fix a few failures on Win9x. 2008-12-15 12:36:08 +01:00
Francois Gouget 52b4c7f26d gdi32: Export three implemented 16bit Engine*() functions. 2008-12-15 12:25:36 +01:00
Francois Gouget cc6e4e955e gdi32: Make [GS]etDCState() static. 2008-12-15 12:25:34 +01:00
Francois Gouget f5657080c7 gdi32/tests: Make test_GdiAlphaBlend() static. 2008-12-12 11:42:07 +01:00
Paul Vriens ed4444dae5 gdi32/tests: Fix some test failures on Win9x. 2008-12-12 11:38:31 +01:00
ByeongSik Jeon d1ca64b3f5 gdi32: Unify Chinese and Japanese default font name. 2008-12-11 12:20:27 +01:00
Paul Vriens 52a914db83 gdi32/tests: Remove the todo_wine logic where appropriate. 2008-12-11 11:50:15 +01:00
Paul Vriens 024a6bce5f gdi32/tests: Fix a failure on NT4. 2008-12-10 10:49:50 +01:00
Paul Vriens fee339f7ff gdi32/tests: Fix a few test failures on Win9x and WinMe. 2008-12-05 12:36:53 +01:00
Paul Vriens 9960ab2418 gdi32/tests: Fix a few test failures on Win9x and WinMe. 2008-12-04 15:46:15 +01:00
Aric Stewart c0c852247f gdi32: Use the substitute name, if it exists, when looking for font system links.
Allows double indirection MS ShellDlg -> MS UI Gothic linked to system
gothic to work as expected.
2008-12-03 11:41:45 +01:00
Dmitry Timoshkov 1669b337e4 gdi32: Make PATH_AddEntry static. 2008-12-03 09:57:47 +01:00
Michael Stefaniuc ec1c9492b0 gdi32: Remove some superfluous casts. 2008-11-25 11:56:02 +01:00
Ricardo Filipe ca3d0d67a8 gdi32: Fix dead store (llvm/clang). 2008-11-18 13:05:56 +01:00
Paul Vriens decb70d95c gdi32/tests: Fix a few failures on Win9x and WinMe. 2008-11-13 15:30:52 +01:00
Paul Vriens 3f4333d70c gdi32/tests: Don't crash on NT4. 2008-11-06 15:01:12 +01:00
Dmitry Timoshkov 25a1803720 gdi32: Fix a broken test. 2008-11-06 11:10:10 +01:00
Sergey Khodych 11d17fafc4 winex11: BitBlt returns TRUE when drawing outside of the clipping or visible region. 2008-11-06 11:09:16 +01:00
Dmitry Timoshkov 376adf9438 gdi32: Try to avoid not necessary glyph transformations. 2008-11-03 11:50:15 +01:00
Michael Stefaniuc 933ec96aa7 gdi32: Don't cast NULL. 2008-10-31 13:27:24 +01:00
Kirill K. Smirnov 003392b545 gdi32: Fix copy/paste typo. 2008-10-31 12:57:17 +01:00
Bobby Bingham a900f5e065 gdi32: Add support for the GGO_UNHINTED flag in GetGlyphOutline. 2008-10-28 15:46:29 +01:00
Dmitry Timoshkov 61900098b1 gdi32: Move DC mapping APIs to the 'dc' debug channel. 2008-10-28 12:14:01 +01:00
Michael Stefaniuc 8ff77fce45 gdi32/tests: HGDIOBJ is interchangeable with other handle types; no casts are needed. 2008-10-27 11:30:01 +01:00
Dmitry Timoshkov 2d15db6136 gdi32: Search the child font list first. 2008-10-27 11:28:50 +01:00
Michael Stefaniuc 2d94915f27 gdi32: Don't cast the void pointer returned by GDI_GetObjPtr(). 2008-10-24 14:24:59 +02:00
Dmitry Timoshkov ccba8578f5 gdi32: Add EMR_GDICOMMENT to the list of records producing output.
This completely fixes the print previews generated by MS Access in a Win9x
mode. Access has a custom handler for an EMR_GDICOMMENT record, and GDI APIs
it calls from it don't work properly due to wrong DC mapping.
2008-10-23 15:15:41 +02:00
Dmitry Timoshkov d1fe894a7d gdi32: Make EnumEnhMetaFile update the DC state before calling the callback.
This makes applications with custom callbacks work properly, and fixes
'make test' in a win9x mode.
2008-10-22 13:54:53 +02:00
Francois Gouget 215738a140 dirent.h is a conditional include now. 2008-10-20 11:37:27 +02:00
Alexandre Julliard 7f327237bf Convert remaining source files to utf-8. 2008-10-18 19:23:08 +02:00
Austin English 3b6daf2512 gdi32: Quiet a noisy fixme. 2008-10-17 13:13:34 +02:00
Detlef Riekenberg 57a5a60ca3 gdi32/tests: Fix tests to not depend on 96 dpi. 2008-10-14 13:41:55 +02:00
Jeremy White 484add2220 gdi32/tests: Make the comparison of the enumerated and returned logfont structures actually work. 2008-10-13 12:14:23 +02:00
Jeremy White fed3d50663 gdi32: Expand maximum font count to 4096, warn when we go over that limit. 2008-10-13 12:14:00 +02:00
Andrew Talbot 3a02030d54 gdi32: Sign-compare warnings fix. 2008-10-13 12:13:19 +02:00
Dmitry Timoshkov 7c1397412b gdi32: Revert incorrect fix introduced in a5d288f08c.
The real fix has been provided in 41aad2dce2.
2008-10-09 12:58:03 +02:00
Dmitry Timoshkov f898547b77 gdi32: Remove the code which bypasses the DC transformation checks.
If it's absolutely required to check the child list first, that should be
done inside of find_in_cache using the same comparisons as done there.
2008-10-09 12:57:54 +02:00
Paul Vriens 880f785747 gdi32/tests: Skip some tests on Win9x/WinMe. 2008-10-08 12:20:38 +02:00
Henri Verbeet 4f2a3c2c28 gdi32: Call AbortProc from StartDoc instead of EndPage. 2008-10-08 12:16:00 +02:00
Dmitry Timoshkov 0d1470575d gdi32: Allow a rounding error in the text justification test. 2008-10-06 15:30:40 +02:00
Dmitry Timoshkov c8d5730610 gdi32: Add a test for a font being selected into 2 DCs with different transformations. 2008-10-06 15:30:36 +02:00
Dmitry Timoshkov 0467d4e4c6 gdi32: Make test_font_metrics require the font being selected into the DC. 2008-10-06 15:30:31 +02:00
Andrew Talbot 44be6c7cbf gdi32: Sign-compare warnings fix. 2008-10-06 13:48:53 +02:00
Paul Vriens 4bf5c5f8a2 gdi32/tests: Fix a few failures on win9x. 2008-10-06 13:09:05 +02:00
Dmitry Timoshkov b31d7dbe8e gdi32: Do not skip the font metrics update after the DC transform change. 2008-10-02 10:28:36 -05:00
Dmitry Timoshkov 40e1e39785 gdi32: Make the PS_NULL test pass under Wine. 2008-10-01 09:56:41 -05:00
Dmitry Timoshkov 830f1563c6 gdi32: Add a test for PS_NULL pen being equal to NULL_PEN stock object. 2008-09-29 17:25:36 -05:00
James Hawkins e1d56fa4bd comctl32: Fix a failing test in win9x. 2008-09-29 17:24:07 -05:00
Alexandre Julliard ff6f7a57b9 gdi32/tests: Skip test that depends on Tahoma if it isn't installed. 2008-09-19 12:07:32 +02:00
Huw Davies 2f8f3facce gdi32: Factor out the name table lookup into a separate function. 2008-09-18 14:18:11 +02:00
Paul Vriens 84266fc6f6 gdi32/tests: Skip some failing tests on NT4. 2008-09-11 11:44:00 +02:00
Paul Vriens c50d922ef6 gdi32/tests: Prevent a crash on win95. 2008-09-11 11:43:52 +02:00
Dmitry Timoshkov 067cbc57f3 gdi32: Don't use pOS2->usWeightClass, some fonts don't set it correctly. 2008-09-11 11:42:02 +02:00
Shunichi Fuji de251e1c62 gdi32: Adjust FT_MulFix function to Freetype cvs head. 2008-09-04 11:41:08 +02:00
James Hawkins 5468f40ab8 gdi32: Fix a failing test in win9x. 2008-09-03 14:21:42 +02:00
James Hawkins 4c7cb8a339 gdi32: Fix a failing test in win98. 2008-08-29 13:22:14 +02:00
Alexandre Julliard e84bc545c3 gdi32: Add missing WineEngRealizationInfo function for the non-freetype case. 2008-08-25 15:38:27 +02:00
Dmitry Timoshkov 21cdaeea4b gdi32: Replace DC transform by font scaling for bitmap fonts. 2008-08-21 11:42:25 +02:00
Dmitry Timoshkov f322f70a69 gdi32: Avoid loading a bitmap if a glyph transformation is being requested. 2008-08-21 11:42:11 +02:00
Michael Karcher 3843d5beee winex11: Fix GetDIBits with monochrome pixmaps. 2008-08-18 17:15:56 +02:00
Huw Davies 67a5f256c4 gdi32: Don't use biSizeImage for a BI_BITFIELDS dib. 2008-08-18 17:04:44 +02:00
Alexandre Julliard 73423c1a40 gdi32/tests: Fix some test failures on Win9x. 2008-08-05 14:09:37 +02:00
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