[PATCH v2 8/9] gdi32: Use NtGdiCreateDIBBrush for CreateDIBPatternBrushPt.

Huw Davies huw at codeweavers.com
Wed Aug 25 07:39:52 CDT 2021


From: Jacek Caban <jacek at codeweavers.com>

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
---
 dlls/gdi32/brush.c   | 11 ++++++-----
 dlls/gdi32/objects.c |  8 ++++++++
 include/ntgdi.h      |  3 ++-
 3 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/dlls/gdi32/brush.c b/dlls/gdi32/brush.c
index c723b7c842f..5868824dd8f 100644
--- a/dlls/gdi32/brush.c
+++ b/dlls/gdi32/brush.c
@@ -245,20 +245,21 @@ HBRUSH WINAPI CreateDIBPatternBrush( HGLOBAL hbitmap, UINT coloruse )
 
 
 /***********************************************************************
- *           CreateDIBPatternBrushPt    (GDI32.@)
+ *           NtGdiCreateDIBBrush    (win32u.@)
  *
  * Create a logical brush with a pattern from a DIB.
  */
-HBRUSH WINAPI CreateDIBPatternBrushPt( const void* data, UINT coloruse )
+HBRUSH WINAPI NtGdiCreateDIBBrush( const void *data, UINT coloruse, UINT size,
+                                   BOOL is_8x8, BOOL pen, const void *client )
 {
-    const BITMAPINFO *info=data;
+    const BITMAPINFO *info = data;
     LOGBRUSH logbrush;
 
     if (!data)
         return NULL;
 
-    TRACE("%p %dx%d %dbpp\n", info, info->bmiHeader.biWidth,
-	  info->bmiHeader.biHeight,  info->bmiHeader.biBitCount);
+    TRACE( "%p %dx%d %dbpp\n", info, info->bmiHeader.biWidth,
+           info->bmiHeader.biHeight,  info->bmiHeader.biBitCount );
 
     logbrush.lbStyle = BS_DIBPATTERNPT;
     logbrush.lbColor = coloruse;
diff --git a/dlls/gdi32/objects.c b/dlls/gdi32/objects.c
index 6981eea72d0..9f43f1505e8 100644
--- a/dlls/gdi32/objects.c
+++ b/dlls/gdi32/objects.c
@@ -448,6 +448,14 @@ HBRUSH WINAPI CreatePatternBrush( HBITMAP bitmap )
     return NtGdiCreatePatternBrushInternal( bitmap, FALSE, FALSE );
 }
 
+/***********************************************************************
+ *           CreateDIBPatternBrushPt    (GDI32.@)
+ */
+HBRUSH WINAPI CreateDIBPatternBrushPt( const void *data, UINT coloruse )
+{
+    return NtGdiCreateDIBBrush( data, coloruse, /* FIXME */ 0, FALSE, FALSE, data );
+}
+
 /***********************************************************************
  *           CreateBitmapIndirect (GDI32.@)
  */
diff --git a/include/ntgdi.h b/include/ntgdi.h
index 928d1cec505..66611b38fb0 100644
--- a/include/ntgdi.h
+++ b/include/ntgdi.h
@@ -195,7 +195,8 @@ HANDLE   WINAPI NtGdiCreateClientObj( ULONG type );
 HFONT    WINAPI NtGdiHfontCreate( const ENUMLOGFONTEXDVW *enumex, ULONG unk2, ULONG unk3,
                                   ULONG unk4, void *data );
 HDC      WINAPI NtGdiCreateCompatibleDC( HDC hdc );
-HBRUSH   WINAPI NtGdiCreateDIBBrush( const void* data, UINT coloruse );
+HBRUSH   WINAPI NtGdiCreateDIBBrush( const void *data, UINT coloruse, UINT size,
+                                     BOOL is_8x8, BOOL pen, const void *client );
 HRGN     WINAPI NtGdiCreateEllipticRgn( INT left, INT top, INT right, INT bottom );
 HBRUSH   WINAPI NtGdiCreateHatchBrush( INT style, COLORREF color, BOOL pen );
 HBRUSH   WINAPI NtGdiCreatePatternBrushInternal( HBITMAP hbitmap, BOOL pen, BOOL is_8x8 );
-- 
2.23.0




More information about the wine-devel mailing list