Module: wine Branch: master Commit: ff4045b110d1f6d020281a03e29e7badd4ce3f12 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ff4045b110d1f6d020281a03e2...
Author: Huw Davies huw@codeweavers.com Date: Wed Jan 18 14:48:24 2012 +0000
gdi32: Use separate x and y parameters in the get_pixel primitive.
---
dlls/gdi32/dibdrv/bitblt.c | 5 +---- dlls/gdi32/dibdrv/dibdrv.h | 2 +- dlls/gdi32/dibdrv/graphics.c | 2 +- dlls/gdi32/dibdrv/primitives.c | 30 +++++++++++++++--------------- 4 files changed, 18 insertions(+), 21 deletions(-)
diff --git a/dlls/gdi32/dibdrv/bitblt.c b/dlls/gdi32/dibdrv/bitblt.c index 3ae53b2..c3acb8c 100644 --- a/dlls/gdi32/dibdrv/bitblt.c +++ b/dlls/gdi32/dibdrv/bitblt.c @@ -1350,13 +1350,10 @@ DWORD gradient_bitmapinfo( const BITMAPINFO *info, void *bits, TRIVERTEX *vert_a COLORREF get_pixel_bitmapinfo( const BITMAPINFO *info, void *bits, struct bitblt_coords *src ) { dib_info dib; - POINT pt; DWORD pixel;
init_dib_info_from_bitmapinfo( &dib, info, bits, default_color_table ); - pt.x = src->x; - pt.y = src->y; - pixel = dib.funcs->get_pixel( &dib, &pt ); + pixel = dib.funcs->get_pixel( &dib, src->x, src->y ); return dib.funcs->pixel_to_colorref( &dib, pixel ); }
diff --git a/dlls/gdi32/dibdrv/dibdrv.h b/dlls/gdi32/dibdrv/dibdrv.h index 2c980fe..fb7eb21 100644 --- a/dlls/gdi32/dibdrv/dibdrv.h +++ b/dlls/gdi32/dibdrv/dibdrv.h @@ -186,7 +186,7 @@ typedef struct primitive_funcs BOOL (* gradient_rect)(const dib_info *dib, const RECT *rc, const TRIVERTEX *v, int mode); void (* draw_glyph)(const dib_info *dst, const RECT *rc, const dib_info *glyph, const POINT *origin, DWORD text_pixel, const struct intensity_range *ranges); - DWORD (* get_pixel)(const dib_info *dib, const POINT *pt); + DWORD (* get_pixel)(const dib_info *dib, int x, int y); DWORD (* colorref_to_pixel)(const dib_info *dib, COLORREF color); COLORREF (* pixel_to_colorref)(const dib_info *dib, DWORD pixel); void (* convert_to)(dib_info *dst, const dib_info *src, const RECT *src_rect); diff --git a/dlls/gdi32/dibdrv/graphics.c b/dlls/gdi32/dibdrv/graphics.c index 166c577..515f339 100644 --- a/dlls/gdi32/dibdrv/graphics.c +++ b/dlls/gdi32/dibdrv/graphics.c @@ -720,7 +720,7 @@ COLORREF dibdrv_GetPixel( PHYSDEV dev, INT x, INT y ) pt.y < 0 || pt.y >= pdev->dib.height) return CLR_INVALID;
- pixel = pdev->dib.funcs->get_pixel( &pdev->dib, &pt ); + pixel = pdev->dib.funcs->get_pixel( &pdev->dib, pt.x, pt.y ); return pdev->dib.funcs->pixel_to_colorref( &pdev->dib, pixel ); }
diff --git a/dlls/gdi32/dibdrv/primitives.c b/dlls/gdi32/dibdrv/primitives.c index 122e750..55c17b7 100644 --- a/dlls/gdi32/dibdrv/primitives.c +++ b/dlls/gdi32/dibdrv/primitives.c @@ -1276,47 +1276,47 @@ static void copy_rect_null(const dib_info *dst, const RECT *rc, return; }
-static DWORD get_pixel_32(const dib_info *dib, const POINT *pt) +static DWORD get_pixel_32(const dib_info *dib, int x, int y) { - DWORD *ptr = get_pixel_ptr_32( dib, pt->x, pt->y ); + DWORD *ptr = get_pixel_ptr_32( dib, x, y ); return *ptr; }
-static DWORD get_pixel_24(const dib_info *dib, const POINT *pt) +static DWORD get_pixel_24(const dib_info *dib, int x, int y) { - BYTE *ptr = get_pixel_ptr_24( dib, pt->x, pt->y ); + BYTE *ptr = get_pixel_ptr_24( dib, x, y ); return ptr[0] | ((DWORD)ptr[1] << 8) | ((DWORD)ptr[2] << 16); }
-static DWORD get_pixel_16(const dib_info *dib, const POINT *pt) +static DWORD get_pixel_16(const dib_info *dib, int x, int y) { - WORD *ptr = get_pixel_ptr_16( dib, pt->x, pt->y ); + WORD *ptr = get_pixel_ptr_16( dib, x, y ); return *ptr; }
-static DWORD get_pixel_8(const dib_info *dib, const POINT *pt) +static DWORD get_pixel_8(const dib_info *dib, int x, int y) { - BYTE *ptr = get_pixel_ptr_8( dib, pt->x, pt->y ); + BYTE *ptr = get_pixel_ptr_8( dib, x, y ); return *ptr; }
-static DWORD get_pixel_4(const dib_info *dib, const POINT *pt) +static DWORD get_pixel_4(const dib_info *dib, int x, int y) { - BYTE *ptr = get_pixel_ptr_4( dib, pt->x, pt->y ); + BYTE *ptr = get_pixel_ptr_4( dib, x, y );
- if (pt->x & 1) + if (x & 1) return *ptr & 0x0f; else return (*ptr >> 4) & 0x0f; }
-static DWORD get_pixel_1(const dib_info *dib, const POINT *pt) +static DWORD get_pixel_1(const dib_info *dib, int x, int y) { - BYTE *ptr = get_pixel_ptr_1( dib, pt->x, pt->y ); - return (*ptr & pixel_masks_1[pt->x & 0x7]) ? 1 : 0; + BYTE *ptr = get_pixel_ptr_1( dib, x, y ); + return (*ptr & pixel_masks_1[x & 0x7]) ? 1 : 0; }
-static DWORD get_pixel_null(const dib_info *dib, const POINT *pt) +static DWORD get_pixel_null(const dib_info *dib, int x, int y) { return 0; }