1 #pragma once 2 3 #define PC_SYS_USED 0x80 /* Palentry is used (both system and logical) */ 4 #define PC_SYS_RESERVED 0x40 /* System palentry is not to be mapped to */ 5 #define PC_SYS_MAPPED 0x10 /* Logical palentry is a direct alias for system palentry */ 6 7 #define NB_RESERVED_COLORS 20 /* Number of fixed colors in system palette */ 8 9 typedef struct _COLORSPACE 10 { 11 BASEOBJECT BaseObject; 12 LOGCOLORSPACEW lcsColorSpace; 13 DWORD dwFlags; 14 } COLORSPACE, *PCOLORSPACE; 15 16 17 #define COLORSPACEOBJ_AllocCS() ((PCOLORSPACE) GDIOBJ_AllocObj(GDIObjType_ICMLCS_TYPE)) 18 #define COLORSPACEOBJ_AllocCSWithHandle() ((PCOLORSPACE) GDIOBJ_AllocObjWithHandle(GDI_OBJECT_TYPE_COLORSPACE, sizeof(COLORSPACE))) 19 #define COLORSPACEOBJ_LockCS(hCS) ((PCOLORSPACE)GDIOBJ_LockObject((HGDIOBJ)hCS, GDIObjType_ICMLCS_TYPE)) 20 #define COLORSPACEOBJ_UnlockCS(pCS) GDIOBJ_vUnlockObject((POBJ)pCS) 21 22 typedef struct _COLORTRANSFORMOBJ 23 { 24 BASEOBJECT BaseObject; 25 HANDLE hColorTransform; 26 } GDICLRXFORM, COLORTRANSFORMOBJ, *PCOLORTRANSFORMOBJ; 27 28 extern HCOLORSPACE hStockColorSpace; 29 30 UINT FASTCALL IntGdiRealizePalette (HDC); 31