- Set the BaseObject.hHmgr field in GDIOBJ_AllocObj
[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 XLATEOBJ* FASTCALL
9 IntGdiCreateBrushXlate(PDC Dc, GDIBRUSHOBJ *BrushObj, BOOLEAN *Failed);
10
11 VOID FASTCALL
12 IntGdiInitBrushInstance(GDIBRUSHINST *BrushInst, PGDIBRUSHOBJ BrushObj, XLATEOBJ *XlateObj);
13
14 HBRUSH STDCALL
15 IntGdiCreateDIBBrush(
16 CONST BITMAPINFO *BitmapInfo,
17 UINT ColorSpec,
18 UINT BitmapInfoSize,
19 CONST VOID *PackedDIB);
20
21 HBRUSH STDCALL
22 IntGdiCreateHatchBrush(
23 INT Style,
24 COLORREF Color);
25
26 HBRUSH STDCALL
27 IntGdiCreatePatternBrush(
28 HBITMAP hBitmap);
29
30 HBRUSH STDCALL
31 IntGdiCreateSolidBrush(
32 COLORREF Color);
33
34 HBRUSH STDCALL
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 PGDIBRUSHOBJ BrushObj);
46
47 VOID FASTCALL
48 IntGdiSetSolidBrushColor(HBRUSH hBrush, COLORREF Color);
49
50 /* Pen functions */
51
52 HPEN STDCALL
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
71 BOOL FASTCALL
72 IntGdiPolyBezier(DC *dc,
73 LPPOINT pt,
74 DWORD Count);
75
76 BOOL FASTCALL
77 IntGdiPolyline(DC *dc,
78 LPPOINT pt,
79 int Count);
80
81 BOOL FASTCALL
82 IntGdiPolyBezierTo(DC *dc,
83 LPPOINT pt,
84 DWORD Count);
85
86 BOOL FASTCALL
87 IntGdiPolyPolyline(DC *dc,
88 LPPOINT pt,
89 LPDWORD PolyPoints,
90 DWORD Count);
91
92 BOOL FASTCALL
93 IntGdiPolylineTo(DC *dc,
94 LPPOINT pt,
95 DWORD Count);
96
97 BOOL FASTCALL
98 IntGdiArc(DC *dc,
99 int LeftRect,
100 int TopRect,
101 int RightRect,
102 int BottomRect,
103 int XStartArc,
104 int YStartArc,
105 int XEndArc,
106 int YEndArc);
107
108 INT FASTCALL
109 IntGdiGetArcDirection(DC *dc);
110
111 /* Shape functions */
112
113 BOOL FASTCALL
114 IntGdiPolygon(PDC dc,
115 PPOINT UnsafePoints,
116 int Count);
117
118 BOOL FASTCALL
119 IntGdiPolyPolygon(DC *dc,
120 LPPOINT Points,
121 LPINT PolyCounts,
122 int Count);
123
124 BOOL FASTCALL IntGdiGradientFill(DC *dc,
125 PTRIVERTEX pVertex,
126 ULONG uVertex,
127 PVOID pMesh, ULONG uMesh, ULONG ulMode);
128
129 /* DC functions */
130
131 BOOL FASTCALL
132 IntGdiGetDCOrgEx(DC *dc, LPPOINT Point);
133
134 INT FASTCALL
135 IntGdiGetObject(HANDLE handle, INT count, LPVOID buffer);
136
137 HDC FASTCALL
138 IntGdiCreateDC(PUNICODE_STRING Driver,
139 PUNICODE_STRING Device,
140 PVOID pUMdhpdev,
141 CONST PDEVMODEW InitData,
142 BOOL CreateAsIC);
143
144 /* Coord functions */
145
146 BOOL FASTCALL
147 IntGdiCombineTransform(LPXFORM XFormResult,
148 LPXFORM xform1,
149 LPXFORM xform2);
150
151 /* RECT functions */
152
153 VOID FASTCALL
154 IntGdiSetRect(PRECT Rect, INT left, INT top, INT right, INT bottom);
155
156 VOID FASTCALL
157 IntGdiSetEmptyRect(PRECT Rect);
158
159 BOOL FASTCALL
160 IntGdiIsEmptyRect(const RECT* Rect);
161
162 VOID FASTCALL
163 IntGdiOffsetRect(LPRECT Rect, INT x, INT y);
164
165 BOOL FASTCALL
166 IntGdiUnionRect(PRECT Dest, const RECT* Src1, const RECT* Src2);
167
168 BOOL FASTCALL
169 IntGdiIntersectRect(PRECT Dest, const RECT* Src1, const RECT* Src2);
170
171 /* Stock objects */
172
173 BOOL FASTCALL
174 IntSetSysColors(UINT nColors, INT *Elements, COLORREF *Colors);
175
176 BOOL FASTCALL
177 IntGetSysColorBrushes(HBRUSH *Brushes, UINT nBrushes);
178
179 HGDIOBJ FASTCALL
180 IntGetSysColorBrush(INT Object);
181
182 BOOL FASTCALL
183 IntGetSysColorPens(HPEN *Pens, UINT nPens);
184
185 BOOL FASTCALL
186 IntGetSysColors(COLORREF *Colors, UINT nColors);
187
188 DWORD FASTCALL
189 IntGetSysColor(INT nIndex);
190
191 /* Other Stuff */
192
193 INT FASTCALL
194 IntGdiGetDeviceCaps(PDC dc, INT Index);
195
196 int STDCALL IntGdiExtSelectClipRgn (PDC dc, HRGN hrgn, int fnMode);
197
198 INT
199 FASTCALL
200 IntGdiEscape(PDC dc,
201 INT Escape,
202 INT InSize,
203 LPCSTR InData,
204 LPVOID OutData);
205
206 BOOL
207 FASTCALL
208 IntEnumDisplaySettings(
209 IN PUNICODE_STRING pDeviceName OPTIONAL,
210 IN DWORD iModeNum,
211 IN OUT LPDEVMODEW pDevMode,
212 IN DWORD dwFlags);
213
214 LONG
215 FASTCALL
216 IntChangeDisplaySettings(
217 IN PUNICODE_STRING pDeviceName OPTIONAL,
218 IN LPDEVMODEW pDevMode,
219 IN DWORD dwflags,
220 IN PVOID lParam OPTIONAL);
221
222 HBITMAP
223 FASTCALL
224 IntCreateCompatibleBitmap(PDC Dc,
225 INT Width,
226 INT Height);
227
228 HBITMAP STDCALL
229 IntGdiCreateBitmap(
230 INT Width,
231 INT Height,
232 UINT Planes,
233 UINT BitsPixel,
234 IN OPTIONAL LPBYTE pBits);
235
236 HDC STDCALL IntGdiGetDCState(HDC hDC);
237
238 WORD STDCALL IntGdiSetHookFlags(HDC hDC, WORD Flags);
239
240 VOID STDCALL IntGdiSetDCState ( HDC hDC, HDC hDCSave );
241
242 LONG STDCALL IntSetBitmapBits(PBITMAPOBJ bmp, DWORD Bytes, IN PBYTE Bits);
243
244 LONG STDCALL IntGetBitmapBits(PBITMAPOBJ bmp, DWORD Bytes, OUT PBYTE Bits);
245
246 UINT STDCALL IntSetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, CONST RGBQUAD *Colors);
247
248 UINT STDCALL IntGetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, RGBQUAD *Colors);
249
250 UINT STDCALL
251 IntAnimatePalette(HPALETTE hPal, UINT StartIndex,
252 UINT NumEntries, CONST PPALETTEENTRY PaletteColors);
253
254 UINT STDCALL
255 IntGetPaletteEntries(HPALETTE hpal,
256 UINT StartIndex,
257 UINT Entries,
258 LPPALETTEENTRY pe);
259
260 UINT STDCALL
261 IntSetPaletteEntries(HPALETTE hpal,
262 UINT Start,
263 UINT Entries,
264 CONST LPPALETTEENTRY pe);
265
266 UINT STDCALL
267 IntGetSystemPaletteEntries(HDC hDC,
268 UINT StartIndex,
269 UINT Entries,
270 LPPALETTEENTRY pe);
271 UINT STDCALL
272 IntGetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, RGBQUAD *Colors);
273
274 UINT STDCALL
275 IntSetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, CONST RGBQUAD *Colors);
276
277 #endif /* _WIN32K_INTGDI_H */
278