From 6dc593f68441cec17e6bd78e989307707d14dd69 Mon Sep 17 00:00:00 2001 From: James Tabor Date: Tue, 17 Oct 2006 04:32:18 +0000 Subject: [PATCH] Win32k GDI Compatibility Project: - Add new Gdi user data structure - Fixed Meta constants - Add new GetDCWord constant svn path=/trunk/; revision=24551 --- reactos/include/reactos/win32k/ntgdibad.h | 2 +- reactos/include/reactos/win32k/ntgdihdl.h | 27 ++++++++++++++++++++--- reactos/include/reactos/win32k/ntgdityp.h | 1 + 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/reactos/include/reactos/win32k/ntgdibad.h b/reactos/include/reactos/win32k/ntgdibad.h index 18d9e5de88a..2aa50811068 100644 --- a/reactos/include/reactos/win32k/ntgdibad.h +++ b/reactos/include/reactos/win32k/ntgdibad.h @@ -422,7 +422,7 @@ NtGdiGdiComment ( CONST LPBYTE Data ); -/* Should be done in user-mode. */ +/* Should be NtGdiFlush. */ BOOL STDCALL NtGdiGdiFlush (VOID); /* Should be done in user-mode. */ diff --git a/reactos/include/reactos/win32k/ntgdihdl.h b/reactos/include/reactos/win32k/ntgdihdl.h index 1ab1e14be1a..164073e2c50 100644 --- a/reactos/include/reactos/win32k/ntgdihdl.h +++ b/reactos/include/reactos/win32k/ntgdihdl.h @@ -43,10 +43,10 @@ #define GDI_OBJECT_TYPE_PEN 0x00300000 #define GDI_OBJECT_TYPE_EXTPEN 0x00500000 #define GDI_OBJECT_TYPE_COLORSPACE 0x00090000 +#define GDI_OBJECT_TYPE_METADC 0x00660000 +#define GDI_OBJECT_TYPE_METAFILE 0x00260000 +#define GDI_OBJECT_TYPE_ENHMETAFILE 0x00460000 /* Following object types made up for ROS */ -#define GDI_OBJECT_TYPE_METADC 0x00710000 -#define GDI_OBJECT_TYPE_METAFILE 0x00720000 -#define GDI_OBJECT_TYPE_ENHMETAFILE 0x00730000 #define GDI_OBJECT_TYPE_ENHMETADC 0x00740000 #define GDI_OBJECT_TYPE_MEMDC 0x00750000 #define GDI_OBJECT_TYPE_DCE 0x00770000 @@ -84,4 +84,25 @@ typedef struct _GDI_TABLE_ENTRY PVOID UserData; /* Points to the user mode structure, usually NULL though */ } GDI_TABLE_ENTRY, *PGDI_TABLE_ENTRY; + +typedef struct _GDI_USER_DATA +{ + COLORREF PenColor; + COLORREF BrushColor; + INT ROPmode; + INT PolyFillMode; + INT StretchBltMode; + INT BackgroundMode; + COLORREF BackgroundColor; + COLORREF TextColor; + HCOLORSPACE ColorSpace; + INT TextAlign; /* Text alignment from SetTextAlign() */ + INT CharExtra; /* Spacing from SetTextCharacterExtra() */ + INT GraphicsMode; /* Graphics mode */ + INT MapMode; + HFONT hFont; + DWORD Layout; +} GDI_USER_DATA, *PGDI_USER_DATA; + + #endif diff --git a/reactos/include/reactos/win32k/ntgdityp.h b/reactos/include/reactos/win32k/ntgdityp.h index 07c10643b28..aa8dfbf557c 100644 --- a/reactos/include/reactos/win32k/ntgdityp.h +++ b/reactos/include/reactos/win32k/ntgdityp.h @@ -45,6 +45,7 @@ typedef enum _GETDCDWORD { GdiGetRelAbs = 1, GdiGetArcDirection = 4, + GdiGetFontLanguageInfo = 6, GdiGetIsMemDc = 7, } GETDCDWORD, *PGETDCDWORD;