blob: e5a2cc0f639a2d499ae7a0e67f16b7cbe2460123 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
/*
* 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
#include "ImPlatform.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, void *dc, int dst[4], int src[4]);
extern void ImagingExposeDIB(ImagingDIB dib, void *dc);
extern int ImagingQueryPaletteDIB(ImagingDIB dib, void *dc);
extern void ImagingPasteDIB(ImagingDIB dib, Imaging im, int xy[4]);
#if defined(__cplusplus)
}
#endif
#endif
|