1 /* $Id: stubsw.c,v 1.24 2004/01/24 08:23:12 ekohl Exp $
3 * reactos/lib/gdi32/misc/stubs.c
5 * GDI32.DLL Stubs for Unicode functions
7 * When you implement one of these functions,
8 * remove its stub from this file.
15 #include <win32k/kapi.h>
22 AddFontResourceExW ( LPCWSTR lpszFilename
, DWORD fl
, PVOID pvReserved
)
24 UNICODE_STRING Filename
;
26 /* FIXME handle fl parameter */
27 RtlInitUnicodeString(&Filename
, lpszFilename
);
28 return NtGdiAddFontResource ( &Filename
, fl
);
36 AddFontResourceW ( LPCWSTR lpszFilename
)
38 return AddFontResourceExW ( lpszFilename
, 0, 0 );
51 CONST DEVMODEW
* lpdvmInit
54 UNICODE_STRING Driver
, Device
, Output
;
57 RtlInitUnicodeString(&Driver
, lpszDriver
);
59 RtlInitUnicodeString(&Device
, lpszDevice
);
61 RtlInitUnicodeString(&Output
, lpszOutput
);
62 return NtGdiCreateIC ((lpszDriver
? &Driver
: NULL
),
63 (lpszDevice
? &Device
: NULL
),
64 (lpszOutput
? &Output
: NULL
),
65 (CONST PDEVMODEW
)lpdvmInit
);
74 CreateScalableFontResourceW(
78 LPCWSTR lpszCurrentPath
81 return NtGdiCreateScalableFontResource ( fdwHidden
,
93 DeviceCapabilitiesExW(
98 CONST DEVMODEW
*pDevMode
102 /* FIXME no NtGdiDeviceCapabilities???? */
103 return NtGdiDeviceCapabilities ( pDevice
,
109 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
122 LPLOGFONTW lpLogFont
,
123 FONTENUMEXPROCW lpEnumFontFamProc
,
129 return NtGdiEnumFontFamiliesEx ( hdc
, lpLogFont
, lpEnumFontFamProc
, lParam
, dwFlags
);
131 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
145 FONTENUMPROCW lpEnumFontFamProc
,
150 return NtGdiEnumFontFamilies ( hdc
, lpszFamily
, lpEnumFontFamProc
, lParam
);
152 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
166 FONTENUMPROCW FontFunc
,
171 return NtGdiEnumFonts ( hDC
, lpFaceName
, FontFunc
, lParam
);
173 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
191 return NtGdiGetCharWidth ( hdc
, iFirstChar
, iLastChar
, lpBuffer
);
207 return NtGdiGetCharWidth32 ( hdc
, iFirstChar
, iLastChar
, lpBuffer
);
223 return NtGdiGetCharWidthFloat ( hdc
, iFirstChar
, iLastChar
, pxBuffer
);
239 return NtGdiGetCharABCWidths ( hdc
, uFirstChar
, uLastChar
, lpabc
);
248 GetCharABCWidthsFloatW(
255 return NtGdiGetCharABCWidthsFloat ( hdc
, iFirstChar
, iLastChar
, lpABCF
);
274 return NtGdiGetGlyphOutline ( hdc
, uChar
, uFormat
, lpgm
, cbBuffer
, lpvBuffer
, (CONST LPMAT2
)lpmat2
);
283 GetOutlineTextMetricsW(
286 LPOUTLINETEXTMETRICW lpOTM
289 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
299 GetTextExtentExPointW(
309 return NtGdiGetTextExtentExPoint (
310 hdc
, lpszStr
, cchString
, nMaxExtent
, lpnFit
, alpDx
, lpSize
);
319 GetCharacterPlacementW(
328 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
340 CONST DEVMODEW
*lpInitData
343 return NtGdiResetDC ( hdc
, lpInitData
);
356 return NtGdiRemoveFontResource ( lpFileName
);
370 return NtGdiStartDoc ( hdc
, (CONST PDOCINFOW
)a1
);
385 return NtGdiGetObject ( a0
, a1
, a2
);
400 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
416 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
432 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
448 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
461 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
473 DWORD a1
, /* MS says LPDWORD! */
477 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
492 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
504 ICMENUMPROCW lpEnumICMProfilesFunc
,
509 * FIXME - call NtGdiEnumICMProfiles with NULL for lpstrBuffer
510 * to find out how big a buffer we need. Then allocate that buffer
511 * and call NtGdiEnumICMProfiles again to have the buffer filled.
513 * Finally, step through the buffer ( MULTI-SZ recommended for format ),
514 * and call the user's callback function until we run out of strings or
515 * the user returns FALSE
517 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
534 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
552 LPGLYPHMETRICSFLOAT a7
555 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
572 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);
577 /* === AFTER THIS POINT I GUESS... =========
578 * (based on stack size in Norlander's .def)
579 * === WHERE ARE THEY DEFINED? =============
588 GetFontResourceInfoW(
595 SetLastError(ERROR_CALL_NOT_IMPLEMENTED
);