[KS]
[reactos.git] / reactos / subsystems / win32 / win32k / include / intgdi.h
1 #pragma once
2
3 #include "region.h"
4
5 /* Brush functions */
6
7 extern HDC hSystemBM;
8 extern HSEMAPHORE hsemDriverMgmt;
9
10 XLATEOBJ*
11 FASTCALL
12 IntCreateXlateForBlt(PDC pDCDest, PDC pDCSrc, SURFACE* pDestSurf, SURFACE* pSrcSurf);
13
14 HBRUSH APIENTRY
15 IntGdiCreateDIBBrush(
16 CONST BITMAPINFO *BitmapInfo,
17 UINT ColorSpec,
18 UINT BitmapInfoSize,
19 CONST VOID *PackedDIB);
20
21 HBRUSH APIENTRY
22 IntGdiCreateHatchBrush(
23 INT Style,
24 COLORREF Color);
25
26 HBRUSH APIENTRY
27 IntGdiCreatePatternBrush(
28 HBITMAP hBitmap);
29
30 HBRUSH APIENTRY
31 IntGdiCreateSolidBrush(
32 COLORREF Color);
33
34 HBRUSH APIENTRY
35 IntGdiCreateNullBrush(VOID);
36
37 BOOL FASTCALL
38 IntPatBlt(
39 PDC dc,
40 INT XLeft,
41 INT YLeft,
42 INT Width,
43 INT Height,
44 DWORD ROP,
45 PBRUSH BrushObj);
46
47 VOID FASTCALL
48 IntGdiSetSolidBrushColor(HBRUSH hBrush, COLORREF Color);
49
50 /* Pen functions */
51
52 HPEN APIENTRY
53 IntGdiExtCreatePen(DWORD, DWORD, IN ULONG, IN ULONG, IN ULONG_PTR, IN ULONG_PTR, DWORD, PULONG, IN ULONG, IN BOOL, IN OPTIONAL HBRUSH);
54
55 VOID FASTCALL
56 IntGdiSetSolidPenColor(HPEN hPen, COLORREF Color);
57
58 /* Line functions */
59
60 BOOL FASTCALL
61 IntGdiLineTo(DC *dc,
62 int XEnd,
63 int YEnd);
64
65 BOOL FASTCALL
66 IntGdiMoveToEx(DC *dc,
67 int X,
68 int Y,
69 LPPOINT Point,
70 BOOL BypassPath);
71
72 BOOL FASTCALL
73 IntGdiPolyBezier(DC *dc,
74 LPPOINT pt,
75 DWORD Count);
76
77 BOOL FASTCALL
78 IntGdiPolyline(DC *dc,
79 LPPOINT pt,
80 int Count);
81
82 BOOL FASTCALL
83 IntGdiPolyBezierTo(DC *dc,
84 LPPOINT pt,
85 DWORD Count);
86
87 BOOL FASTCALL
88 IntGdiPolyPolyline(DC *dc,
89 LPPOINT pt,
90 PULONG PolyPoints,
91 DWORD Count);
92
93 BOOL FASTCALL
94 IntGdiPolylineTo(DC *dc,
95 LPPOINT pt,
96 DWORD Count);
97
98 BOOL FASTCALL
99 IntGdiArc(DC *dc,
100 int LeftRect,
101 int TopRect,
102 int RightRect,
103 int BottomRect,
104 int XStartArc,
105 int YStartArc,
106 int XEndArc,
107 int YEndArc);
108
109 INT FASTCALL
110 IntGdiGetArcDirection(DC *dc);
111
112 /* Shape functions */
113
114 BOOL FASTCALL
115 IntGdiPolygon(PDC dc,
116 PPOINT UnsafePoints,
117 int Count);
118
119 BOOL FASTCALL
120 IntGdiPolyPolygon(DC *dc,
121 LPPOINT Points,
122 PULONG PolyCounts,
123 int Count);
124
125 BOOL
126 NTAPI
127 GreGradientFill(
128 HDC hdc,
129 PTRIVERTEX pVertex,
130 ULONG nVertex,
131 PVOID pMesh,
132 ULONG nMesh,
133 ULONG ulMode);
134
135 /* DC functions */
136
137 BOOL FASTCALL
138 IntGdiGetDCOrg(PDC pDC, PPOINTL pPointl);
139
140 INT FASTCALL
141 IntGdiGetObject(HANDLE handle, INT count, LPVOID buffer);
142
143 HDC FASTCALL
144 IntGdiCreateDC(PUNICODE_STRING Driver,
145 PUNICODE_STRING Device,
146 PVOID pUMdhpdev,
147 CONST PDEVMODEW InitData,
148 BOOL CreateAsIC);
149
150 /* Coord functions */
151
152 BOOL FASTCALL
153 IntGdiCombineTransform(LPXFORM XFormResult,
154 LPXFORM xform1,
155 LPXFORM xform2);
156
157 /* Stock objects */
158
159 BOOL FASTCALL
160 IntSetSysColors(UINT nColors, INT *Elements, COLORREF *Colors);
161
162 HGDIOBJ FASTCALL
163 IntGetSysColorBrush(INT Object);
164
165 DWORD FASTCALL
166 IntGetSysColor(INT nIndex);
167
168 /* Other Stuff */
169
170 INT
171 FASTCALL
172 IntGdiEscape(PDC dc,
173 INT Escape,
174 INT InSize,
175 LPCSTR InData,
176 LPVOID OutData);
177
178 NTSTATUS
179 FASTCALL
180 IntEnumDisplaySettings(
181 IN PUNICODE_STRING pDeviceName OPTIONAL,
182 IN DWORD iModeNum,
183 IN OUT LPDEVMODEW pDevMode,
184 IN DWORD dwFlags);
185
186 HBITMAP
187 FASTCALL
188 IntCreateCompatibleBitmap(PDC Dc,
189 INT Width,
190 INT Height);
191
192 HBITMAP APIENTRY
193 IntGdiCreateBitmap(
194 INT Width,
195 INT Height,
196 UINT Planes,
197 UINT BitsPixel,
198 IN OPTIONAL LPBYTE pBits);
199
200 HDC APIENTRY IntGdiGetDCState(HDC hDC);
201
202 WORD APIENTRY IntGdiSetHookFlags(HDC hDC, WORD Flags);
203
204 VOID APIENTRY IntGdiSetDCState ( HDC hDC, HDC hDCSave );
205
206 LONG APIENTRY IntSetBitmapBits(PSURFACE bmp, DWORD Bytes, IN PBYTE Bits);
207
208 LONG APIENTRY IntGetBitmapBits(PSURFACE bmp, DWORD Bytes, OUT PBYTE Bits);
209
210 UINT APIENTRY IntSetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, CONST RGBQUAD *Colors);
211
212 UINT APIENTRY IntGetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, RGBQUAD *Colors);
213
214 UINT APIENTRY
215 IntAnimatePalette(HPALETTE hPal, UINT StartIndex,
216 UINT NumEntries, CONST PPALETTEENTRY PaletteColors);
217
218 UINT APIENTRY
219 IntGetPaletteEntries(HPALETTE hpal,
220 UINT StartIndex,
221 UINT Entries,
222 LPPALETTEENTRY pe);
223
224 UINT APIENTRY
225 IntSetPaletteEntries(HPALETTE hpal,
226 UINT Start,
227 UINT Entries,
228 CONST LPPALETTEENTRY pe);
229
230 UINT APIENTRY
231 IntGetSystemPaletteEntries(HDC hDC,
232 UINT StartIndex,
233 UINT Entries,
234 LPPALETTEENTRY pe);
235 UINT APIENTRY
236 IntGetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, RGBQUAD *Colors);
237
238 UINT APIENTRY
239 IntSetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, CONST RGBQUAD *Colors);
240
241 BOOL APIENTRY
242 GreStretchBltMask(IN HDC hdcDst,
243 IN INT xDst,
244 IN INT yDst,
245 IN INT cxDst,
246 IN INT cyDst,
247 IN HDC hdcSrc,
248 IN INT xSrc,
249 IN INT ySrc,
250 IN INT cxSrc,
251 IN INT cySrc,
252 IN DWORD dwRop,
253 IN DWORD dwBackColor,
254 IN HDC hdcMask,
255 IN INT xMask,
256 IN INT yMask);