/* The Win32 headers for GCC currently do not know about the functions */
/* of msimg32.dll - so let's define them here */
//
// image blt
//
typedef USHORT COLOR16;
typedef struct _TRIVERTEX
{
LONG x;
LONG y;
COLOR16 Red;
COLOR16 Green;
COLOR16 Blue;
COLOR16 Alpha;
}TRIVERTEX,*PTRIVERTEX,*LPTRIVERTEX;
typedef struct _GRADIENT_TRIANGLE
{
ULONG Vertex1;
ULONG Vertex2;
ULONG Vertex3;
} GRADIENT_TRIANGLE,*PGRADIENT_TRIANGLE,*LPGRADIENT_TRIANGLE;
typedef struct _GRADIENT_RECT
{
ULONG UpperLeft;
ULONG LowerRight;
}GRADIENT_RECT,*PGRADIENT_RECT,*LPGRADIENT_RECT;
typedef struct _BLENDFUNCTION
{
BYTE BlendOp;
BYTE BlendFlags;
BYTE SourceConstantAlpha;
BYTE AlphaFormat;
}BLENDFUNCTION,*PBLENDFUNCTION;
//
// currentlly defined blend function
//
#define AC_SRC_OVER 0x00
//
// alpha format flags
//
#define AC_SRC_NO_PREMULT_ALPHA 0x01
#define AC_SRC_NO_ALPHA 0x02
#define AC_DST_NO_PREMULT_ALPHA 0x10
#define AC_DST_NO_ALPHA 0x20
WINGDIAPI BOOL WINAPI AlphaBlend(HDC,int,int,int,int,HDC,int,int,int,int,BLENDFUNCTION);
WINGDIAPI BOOL WINAPI AlphaDIBBlend(HDC,int,int,int,int,CONST VOID *,
CONST BITMAPINFO *,UINT,int,int,int,int,BLENDFUNCTION);
WINGDIAPI BOOL WINAPI TransparentBlt(HDC,int,int,int,int,HDC,int,int,int,int,UINT);
WINGDIAPI BOOL WINAPI TransparentDIBits(HDC,int,int,int,int,CONST VOID *,
CONST BITMAPINFO *,UINT,int,int,int,int,UINT);
//
// gradient drawing modes
//
#define GRADIENT_FILL_RECT_H 0x00000000
#define GRADIENT_FILL_RECT_V 0x00000001
#define GRADIENT_FILL_TRIANGLE 0x00000002
#define GRADIENT_FILL_OP_FLAG 0x000000ff
WINGDIAPI BOOL WINAPI GradientFill(HDC,PTRIVERTEX,ULONG,PVOID,ULONG,ULONG);
syntax highlighted by Code2HTML, v. 0.9.1