gdi: remove 8x8 restriction on pattern brushes

Huw D M Davies h.davies1 at physics.ox.ac.uk
Wed Aug 11 08:27:46 CDT 2004


        Huw Davies <huw at codeweavers.com>
        Ever since win98 pattern brushes have been able to be larger
        than 8x8 pixels, so remove this restriction.
-- 
Huw Davies
huw at codeweavers.com
Index: dlls/x11drv/brush.c
===================================================================
RCS file: /home/wine/wine/dlls/x11drv/brush.c,v
retrieving revision 1.4
diff -u -r1.4 brush.c
--- dlls/x11drv/brush.c	4 Mar 2004 20:41:13 -0000	1.4
+++ dlls/x11drv/brush.c	11 Aug 2004 13:24:17 -0000
@@ -185,17 +185,19 @@
     if ((physDev->depth == 1) && (bmp->bitmap.bmBitsPixel != 1))
     {
         /* Special case: a color pattern on a monochrome DC */
-        physDev->brush.pixmap = XCreatePixmap( gdi_display, root_window, 8, 8, 1);
+        physDev->brush.pixmap = XCreatePixmap( gdi_display, root_window,
+                                               bmp->bitmap.bmWidth, bmp->bitmap.bmHeight, 1);
         /* FIXME: should probably convert to monochrome instead */
         XCopyPlane( gdi_display, (Pixmap)bmp->physBitmap, physDev->brush.pixmap,
-                    BITMAP_monoGC, 0, 0, 8, 8, 0, 0, 1 );
+                    BITMAP_monoGC, 0, 0, bmp->bitmap.bmWidth, bmp->bitmap.bmHeight, 0, 0, 1 );
     }
     else
     {
         physDev->brush.pixmap = XCreatePixmap( gdi_display, root_window,
-                                               8, 8, bmp->bitmap.bmBitsPixel );
+                                               bmp->bitmap.bmWidth, bmp->bitmap.bmHeight,
+                                               bmp->bitmap.bmBitsPixel );
         XCopyArea( gdi_display, (Pixmap)bmp->physBitmap, physDev->brush.pixmap,
-                   BITMAP_GC(bmp), 0, 0, 8, 8, 0, 0 );
+                   BITMAP_GC(bmp), 0, 0, bmp->bitmap.bmWidth, bmp->bitmap.bmHeight, 0, 0 );
     }
     wine_tsx11_unlock();
 



More information about the wine-patches mailing list