Commit Graph

2993 Commits

Author SHA1 Message Date
Jacek Caban a222f974c3 gdi32: Introduce get_gdi_object_type.
And use it instead of GetObjectType in ntgdi functions.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-15 19:34:22 +02:00
Nikolay Sivov a80ecd1af7 tools: Update to Unicode 14.0.0.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-15 19:34:21 +02:00
Jacek Caban 01fdc50fa2 gdi32: Remove no longer used printer config driver entry points.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-13 19:57:29 +02:00
Jacek Caban 689046b216 gdi32: Remove ordinal exports.
We no longer need them for our winspool and they are not present on Windows.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-13 19:57:29 +02:00
Jacek Caban 5e012f7bec gdi32: Remove no longer needed metafile special case from NtGdiExtTextOutW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-10 20:22:12 +02:00
Jacek Caban a8131cb3e7 gdi32: Directly use ntgdi functions in font.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-10 20:22:12 +02:00
Jacek Caban d2d8132734 gdi32: Fix some ntgdi names.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-10 20:22:12 +02:00
Jacek Caban 33ecaf357e gdi32/tests: Add GdiTransparentBlt tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-10 20:22:12 +02:00
Jacek Caban 953a219004 gdi32: Use EMR_TRANSPARENTBLT to record GetTransparentBlt.
And use NtGdiTransparentBlt.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-10 20:22:12 +02:00
Jacek Caban 7b8a9db513 gdi32/test: Add tests for recording MaskBlt and PlgBlt in EMFs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-10 20:22:11 +02:00
Jacek Caban 5f139f1411 gdi32: Factor out get_icm_profile.
And move it to dc.c.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 19:31:24 +02:00
Jacek Caban 6403e88140 gdi32: Use GetICMProfile driver entry point for EnumICMProfilesW.
When display ICM is not explicitly configured on Windows, GetICMProfile
returns the default profile, but EnumICMProfiles does not enumerate
anything. For non-default configuration, EnumICMProfiles returns
configured profiles.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 19:31:22 +02:00
Jacek Caban bf4cdfad5b gdi32: Support NULL prev_value in NtGdiGetAndSetDCDword.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 19:31:19 +02:00
Jacek Caban 03ec246e52 gdi32: Use EMR_PLGBLT to record PlgBlt.
And use NtGdiPlgBlt.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 19:31:16 +02:00
Jacek Caban dcf7d7d5c4 gdi32: Use EMR_MASKBLT to record MaskBlt.
And use NtGdiMaskBlt.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 19:31:14 +02:00
Jacek Caban 839a951f67 gdi32: Factor out get_bitmap_info.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 19:31:12 +02:00
Jacek Caban 3361a2f2ba gdi32: Don't use gdi_private.h and ntgdi_private.h at the same time.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-07 23:19:22 +02:00
Jacek Caban 691cb12e5b gdi32: Move metafile defines to gdi_private.h.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-07 23:19:22 +02:00
Jacek Caban c0cdf0652f gdi32: Move get_full_gdi_handle to objects.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-07 23:19:22 +02:00
Jacek Caban 5863f0af57 gdi32: Use zero biClrUsed in emfdc_create_brush when possible.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-07 23:19:22 +02:00
Jacek Caban 1ba1736238 gdi32: Copy brush bits in get_brush_bitmap_info.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-07 23:19:22 +02:00
Jacek Caban d94d1a8b26 gdi32: Allocate extra DWORD for EMR_CREATEDIBPATTERNBRUSHPT records.
Like for EMR_CREATEMONOBRUSH.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-07 23:19:21 +02:00
Jacek Caban 08d377c02f gdi32/tests: Add more metafile brush tests.
Based on brush.c.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-07 23:19:21 +02:00
Jacek Caban 8e70a0a5cc gdi32: Use NtGdiDeleteObjectApp instead of DeleteObject in ntgdi functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-03 21:43:03 +02:00
Jacek Caban 072a100f66 gdi32: Use internal get_stock_object in ntgdi functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-03 21:43:03 +02:00
Jacek Caban 951d8ace18 gdi32: Get stock objects directly from GDI_SHARED_MEMORY in GetStockObject.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-03 21:43:03 +02:00
Jacek Caban c33b7b583b gdi32: Use ntgdi functions to create stock objects.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-03 21:43:03 +02:00
Jacek Caban 05a3384ca8 gdi32: Use NtGdiGetDCObject for GetCurrentObject.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-03 21:43:03 +02:00
Jacek Caban 5794b2da18 gdi32: Use shifted values for NTGDI_OBJ_* constants.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-03 21:43:03 +02:00
Jacek Caban 75d21c999e gdi32: Move GdiConvertToDevmodeW to gdidc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban ef7b2a1b8b gdi32: Use ntgdi interface for printer driver functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban 800cde3cf4 gdi32: Use NtGdiStartDoc for StartDoc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban 711ce415c0 gdi32: Store abort proc in DC_ATTR.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban 02d2bc944d gdi32: Use ntgdi names for spool functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban b096da8a50 gdi32: Use NtGdiGetRandomRgn for GetMetaRgn.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban 8217ce0fef gdi32: Use NtGdiGetRandomRgn for GetClipRgn.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban f95687c510 gdi32: Move GdiDllInitialize to objects.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban 66fd792c4d gdi32: Move LineDDA to objects.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:38 +02:00
Jacek Caban 34508690cb gdi32: Move CombineTransform to objects.c.
And use a separated copy in ntgdi functions.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-01 17:09:07 +02:00
Jacek Caban 00359ebfa0 gdi32: Copy TranslateCharsetInfo to text.c.
And use a separated copy in ntgdi functions.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-01 17:09:03 +02:00
Jacek Caban 7da78fd269 gdi32: Use ntgdi for AddFontResourceExW and RemoveFontResourceExW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-01 17:08:58 +02:00
Jacek Caban 8a68a9ee31 gdi32: Use NtGdiAddFontMemResourceEx for AddFontMemResourceEx.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-01 17:08:54 +02:00
Jacek Caban 865be24a25 gdi32: Use NtGdiEnumFonts for EnumFontFamiliesExW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-01 17:08:48 +02:00
Jacek Caban 931ea8b00e gdi32: Use EnumFontFamiliesExW for EnumFontFamiliesExA.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-01 17:08:43 +02:00
Jacek Caban f6e584e626 gdi32: Use NtGdiCreateDIBSection for CreateDIBSection.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:33 +02:00
Jacek Caban b2522bfb90 gdi32: Use NtGdiCreateDIBitmapInternal for CreateDIBitmap.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:31 +02:00
Jacek Caban 0110321640 gdi32: Use NtGdiGetDIBitsInternal for GetDIBits.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:29 +02:00
Jacek Caban 55849cd428 gdi32: Use NtGdiGetAndSetDCDword for SetGraphicsMode.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:27 +02:00
Jacek Caban 9c03e8ae8c gdi32: Use NtGdiCreateCompatibleBitmap for CreateCompatibleBitmap.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:24 +02:00
Jacek Caban e4bb797252 gdi32: Use NtGdiExtCreatePen for ExtCreatePen.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:22 +02:00
Jacek Caban 91621cece6 gdi32: Move EnumObjects to objects.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:17 +02:00
Jacek Caban 86f11f71a0 gdi32: Move stub object functions to objects.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:48:14 +02:00
Jacek Caban 111b9def83 gdi32: Use ntgdi names for object functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban 0e257cb1fb gdi32: Move more DC stubs to gdidc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban 5a780ffd63 gdi32: Use ntgdi names for GetClipBox and GetRandomRgn.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban 34449789d3 gdi32: Move resource functions wrappers to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban fab977f7b2 gdi32: Move EnumFontFamiliesEx wrappers to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban 62a9bae480 gdi32: Move GdiRealizationInfo to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban 6dfa2e3740 gdi32: Use NtGdiGetFontFileData for GetFontFileData.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban e7814627be gdi32: Use ntgdi names for a few more font functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban 23345fe055 gdi32: Move a few font functions to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban f801e27d32 gdi32: Use NtGdiGetGlyphIndicesW for GetGlyphIndicesW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-30 22:49:58 +02:00
Jacek Caban fba1746091 gdi32: Use ntgdi name for GetFontData.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban 3b686c3eca gdi32: Move GetFontLanguageInfo to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban 43d0e40149 gdi32: Use NtGdiGetKerningPairsW for GetKerningPairsW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban c221571468 gdi32: Use NtGdiGetGlyphOutlineW for GetGlyphOutlineW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban 9fe27a704d gdi32: Use NtGdiGetCharABCWidthsW for GetCharABCWidthsFloatA.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban fb5a3ba541 gdi32: Use NtGdiGetCharABCWidthsW for GetCharABCWidthsFloatW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban ce9b1ddc1a gdi32: Use NtGdiGetCharABCWidthsW for GetCharABCWidthsI.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban 78a935138e gdi32: Use NtGdiGetCharABCWidthsW for GetCharABCWidthsA.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban b656ff5d75 gdi32: Use NtGdiGetCharABCWidthsW for GetCharABCWidthsW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 20:25:05 +02:00
Jacek Caban 7429be11f2 gdi32: Use NtGdiGetCharWidthW for GetCharWidthI.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Jacek Caban 690a861b0a gdi32: Use NtGdiGetCharWidthW for GetCharWidthFloatA.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Jacek Caban e5f5e7342d gdi32: Use NtGdiGetCharWidthW for GetCharWidthFloatW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Jacek Caban 2c77643ee9 gdi32: Support passing an array of chars to NtGdiGetCharWidthW.
And use it for GetCharWidthA.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Jacek Caban baa6056980 gdi32: Use NtGdiGetCharWidthW for GetCharWidth.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Jacek Caban c3ad3f2bd0 gdi32/tests: Use winetest_debug to silence noisy traces.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Jacek Caban ba1769cb7d gdi32/tests: Add more char width tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Jacek Caban 5087dafb80 gdi32: Use NtGdiCreateDIBBrush for CreateDIBPatternBrush.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:38 +02:00
Jacek Caban 48d586b782 gdi32: Use NtGdiCreateDIBBrush for CreateDIBPatternBrushPt.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:34 +02:00
Jacek Caban 99367b66e6 gdi32: Use NtGdiCreatePatternBrushInternal for CreatePatternBrush.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:31 +02:00
Jacek Caban e0877b84a6 gdi32: Use NtGdiCreateHatchBrush for CreateHatchBrush.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:27 +02:00
Jacek Caban bd3f878021 gdi32: Use NtGdiCreateSolidBrush for CreateSolidBrush.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:24 +02:00
Jacek Caban 2c467a2d1e gdi32: Reimplement CreateBrushIndirect on top of other brush constructors.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:20 +02:00
Jacek Caban 1c1ff37390 gdi32: Move D3DKMTOpenAdapterFromGdiDisplayName to objects.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:14 +02:00
Jacek Caban fbd39cd8b5 gdi32: Implement NtGdiDdDDIOpenAdapterFromLuid.
And use it for D3DKMTOpenAdapterFromGdiDisplayName.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:28:07 +02:00
Jacek Caban d127a14a7f gdi32: Use ntgdi names for D3DKMT functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:27:58 +02:00
Jacek Caban 7e67cc996f gdi32: Merge enhmetafiledrv.h into emfdc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 17:41:37 +02:00
Jacek Caban 580099aae8 gdi32: Merge enhmfdrv/bitblt.c into emfdc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 17:41:23 +02:00
Jacek Caban b793a8a2da gdi32: Merge enhmfdrv/graphics.c into emfdc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 17:41:20 +02:00
Jacek Caban 1d940b62d1 gdi32: Merge enhmfdrv/objects.c into emfdc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 17:41:17 +02:00
Jacek Caban 67bbaaf921 gdi32: Merge enhmfdrv/init.c into emfdc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 17:41:14 +02:00
Jacek Caban 3303e00a10 gdi32: Move enhmfdrv/dc.c into new emfdc.c file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 17:41:00 +02:00
Jacek Caban 7f888ea093 gdi32: Separate EMFDRV_PDEVICE and struct emf.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:37 +02:00
Jacek Caban 478fa71f5f gdi32: Use NtGdiGetRgnBox in emfdrv_stroke_and_fill_path.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:32 +02:00
Jacek Caban 0e8a7a5050 gdi32: Avoid using EMFDRV_PDEVICE outside emfdev.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:28 +02:00
Jacek Caban 1323ff842e gdi32: Use struct emf for EMF helpers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:23 +02:00
Jacek Caban 56efbd0212 gdi32: Move EMF driver to separated file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:19 +02:00
Jacek Caban 233af3fdbf gdi32: Handle EMF recording clean up in DeleteDC.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:14 +02:00
Jacek Caban 9a53f3ae11 gdi32: Use NtGdiDeleteObjectApp for DeleteDC.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:07 +02:00
Jacek Caban e33cdf89c5 gdi32: Use NtGdiResetDC for ResetDCW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:15:02 +02:00
Jacek Caban c0e7df8b42 gdi32: Store EMF bounds in DC_ATTR.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:14:54 +02:00
Jacek Caban 59670ffb2d gdi32: Introduce NtGdiCreateMetafileDC.
And use it in CreateEnhMetaFileW.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 18:14:49 +02:00
Jacek Caban 0669b6cd48 gdi32: Use NtGdiGetOutlineTextMetricsInternalW for GetOutlineTextMetrics.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban 75786478c6 gdi32: Use NtGdiHfontCreate for CreateFont* functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban 7ad7ec5b8b gdi32: Store font code page in DC_ATTR.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban 6caf861a63 gdi32: Use NtGdiGetTextMetricsW for GetTextMetrics.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban c0486678eb gdi32: Use NtGdiGetTextExtentExPointW for GetTextExtentExPoint.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban ff36618c96 gdi32: Use NtGdiGetTextFaceW for GetTextFace.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban e27c61be21 gdi32: Move GetCharacterPlacementA to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban cd60db086a gdi32: Move ExtTextOutW wrappers to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 17:34:56 +02:00
Jacek Caban 6616da70be gdi32: Move GetCharacterPlacementW to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:30 +02:00
Jacek Caban bf4084b49c gdi32: Move bidi text reordering to ExtTextOutW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:26 +02:00
Jacek Caban 64df8e975b gdi32: Rename bidi.c to text.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:22 +02:00
Jacek Caban b223f82603 gdi32: Use NtGdiGetAndSetDCDword for SetDCPenColor.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:18 +02:00
Jacek Caban 02ee9bf246 gdi32: Use NtGdiGetAndSetDCDword for SetDCBrushColor.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:15 +02:00
Jacek Caban 59b2aabd61 gdi32: Use ntgdi names for GetPath and PathToRegion.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:11 +02:00
Jacek Caban 37a5c8b9f3 gdi32: Use NtGdiWidenPath for WidenPath.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:07 +02:00
Jacek Caban b048e4e0df gdi32: Use NtGdiStrokePath for StrokePath.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:38:03 +02:00
Jacek Caban dc19c31d8b gdi32: Use NtGdiStrokeAndFillPath for StrokeAndFillPath.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 12:37:59 +02:00
Jacek Caban 817f116e95 gdi32: Remove no longer used driver entry points.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:40 +02:00
Jacek Caban b39d4cbe36 gdi32: Use NtGdiFlattenPath for FlattenPath.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:38 +02:00
Jacek Caban 617cab3568 gdi32: Use NtGdiSelectClipPath for SelectClipPath.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:36 +02:00
Jacek Caban 6ce4ad23eb gdi32: Use NtGdiFillPath for FillPath.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:33 +02:00
Jacek Caban b47fb9081d gdi32: Merge mfdrv/text.c into metadc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:16 +02:00
Jacek Caban 61084e0bdc gdi32: Merge mfdrv/bitblt.c into metadc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:12 +02:00
Jacek Caban fa1320f466 gdi32: Merge mfdrv/objects.c into metadc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:09 +02:00
Jacek Caban 2f71b42f07 gdi32: Merge mfdrv/graphics.c into metadc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:07 +02:00
Jacek Caban 1b86e52ec4 gdi32: Merge mfdrv/dc.c into metadc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:41:04 +02:00
Jacek Caban 293678f123 gdi32: Move mfdrv/init.c to new metadc.c file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:40:53 +02:00
Jacek Caban 3057388ff8 gdi32: Remove no longer used driver entry points.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban 2ef5b9720f gdi32: Directly handle EMFs in GdiComment.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban 6167fd3290 gdi32: Use NtGdiCreateClientObj for CreateMetaFile.
Instead of alloc_dc_ptr. Metafile DCs are not real DCs.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban 728f96bf8a gdi32: Remove no longer needed metafile helpers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban 22e40449e1 gdi32: Don't use PHYSDEV for metafile helpers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban a3368089fb gdi32: Avoid using MFDRV_MetaParam* helpers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban 851060a3a0 gdi32: Rename METAFILEDRV_PDEVICE to metadc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban 561b25c4de gdi32: Use NtGdiRestoreDC for RestoreDC.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban 8eab13f397 gdi32: Store save level in DC_ATTR.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban fb11008bca gdi32: Use NtGdiGetAndSetDCDword for SetTextColor.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:39:06 +02:00
Jacek Caban a5cb435e77 gdi32: Use NtGdiGetAndSetDCDword for SetBkColor.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:39:03 +02:00
Jacek Caban c230071d25 gdi32: Use NtGdiDoPalette for GetDIBColorTable and SetDIBColorTable.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:58 +02:00
Jacek Caban 1c270965a8 gdi32: Use NtGdiDoPalette for GetSystemPaletteEntries.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:56 +02:00
Jacek Caban 44313dcb49 gdi32: Use NtGdiDoPalette for AnimatePalette.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:53 +02:00
Jacek Caban 4fc5f0ff70 gdi32: Use NtGdiDoPalette for SetPaletteEntries.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:50 +02:00
Jacek Caban ad00037c27 gdi32: Use NtGdiDoPalette for GetPaletteEntries.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:47 +02:00
Jacek Caban 4d55d75455 gdi32: Use ntgdi names for palette functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:44 +02:00
Jacek Caban 3787b43428 gdi32: Use NtGdiCreatePaletteInternal for CreatePalette.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:40 +02:00
Jinoh Kang 76821849fe gdi32: Add missing release_dc_ptr to NtGdiSetLayout.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51614
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:38:37 +02:00
Jacek Caban 84fb3b943d gdi32: Move Escape to gdidc.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-13 14:42:31 +02:00