mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-02 09:03:38 +00:00
wineps: Don't include gdi_driver.h from PE module.
This commit is contained in:
parent
56cfbf6b86
commit
7aa109501c
|
@ -25,7 +25,6 @@
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
#include "winbase.h"
|
#include "winbase.h"
|
||||||
#include "ntgdi.h"
|
#include "ntgdi.h"
|
||||||
#include "win32u_private.h"
|
|
||||||
#include "wine/unixlib.h"
|
#include "wine/unixlib.h"
|
||||||
|
|
||||||
extern void *__wine_syscall_dispatcher DECLSPEC_HIDDEN;
|
extern void *__wine_syscall_dispatcher DECLSPEC_HIDDEN;
|
||||||
|
|
|
@ -28,7 +28,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(psdrv);
|
||||||
*
|
*
|
||||||
* PSDRV_PatBlt
|
* PSDRV_PatBlt
|
||||||
*/
|
*/
|
||||||
BOOL CDECL PSDRV_PatBlt(print_ctx *ctx, struct bitblt_coords *dst, DWORD dwRop)
|
BOOL CDECL PSDRV_PatBlt(print_ctx *ctx, struct ps_bitblt_coords *dst, DWORD dwRop)
|
||||||
{
|
{
|
||||||
switch(dwRop) {
|
switch(dwRop) {
|
||||||
case PATCOPY:
|
case PATCOPY:
|
||||||
|
|
|
@ -147,7 +147,7 @@ static inline DWORD max_ascii85_size(DWORD size)
|
||||||
return (size + 3) / 4 * 5;
|
return (size + 3) / 4 * 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void CDECL free_heap_bits( struct gdi_image_bits *bits )
|
static void free_heap_bits( struct ps_image_bits *bits )
|
||||||
{
|
{
|
||||||
HeapFree( GetProcessHeap(), 0, bits->ptr );
|
HeapFree( GetProcessHeap(), 0, bits->ptr );
|
||||||
}
|
}
|
||||||
|
@ -184,13 +184,13 @@ static void PSDRV_WriteImageBits( print_ctx *ctx, const BITMAPINFO *info, BOOL g
|
||||||
* PSDRV_PutImage
|
* PSDRV_PutImage
|
||||||
*/
|
*/
|
||||||
DWORD CDECL PSDRV_PutImage( print_ctx *ctx, HRGN clip, BITMAPINFO *info,
|
DWORD CDECL PSDRV_PutImage( print_ctx *ctx, HRGN clip, BITMAPINFO *info,
|
||||||
const struct gdi_image_bits *bits, struct bitblt_coords *src,
|
const struct ps_image_bits *bits, struct ps_bitblt_coords *src,
|
||||||
struct bitblt_coords *dst, DWORD rop )
|
struct ps_bitblt_coords *dst, DWORD rop )
|
||||||
{
|
{
|
||||||
int src_stride, dst_stride, size, x, y, width, height, bit_offset;
|
int src_stride, dst_stride, size, x, y, width, height, bit_offset;
|
||||||
int dst_x, dst_y, dst_width, dst_height;
|
int dst_x, dst_y, dst_width, dst_height;
|
||||||
unsigned char *src_ptr, *dst_ptr;
|
unsigned char *src_ptr, *dst_ptr;
|
||||||
struct gdi_image_bits dst_bits;
|
struct ps_image_bits dst_bits;
|
||||||
BOOL grayscale = info->bmiHeader.biBitCount == 24 && ctx->pi->ppd->ColorDevice == CD_False;
|
BOOL grayscale = info->bmiHeader.biBitCount == 24 && ctx->pi->ppd->ColorDevice == CD_False;
|
||||||
|
|
||||||
if (info->bmiHeader.biPlanes != 1) goto update_format;
|
if (info->bmiHeader.biPlanes != 1) goto update_format;
|
||||||
|
|
|
@ -27,7 +27,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(psdrv);
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
* SelectBrush (WINEPS.@)
|
* SelectBrush (WINEPS.@)
|
||||||
*/
|
*/
|
||||||
HBRUSH CDECL PSDRV_SelectBrush( print_ctx *ctx, HBRUSH hbrush, const struct brush_pattern *pattern )
|
HBRUSH CDECL PSDRV_SelectBrush( print_ctx *ctx, HBRUSH hbrush, const struct ps_brush_pattern *pattern )
|
||||||
{
|
{
|
||||||
LOGBRUSH logbrush;
|
LOGBRUSH logbrush;
|
||||||
|
|
||||||
|
|
|
@ -37,7 +37,7 @@ static const DWORD PEN_alternate[] = { 1 };
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
* SelectPen (WINEPS.@)
|
* SelectPen (WINEPS.@)
|
||||||
*/
|
*/
|
||||||
HPEN CDECL PSDRV_SelectPen( print_ctx *ctx, HPEN hpen, const struct brush_pattern *pattern )
|
HPEN CDECL PSDRV_SelectPen( print_ctx *ctx, HPEN hpen, const struct ps_brush_pattern *pattern )
|
||||||
{
|
{
|
||||||
LOGPEN logpen;
|
LOGPEN logpen;
|
||||||
EXTLOGPEN *elp = NULL;
|
EXTLOGPEN *elp = NULL;
|
||||||
|
|
|
@ -45,7 +45,7 @@ struct pp_data
|
||||||
|
|
||||||
print_ctx *ctx;
|
print_ctx *ctx;
|
||||||
|
|
||||||
struct brush_pattern *patterns;
|
struct ps_brush_pattern *patterns;
|
||||||
BOOL path;
|
BOOL path;
|
||||||
INT break_extra;
|
INT break_extra;
|
||||||
INT break_rem;
|
INT break_rem;
|
||||||
|
@ -210,7 +210,7 @@ static inline void order_rect(RECT *rect)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static BOOL intersect_vis_rectangles(struct bitblt_coords *dst, struct bitblt_coords *src)
|
static BOOL intersect_vis_rectangles(struct ps_bitblt_coords *dst, struct ps_bitblt_coords *src)
|
||||||
{
|
{
|
||||||
RECT rect;
|
RECT rect;
|
||||||
|
|
||||||
|
@ -299,8 +299,8 @@ static void clip_visrect(HDC hdc, RECT *dst, const RECT *src)
|
||||||
DeleteObject(hrgn);
|
DeleteObject(hrgn);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void get_vis_rectangles(HDC hdc, struct bitblt_coords *dst,
|
static void get_vis_rectangles(HDC hdc, struct ps_bitblt_coords *dst,
|
||||||
const XFORM *xform, DWORD width, DWORD height, struct bitblt_coords *src)
|
const XFORM *xform, DWORD width, DWORD height, struct ps_bitblt_coords *src)
|
||||||
{
|
{
|
||||||
RECT rect;
|
RECT rect;
|
||||||
|
|
||||||
|
@ -347,8 +347,8 @@ static int stretch_blt(print_ctx *ctx, const EMRSTRETCHBLT *blt,
|
||||||
{
|
{
|
||||||
char dst_buffer[FIELD_OFFSET(BITMAPINFO, bmiColors[256])];
|
char dst_buffer[FIELD_OFFSET(BITMAPINFO, bmiColors[256])];
|
||||||
BITMAPINFO *dst_info = (BITMAPINFO *)dst_buffer;
|
BITMAPINFO *dst_info = (BITMAPINFO *)dst_buffer;
|
||||||
struct bitblt_coords src, dst;
|
struct ps_bitblt_coords src, dst;
|
||||||
struct gdi_image_bits bits;
|
struct ps_image_bits bits;
|
||||||
DWORD err;
|
DWORD err;
|
||||||
|
|
||||||
dst.log_x = blt->xDest;
|
dst.log_x = blt->xDest;
|
||||||
|
@ -968,8 +968,8 @@ static BOOL gradient_fill(print_ctx *ctx, const TRIVERTEX *vert_array, DWORD nve
|
||||||
{
|
{
|
||||||
char buffer[FIELD_OFFSET(BITMAPINFO, bmiColors[256])];
|
char buffer[FIELD_OFFSET(BITMAPINFO, bmiColors[256])];
|
||||||
BITMAPINFO *info = (BITMAPINFO *)buffer;
|
BITMAPINFO *info = (BITMAPINFO *)buffer;
|
||||||
struct bitblt_coords src, dst;
|
struct ps_bitblt_coords src, dst;
|
||||||
struct gdi_image_bits bits;
|
struct ps_image_bits bits;
|
||||||
HBITMAP bmp, old_bmp;
|
HBITMAP bmp, old_bmp;
|
||||||
BOOL ret = FALSE;
|
BOOL ret = FALSE;
|
||||||
TRIVERTEX *pts;
|
TRIVERTEX *pts;
|
||||||
|
@ -1084,7 +1084,7 @@ static BOOL gradient_fill(print_ctx *ctx, const TRIVERTEX *vert_array, DWORD nve
|
||||||
}
|
}
|
||||||
|
|
||||||
static HGDIOBJ get_object_handle(struct pp_data *data, HANDLETABLE *handletable,
|
static HGDIOBJ get_object_handle(struct pp_data *data, HANDLETABLE *handletable,
|
||||||
DWORD i, struct brush_pattern **pattern)
|
DWORD i, struct ps_brush_pattern **pattern)
|
||||||
{
|
{
|
||||||
if (i & 0x80000000)
|
if (i & 0x80000000)
|
||||||
{
|
{
|
||||||
|
@ -1097,7 +1097,7 @@ static HGDIOBJ get_object_handle(struct pp_data *data, HANDLETABLE *handletable,
|
||||||
|
|
||||||
static BOOL select_hbrush(struct pp_data *data, HANDLETABLE *htable, int handle_count, HBRUSH brush)
|
static BOOL select_hbrush(struct pp_data *data, HANDLETABLE *htable, int handle_count, HBRUSH brush)
|
||||||
{
|
{
|
||||||
struct brush_pattern *pattern = NULL;
|
struct ps_brush_pattern *pattern = NULL;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0; i < handle_count; i++)
|
for (i = 0; i < handle_count; i++)
|
||||||
|
@ -2090,7 +2090,7 @@ done:
|
||||||
|
|
||||||
static BOOL fill_rgn(struct pp_data *data, HANDLETABLE *htable, int handle_count, DWORD brush, HRGN rgn)
|
static BOOL fill_rgn(struct pp_data *data, HANDLETABLE *htable, int handle_count, DWORD brush, HRGN rgn)
|
||||||
{
|
{
|
||||||
struct brush_pattern *pattern;
|
struct ps_brush_pattern *pattern;
|
||||||
HBRUSH hbrush;
|
HBRUSH hbrush;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
@ -2297,7 +2297,7 @@ static int WINAPI hmf_proc(HDC hdc, HANDLETABLE *htable,
|
||||||
case EMR_SELECTOBJECT:
|
case EMR_SELECTOBJECT:
|
||||||
{
|
{
|
||||||
const EMRSELECTOBJECT *so = (const EMRSELECTOBJECT *)rec;
|
const EMRSELECTOBJECT *so = (const EMRSELECTOBJECT *)rec;
|
||||||
struct brush_pattern *pattern;
|
struct ps_brush_pattern *pattern;
|
||||||
UINT aa_flags;
|
UINT aa_flags;
|
||||||
HGDIOBJ obj;
|
HGDIOBJ obj;
|
||||||
|
|
||||||
|
|
|
@ -25,14 +25,41 @@
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
#include "winbase.h"
|
#include "winbase.h"
|
||||||
#include "wingdi.h"
|
#include "ntgdi.h"
|
||||||
#include "winspool.h"
|
#include "winspool.h"
|
||||||
|
|
||||||
#include "unixlib.h"
|
#include "unixlib.h"
|
||||||
|
|
||||||
#include "wine/gdi_driver.h"
|
|
||||||
#include "wine/list.h"
|
#include "wine/list.h"
|
||||||
|
|
||||||
|
struct ps_bitblt_coords
|
||||||
|
{
|
||||||
|
int log_x; /* original position and size, in logical coords */
|
||||||
|
int log_y;
|
||||||
|
int log_width;
|
||||||
|
int log_height;
|
||||||
|
int x; /* mapped position and size, in device coords */
|
||||||
|
int y;
|
||||||
|
int width;
|
||||||
|
int height;
|
||||||
|
RECT visrect; /* rectangle clipped to the visible part, in device coords */
|
||||||
|
DWORD layout; /* DC layout */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct ps_image_bits
|
||||||
|
{
|
||||||
|
void *ptr; /* pointer to the bits */
|
||||||
|
BOOL is_copy; /* whether this is a copy of the bits that can be modified */
|
||||||
|
void (*free)(struct ps_image_bits *); /* callback for freeing the bits */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct ps_brush_pattern
|
||||||
|
{
|
||||||
|
BITMAPINFO *info; /* DIB info */
|
||||||
|
struct ps_image_bits bits; /* DIB bits */
|
||||||
|
UINT usage; /* color usage for DIB info */
|
||||||
|
};
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
INT index;
|
INT index;
|
||||||
LPCSTR sz;
|
LPCSTR sz;
|
||||||
|
@ -292,9 +319,9 @@ typedef struct {
|
||||||
} PSFONT;
|
} PSFONT;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
PSCOLOR color;
|
PSCOLOR color;
|
||||||
BOOL set;
|
BOOL set;
|
||||||
struct brush_pattern pattern;
|
struct ps_brush_pattern pattern;
|
||||||
} PSBRUSH;
|
} PSBRUSH;
|
||||||
|
|
||||||
#define MAX_DASHLEN 16
|
#define MAX_DASHLEN 16
|
||||||
|
@ -384,7 +411,7 @@ extern BOOL CDECL PSDRV_ExtTextOut( print_ctx *ctx, INT x, INT y, UINT flags,
|
||||||
extern BOOL CDECL PSDRV_FillPath( print_ctx *ctx ) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_FillPath( print_ctx *ctx ) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_LineTo(print_ctx *ctx, INT x, INT y) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_LineTo(print_ctx *ctx, INT x, INT y) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_PaintRgn( print_ctx *ctx, HRGN hrgn ) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_PaintRgn( print_ctx *ctx, HRGN hrgn ) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_PatBlt(print_ctx *ctx, struct bitblt_coords *dst, DWORD dwRop) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_PatBlt(print_ctx *ctx, struct ps_bitblt_coords *dst, DWORD dwRop) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_Pie( print_ctx *ctx, INT left, INT top, INT right, INT bottom,
|
extern BOOL CDECL PSDRV_Pie( print_ctx *ctx, INT left, INT top, INT right, INT bottom,
|
||||||
INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
|
INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_PolyBezier( print_ctx *ctx, const POINT *pts, DWORD count ) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_PolyBezier( print_ctx *ctx, const POINT *pts, DWORD count ) DECLSPEC_HIDDEN;
|
||||||
|
@ -392,14 +419,16 @@ extern BOOL CDECL PSDRV_PolyBezierTo( print_ctx *ctx, const POINT *pts, DWORD co
|
||||||
extern BOOL CDECL PSDRV_PolyPolygon( print_ctx *ctx, const POINT* pts, const INT* counts, UINT polygons ) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_PolyPolygon( print_ctx *ctx, const POINT* pts, const INT* counts, UINT polygons ) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_PolyPolyline( print_ctx *ctx, const POINT* pts, const DWORD* counts, DWORD polylines ) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_PolyPolyline( print_ctx *ctx, const POINT* pts, const DWORD* counts, DWORD polylines ) DECLSPEC_HIDDEN;
|
||||||
extern DWORD CDECL PSDRV_PutImage( print_ctx *ctx, HRGN clip, BITMAPINFO *info,
|
extern DWORD CDECL PSDRV_PutImage( print_ctx *ctx, HRGN clip, BITMAPINFO *info,
|
||||||
const struct gdi_image_bits *bits, struct bitblt_coords *src,
|
const struct ps_image_bits *bits, struct ps_bitblt_coords *src,
|
||||||
struct bitblt_coords *dst, DWORD rop ) DECLSPEC_HIDDEN;
|
struct ps_bitblt_coords *dst, DWORD rop ) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_Rectangle( print_ctx *ctx, INT left, INT top, INT right, INT bottom ) DECLSPEC_HIDDEN;
|
extern BOOL CDECL PSDRV_Rectangle( print_ctx *ctx, INT left, INT top, INT right, INT bottom ) DECLSPEC_HIDDEN;
|
||||||
extern BOOL CDECL PSDRV_RoundRect( print_ctx *ctx, INT left, INT top, INT right,
|
extern BOOL CDECL PSDRV_RoundRect( print_ctx *ctx, INT left, INT top, INT right,
|
||||||
INT bottom, INT ell_width, INT ell_height ) DECLSPEC_HIDDEN;
|
INT bottom, INT ell_width, INT ell_height ) DECLSPEC_HIDDEN;
|
||||||
extern HBRUSH CDECL PSDRV_SelectBrush( print_ctx *ctx, HBRUSH hbrush, const struct brush_pattern *pattern ) DECLSPEC_HIDDEN;
|
extern HBRUSH CDECL PSDRV_SelectBrush( print_ctx *ctx, HBRUSH hbrush,
|
||||||
|
const struct ps_brush_pattern *pattern ) DECLSPEC_HIDDEN;
|
||||||
extern HFONT CDECL PSDRV_SelectFont( print_ctx *ctx, HFONT hfont, UINT *aa_flags ) DECLSPEC_HIDDEN;
|
extern HFONT CDECL PSDRV_SelectFont( print_ctx *ctx, HFONT hfont, UINT *aa_flags ) DECLSPEC_HIDDEN;
|
||||||
extern HPEN CDECL PSDRV_SelectPen( print_ctx *ctx, HPEN hpen, const struct brush_pattern *pattern ) DECLSPEC_HIDDEN;
|
extern HPEN CDECL PSDRV_SelectPen( print_ctx *ctx, HPEN hpen,
|
||||||
|
const struct ps_brush_pattern *pattern ) DECLSPEC_HIDDEN;
|
||||||
extern COLORREF CDECL PSDRV_SetBkColor( print_ctx *ctx, COLORREF color ) DECLSPEC_HIDDEN;
|
extern COLORREF CDECL PSDRV_SetBkColor( print_ctx *ctx, COLORREF color ) DECLSPEC_HIDDEN;
|
||||||
extern COLORREF CDECL PSDRV_SetDCBrushColor( print_ctx *ctx, COLORREF color ) DECLSPEC_HIDDEN;
|
extern COLORREF CDECL PSDRV_SetDCBrushColor( print_ctx *ctx, COLORREF color ) DECLSPEC_HIDDEN;
|
||||||
extern COLORREF CDECL PSDRV_SetDCPenColor( print_ctx *ctx, COLORREF color ) DECLSPEC_HIDDEN;
|
extern COLORREF CDECL PSDRV_SetDCPenColor( print_ctx *ctx, COLORREF color ) DECLSPEC_HIDDEN;
|
||||||
|
|
|
@ -21,6 +21,10 @@
|
||||||
#ifndef __WINE_WINE_GDI_DRIVER_H
|
#ifndef __WINE_WINE_GDI_DRIVER_H
|
||||||
#define __WINE_WINE_GDI_DRIVER_H
|
#define __WINE_WINE_GDI_DRIVER_H
|
||||||
|
|
||||||
|
#ifndef WINE_UNIX_LIB
|
||||||
|
#error The GDI driver can only be used on the Unix side
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "winternl.h"
|
#include "winternl.h"
|
||||||
#include "ntuser.h"
|
#include "ntuser.h"
|
||||||
#include "immdev.h"
|
#include "immdev.h"
|
||||||
|
@ -197,8 +201,6 @@ static inline void push_dc_driver( PHYSDEV *dev, PHYSDEV physdev, const struct g
|
||||||
|
|
||||||
/* support for window surfaces */
|
/* support for window surfaces */
|
||||||
|
|
||||||
#ifdef WINE_UNIX_LIB
|
|
||||||
|
|
||||||
struct window_surface;
|
struct window_surface;
|
||||||
|
|
||||||
struct window_surface_funcs
|
struct window_surface_funcs
|
||||||
|
@ -348,6 +350,4 @@ extern void __wine_set_user_driver( const struct user_driver_funcs *funcs, UINT
|
||||||
extern BOOL win32u_set_window_pixel_format( HWND hwnd, int format, BOOL internal );
|
extern BOOL win32u_set_window_pixel_format( HWND hwnd, int format, BOOL internal );
|
||||||
extern int win32u_get_window_pixel_format( HWND hwnd );
|
extern int win32u_get_window_pixel_format( HWND hwnd );
|
||||||
|
|
||||||
#endif /* WINE_UNIX_LIB */
|
|
||||||
|
|
||||||
#endif /* __WINE_WINE_GDI_DRIVER_H */
|
#endif /* __WINE_WINE_GDI_DRIVER_H */
|
||||||
|
|
Loading…
Reference in a new issue