merge 37282 from amd64-branch:
[reactos.git] / reactos / subsystems / win32 / win32k / include / intgdi.h
1 #ifndef _WIN32K_INTGDI_H
2 #define _WIN32K_INTGDI_H
3
4 #include "region.h"
5
6 /* Brush functions */
7
8 extern HDC hSystemBM;
9 extern HSEMAPHORE hsemDriverMgmt;
10
11 XLATEOBJ*
12 FASTCALL
13 IntCreateXlateForBlt(PDC pDCDest, PDC pDCSrc, SURFACE* pDestSurf, SURFACE* pSrcSurf);
14
15 HBRUSH APIENTRY
16 IntGdiCreateDIBBrush(
17 CONST BITMAPINFO *BitmapInfo,
18 UINT ColorSpec,
19 UINT BitmapInfoSize,
20 CONST VOID *PackedDIB);
21
22 HBRUSH APIENTRY
23 IntGdiCreateHatchBrush(
24 INT Style,
25 COLORREF Color);
26
27 HBRUSH APIENTRY
28 IntGdiCreatePatternBrush(
29 HBITMAP hBitmap);
30
31 HBRUSH APIENTRY
32 IntGdiCreateSolidBrush(
33 COLORREF Color);
34
35 HBRUSH APIENTRY
36 IntGdiCreateNullBrush(VOID);
37
38 BOOL FASTCALL
39 IntPatBlt(
40 PDC dc,
41 INT XLeft,
42 INT YLeft,
43 INT Width,
44 INT Height,
45 DWORD ROP,
46 PBRUSH BrushObj);
47
48 VOID FASTCALL
49 IntGdiSetSolidBrushColor(HBRUSH hBrush, COLORREF Color);
50
51 /* Pen functions */
52
53 HPEN APIENTRY
54 IntGdiExtCreatePen(DWORD, DWORD, IN ULONG, IN ULONG, IN ULONG_PTR, IN ULONG_PTR, DWORD, PULONG, IN ULONG, IN BOOL, IN OPTIONAL HBRUSH);
55
56 VOID FASTCALL
57 IntGdiSetSolidPenColor(HPEN hPen, COLORREF Color);
58
59 /* Line functions */
60
61 BOOL FASTCALL
62 IntGdiLineTo(DC *dc,
63 int XEnd,
64 int YEnd);
65
66 BOOL FASTCALL
67 IntGdiMoveToEx(DC *dc,
68 int X,
69 int Y,
70 LPPOINT Point);
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 FASTCALL IntGdiGradientFill(DC *dc,
126 PTRIVERTEX pVertex,
127 ULONG uVertex,
128 PVOID pMesh, ULONG uMesh, ULONG ulMode);
129
130 /* DC functions */
131
132 BOOL FASTCALL
133 IntGdiGetDCOrg(PDC pDC, PPOINTL pPointl);
134
135 INT FASTCALL
136 IntGdiGetObject(HANDLE handle, INT count, LPVOID buffer);
137
138 HDC FASTCALL
139 IntGdiCreateDC(PUNICODE_STRING Driver,
140 PUNICODE_STRING Device,
141 PVOID pUMdhpdev,
142 CONST PDEVMODEW InitData,
143 BOOL CreateAsIC);
144
145 /* Coord functions */
146
147 BOOL FASTCALL
148 IntGdiCombineTransform(LPXFORM XFormResult,
149 LPXFORM xform1,
150 LPXFORM xform2);
151
152 /* Stock objects */
153
154 BOOL FASTCALL
155 IntSetSysColors(UINT nColors, INT *Elements, COLORREF *Colors);
156
157 BOOL FASTCALL
158 IntGetSysColorBrushes(HBRUSH *Brushes, UINT nBrushes);
159
160 HGDIOBJ FASTCALL
161 IntGetSysColorBrush(INT Object);
162
163 BOOL FASTCALL
164 IntGetSysColorPens(HPEN *Pens, UINT nPens);
165
166 BOOL FASTCALL
167 IntGetSysColors(COLORREF *Colors, UINT nColors);
168
169 DWORD FASTCALL
170 IntGetSysColor(INT nIndex);
171
172 /* Other Stuff */
173
174 INT FASTCALL
175 IntGdiGetDeviceCaps(PDC dc, INT Index);
176
177 INT
178 FASTCALL
179 IntGdiEscape(PDC dc,
180 INT Escape,
181 INT InSize,
182 LPCSTR InData,
183 LPVOID OutData);
184
185 NTSTATUS
186 FASTCALL
187 IntEnumDisplaySettings(
188 IN PUNICODE_STRING pDeviceName OPTIONAL,
189 IN DWORD iModeNum,
190 IN OUT LPDEVMODEW pDevMode,
191 IN DWORD dwFlags);
192
193 LONG
194 FASTCALL
195 IntChangeDisplaySettings(
196 IN PUNICODE_STRING pDeviceName OPTIONAL,
197 IN LPDEVMODEW pDevMode,
198 IN DWORD dwflags,
199 IN PVOID lParam OPTIONAL);
200
201 HBITMAP
202 FASTCALL
203 IntCreateCompatibleBitmap(PDC Dc,
204 INT Width,
205 INT Height);
206
207 HBITMAP APIENTRY
208 IntGdiCreateBitmap(
209 INT Width,
210 INT Height,
211 UINT Planes,
212 UINT BitsPixel,
213 IN OPTIONAL LPBYTE pBits);
214
215 HDC APIENTRY IntGdiGetDCState(HDC hDC);
216
217 WORD APIENTRY IntGdiSetHookFlags(HDC hDC, WORD Flags);
218
219 VOID APIENTRY IntGdiSetDCState ( HDC hDC, HDC hDCSave );
220
221 LONG APIENTRY IntSetBitmapBits(PSURFACE bmp, DWORD Bytes, IN PBYTE Bits);
222
223 LONG APIENTRY IntGetBitmapBits(PSURFACE bmp, DWORD Bytes, OUT PBYTE Bits);
224
225 UINT APIENTRY IntSetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, CONST RGBQUAD *Colors);
226
227 UINT APIENTRY IntGetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, RGBQUAD *Colors);
228
229 UINT APIENTRY
230 IntAnimatePalette(HPALETTE hPal, UINT StartIndex,
231 UINT NumEntries, CONST PPALETTEENTRY PaletteColors);
232
233 UINT APIENTRY
234 IntGetPaletteEntries(HPALETTE hpal,
235 UINT StartIndex,
236 UINT Entries,
237 LPPALETTEENTRY pe);
238
239 UINT APIENTRY
240 IntSetPaletteEntries(HPALETTE hpal,
241 UINT Start,
242 UINT Entries,
243 CONST LPPALETTEENTRY pe);
244
245 UINT APIENTRY
246 IntGetSystemPaletteEntries(HDC hDC,
247 UINT StartIndex,
248 UINT Entries,
249 LPPALETTEENTRY pe);
250 UINT APIENTRY
251 IntGetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, RGBQUAD *Colors);
252
253 UINT APIENTRY
254 IntSetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, CONST RGBQUAD *Colors);
255
256 BOOL APIENTRY
257 GreStretchBltMask(IN HDC hdcDst,
258 IN INT xDst,
259 IN INT yDst,
260 IN INT cxDst,
261 IN INT cyDst,
262 IN HDC hdcSrc,
263 IN INT xSrc,
264 IN INT ySrc,
265 IN INT cxSrc,
266 IN INT cySrc,
267 IN DWORD dwRop,
268 IN DWORD dwBackColor,
269 IN HDC hdcMask);
270
271 #endif /* _WIN32K_INTGDI_H */
272