Alexandre Julliard
b057c5f140
gdi32: Fix handling of font orientation in advanced graphics mode.
2012-12-10 17:36:23 +01:00
Alexandre Julliard
75fff47f94
gdi32: Add ref counting to the font objects and simplify the cache management.
2012-12-10 13:42:23 +01:00
Alexandre Julliard
06dced4eaa
gdi32: Keep track of the number of fonts on the unused list.
2012-12-07 14:39:49 +01:00
Alexandre Julliard
d3c128346b
gdi32: Simplify list processing by using the LIST_FOR_EACH_ENTRY macro.
2012-12-07 14:29:28 +01:00
Francois Gouget
166e7c7381
gdi32: Make make_rgb_colorref() static.
2012-12-07 12:35:29 +01:00
Alexandre Julliard
8cca615f02
gdi32: Don't store a font pointer in the generic part of the DC.
2012-12-05 21:13:54 +01:00
Alexandre Julliard
baedf81b11
gdi32: Don't create a separate font handle for linked fonts.
2012-12-05 21:13:29 +01:00
Alexandre Julliard
6144824965
gdi32: Remove special handling for linked fonts in ExtTextOut.
2012-12-05 20:23:50 +01:00
Alexandre Julliard
491123e17b
gdi32: Support getting character codes instead of glyphs in ExtTextOut for the path driver.
2012-12-05 17:46:53 +01:00
Alexandre Julliard
78626cdbaa
gdi32: Support caching glyphs by character code and not only by glyph index.
2012-12-05 17:46:47 +01:00
Alexandre Julliard
e8b6701fe1
gdi32: Store and return ABC metrics from get_glyph_outline.
2012-12-04 18:14:56 +01:00
Alexandre Julliard
3a4864714d
gdi32: Don't copy unnecessary rows when shrinking in DELETESCANS mode.
2012-12-03 18:24:46 +01:00
Alexandre Julliard
db3a8d6c0c
gdi32: Avoid binary ROPs when shrinking in DELETESCANS mode.
2012-12-03 18:24:46 +01:00
Alexandre Julliard
6f6e919e2b
gdi32: Avoid binary ROPs when stretching in DELETESCANS mode.
2012-12-03 18:24:45 +01:00
Alexandre Julliard
2d3385eec9
gdi32: Avoid computing grayscale glyph intensities when not needed.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
abdce5c2c8
gdi32: Use the faster memset for vertical gradients.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
d10d95608c
gdi32: Make blend_subpixel inline.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
a796ad5ed8
gdi32: Avoid creating a copy of the pattern bits for the R2_COPYPEN case.
2012-11-29 19:40:19 +01:00
Alexandre Julliard
7339308e16
gdi32: Add faster implementation of the pattern_rects primitive when we don't need an AND mask.
2012-11-29 19:40:13 +01:00
Alexandre Julliard
2aff4696b6
gdi32: Add assembly helpers for filling solid rectangles.
2012-11-29 12:31:13 +01:00
Alexandre Julliard
cb7917f9c8
gdi32: Add faster implementations of the solid_rects primitive for the common case of R2_COPYPEN.
2012-11-29 12:17:55 +01:00
Alexandre Julliard
6050a025bb
gdi32: Add a font glyph cache in the DIB engine.
2012-11-28 12:22:40 +01:00
Alexandre Julliard
4ad5287496
gdi32: Fully reset the DC state before deleting it.
2012-11-27 19:45:30 +01:00
Huw Davies
e6f1930116
gdi32: Simplify the point type checking logic.
2012-11-27 17:00:05 +01:00
Alexandre Julliard
1c4cf1a2db
gdi32: Fix coordinate mapping of arc limits.
2012-11-19 16:35:23 +01:00
Alexandre Julliard
ebaf5ea176
gdi32: Don't load bitmap glyphs when using subpixel rendering in GetGlyphOutline.
2012-11-15 21:21:39 +01:00
Piotr Caban
4f07c49547
gdi32: Added GetGlyphOutlineW tests on glyph that contains empty contour.
2012-11-13 16:57:02 +01:00
Piotr Caban
b696558f04
gdi32: Ignore contours containing one point in get_glyph_outline function.
2012-11-13 16:55:55 +01:00
Alexandre Julliard
af3f3cb1b2
gdi32: Avoid using the system GL headers.
2012-11-07 18:12:03 +01:00
Alexandre Julliard
86c41dc468
gdi32: Take into account the FontSmoothing key for anti-aliasing.
2012-11-06 16:02:27 +01:00
Alexandre Julliard
ff8647ea39
gdi32: Avoid opening the desktop registry key multiple times.
2012-11-06 16:02:19 +01:00
Alexandre Julliard
7fdba1f3dd
gdi32: Use the fontconfig anti-aliasing setup even for non-fontconfig fonts.
2012-11-06 11:47:28 +01:00
Alexandre Julliard
ddba05547f
gdi32: Get rid of the non-standard flags in GetRasterizerCaps.
2012-11-06 11:00:48 +01:00
Alexandre Julliard
5c02c352d9
gdi32: Determine the default anti-aliasing parameters in the null driver SelectFont entry point.
2012-11-05 16:15:25 +01:00
Alexandre Julliard
9d888b371f
gdi32: Set the font anti-aliasing flags from the fontconfig information if available.
2012-11-02 19:47:09 +01:00
Alexandre Julliard
123da6f888
gdi32: Move checking of the subpixel support and gasp flags to freetype.c.
2012-11-02 17:21:45 +01:00
Alexandre Julliard
9cdb0e1ca6
gdi32: Disable anti-aliasing when necessary in the various drivers.
2012-11-02 16:41:26 +01:00
Alexandre Julliard
ccc034c27e
gdi32: Store the anti-aliasing flags in the DC when selecting a font.
2012-11-02 16:41:23 +01:00
Alexandre Julliard
6164d533a9
gdi32: Add a parameter to return anti-aliasing flags in the SelectFont driver entry point.
2012-11-02 16:41:21 +01:00
Alexandre Julliard
a04f73808e
gdi32: Store the fontconfig anti-aliasing flags for each font.
2012-11-01 15:09:16 +01:00
Alexandre Julliard
24cdd74c6f
gdi32: Store the font file name in Unicode in the font cache.
2012-11-01 15:09:15 +01:00
Alexandre Julliard
c1f8a0bf61
gdi32: Avoid some redundant registry calls while loading the font cache.
2012-11-01 15:09:15 +01:00
Huw Davies
9247328371
gdi32: Implement sub-pixel glyph smoothing.
2012-10-30 18:09:00 +01:00
André Hentschel
0f7bc2d8cc
gdi32: Avoid memory leaks (coverity).
2012-10-29 10:34:54 +01:00
Huw Davies
7cd8dc6bf2
gdi32: Use a symbol charmap if all else fails.
2012-10-26 16:29:29 +02:00
Huw Davies
8ef70039d3
gdi32: Simplify the code for charmap selection.
2012-10-26 16:29:26 +02:00
Alexandre Julliard
86abd84167
gdi32: Fix mapping of symbol font glyphs even when no encoding is specified.
2012-10-25 11:54:33 +02:00
André Hentschel
f5df798611
gdi32: Fix free of address-of expression (coverity).
2012-10-25 11:48:15 +02:00
André Hentschel
cf95218f08
gdi32: Fix copy-paste error (coverity).
2012-10-24 19:38:20 +02:00
Alexandre Julliard
4396a79ede
gdi32: Add a DC hook flag to reset the DC state.
2012-10-24 18:24:03 +02:00
Alexandre Julliard
77c1856d43
gdi32: Remove an unused DC field.
2012-10-24 18:22:29 +02:00
Alexandre Julliard
5c1a752d61
gdi32: Export a function to retrieve the module handle of the graphics driver for a DC.
2012-10-22 15:16:00 +02:00
Alexandre Julliard
b0ba7c765e
gdi32: Update the ref count of stock objects when deleting a DC.
2012-10-21 12:18:46 +02:00
Huw Davies
aa9827b08e
gdi32: Move the string rendering code to a common function.
2012-10-19 18:09:52 +02:00
Huw Davies
e6c349d69f
gdi32: Use the helper to draw the glyphs.
2012-10-19 18:09:49 +02:00
Huw Davies
3e7517328d
gdi32: Pass individual x, y co-ords to draw_glyph rather than a POINT.
2012-10-19 18:09:46 +02:00
Huw Davies
3ef520650c
gdi32: Pass a dib_info structure to draw_glyph.
2012-10-19 18:09:44 +02:00
Qian Hong
648a8ce40e
gdi32/tests: Fixed typo in localized name tests.
2012-10-19 11:18:20 +02:00
Qian Hong
16f2a1948e
gdi32/tests: Declared system_lang_id as a global variable.
2012-10-19 11:18:11 +02:00
Qian Hong
f9546329b6
gdi32/tests: Marked EnumFontFamiliesEx_default_charset test on Arabic locale as broken.
2012-10-19 11:17:59 +02:00
Qian Hong
284b382aba
gdi32/tests: Skip some broken bitmap font metrics tests on Arabic locale.
2012-10-19 11:17:47 +02:00
Qian Hong
b31dababde
gdi32/tests: Fixed broken value in bitmap font metrics on Arabic locale.
2012-10-19 11:17:38 +02:00
Qian Hong
ec9166b1ac
gdi32/tests: Fixed broken bitmap font metrics test on CJK locales.
2012-10-19 11:17:25 +02:00
Qian Hong
416664babd
gdi32/tests: Fixed broken value in bitmap font metrics on Japanese locale.
2012-10-19 11:17:15 +02:00
Alexandre Julliard
446bff7897
gdi32/tests: Avoid deleting invalid objects.
2012-10-18 22:28:45 +02:00
Huw Davies
64e2ad5709
gdi32: Make get_glyph_bitmap return a dib_info structure in order to avoid code duplication.
2012-10-18 19:22:14 +02:00
Alexandre Julliard
091c342f32
gdi32: Add a generation count in the high word of GDI handles.
2012-10-17 21:38:07 +02:00
Alexandre Julliard
df357093cc
gdi32: Get rid of the GDIOBJHDR type.
2012-10-17 13:48:45 +02:00
Alexandre Julliard
3964aa4a8d
gdi32: Get rid of the METAFILEOBJ type, instead store a pointer to the metafile data.
2012-10-17 13:46:40 +02:00
Alexandre Julliard
89ecf02ca5
gdi32: Get rid of the RGNOBJ type, instead store a pointer to the region itself.
2012-10-17 13:28:25 +02:00
Alexandre Julliard
dfeeedcf74
gdi32: Store the object flags directly in the GDI handle table.
2012-10-17 13:27:54 +02:00
Alexandre Julliard
b95dd7e831
gdi32: Store the object selection count directly in the GDI handle table.
2012-10-17 13:17:56 +02:00
Alexandre Julliard
5f14ff42a8
gdi32: Process the object HDC list outside of the critical section.
2012-10-17 13:10:23 +02:00
Alexandre Julliard
2e693d00c9
gdi32: Store the HDC list directly in the GDI handle table.
2012-10-17 13:10:23 +02:00
Alexandre Julliard
cf3cafdc18
gdi32: Store the object function table directly in the GDI handle table.
2012-10-17 13:10:22 +02:00
Alexandre Julliard
2bdf447744
gdi32: Store the object type directly in the GDI handle table.
2012-10-17 13:10:21 +02:00
Alexandre Julliard
36f2b09632
gdi32: Always return the full DIB surface in GetImage and adjust coordinates accordingly.
...
Based on a patch by Ken Thomases.
2012-10-15 15:25:04 +02:00
Alexandre Julliard
2f92af70e0
gdi32: Add helper functions for converting between handle and index.
...
Also rename all instances of "large handles" since that's the only handle type now.
2012-10-12 11:36:24 +02:00
Daniel Lehman
ea6e0a833b
gdi32: Use HandleToULong inline function to convert handle to index instead of casting.
2012-10-12 11:27:58 +02:00
Alexandre Julliard
6e325afaa7
gdi32: Handle a missing source alpha directly in the blend_rect primitive instead of modifying the source data.
2012-10-10 20:34:08 +02:00
Alexandre Julliard
76272e0773
gdi32: Use BI_BITFIELDS to indicate that a 32-bpp DIB doesn't have an alpha channel.
2012-10-10 20:34:08 +02:00
Alexandre Julliard
34b70728f3
gdi32: Limit the allocation size to the useful data when converting DIB bits.
2012-10-10 20:34:07 +02:00
Alexandre Julliard
86cf1126a5
gdi32: Return the full DIB height in GetImage instead of clipping to the visible rect.
2012-10-10 20:34:07 +02:00
Huw Davies
0941fefbc0
gdi32: Correctly map the 256-level bitmap to the 5, 17 and 65-level bitmaps.
2012-10-01 12:12:15 +02:00
Francois Gouget
f77605c765
gdi32: Make dibdrv_wgl{Describe,Set}PixelFormat() static.
2012-10-01 11:59:58 +02:00
Alexandre Julliard
7eb49ae703
gdi32: Enumerate a default charset if no other valid charset was found.
2012-09-27 14:39:24 +02:00
Alexandre Julliard
f0e4062773
gdi32: Allow GetCharABCWidths on all scalable fonts, not just TrueType ones.
2012-09-27 13:13:43 +02:00
Francois Gouget
5f55a71b70
Assorted spelling fixes.
2012-09-24 22:27:29 +02:00
Alexandre Julliard
e95cff0332
gdi32: Always update the DC before looking for the physdev pointer.
2012-09-20 21:07:04 +02:00
Michael Stefaniuc
f824030a49
gdi32: Don't bother using the register storage class specifier.
2012-09-14 15:41:45 +02:00
Qian Hong
df8be7b81a
gdi32: Prepend at in get_outline_text_metrics for vertical fonts.
2012-09-12 16:04:53 +02:00
Qian Hong
2f76f35e46
gdi32/tests: Added more tests for vertical fonts.
2012-09-12 16:04:47 +02:00
Qian Hong
97904fd1ff
gdi32: Prepend at when create vertical font face.
2012-09-12 16:04:34 +02:00
Qian Hong
8f91b51674
gdi32/tests: Added tests for vertical fonts.
2012-09-12 16:04:25 +02:00
Qian Hong
6c1e264e8e
gdi32: Fixed localized font full name (UNIQUE ID).
2012-09-12 16:04:03 +02:00
Qian Hong
de5972081e
gdi32: Fixed get_name_table_entry for symbol fonts.
2012-09-11 11:15:33 +02:00
Qian Hong
84954c0dbe
gdi32/tests: Added tests for symbol fonts.
2012-09-11 11:15:30 +02:00
Qian Hong
80dbd4e9cf
gdi32: Fixed localized font style name.
2012-09-11 11:15:27 +02:00
Qian Hong
4461612e33
gdi32/tests: Better trace in test_fullname2_helper.
2012-09-11 11:14:37 +02:00
Qian Hong
e7dcb0e260
gdi32/tests: Fixed a typo in style name test.
2012-09-11 11:14:32 +02:00
Marcus Meissner
f5c5a30724
gdi32: Fixed passed buffer size.
2012-09-10 11:39:43 +02:00
Alexandre Julliard
05c32b9b89
gdi32: Move the SwapBuffers entry point to the OpenGL driver.
2012-09-10 11:38:28 +02:00
Qian Hong
245308597f
gdi32: Fixed family and face name on non English locale.
2012-09-07 13:33:47 +02:00
Qian Hong
733aca30f4
gdi32: Read otmpFullName from TT_NAME_ID_UNIQUE_ID.
2012-09-07 13:32:56 +02:00
Qian Hong
abc8f2c6c2
gdi32: Read otmpFaceName from TT_NAME_ID_FULL_NAME.
2012-09-07 13:32:35 +02:00
Qian Hong
180185d890
gdi32/tests: Added font name tests on English locale.
2012-09-07 13:32:06 +02:00
Alexandre Julliard
27b0b88a0b
gdi32: Add a graphics driver to render windows contents through the DIB engine.
2012-09-06 12:24:25 +02:00
Alexandre Julliard
01c9c1cbc2
gdi32: Let user32 specify the device rectangle when setting the visible region.
2012-09-05 21:56:56 +02:00
Alexandre Julliard
bf528c5e9c
gdi32: Allow removing a driver from the stack based on its function table.
2012-08-21 12:59:18 +02:00
Alexandre Julliard
0f5cc668ba
gdi32: Add a helper function to find a specific driver in the DC stack.
2012-08-21 12:54:01 +02:00
Dmitry Timoshkov
c8d61899db
gdi32: Make sure that pattern info is initialized before being used.
2012-08-20 10:52:57 +02:00
Michael Stefaniuc
4d3a7aa268
gdi32: Avoid TRUE:FALSE conditional expressions.
2012-08-13 17:29:23 +02:00
Alexandre Julliard
747d1631d5
gdi32: Compute the line parameters using the cropped coordinates to avoid overflows.
2012-07-31 17:59:12 +02:00
Alexandre Julliard
96e80c2623
gdi32: Move DescribePixelFormat and SetPixelFormat to the WGL driver.
2012-07-30 22:12:13 +02:00
Alexandre Julliard
6714f16c74
gdi32: Clip solid pen regions to the DIB rectangle to avoid overflows.
2012-07-30 17:13:36 +02:00
Alexandre Julliard
a9151e5da3
gdi32: Limit line drawing coordinates to reasonable values to avoid overflows.
2012-07-30 17:13:36 +02:00
Alexandre Julliard
78d12e7fcc
gdi32: Add a helper function to initialize Bresenham parameters for line drawing.
2012-07-30 17:13:35 +02:00
Alexandre Julliard
35eef16ba7
gdi32: Support OpenGL in bitmaps through libOSMesa.
2012-07-27 17:05:16 +02:00
Alexandre Julliard
592e6aa942
gdi32: Work around a gcc array out of bounds warning.
2012-07-23 14:52:32 +02:00
Alexandre Julliard
4c0779006e
opengl32: Move the wgl functions to the main OpenGL function table.
2012-07-19 22:50:37 +02:00
Alexandre Julliard
6a8ded433b
gdi32: Remove left-over debug trace.
2012-07-19 20:27:39 +02:00
Alexandre Julliard
7c9d35e575
gdi32: PatBlt needs to bypass the brush for ROPs that don't make use of it.
2012-07-19 15:42:31 +02:00
Francois Gouget
7b782d435e
gdi32: Remove an unused wgl debugging channel.
2012-07-11 10:00:47 -05:00
Alexandre Julliard
4c3cc50104
gdi32: Fix bitmap glyph allocation size in ExtTextOut fallback implementation.
2012-07-02 10:58:57 +02:00
Alexandre Julliard
83be88953b
opengl32: Make the WGL driver context-specific.
2012-06-29 20:41:36 +02:00
Alexandre Julliard
d89f7f2563
opengl32: Move checks of the context thread id to opengl32.
2012-06-29 20:41:35 +02:00
Alexandre Julliard
0045ec9dfb
opengl32: Use proper handles for GL contexts and pass a context pointer to the WGL driver functions.
2012-06-29 20:41:34 +02:00
Alexandre Julliard
e059d565ab
gdi32: Add a null WGL driver.
2012-06-28 18:52:27 +02:00
Alexandre Julliard
6a9dcd51a2
gdi32: Remove the remaining OpenGL entry points from the DC driver.
2012-06-28 18:52:23 +02:00
Alexandre Julliard
edfc7f0de0
opengl32: Move wglGetProcAddress to the WGL driver.
2012-06-28 16:14:55 +02:00
Alexandre Julliard
8a13afedd6
opengl32: Move GetPixelFormat to the WGL driver.
2012-06-28 15:53:14 +02:00
Alexandre Julliard
bbdf77a311
opengl32: Move wglCreateContext to the WGL driver.
2012-06-28 15:47:31 +02:00
Alexandre Julliard
3bcb8057a1
opengl32: Move wglCreateContextAttribsARB to the WGL driver.
2012-06-28 15:07:44 +02:00
Alexandre Julliard
7a031d9b92
opengl32: Add the concept of a WGL driver.
2012-06-28 14:37:31 +02:00
Alexandre Julliard
db25d4022a
winex11: Simplify wglSetPixelFormatWINE and export it as a standard extension function.
2012-06-28 13:13:01 +02:00
Stefan Leichter
db21158faa
gdi32: Spelling fix.
2012-06-28 11:37:03 +02:00
Alexandre Julliard
4a367c5719
winex11: Export wglMakeCurrent and wglMakeContextCurrentARB as standard extension functions.
2012-06-28 01:44:03 +02:00
Alexandre Julliard
67e7eda96c
gdi32: Forward SwapBuffers to opengl32 which in turn calls GdiSwapBuffers.
2012-06-26 12:24:15 +02:00
Alexandre Julliard
c013945728
gdi32: Forward SetPixelFormat to opengl32 which in turn calls GdiSetPixelFormat.
2012-06-26 12:24:15 +02:00
Alexandre Julliard
e9f270bd41
gdi32: Forward DescribePixelFormat to opengl32 which in turn calls GdiDescribePixelFormat.
2012-06-26 12:24:14 +02:00
Alexandre Julliard
81cd178ae1
winex11: Move ChoosePixelFormat implementation to opengl32 and base it on DescribePixelFormat.
2012-06-26 12:24:09 +02:00
Alexandre Julliard
ee21554893
gdi32: Remove OpenGL functions that don't use an HDC from the driver entry points.
2012-06-25 16:25:57 +02:00
Alexandre Julliard
1c2f9255f4
gdi32: Fix StretchDIBits return value when destination is clipped.
2012-06-22 14:39:28 +02:00
Dan Kegel
b85270e3a5
gdi32: Add test for SelectClipRgn in metafiles, make it pass.
2012-06-20 10:50:15 +02:00
Akihiro Sagawa
f503afd86f
gdi32: Remove an outdated comment in struct DefaultFontInfo.
2012-06-18 11:59:40 +02:00
Akihiro Sagawa
2bb416baa8
gdi32: Fix East-Asian font parameters.
2012-06-18 11:59:40 +02:00
Akihiro Sagawa
afdc84cf03
gdi32/tests: Make GetStockObject tests pass on East-Asian machines.
2012-06-18 11:59:39 +02:00
Alexandre Julliard
b61925e1ea
gdi32: Fix the contents of the region data in metafiles.
2012-06-18 10:54:30 +02:00
Dmitry Timoshkov
e65b19cad3
gdi32: Do not normalize height of the default GUI font.
2012-06-12 10:15:26 +02:00
Alexandre Julliard
c07763b419
gdi32: Clip output to both the DIB visible rectangle and the total DIB extents.
2012-06-04 22:23:15 +02:00
Alexandre Julliard
319a87c86e
gdi32: Take into account the DIB rectangles when determining overlap for blits.
2012-06-04 22:23:13 +02:00
Dmitry Timoshkov
cca41207c1
gdi32: Fix parameters of some GDI stock fonts.
2012-06-04 12:17:53 +02:00
Dmitry Timoshkov
4fa2945544
gdi32/tests: GetGlyphOutline should fail for a bitmap font.
2012-06-01 13:25:52 +02:00
Alexandre Julliard
6d23f3e7e1
gdi32: Keep the source DC locked until the end in StretchBlt and AlphaBlend.
2012-05-31 15:33:12 +02:00
Alexandre Julliard
61f4767ade
gdi32: Don't implement the gamma ramp functions in the DIB driver.
2012-05-31 13:44:32 +02:00
Alexandre Julliard
af4871f862
gdi32: Make sure the bounds are always updated in ExtTextOutW.
2012-05-30 21:35:22 +02:00
Alexandre Julliard
93758c43fd
gdi32: Remove the CreateBitmap and DeleteBitmap driver entry points.
2012-05-29 21:06:41 +02:00
Alexandre Julliard
1416d0e6f1
gdi32: Remove the bitmap parameter from the Get/PutImage entry points.
2012-05-29 21:05:52 +02:00
Alexandre Julliard
7c4c233d12
gdi32: Add a helper function that implements PutImage on a bitmap.
2012-05-29 18:20:12 +02:00
Alexandre Julliard
cf85fb14ab
gdi32: Add a helper function that implements GetImage on a bitmap.
2012-05-29 18:20:11 +02:00
Alexandre Julliard
b6f25e5250
gdi32: Remove the null driver Get/PutImage fallbacks for bitmaps.
2012-05-29 18:20:11 +02:00
Alexandre Julliard
592bfd52c9
gdi32: Always use the DIB engine for DDB rendering.
2012-05-29 18:20:10 +02:00
Alexandre Julliard
77ee0b56bb
gdi32/tests: Add some more tests for monochrome bitmap blits.
2012-05-29 18:17:47 +02:00
Alexandre Julliard
df924f6a8c
gdi32: Fix StretchBlt color mapping for monochrome bitmaps without a color table.
2012-05-29 18:17:22 +02:00
Alexandre Julliard
c2784e08fc
gdi32: Improve support of bitmaps without a color table in PutImage.
2012-05-29 18:16:30 +02:00
Alexandre Julliard
8761bb29ea
gdi32/tests: Add tests for color mappings in monochrome bitmaps.
2012-05-25 11:47:55 +02:00
Alexandre Julliard
b81a7d976e
gdi32: Always use the DIB engine for monochrome bitmap rendering.
2012-05-25 11:47:46 +02:00
Alexandre Julliard
294faf5ef3
gdi32: Check that the bitmap depth matches the DC when selecting it.
2012-05-25 11:19:36 +02:00
Alexandre Julliard
fdc4682e31
gdi32: Remove the CopyBitmap driver entry point.
2012-05-24 22:09:19 +02:00
Alexandre Julliard
a196ad8fc1
gdi32: Always store a copy of the bitmap bits for pattern brushes.
2012-05-24 19:53:23 +02:00
Alexandre Julliard
8a86f6c993
gdi32: Don't use the DC colors when drawing a monochrome pattern to a monochrome DDB.
2012-05-23 20:24:08 +02:00
Alexandre Julliard
139aeba3ef
gdi32: Implement dithering of solid brushes when drawing to DDBs.
2012-05-23 20:24:03 +02:00
Alexandre Julliard
664442ab84
gdi32: Don't store the default color table in dib_info objects.
2012-05-23 17:22:17 +02:00
Alexandre Julliard
9968f3083a
gdi32: Use the default color table when mapping colors in bitmaps that don't have one.
2012-05-23 17:22:07 +02:00
Alexandre Julliard
b8e4cd81ab
gdi32: Simplify creation of hatch masks and avoid endianness issues.
2012-05-23 17:22:03 +02:00
Alexandre Julliard
574a07e4c9
gdi32: Add a helper function to allocate the brush bits.
2012-05-22 22:03:18 +02:00
Alexandre Julliard
b708b40105
gdi32: Pass a rop_mask_bits object to the pattern_rects primitive.
2012-05-22 21:52:44 +02:00
Alexandre Julliard
524aef660e
gdi32: Use a rop_mask_bits object to store the brush bits.
2012-05-22 21:47:30 +02:00
Alexandre Julliard
3c2502a8c7
gdi32: Add support for dithering pattern brushes when painting to monochrome bitmaps.
2012-05-22 17:43:52 +02:00
Francois Gouget
fac36c55e9
Assorted typo, spelling, wording and case fixes.
2012-05-15 16:26:43 +02:00
Alexandre Julliard
1392bfce3c
gdi32: Pass OpenGL calls through to the display driver from the DIB engine.
2012-05-09 17:37:37 +02:00
Dmitry Timoshkov
82a4c5a6a3
gdi32: Set tmDigitizedAspectX/Y to 96 instead of 300 for consistency.
2012-05-09 12:06:34 +02:00
Dmitry Timoshkov
ab7fe6086e
gdi32: Add a test for ntmCellHeight calculation.
2012-05-08 19:51:12 +02:00
Alexandre Julliard
147174ff1c
winex11: Implement wglGetPbufferDCARB with a DC escape and remove it from the GDI driver interface.
2012-05-08 14:35:44 +02:00
Alexandre Julliard
eb80e6f2db
gdi32: Allow a driver to implement SelectBitmap but not CreateBitmap.
2012-05-08 14:32:32 +02:00
Alexandre Julliard
e94d3b4e08
gdi32: Add a priority mechanism for pushing drivers on the stack in a defined order.
2012-05-08 12:16:50 +02:00
Alexandre Julliard
6a19d9f252
gdi32: Support drawing to a visible rectangle smaller than the whole bitmap in the DIB engine.
2012-05-01 14:28:39 +02:00
Alexandre Julliard
025b58870e
gdi32: Always pass the actual coordinates to the get_pixel_ptr functions.
2012-05-01 11:41:19 +02:00
Alexandre Julliard
41e5bc06d8
gdi32: Add support for clipping source coordinates to the DC device rectangle.
2012-04-30 22:47:35 +02:00
Jeff Muizelaar
2da2f001cf
gdi32: Improve performance of common case of AlphaBlend.
2012-04-30 20:03:28 +02:00
Alexandre Julliard
3ea711dd7c
gdi32: Store the bounds rectangle as a pointer in the DIB driver.
2012-04-27 12:49:20 +02:00
Alexandre Julliard
3009e03df7
gdi32: Add a SetBoundsRect driver entry point.
2012-04-27 12:41:43 +02:00
Dmitry Timoshkov
5476c0e2b9
gdi32: ntmCellHeight and ntmAvgWidth should be in font units.
2012-04-24 18:44:07 +02:00
Dmitry Timoshkov
57fbf1434c
gdi32: Enumerated font size should not be too large.
...
This reverts commit f4625d1ae1
.
2012-04-24 18:43:45 +02:00
Alexandre Julliard
9674011d75
gdi32: Fix coordinates for row copies in mirrored vertical stretching.
2012-04-24 17:37:53 +02:00
Alexandre Julliard
6c2235cf98
gdi32: Fix some typos in the 4-bpp shrink_row function.
2012-04-23 14:58:12 +02:00
Alexandre Julliard
caf15dd797
gdi32/tests: Take into account multi-monitor setups in the clip region tests.
2012-04-20 12:12:21 +02:00
Daniel Lehman
2c5d7d716a
gdi32: Don't add_join if points are coincident in wide_line_segments.
2012-04-18 17:15:19 +02:00
André Hentschel
9cf97e18b4
gdi32: Remove unneeded shadow variable.
2012-04-18 17:11:39 +02:00
Alexandre Julliard
4a87722144
winex11: Add bounds rectangle tracking to all graphics entry points.
2012-04-18 13:50:56 +02:00
Alexandre Julliard
8b7760292d
gdi32/tests: Fix a test that can fail on multi-monitor setups.
2012-04-17 16:40:57 +02:00
Alexandre Julliard
34457aa4c3
gdi32: Add bounds tracking to all the DIB engine entry points.
2012-04-16 17:49:22 +02:00
Alexandre Julliard
582a2f511f
gdi32: Add a GetBoundsRect driver entry point.
2012-04-16 13:53:23 +02:00
Alexandre Julliard
b1ccff1a9c
gdi32: Add helper functions for manipulating bounds rectangles.
2012-04-16 13:41:29 +02:00
Michael Stefaniuc
7f293b00e8
gdi32/tests: Fix typo (comparison with itself).
2012-04-16 12:05:54 +02:00
Dmitry Timoshkov
34608a5108
gdi32: Add large fonts support for MS Sans Serif.
2012-04-13 16:09:45 +02:00
Alexandre Julliard
81fcb10977
gdi32/tests: Add test cases for wide pen bounding rectangles.
2012-04-13 16:09:39 +02:00
Alexandre Julliard
6c028b19c5
gdi32: Avoid redundant computation of the gradient bounding rectangle.
2012-04-13 13:41:16 +02:00
Alexandre Julliard
ea5fa7ddbe
gdi32: Map all the points at once in PolyPolyline, similarly to what PolyPolygon does.
2012-04-13 13:39:06 +02:00
Alexandre Julliard
568afc210e
gdi32: Move the pen/brush_region helpers to graphics.c and avoid redundant clipping.
2012-04-13 13:36:23 +02:00
Dmitry Timoshkov
31f6f48bfd
gdi32: Add a test for bitmap fonts selected for not existing font sizes.
2012-04-10 19:54:34 +02:00
Alexandre Julliard
88bcd13d7f
gdi32: Store the reference DC in the enhanced metafile and use it to retrieve device caps.
2012-04-10 16:21:24 +02:00
Alexandre Julliard
2776a97931
gdi32: Add explicit fields for the DC flags.
2012-04-10 16:21:23 +02:00
Alexandre Julliard
b762fcc9a7
gdi32: Clip the returned DC bounds to the device rectangle.
2012-04-10 16:21:11 +02:00
Alexandre Julliard
5917bd3959
gdi32: SaveDC doesn't save the DC bounds.
2012-04-10 16:19:20 +02:00
Alexandre Julliard
80f68d4442
gdi32/tests: Add tests for DC bounds handling across various DC manipulations.
2012-04-10 16:17:47 +02:00
Alexandre Julliard
a186a8b170
gdi32/tests: Add tests for DC bounds on various device types.
2012-04-10 13:20:01 +02:00
Alexandre Julliard
399ab6f1f2
gdi32/tests: Add tests for DC bounds to the DIB graphics tests.
2012-04-09 22:59:11 +02:00
Alexandre Julliard
514e952827
gdi32/tests: Automatically reset the bits after comparing the hash.
2012-04-09 21:28:50 +02:00
Dmitry Timoshkov
1f00c01ea5
gdi32: Add more verbose messages to indicate when a font is being added/replaced/refused to load.
2012-04-09 17:28:46 +02:00
Dmitry Timoshkov
e7a1362880
gdi32: Fix a typo in faces_equal() preventing loading all sizes of a bitmap font.
2012-04-09 17:28:43 +02:00
Alexandre Julliard
1ca6ed7748
gdi32: Fix GetClipBox return value for non-memory DCs.
2012-04-09 17:15:59 +02:00
Ken Thomases
9cb7a97981
gdi32: On Mac OS X, find fonts using Core Text rather than FontConfig, by default.
2012-04-05 14:51:34 +02:00
Ken Thomases
272cf2a973
Revert "gdi32: Load fonts from default Mac external font paths.".
...
This reverts commit 85a71387da
.
2012-04-05 14:51:33 +02:00
Kusanagi Kouichi
c0c7547f37
gdi32: Improve font cache.
2012-04-02 18:37:48 +02:00
Dmitry Timoshkov
62b9c26bb5
gdi32: Refuse to load a large .fot file earlier.
2012-04-02 12:42:22 +02:00
Dmitry Timoshkov
b2af51956d
gdi32: Remove a no longer needed shortcut in CreateScalableFontResource test.
2012-04-02 12:41:40 +02:00
Kusanagi Kouichi
35c84cddcc
gdi32: Use helper functions when loading font from cache.
2012-03-30 15:30:01 +02:00
Huw Davies
88a2620b14
gdi32: Add support for loading scalable font resources.
2012-03-30 15:29:40 +02:00
Huw Davies
105caa28bf
gdi32: Implement CreateScalableFontResource.
...
Based on patches by Jeremy White and Dmitry Timoshkov.
2012-03-29 18:16:06 +02:00
Huw Davies
7ac623f380
gdi32: Add a helper to create a new FreeType face.
2012-03-29 18:15:39 +02:00
Huw Davies
0318951aac
gdi32: Separate face creation from face insertion.
2012-03-27 13:43:53 +02:00
Huw Davies
2489c3285c
gdi32: Remove the loop over bitmap sizes. FreeType lists different sizes as separate faces.
...
Windows format bitmap fonts have been enumerated as separate faces
since FreeType 2.1.5, since we require 2.1.9 for bitmap support we can
safely drop this loop.
2012-03-27 13:43:50 +02:00
Huw Davies
8d50bb6711
gdi32: Add a helper to free a face object and fix a potential memory leak.
2012-03-27 13:43:46 +02:00
Huw Davies
b5115f77bc
gdi32: Add a helper to retrieve the fontsignature.
2012-03-27 13:43:42 +02:00
Huw Davies
45d79feaf5
gdi32: Add a helper to retrieve a bitmap font's internal leading.
2012-03-27 13:43:36 +02:00
Huw Davies
afae44da25
gdi32: Add a helper to retrieve the ntm flags.
2012-03-27 13:43:34 +02:00
Huw Davies
37eb386739
gdi32: Add a helper to retrieve the font version.
2012-03-27 13:43:31 +02:00
Huw Davies
e27a633b93
gdi32: Add a helper to create a family.
2012-03-27 13:43:29 +02:00
Huw Davies
7ad330deef
gdi32: Add a helper to retrieve the family pointer.
2012-03-27 13:43:26 +02:00
Huw Davies
c6af1d5416
gdi32: Add a helper to retrieve the family names and simplify the logic.
2012-03-27 13:43:24 +02:00
Huw Davies
18d19e7f18
gdi32: Remove unused variable.
2012-03-16 16:52:51 +01:00
Huw Davies
41fb856961
gdi32: Correctly propagate the enumproc's return value.
2012-03-14 17:33:54 +01:00
Kusanagi Kouichi
6a49adeee6
gdi32: find_face_from_filename() needs to take font replacements into account.
2012-03-14 17:28:05 +01:00
Kusanagi Kouichi
d77104b93d
gdi32: Remove unused parameters and code, and a useless wrapper function.
2012-03-13 10:38:04 +01:00
Kusanagi Kouichi
eab0257492
gdi32: Simplify font replacement loading.
2012-03-13 10:37:51 +01:00
Kusanagi Kouichi
4bb0e2d076
gdi32: Add a helper function to get face list from family.
2012-03-13 10:37:45 +01:00
Kusanagi Kouichi
fc03398cd5
gdi32: Add a helper function to create a full name from a family name and a style name.
2012-03-13 10:37:01 +01:00
Kusanagi Kouichi
d696d5fee8
gdi32: Move font signature of font link from Face to SYSTEM_LINKS.
2012-03-13 10:36:45 +01:00
Kusanagi Kouichi
e86519c9b3
gdi32: Add a helper function to find font link.
2012-03-13 10:36:19 +01:00