Make the SURFACE structure more like the one from Windows

svn path=/trunk/; revision=40504
This commit is contained in:
Timo Kreuzer 2009-04-14 16:41:48 +00:00
parent 7d8041109b
commit 4bc394cbbf

View file

@ -12,20 +12,33 @@ typedef struct _SURFACE
SURFOBJ SurfObj; SURFOBJ SurfObj;
FLONG flHooks; FLONG flHooks;
FLONG flFlags; FLONG flFlags;
SIZE dimension; /* For SetBitmapDimension(), do NOT use struct _PALETTE *ppal;
union
{
HANDLE hSecureUMPD; // if UMPD_SURFACE set
HANDLE hMirrorParent;// if MIRROR_SURFACE set
HANDLE hDDSurface; // if DIRECTDRAW_SURFACE set
};
SIZEL dimension; /* For SetBitmapDimension(), do NOT use
to get width/height of bitmap, use to get width/height of bitmap, use
bitmap.bmWidth/bitmap.bmHeight for bitmap.bmWidth/bitmap.bmHeight for
that */ that */
PFAST_MUTEX BitsLock; /* You need to hold this lock before you touch
the actual bits in the bitmap */ HDC hDC; // Doc in "Undocumented Windows", page 546, seems to be supported with XP.
ULONG cRef; // 0x064
HPALETTE hpalHint;
/* For device-independent bitmaps: */ /* For device-independent bitmaps: */
HANDLE hDIBSection; HANDLE hDIBSection;
HANDLE hSecure; HANDLE hSecure;
DWORD dwOffset; DWORD dwOffset;
/* reactos specific */
PFAST_MUTEX BitsLock; /* You need to hold this lock before you touch
the actual bits in the bitmap */
HPALETTE hDIBPalette; HPALETTE hDIBPalette;
HDC hDC; // Doc in "Undocumented Windows", page 546, seems to be supported with XP.
DWORD dsBitfields[3]; // hack, should probably use palette instead DWORD dsBitfields[3]; // hack, should probably use palette instead
DWORD biClrUsed; DWORD biClrUsed;
DWORD biClrImportant; DWORD biClrImportant;