mirror of
https://github.com/reactos/reactos.git
synced 2025-07-23 02:43:38 +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 */
|
||||
#define GDI_HANDLE_COUNT 0x10000
|
||||
#define GDI_GLOBAL_PROCESS (0x0)
|
||||
#define GDI_CFONT_MAX 16
|
||||
|
||||
/* Handle Masks and shifts */
|
||||
#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 */
|
||||
} 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
|
||||
{
|
||||
ULONG AttrFlags;
|
||||
|
|
|
@ -128,8 +128,11 @@ typedef CHWIDTHINFO *PCHWIDTHINFO;
|
|||
typedef D3DNTHAL_CONTEXTCREATEDATA D3DNTHAL_CONTEXTCREATEI;
|
||||
typedef LONG FIX;
|
||||
|
||||
/* FIXME: Unknown; easy to guess, usually based on public types and converted */
|
||||
typedef struct _REALIZATION_INFO REALIZATION_INFO, *PREALIZATION_INFO;
|
||||
typedef struct _REALIZATION_INFO // Based on LOCALESIGNATURE
|
||||
{
|
||||
DWORD dwCsbDefault[2];
|
||||
DWORD dwCsbSupported0;
|
||||
} REALIZATION_INFO, *PREALIZATION_INFO;
|
||||
|
||||
typedef struct _WIDTHDATA
|
||||
{
|
||||
|
@ -241,6 +244,26 @@ typedef union
|
|||
ULONG l;
|
||||
} 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.
|
||||
//
|
||||
|
|
|
@ -16,8 +16,11 @@ typedef struct _GDI_HANDLE_TABLE
|
|||
*/
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
GDI_TABLE_ENTRY Entries[GDI_HANDLE_COUNT];
|
||||
DEVCAPS DevCaps; // Device Capabilities
|
||||
// Font data
|
||||
DEVCAPS DevCaps; // Device Capabilities
|
||||
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;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue