mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-12-26 09:56:17 +03:00
69 lines
1.3 KiB
C
69 lines
1.3 KiB
C
/*
|
|
* The Python Imaging Library
|
|
* $Id$
|
|
*
|
|
* Windows DIB specifics
|
|
*
|
|
* Copyright (c) Secret Labs AB 1997-98.
|
|
* Copyright (c) Fredrik Lundh 1996.
|
|
*
|
|
* See the README file for information on usage and redistribution.
|
|
*/
|
|
|
|
#ifdef WIN32
|
|
|
|
#if (defined(_MSC_VER) && _MSC_VER >= 1200) || (defined __GNUC__)
|
|
/* already defined in basetsd.h */
|
|
#undef INT8
|
|
#undef UINT8
|
|
#undef INT16
|
|
#undef UINT16
|
|
#undef INT32
|
|
#undef INT64
|
|
#undef UINT32
|
|
#endif
|
|
|
|
#include <windows.h>
|
|
|
|
#if defined(__cplusplus)
|
|
extern "C" {
|
|
#endif
|
|
|
|
struct ImagingDIBInstance {
|
|
/* Windows interface */
|
|
HDC dc;
|
|
HBITMAP bitmap;
|
|
HGDIOBJ old_bitmap;
|
|
BITMAPINFO *info;
|
|
UINT8 *bits;
|
|
HPALETTE palette;
|
|
/* Used by cut and paste */
|
|
char mode[4];
|
|
int xsize, ysize;
|
|
int pixelsize;
|
|
int linesize;
|
|
ImagingShuffler pack;
|
|
ImagingShuffler unpack;
|
|
};
|
|
|
|
typedef struct ImagingDIBInstance* ImagingDIB;
|
|
|
|
extern char* ImagingGetModeDIB(int size_out[2]);
|
|
|
|
extern ImagingDIB ImagingNewDIB(const char *mode, int xsize, int ysize);
|
|
|
|
extern void ImagingDeleteDIB(ImagingDIB im);
|
|
|
|
extern void ImagingDrawDIB(ImagingDIB dib, int dc, int dst[4], int src[4]);
|
|
extern void ImagingExposeDIB(ImagingDIB dib, int dc);
|
|
|
|
extern int ImagingQueryPaletteDIB(ImagingDIB dib, int dc);
|
|
|
|
extern void ImagingPasteDIB(ImagingDIB dib, Imaging im, int xy[4]);
|
|
|
|
#if defined(__cplusplus)
|
|
}
|
|
#endif
|
|
|
|
#endif
|