mirror of
https://github.com/reactos/reactos.git
synced 2025-07-25 02:04:18 +00:00
Add new items to gdi handle table. Added cfont and user space share gdi handle table.
svn path=/trunk/; revision=31228
This commit is contained in:
parent
2bac48a11b
commit
d7abb13de2
3 changed files with 44 additions and 4 deletions
|
@ -21,6 +21,7 @@
|
||||||
/* GDI handle table can hold 0x10000 handles */
|
/* GDI handle table can hold 0x10000 handles */
|
||||||
#define GDI_HANDLE_COUNT 0x10000
|
#define GDI_HANDLE_COUNT 0x10000
|
||||||
#define GDI_GLOBAL_PROCESS (0x0)
|
#define GDI_GLOBAL_PROCESS (0x0)
|
||||||
|
#define GDI_CFONT_MAX 16
|
||||||
|
|
||||||
/* Handle Masks and shifts */
|
/* Handle Masks and shifts */
|
||||||
#define GDI_HANDLE_INDEX_MASK (GDI_HANDLE_COUNT - 1)
|
#define GDI_HANDLE_INDEX_MASK (GDI_HANDLE_COUNT - 1)
|
||||||
|
@ -213,6 +214,19 @@ typedef struct _GDI_TABLE_ENTRY
|
||||||
PVOID UserData; /* Points to the user mode structure, usually NULL though */
|
PVOID UserData; /* Points to the user mode structure, usually NULL though */
|
||||||
} GDI_TABLE_ENTRY, *PGDI_TABLE_ENTRY;
|
} GDI_TABLE_ENTRY, *PGDI_TABLE_ENTRY;
|
||||||
|
|
||||||
|
//
|
||||||
|
// User space only structure!
|
||||||
|
//
|
||||||
|
typedef struct __GDI_SHARED_HANDLE_TABLE // Must match win32k/include/gdiobj.h
|
||||||
|
{
|
||||||
|
GDI_TABLE_ENTRY Entries[GDI_HANDLE_COUNT]; // Handle table.
|
||||||
|
DEVCAPS DevCaps; // Shared device capabilities.
|
||||||
|
FLONG flDeviceUniq; // Device settings uniqueness.
|
||||||
|
PVOID pvLangPack; // Lanuage Pack.
|
||||||
|
CFONT cfPublic[GDI_CFONT_MAX]; // Public Fonts.
|
||||||
|
DWORD dwCsbSupported1; // OEM code-page bitfield.
|
||||||
|
} GDI_SHARED_HANDLE_TABLE, *PGDI_SHARED_HANDLE_TABLE;
|
||||||
|
|
||||||
typedef struct _RGNATTR
|
typedef struct _RGNATTR
|
||||||
{
|
{
|
||||||
ULONG AttrFlags;
|
ULONG AttrFlags;
|
||||||
|
|
|
@ -128,8 +128,11 @@ typedef CHWIDTHINFO *PCHWIDTHINFO;
|
||||||
typedef D3DNTHAL_CONTEXTCREATEDATA D3DNTHAL_CONTEXTCREATEI;
|
typedef D3DNTHAL_CONTEXTCREATEDATA D3DNTHAL_CONTEXTCREATEI;
|
||||||
typedef LONG FIX;
|
typedef LONG FIX;
|
||||||
|
|
||||||
/* FIXME: Unknown; easy to guess, usually based on public types and converted */
|
typedef struct _REALIZATION_INFO // Based on LOCALESIGNATURE
|
||||||
typedef struct _REALIZATION_INFO REALIZATION_INFO, *PREALIZATION_INFO;
|
{
|
||||||
|
DWORD dwCsbDefault[2];
|
||||||
|
DWORD dwCsbSupported0;
|
||||||
|
} REALIZATION_INFO, *PREALIZATION_INFO;
|
||||||
|
|
||||||
typedef struct _WIDTHDATA
|
typedef struct _WIDTHDATA
|
||||||
{
|
{
|
||||||
|
@ -241,6 +244,26 @@ typedef union
|
||||||
ULONG l;
|
ULONG l;
|
||||||
} gxf_long;
|
} gxf_long;
|
||||||
|
|
||||||
|
typedef struct _CFONT
|
||||||
|
{
|
||||||
|
struct _CFONT *pcfNext;
|
||||||
|
HFONT hf;
|
||||||
|
ULONG cRef; // Count of all pointers to this CFONT.
|
||||||
|
FLONG fl;
|
||||||
|
LONG lHeight; // Precomputed logical height.
|
||||||
|
HDC hdc; // HDC of realization. 0 for display.
|
||||||
|
EFLOAT_S efM11; // efM11 of WtoD of DC of realization
|
||||||
|
EFLOAT_S efM22; // efM22 of WtoD of DC of realization
|
||||||
|
EFLOAT_S efDtoWBaseline; // Precomputed back transform. (FXtoL)
|
||||||
|
EFLOAT_S efDtoWAscent; // Precomputed back transform. (FXtoL)
|
||||||
|
WIDTHDATA wd;
|
||||||
|
FLONG flInfo;
|
||||||
|
USHORT sWidth[256]; // Widths in pels.
|
||||||
|
ULONG ulAveWidth; // bogus average used by USER
|
||||||
|
TMW_INTERNAL tmw; // cached metrics
|
||||||
|
LOCALESIGNATURE lsLocSig; // font signature information
|
||||||
|
} CFONT, *PCFONT;
|
||||||
|
|
||||||
//
|
//
|
||||||
// GDI Batch structures.
|
// GDI Batch structures.
|
||||||
//
|
//
|
||||||
|
|
|
@ -16,8 +16,11 @@ typedef struct _GDI_HANDLE_TABLE
|
||||||
*/
|
*/
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
GDI_TABLE_ENTRY Entries[GDI_HANDLE_COUNT];
|
GDI_TABLE_ENTRY Entries[GDI_HANDLE_COUNT];
|
||||||
DEVCAPS DevCaps; // Device Capabilities
|
DEVCAPS DevCaps; // Device Capabilities
|
||||||
// Font data
|
FLONG flDeviceUniq; // Device settings uniqueness.
|
||||||
|
PVOID pvLangPack; // Lanuage Pack.
|
||||||
|
CFONT cfPublic[GDI_CFONT_MAX]; // Public Fonts.
|
||||||
|
DWORD dwCsbSupported1; // OEM code-page bitfield.
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
PPAGED_LOOKASIDE_LIST LookasideLists;
|
PPAGED_LOOKASIDE_LIST LookasideLists;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue