23b9bbf6df691783f1a6f829b13aaac721b5b8ec
[reactos.git] / reactos / lib / gdi32 / misc / stubsa.c
1 /* $Id$
2 *
3 * reactos/lib/gdi32/misc/stubs.c
4 *
5 * GDI32.DLL Stubs for ANSI functions
6 *
7 * When you implement one of these functions,
8 * remove its stub from this file.
9 *
10 */
11
12 #include "precomp.h"
13
14 #define UNIMPLEMENTED DbgPrint("GDI32: %s is unimplemented, please try again later.\n", __FUNCTION__);
15
16
17 /*
18 * @unimplemented
19 */
20 int
21 STDCALL
22 DeviceCapabilitiesExA(
23 LPCSTR pDevice,
24 LPCSTR pPort,
25 WORD fwCapability,
26 LPSTR pOutput,
27 CONST DEVMODEA *pDevMode
28 )
29 {
30 UNIMPLEMENTED;
31 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
32 return 0;
33 }
34
35
36 /*
37 * @unimplemented
38 */
39 int
40 STDCALL
41 EnumFontsA (
42 HDC hDC,
43 LPCSTR lpFaceName,
44 FONTENUMPROCA FontFunc,
45 LPARAM lParam
46 )
47 {
48 UNIMPLEMENTED;
49 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
50 return 0;
51 #if 0
52 NTSTATUS Status;
53 LPWSTR lpFaceNameW;
54 int rc = 0;
55
56 Status = HEAP_strdupA2W ( &lpFaceNameW, lpFaceName );
57 if (!NT_SUCCESS (Status))
58 SetLastError (RtlNtStatusToDosError(Status));
59 else
60 {
61 rc = NtGdiEnumFonts ( hDC, lpFaceNameW, FontFunc, lParam );
62
63 HEAP_free ( lpFaceNameW );
64 }
65 return rc;
66 #endif
67 }
68
69
70 /*
71 * @unimplemented
72 */
73 UINT
74 APIENTRY
75 GetOutlineTextMetricsA(
76 HDC hdc,
77 UINT cbData,
78 LPOUTLINETEXTMETRICA lpOTM
79 )
80 {
81 UNIMPLEMENTED;
82 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
83 return 0;
84 }
85
86
87 /*
88 * @unimplemented
89 */
90 DWORD
91 STDCALL
92 GetCharacterPlacementA(
93 HDC hDc,
94 LPCSTR a1,
95 int a2,
96 int a3,
97 LPGCP_RESULTSA a4,
98 DWORD a5
99 )
100 {
101 UNIMPLEMENTED;
102 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
103 return 0;
104 }
105
106
107 /*
108 * @unimplemented
109 */
110 int
111 STDCALL
112 StartDocA(
113 HDC hdc,
114 CONST DOCINFOA *a1
115 )
116 {
117 UNIMPLEMENTED;
118 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
119 return 0;
120 }
121
122
123 /*
124 * @unimplemented
125 */
126 BOOL
127 STDCALL
128 PolyTextOutA(
129 HDC hdc,
130 CONST POLYTEXTA *a1,
131 int a2
132 )
133 {
134 UNIMPLEMENTED;
135 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
136 return FALSE;
137 }
138
139
140 /*
141 * @unimplemented
142 */
143 DWORD
144 STDCALL
145 GetKerningPairsA(
146 HDC a0,
147 DWORD a1,
148 LPKERNINGPAIR a2
149 )
150 {
151 UNIMPLEMENTED;
152 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
153 return 0;
154 }
155
156
157 /*
158 * @unimplemented
159 */
160 BOOL
161 STDCALL
162 GetLogColorSpaceA(
163 HCOLORSPACE a0,
164 LPLOGCOLORSPACEA a1,
165 DWORD a2
166 )
167 {
168 UNIMPLEMENTED;
169 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
170 return FALSE;
171 }
172
173
174 /*
175 * @unimplemented
176 */
177 HCOLORSPACE
178 STDCALL
179 CreateColorSpaceA(
180 LPLOGCOLORSPACEA a0
181 )
182 {
183 UNIMPLEMENTED;
184 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
185 return 0;
186 }
187
188
189 /*
190 * @unimplemented
191 */
192 BOOL
193 STDCALL
194 GetICMProfileA(
195 HDC a0,
196 DWORD a1, /* MS says LPDWORD! */
197 LPSTR a2
198 )
199 {
200 UNIMPLEMENTED;
201 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
202 return FALSE;
203 }
204
205
206 /*
207 * @unimplemented
208 */
209 BOOL
210 STDCALL
211 SetICMProfileA(
212 HDC a0,
213 LPSTR a1
214 )
215 {
216 UNIMPLEMENTED;
217 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
218 return FALSE;
219 }
220
221
222 /*
223 * @unimplemented
224 */
225 int
226 STDCALL
227 EnumICMProfilesA(
228 HDC a0,
229 ICMENUMPROCA a1,
230 LPARAM a2
231 )
232 {
233 /*
234 * FIXME - call NtGdiEnumICMProfiles with NULL for lpstrBuffer
235 * to find out how big a buffer we need. Then allocate that buffer
236 * and call NtGdiEnumICMProfiles again to have the buffer filled.
237 *
238 * Finally, step through the buffer ( MULTI-SZ recommended for format ),
239 * and convert each string to ANSI, calling the user's callback function
240 * until we run out of strings or the user returns FALSE
241 */
242
243 UNIMPLEMENTED;
244 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
245 return 0;
246 }
247
248
249 /*
250 * @unimplemented
251 */
252 BOOL
253 STDCALL
254 wglUseFontBitmapsA(
255 HDC a0,
256 DWORD a1,
257 DWORD a2,
258 DWORD a3
259 )
260 {
261 UNIMPLEMENTED;
262 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
263 return FALSE;
264 }
265
266
267 /*
268 * @unimplemented
269 */
270 BOOL
271 STDCALL
272 wglUseFontOutlinesA(
273 HDC a0,
274 DWORD a1,
275 DWORD a2,
276 DWORD a3,
277 FLOAT a4,
278 FLOAT a5,
279 int a6,
280 LPGLYPHMETRICSFLOAT a7
281 )
282 {
283 UNIMPLEMENTED;
284 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
285 return FALSE;
286 }
287
288
289 /*
290 * @unimplemented
291 */
292 BOOL
293 STDCALL
294 UpdateICMRegKeyA(
295 DWORD a0,
296 DWORD a1,
297 LPSTR a2,
298 UINT a3
299 )
300 {
301 UNIMPLEMENTED;
302 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
303 return FALSE;
304 }
305
306
307 /*
308 * @unimplemented
309 */
310 BOOL
311 STDCALL
312 RemoveFontResourceExA(
313 LPCSTR lpFileName,
314 DWORD fl,
315 PVOID pdv
316 )
317 {
318 UNIMPLEMENTED;
319 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
320 return 0;
321 }
322
323
324 /*
325 * @unimplemented
326 */
327 HFONT
328 STDCALL
329 CreateFontIndirectExA(const ENUMLOGFONTEXDVA *elfexd)
330 {
331 UNIMPLEMENTED;
332 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
333 return 0;
334 }
335
336 /*
337 * @unimplemented
338 */
339 DWORD
340 STDCALL
341 GetGlyphIndicesA(
342 HDC hdc,
343 LPCSTR lpstr,
344 int c,
345 LPWORD pgi,
346 DWORD fl
347 )
348 {
349 UNIMPLEMENTED;
350 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
351 return 0;
352 }
353
354 /*
355 * @unimplemented
356 */
357 UINT
358 STDCALL
359 GetStringBitmapA(HDC hdc,LPSTR psz,BOOL unknown,UINT cj,BYTE *lpSB)
360 {
361 UNIMPLEMENTED;
362 SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
363 return 0;
364 }
365
366
367 /* EOF */