f59e959db092b48babc19597ba515e6d1a9c51bb
[reactos.git] / reactos / win32ss / gdi / eng / stubs.c
1 /*
2 * Stubs for unimplemented WIN32K.SYS exports
3 */
4
5 #include <win32k.h>
6 #undef XFORMOBJ
7
8 #define UNIMPLEMENTED DbgPrint("(%s:%i) WIN32K: %s UNIMPLEMENTED\n", __FILE__, __LINE__, __FUNCTION__ )
9
10
11 /*
12 * @unimplemented
13 */
14 BOOL
15 APIENTRY
16 EngTextOut(
17 SURFOBJ *pso,
18 STROBJ *pstro,
19 FONTOBJ *pfo,
20 CLIPOBJ *pco,
21 RECTL *prclExtra,
22 RECTL *prclOpaque,
23 BRUSHOBJ *pboFore,
24 BRUSHOBJ *pboOpaque,
25 POINTL *pptlOrg,
26 MIX mix)
27 {
28 // www.osr.com/ddk/graphics/gdifncs_4tgn.htm
29 UNIMPLEMENTED;
30 return FALSE;
31 }
32
33 /*
34 * @unimplemented
35 */
36 PATHOBJ*
37 APIENTRY
38 CLIPOBJ_ppoGetPath(IN CLIPOBJ *pco)
39 {
40 // www.osr.com/ddk/graphics/gdifncs_6hbb.htm
41 UNIMPLEMENTED;
42 return 0;
43 }
44
45 /*
46 * @unimplemented
47 */
48 BOOL
49 APIENTRY
50 EngCheckAbort(IN SURFOBJ *pso)
51 {
52 // www.osr.com/ddk/graphics/gdifncs_3u7b.htm
53 UNIMPLEMENTED;
54 return FALSE;
55 }
56
57 /*
58 * @unimplemented
59 */
60 FD_GLYPHSET*
61 APIENTRY
62 EngComputeGlyphSet(
63 IN INT nCodePage,
64 IN INT nFirstChar,
65 IN INT cChars)
66 {
67 // www.osr.com/ddk/graphics/gdifncs_9607.htm
68 UNIMPLEMENTED;
69 return NULL;
70 }
71
72 /*
73 * @unimplemented
74 */
75 PATHOBJ*
76 APIENTRY
77 EngCreatePath(VOID)
78 {
79 // www.osr.com/ddk/graphics/gdifncs_4aav.htm
80 UNIMPLEMENTED;
81 return NULL;
82 }
83
84 /*
85 * @unimplemented
86 */
87 VOID
88 APIENTRY
89 EngDeletePath(IN PATHOBJ *ppo)
90 {
91 // www.osr.com/ddk/graphics/gdifncs_3fl3.htm
92 UNIMPLEMENTED;
93 }
94
95 /*
96 * @unimplemented
97 */
98 BOOL
99 APIENTRY
100 EngEnumForms(
101 IN HANDLE hPrinter,
102 IN DWORD Level,
103 OUT LPBYTE pForm,
104 IN DWORD cbBuf,
105 OUT LPDWORD pcbNeeded,
106 OUT LPDWORD pcReturned)
107 {
108 // www.osr.com/ddk/graphics/gdifncs_5e07.htm
109 UNIMPLEMENTED;
110 return FALSE;
111 }
112
113 /*
114 * @unimplemented
115 */
116 BOOL
117 APIENTRY
118 EngFillPath(
119 IN SURFOBJ *pso,
120 IN PATHOBJ *ppo,
121 IN CLIPOBJ *pco,
122 IN BRUSHOBJ *pbo,
123 IN POINTL *pptlBrushOrg,
124 IN MIX mix,
125 IN FLONG flOptions)
126 {
127 // www.osr.com/ddk/graphics/gdifncs_9pyf.htm
128 UNIMPLEMENTED;
129 return FALSE;
130 }
131
132 /*
133 * @unimplemented
134 */
135 PVOID
136 APIENTRY
137 EngFindResource(
138 IN HANDLE h,
139 IN int iName,
140 IN int iType,
141 OUT PULONG pulSize)
142 {
143 // www.osr.com/ddk/graphics/gdifncs_7rjb.htm
144 UNIMPLEMENTED;
145 return NULL;
146 }
147
148 /*
149 * @unimplemented
150 */
151 BOOL
152 APIENTRY
153 EngGetFileChangeTime(
154 IN HANDLE h,
155 OUT LARGE_INTEGER *pChangeTime)
156 {
157 // www.osr.com/ddk/graphics/gdifncs_1i1z.htm
158 UNIMPLEMENTED;
159 return FALSE;
160 }
161
162 /*
163 * @unimplemented
164 */
165 BOOL
166 APIENTRY
167 EngGetFilePath(
168 IN HANDLE h,
169 OUT WCHAR (*pDest)[MAX_PATH + 1])
170 {
171 // www.osr.com/ddk/graphics/gdifncs_5g2v.htm
172 UNIMPLEMENTED;
173 return FALSE;
174 }
175
176 /*
177 * @unimplemented
178 */
179 BOOL
180 APIENTRY
181 EngGetForm(
182 IN HANDLE hPrinter,
183 IN LPWSTR pFormName,
184 IN DWORD Level,
185 OUT LPBYTE pForm,
186 IN DWORD cbBuf,
187 OUT LPDWORD pcbNeeded)
188 {
189 // www.osr.com/ddk/graphics/gdifncs_5vvr.htm
190 UNIMPLEMENTED;
191 return FALSE;
192 }
193
194 /*
195 * @unimplemented
196 */
197 BOOL
198 APIENTRY
199 EngGetPrinter(
200 IN HANDLE hPrinter,
201 IN DWORD dwLevel,
202 OUT LPBYTE pPrinter,
203 IN DWORD cbBuf,
204 OUT LPDWORD pcbNeeded)
205 {
206 // www.osr.com/ddk/graphics/gdifncs_50h3.htm
207 UNIMPLEMENTED;
208 return FALSE;
209 }
210
211 /*
212 * @unimplemented
213 */
214 DWORD
215 APIENTRY
216 EngGetPrinterData(
217 IN HANDLE hPrinter,
218 IN LPWSTR pValueName,
219 OUT LPDWORD pType,
220 OUT LPBYTE pData,
221 IN DWORD nSize,
222 OUT LPDWORD pcbNeeded)
223 {
224 // www.osr.com/ddk/graphics/gdifncs_8t5z.htm
225 UNIMPLEMENTED;
226 return 0;
227 }
228
229 /*
230 * @unimplemented
231 */
232 LPWSTR
233 APIENTRY
234 EngGetPrinterDataFileName(IN HDEV hdev)
235 {
236 // www.osr.com/ddk/graphics/gdifncs_2giv.htm
237 UNIMPLEMENTED;
238 return NULL;
239 }
240
241 /*
242 * @unimplemented
243 */
244 BOOL
245 APIENTRY
246 EngGetType1FontList(
247 IN HDEV hdev,
248 OUT TYPE1_FONT *pType1Buffer,
249 IN ULONG cjType1Buffer,
250 OUT PULONG pulLocalFonts,
251 OUT PULONG pulRemoteFonts,
252 OUT LARGE_INTEGER *pLastModified)
253 {
254 // www.osr.com/ddk/graphics/gdifncs_6e5j.htm
255 UNIMPLEMENTED;
256 return FALSE;
257 }
258
259 /*
260 * @unimplemented
261 */
262 BOOL
263 APIENTRY
264 EngMarkBandingSurface(IN HSURF hsurf)
265 {
266 // www.osr.com/ddk/graphics/gdifncs_2jon.htm
267 UNIMPLEMENTED;
268 return FALSE;
269 }
270
271 INT
272 APIENTRY
273 EngMultiByteToWideChar(
274 IN UINT CodePage,
275 OUT LPWSTR WideCharString,
276 IN INT BytesInWideCharString,
277 IN LPSTR MultiByteString,
278 IN INT BytesInMultiByteString)
279 {
280 // www.osr.com/ddk/graphics/gdifncs_32cn.htm
281 UNIMPLEMENTED;
282 return 0;
283 }
284
285 VOID
286 APIENTRY
287 EngQueryLocalTime(
288 _Out_ PENG_TIME_FIELDS ptf)
289 {
290 LARGE_INTEGER liSystemTime, liLocalTime;
291 NT_ASSERT(ptf != NULL);
292
293 /* Query the system time */
294 KeQuerySystemTime(&liSystemTime);
295
296 /* Convert it to local time */
297 ExSystemTimeToLocalTime(&liSystemTime, &liLocalTime);
298
299 /* Convert the local time into time fields
300 (note that ENG_TIME_FIELDS is identical to TIME_FIELDS) */
301 RtlTimeToTimeFields(&liLocalTime, (PTIME_FIELDS)ptf);
302 }
303
304 ULONG
305 APIENTRY
306 EngQueryPalette(
307 IN HPALETTE hPal,
308 OUT ULONG *piMode,
309 IN ULONG cColors,
310 OUT ULONG *pulColors)
311 {
312 // www.osr.com/ddk/graphics/gdifncs_21t3.htm
313 UNIMPLEMENTED;
314 return 0;
315 }
316
317 DWORD
318 APIENTRY
319 EngSetPrinterData(
320 IN HANDLE hPrinter,
321 IN LPWSTR pType,
322 IN DWORD dwType,
323 IN LPBYTE lpbPrinterData,
324 IN DWORD cjPrinterData)
325 {
326 // www.osr.com/ddk/graphics/gdifncs_8drb.htm
327 UNIMPLEMENTED;
328 return 0;
329 }
330
331 BOOL
332 APIENTRY
333 EngStrokeAndFillPath(
334 IN SURFOBJ *pso,
335 IN PATHOBJ *ppo,
336 IN CLIPOBJ *pco,
337 IN XFORMOBJ *pxo,
338 IN BRUSHOBJ *pboStroke,
339 IN LINEATTRS *plineattrs,
340 IN BRUSHOBJ *pboFill,
341 IN POINTL *pptlBrushOrg,
342 IN MIX mixFill,
343 IN FLONG flOptions)
344 {
345 // www.osr.com/ddk/graphics/gdifncs_2xwn.htm
346 UNIMPLEMENTED;
347 return FALSE;
348 }
349
350 BOOL
351 APIENTRY
352 EngStrokePath(
353 IN SURFOBJ *pso,
354 IN PATHOBJ *ppo,
355 IN CLIPOBJ *pco,
356 IN XFORMOBJ *pxo,
357 IN BRUSHOBJ *pbo,
358 IN POINTL *pptlBrushOrg,
359 IN LINEATTRS *plineattrs,
360 IN MIX mix)
361 {
362 // www.osr.com/ddk/graphics/gdifncs_4yaw.htm
363 UNIMPLEMENTED;
364 return FALSE;
365 }
366
367 INT
368 APIENTRY
369 EngWideCharToMultiByte(
370 IN UINT CodePage,
371 IN LPWSTR WideCharString,
372 IN INT BytesInWideCharString,
373 OUT LPSTR MultiByteString,
374 IN INT BytesInMultiByteString)
375 {
376 // www.osr.com/ddk/graphics/gdifncs_35wn.htm
377 UNIMPLEMENTED;
378 return 0;
379 }
380
381 BOOL
382 APIENTRY
383 EngWritePrinter(
384 IN HANDLE hPrinter,
385 IN LPVOID pBuf,
386 IN DWORD cbBuf,
387 OUT LPDWORD pcWritten)
388 {
389 // www.osr.com/ddk/graphics/gdifncs_9v6v.htm
390 UNIMPLEMENTED;
391 return FALSE;
392 }
393
394 /*
395 * @unimplemented
396 */
397 ULONG
398 APIENTRY
399 FONTOBJ_cGetAllGlyphHandles(
400 IN FONTOBJ *FontObj,
401 IN HGLYPH *Glyphs)
402 {
403 UNIMPLEMENTED;
404 return 0;
405 }
406
407 /*
408 * @unimplemented
409 */
410 ULONG
411 APIENTRY
412 FONTOBJ_cGetGlyphs(
413 IN FONTOBJ *FontObj,
414 IN ULONG Mode,
415 IN ULONG NumGlyphs,
416 IN HGLYPH *GlyphHandles,
417 IN PVOID *OutGlyphs)
418 {
419 UNIMPLEMENTED;
420 return 0;
421 }
422
423 /*
424 * @unimplemented
425 */
426 IFIMETRICS*
427 APIENTRY
428 FONTOBJ_pifi(IN FONTOBJ *FontObj)
429 {
430 UNIMPLEMENTED;
431 return NULL;
432 }
433
434 /*
435 * @unimplemented
436 */
437 _Ret_opt_bytecount_(*pcjFile)
438 ENGAPI
439 PVOID
440 APIENTRY
441 FONTOBJ_pvTrueTypeFontFile(
442 _In_ FONTOBJ *pfo,
443 _Out_ ULONG *pcjFile)
444 {
445 UNIMPLEMENTED;
446 return NULL;
447 }
448
449 /*
450 * @unimplemented
451 */
452 XFORMOBJ*
453 APIENTRY
454 FONTOBJ_pxoGetXform(IN FONTOBJ *FontObj)
455 {
456 UNIMPLEMENTED;
457 return NULL;
458 }
459
460 /*
461 * @unimplemented
462 */
463 VOID
464 APIENTRY
465 FONTOBJ_vGetInfo(
466 IN FONTOBJ *FontObj,
467 IN ULONG InfoSize,
468 OUT PFONTINFO FontInfo)
469 {
470 UNIMPLEMENTED;
471 }
472
473 LONG
474 APIENTRY
475 HT_ComputeRGBGammaTable(
476 IN USHORT GammaTableEntries,
477 IN USHORT GammaTableType,
478 IN USHORT RedGamma,
479 IN USHORT GreenGamma,
480 IN USHORT BlueGamma,
481 OUT LPBYTE pGammaTable)
482 {
483 // www.osr.com/ddk/graphics/gdifncs_9dpj.htm
484 UNIMPLEMENTED;
485 return 0;
486 }
487
488 LONG
489 APIENTRY
490 HT_Get8BPPFormatPalette(
491 OUT LPPALETTEENTRY pPaletteEntry,
492 IN USHORT RedGamma,
493 IN USHORT GreenGamma,
494 IN USHORT BlueGamma)
495 {
496 // www.osr.com/ddk/graphics/gdifncs_8kvb.htm
497 UNIMPLEMENTED;
498 return 0;
499 }
500
501 BOOL
502 APIENTRY
503 PATHOBJ_bCloseFigure(IN PATHOBJ *ppo)
504 {
505 // www.osr.com/ddk/graphics/gdifncs_5mhz.htm
506 UNIMPLEMENTED;
507 return FALSE;
508 }
509
510 BOOL
511 APIENTRY
512 PATHOBJ_bEnum(
513 IN PATHOBJ *ppo,
514 OUT PATHDATA *ppd)
515 {
516 // www.osr.com/ddk/graphics/gdifncs_98o7.htm
517 UNIMPLEMENTED;
518 return FALSE;
519 }
520
521 BOOL
522 APIENTRY
523 PATHOBJ_bEnumClipLines(
524 IN PATHOBJ *ppo,
525 IN ULONG cb,
526 OUT CLIPLINE *pcl)
527 {
528 // www.osr.com/ddk/graphics/gdifncs_4147.htm
529 UNIMPLEMENTED;
530 return FALSE;
531 }
532
533 BOOL
534 APIENTRY
535 PATHOBJ_bMoveTo(
536 IN PATHOBJ *ppo,
537 IN POINTFIX ptfx)
538 {
539 // www.osr.com/ddk/graphics/gdifncs_70vb.htm
540 UNIMPLEMENTED;
541 return FALSE;
542 }
543
544 BOOL
545 APIENTRY
546 PATHOBJ_bPolyBezierTo(
547 IN PATHOBJ *ppo,
548 IN POINTFIX *pptfx,
549 IN ULONG cptfx)
550 {
551 // www.osr.com/ddk/graphics/gdifncs_2c9z.htm
552 UNIMPLEMENTED;
553 return FALSE;
554 }
555
556 BOOL
557 APIENTRY
558 PATHOBJ_bPolyLineTo(
559 IN PATHOBJ *ppo,
560 IN POINTFIX *pptfx,
561 IN ULONG cptfx)
562 {
563 // www.osr.com/ddk/graphics/gdifncs_0x47.htm
564 UNIMPLEMENTED;
565 return FALSE;
566 }
567
568 VOID
569 APIENTRY
570 PATHOBJ_vEnumStart(IN PATHOBJ *ppo)
571 {
572 // www.osr.com/ddk/graphics/gdifncs_74br.htm
573 UNIMPLEMENTED;
574 }
575
576 VOID
577 APIENTRY
578 PATHOBJ_vEnumStartClipLines(
579 IN PATHOBJ *ppo,
580 IN CLIPOBJ *pco,
581 IN SURFOBJ *pso,
582 IN LINEATTRS *pla)
583 {
584 // www.osr.com/ddk/graphics/gdifncs_5grr.htm
585 UNIMPLEMENTED;
586 }
587
588 VOID
589 APIENTRY
590 PATHOBJ_vGetBounds(
591 IN PATHOBJ *ppo,
592 OUT PRECTFX prectfx)
593 {
594 // www.osr.com/ddk/graphics/gdifncs_8qp3.htm
595 UNIMPLEMENTED;
596 }
597
598 /*
599 * @unimplemented
600 */
601 ULONG
602 APIENTRY
603 EngDitherColor(
604 IN HDEV hdev,
605 IN ULONG iMode,
606 IN ULONG rgb,
607 OUT ULONG *pul)
608 {
609 *pul = 0;
610 return DCR_SOLID;
611 }
612
613 /*
614 * @unimplemented
615 */
616 HANDLE
617 APIENTRY
618 BRUSHOBJ_hGetColorTransform(
619 IN BRUSHOBJ *Brush)
620 {
621 UNIMPLEMENTED;
622 return NULL;
623 }
624
625 /*
626 * @unimplemented
627 */
628 BOOL
629 APIENTRY
630 EngDeleteFile(
631 IN LPWSTR FileName)
632 {
633 UNIMPLEMENTED;
634 return FALSE;
635 }
636
637 /*
638 * @unimplemented
639 */
640 BOOL
641 APIENTRY
642 EngGetPrinterDriver(
643 IN HANDLE Printer,
644 IN LPWSTR Environment,
645 IN DWORD Level,
646 OUT BYTE *DrvInfo,
647 IN DWORD Buf,
648 OUT DWORD *Needed)
649 {
650 UNIMPLEMENTED;
651 return FALSE;
652 }
653
654 /*
655 * @unimplemented
656 */
657 ULONG
658 APIENTRY
659 EngHangNotification(
660 IN HDEV Dev,
661 IN PVOID Reserved)
662 {
663 UNIMPLEMENTED;
664 return EHN_ERROR;
665 }
666
667 /*
668 * @unimplemented
669 */
670 BOOL
671 APIENTRY
672 EngLpkInstalled(VOID)
673 {
674 UNIMPLEMENTED;
675 return FALSE;
676 }
677
678 /*
679 * @unimplemented
680 */
681 BOOL
682 APIENTRY
683 EngPlgBlt(
684 IN SURFOBJ *Dest,
685 IN SURFOBJ *Source,
686 IN SURFOBJ *Mask,
687 IN CLIPOBJ *Clip,
688 IN XLATEOBJ *Xlate,
689 IN COLORADJUSTMENT *ColorAdjustment,
690 IN POINTL *BrusOrigin,
691 IN POINTFIX *DestPoints,
692 IN RECTL *SourceRect,
693 IN POINTL *MaskPoint,
694 IN ULONG Mode)
695 {
696 UNIMPLEMENTED;
697 return FALSE;
698 }
699
700 /*
701 * @unimplemented
702 */
703 BOOL
704 APIENTRY
705 EngQueryDeviceAttribute(
706 IN HDEV Device,
707 IN ENG_DEVICE_ATTRIBUTE Attribute,
708 IN VOID *In,
709 IN ULONG InSize,
710 OUT VOID *Out,
711 OUT ULONG OutSize)
712 {
713 UNIMPLEMENTED;
714 return FALSE;
715 }
716
717 /*
718 * @unimplemented
719 */
720 LARGE_INTEGER
721 APIENTRY
722 EngQueryFileTimeStamp(IN LPWSTR FileName)
723 {
724 LARGE_INTEGER FileTime;
725 FileTime.QuadPart = 0;
726 UNIMPLEMENTED;
727 return FileTime;
728 }
729
730 /*
731 * @unimplemented
732 */
733 FD_GLYPHSET *
734 APIENTRY
735 FONTOBJ_pfdg(
736 IN FONTOBJ *FontObj)
737 {
738 UNIMPLEMENTED;
739 return NULL;
740 }
741
742 /*
743 * @unimplemented
744 */
745 _Ret_opt_bytecount_(*pcjTable)
746 ENGAPI
747 PBYTE
748 APIENTRY
749 FONTOBJ_pjOpenTypeTablePointer(
750 _In_ FONTOBJ *pfo,
751 _In_ ULONG ulTag,
752 _Out_ ULONG *pcjTable)
753 {
754 UNIMPLEMENTED;
755 return NULL;
756 }
757
758 /*
759 * @unimplemented
760 */
761 PFD_GLYPHATTR
762 APIENTRY
763 FONTOBJ_pQueryGlyphAttrs(
764 IN FONTOBJ *FontObj,
765 IN ULONG Mode)
766 {
767 UNIMPLEMENTED;
768 return NULL;
769 }
770
771 /*
772 * @unimplemented
773 */
774 LPWSTR
775 APIENTRY
776 FONTOBJ_pwszFontFilePaths(
777 IN FONTOBJ *FontObj,
778 OUT ULONG *PathLength)
779 {
780 UNIMPLEMENTED;
781 return NULL;
782 }
783
784 /*
785 * @unimplemented
786 */
787 LONG
788 APIENTRY
789 HT_Get8BPPMaskPalette(
790 IN OUT LPPALETTEENTRY PaletteEntry,
791 IN BOOL Use8BPPMaskPal,
792 IN BYTE CMYMask,
793 IN USHORT RedGamma,
794 IN USHORT GreenGamma,
795 IN USHORT BlueGamma)
796 {
797 UNIMPLEMENTED;
798 return 0;
799 }
800
801 /*
802 * @unimplemented
803 */
804 BOOL
805 APIENTRY
806 NtGdiAnyLinkedFonts(VOID)
807 {
808 UNIMPLEMENTED;
809 return FALSE;
810 }
811
812 /*
813 * @unimplemented
814 */
815 BOOL
816 APIENTRY
817 NtGdiEnableEudc(BOOL enable)
818 {
819 UNIMPLEMENTED;
820 return FALSE;
821 }
822
823 /*
824 * @unimplemented
825 */
826 BOOL
827 APIENTRY
828 NtGdiAddRemoteFontToDC(
829 IN HDC hdc,
830 IN PVOID pvBuffer,
831 IN ULONG cjBuffer,
832 IN OPTIONAL PUNIVERSAL_FONT_ID pufi)
833 {
834 UNIMPLEMENTED;
835 return 0;
836 }
837
838 /*
839 * @unimplemented
840 */
841 BOOL
842 APIENTRY
843 NtGdiRemoveMergeFont(
844 IN HDC hdc,
845 IN UNIVERSAL_FONT_ID *pufi)
846 {
847 UNIMPLEMENTED;
848 return FALSE;
849 }
850
851 /*
852 * @unimplemented
853 */
854 BOOL
855 APIENTRY
856 NtGdiAddRemoteMMInstanceToDC(
857 IN HDC hdc,
858 IN DOWNLOADDESIGNVECTOR *pddv,
859 IN ULONG cjDDV)
860 {
861 UNIMPLEMENTED;
862 return FALSE;
863 }
864
865 /*
866 * @unimplemented
867 */
868 BOOL
869 APIENTRY
870 NtGdiFontIsLinked(IN HDC hdc)
871 {
872 UNIMPLEMENTED;
873 return FALSE;
874 }
875
876 /*
877 * @unimplemented
878 */
879 BOOL
880 APIENTRY
881 NtGdiCheckBitmapBits(
882 IN HDC hdc,
883 IN HANDLE hColorTransform,
884 IN PVOID pvBits,
885 IN ULONG bmFormat,
886 IN DWORD dwWidth,
887 IN DWORD dwHeight,
888 IN DWORD dwStride,
889 OUT PBYTE paResults)
890 {
891 UNIMPLEMENTED;
892 return FALSE;
893 }
894
895 /*
896 * @unimplemented
897 */
898 HBITMAP
899 APIENTRY
900 NtGdiClearBitmapAttributes(
901 IN HBITMAP hbm,
902 IN DWORD dwFlags)
903 {
904 UNIMPLEMENTED;
905 return NULL;
906 }
907
908 /*
909 * @unimplemented
910 */
911 BOOL
912 APIENTRY
913 NtGdiGetUFI(
914 IN HDC hdc,
915 OUT PUNIVERSAL_FONT_ID pufi,
916 OUT OPTIONAL DESIGNVECTOR *pdv,
917 OUT ULONG *pcjDV,
918 OUT ULONG *pulBaseCheckSum,
919 OUT FLONG *pfl)
920 {
921 UNIMPLEMENTED;
922 return FALSE;
923 }
924
925
926 /*
927 * @unimplemented
928 */
929 ULONG
930 APIENTRY
931 NtGdiColorCorrectPalette(
932 IN HDC hdc,
933 IN HPALETTE hpal,
934 IN ULONG FirstEntry,
935 IN ULONG NumberOfEntries,
936 IN OUT PALETTEENTRY *ppalEntry,
937 IN ULONG Command)
938 {
939 UNIMPLEMENTED;
940 return 0;
941 }
942
943 /*
944 * @unimplemented
945 */
946 HANDLE
947 APIENTRY
948 NtGdiCreateColorTransform(
949 IN HDC hdc,
950 IN LPLOGCOLORSPACEW pLogColorSpaceW,
951 IN OPTIONAL PVOID pvSrcProfile,
952 IN ULONG cjSrcProfile,
953 IN OPTIONAL PVOID pvDestProfile,
954 IN ULONG cjDestProfile,
955 IN OPTIONAL PVOID pvTargetProfile,
956 IN ULONG cjTargetProfile)
957 {
958 UNIMPLEMENTED;
959 return NULL;
960 }
961
962 /*
963 * @unimplemented
964 */
965 BOOL
966 APIENTRY
967 NtGdiComputeXformCoefficients(IN HDC hdc)
968 {
969 UNIMPLEMENTED;
970 return FALSE;
971 }
972
973 /*
974 * @unimplemented
975 */
976 BOOL
977 APIENTRY
978 NtGdiConsoleTextOut(
979 IN HDC hdc,
980 IN POLYTEXTW *lpto,
981 IN UINT nStrings,
982 IN RECTL *prclBounds)
983 {
984 UNIMPLEMENTED;
985 return FALSE;
986 }
987
988 /*
989 * @unimplemented
990 */
991 BOOL
992 APIENTRY
993 NtGdiDeleteColorTransform(
994 IN HDC hdc,
995 IN HANDLE hColorTransform)
996 {
997 UNIMPLEMENTED;
998 return FALSE;
999 }
1000
1001 /*
1002 * @unimplemented
1003 */
1004 ULONG
1005 APIENTRY
1006 NtGdiGetPerBandInfo(
1007 IN HDC hdc,
1008 IN OUT PERBANDINFO *ppbi)
1009 {
1010 UNIMPLEMENTED;
1011 return 0;
1012 }
1013
1014 /*
1015 * @unimplemented
1016 */
1017 BOOL
1018 APIENTRY
1019 NtGdiDoBanding(
1020 IN HDC hdc,
1021 IN BOOL bStart,
1022 OUT POINTL *pptl,
1023 OUT PSIZE pSize)
1024 {
1025 UNIMPLEMENTED;
1026 return FALSE;
1027 }
1028
1029 /*
1030 * @unimplemented
1031 */
1032 BOOL
1033 APIENTRY
1034 NtGdiEnumFontChunk(
1035 IN HDC hdc,
1036 IN ULONG_PTR idEnum,
1037 IN ULONG cjEfdw,
1038 OUT ULONG *pcjEfdw,
1039 OUT PENUMFONTDATAW pefdw)
1040 {
1041 UNIMPLEMENTED;
1042 return FALSE;
1043 }
1044
1045 /*
1046 * @unimplemented
1047 */
1048 BOOL
1049 APIENTRY
1050 NtGdiEnumFontClose(
1051 IN ULONG_PTR idEnum)
1052 {
1053 UNIMPLEMENTED;
1054 return FALSE;
1055 }
1056
1057 /*
1058 * @unimplemented
1059 */
1060 ULONG_PTR
1061 APIENTRY
1062 NtGdiEnumFontOpen(
1063 IN HDC hdc,
1064 IN ULONG iEnumType,
1065 IN FLONG flWin31Compat,
1066 IN ULONG cwchMax,
1067 IN OPTIONAL LPWSTR pwszFaceName,
1068 IN ULONG lfCharSet,
1069 OUT ULONG *pulCount)
1070 {
1071 UNIMPLEMENTED;
1072 return 0;
1073 }
1074
1075 /*
1076 * @unimplemented
1077 */
1078 BOOL
1079 APIENTRY
1080 NtGdiEudcLoadUnloadLink(
1081 IN OPTIONAL LPCWSTR pBaseFaceName,
1082 IN UINT cwcBaseFaceName,
1083 IN LPCWSTR pEudcFontPath,
1084 IN UINT cwcEudcFontPath,
1085 IN INT iPriority,
1086 IN INT iFontLinkType,
1087 IN BOOL bLoadLin)
1088 {
1089 UNIMPLEMENTED;
1090 return FALSE;
1091 }
1092
1093 /*
1094 * @unimplemented
1095 */
1096 BOOL
1097 APIENTRY
1098 NtGdiForceUFIMapping(
1099 IN HDC hdc,
1100 IN PUNIVERSAL_FONT_ID pufi)
1101 {
1102 UNIMPLEMENTED;
1103 return FALSE;
1104 }
1105
1106 /*
1107 * @unimplemented
1108 */
1109 NTSTATUS
1110 APIENTRY
1111 NtGdiFullscreenControl(
1112 IN FULLSCREENCONTROL FullscreenCommand,
1113 IN PVOID FullscreenInput,
1114 IN DWORD FullscreenInputLength,
1115 OUT PVOID FullscreenOutput,
1116 IN OUT PULONG FullscreenOutputLength)
1117 {
1118 UNIMPLEMENTED;
1119 return FALSE;
1120 }
1121
1122 /*
1123 * @unimplemented
1124 */
1125 BOOL
1126 APIENTRY
1127 NtGdiGetCharWidthInfo(
1128 IN HDC hdc,
1129 OUT PCHWIDTHINFO pChWidthInfo)
1130 {
1131 UNIMPLEMENTED;
1132 return FALSE;
1133 }
1134
1135 /*
1136 * @unimplemented
1137 */
1138 ULONG_PTR
1139 APIENTRY
1140 NtGdiGetColorSpaceforBitmap(
1141 IN HBITMAP hsurf)
1142 {
1143 UNIMPLEMENTED;
1144 return 0;
1145 }
1146
1147 /*
1148 * @unimplemented
1149 */
1150 BOOL
1151 APIENTRY
1152 NtGdiGetETM(
1153 IN HDC hdc,
1154 OUT EXTTEXTMETRIC *petm)
1155 {
1156 UNIMPLEMENTED;
1157 return FALSE;
1158 }
1159
1160 /*
1161 * @unimplemented
1162 */
1163 ULONG
1164 APIENTRY
1165 NtGdiGetEudcTimeStampEx(
1166 IN OPTIONAL LPWSTR lpBaseFaceName,
1167 IN ULONG cwcBaseFaceName,
1168 IN BOOL bSystemTimeStamp)
1169 {
1170 UNIMPLEMENTED;
1171 return 0;
1172 }
1173
1174 /*
1175 * @unimplemented
1176 */
1177 BOOL
1178 APIENTRY
1179 NtGdiInitSpool(VOID)
1180 {
1181 UNIMPLEMENTED;
1182 return FALSE;
1183 }
1184
1185 /*
1186 * @unimplemented
1187 */
1188 INT
1189 APIENTRY
1190 NtGdiQueryFonts(
1191 OUT PUNIVERSAL_FONT_ID pufiFontList,
1192 IN ULONG nBufferSize,
1193 OUT PLARGE_INTEGER pTimeStamp)
1194 {
1195 UNIMPLEMENTED;
1196 return 0;
1197 }
1198
1199 /*
1200 * @unimplemented
1201 */
1202 INT
1203 APIENTRY
1204 NtGdiGetSpoolMessage(
1205 DWORD u1,
1206 DWORD u2,
1207 DWORD u3,
1208 DWORD u4)
1209 {
1210 /* FIXME: The prototypes */
1211 UNIMPLEMENTED;
1212 return 0;
1213 }
1214
1215 /*
1216 * @unimplemented
1217 */
1218 DWORD
1219 APIENTRY
1220 NtGdiGetGlyphIndicesWInternal(
1221 IN HDC hdc,
1222 IN OPTIONAL LPWSTR pwc,
1223 IN INT cwc,
1224 OUT OPTIONAL LPWORD pgi,
1225 IN DWORD iMode,
1226 IN BOOL bSubset)
1227 {
1228 UNIMPLEMENTED;
1229 return 0;
1230 }
1231
1232 /*
1233 * @unimplemented
1234 */
1235 INT
1236 APIENTRY
1237 NtGdiGetLinkedUFIs(
1238 IN HDC hdc,
1239 OUT OPTIONAL PUNIVERSAL_FONT_ID pufiLinkedUFIs,
1240 IN INT BufferSize)
1241 {
1242 UNIMPLEMENTED;
1243 return 0;
1244 }
1245
1246 /*
1247 * @unimplemented
1248 */
1249 BOOL
1250 APIENTRY
1251 NtGdiGetMonitorID(
1252 IN HDC hdc,
1253 IN DWORD dwSize,
1254 OUT LPWSTR pszMonitorID)
1255 {
1256 UNIMPLEMENTED;
1257 return FALSE;
1258 }
1259
1260 /*
1261 * @unimplemented
1262 */
1263 BOOL
1264 APIENTRY
1265 NtGdiDrawStream(
1266 IN HDC hdcDst,
1267 IN ULONG cjIn,
1268 IN VOID *pvIn)
1269 {
1270 UNIMPLEMENTED;
1271 return FALSE;
1272 }
1273
1274 /*
1275 * @unimplemented
1276 */
1277 BOOL
1278 APIENTRY
1279 NtGdiUpdateTransform(IN HDC hdc)
1280 {
1281 UNIMPLEMENTED;
1282 return FALSE;
1283 }
1284
1285 /*
1286 * @unimplemented
1287 */
1288 ULONG
1289 APIENTRY
1290 NtGdiQueryFontAssocInfo(
1291 IN HDC hdc)
1292 {
1293 UNIMPLEMENTED;
1294 return 0;
1295 }
1296
1297 /*
1298 * @unimplemented
1299 */
1300 UINT
1301 APIENTRY
1302 NtGdiGetStringBitmapW(
1303 IN HDC hdc,
1304 IN LPWSTR pwsz,
1305 IN UINT cwc,
1306 OUT BYTE *lpSB,
1307 IN UINT cj)
1308 {
1309 UNIMPLEMENTED;
1310 return 0;
1311 }
1312
1313 /*
1314 * @unimplemented
1315 */
1316 BOOL
1317 APIENTRY
1318 NtGdiRemoveFontResourceW(
1319 IN WCHAR *pwszFiles,
1320 IN ULONG cwc,
1321 IN ULONG cFiles,
1322 IN ULONG fl,
1323 IN DWORD dwPidTid,
1324 IN OPTIONAL DESIGNVECTOR *pdv)
1325 {
1326 UNIMPLEMENTED;
1327 return FALSE;
1328 }
1329
1330 /*
1331 * @unimplemented
1332 */
1333 BOOL
1334 APIENTRY
1335 NtGdiPolyTextOutW(
1336 IN HDC hdc,
1337 IN POLYTEXTW *pptw,
1338 IN UINT cStr,
1339 IN DWORD dwCodePage)
1340 {
1341 UNIMPLEMENTED;
1342 return FALSE;
1343 }
1344
1345 /*
1346 * @unimplemented
1347 */
1348 NTSTATUS
1349 APIENTRY
1350 NtGdiGetStats(
1351 IN HANDLE hProcess,
1352 IN INT iIndex,
1353 IN INT iPidType,
1354 OUT PVOID pResults,
1355 IN UINT cjResultSize)
1356 {
1357 UNIMPLEMENTED;
1358 return STATUS_NOT_IMPLEMENTED;
1359 }
1360
1361 /*
1362 * @unimplemented
1363 */
1364 INT
1365 APIENTRY
1366 NtGdiSetupPublicCFONT(
1367 IN HDC hdc,
1368 IN OPTIONAL HFONT hf,
1369 IN ULONG ulAve)
1370 {
1371 UNIMPLEMENTED;
1372 return 0;
1373 }
1374
1375 /*
1376 * @unimplemented
1377 */
1378 BOOL
1379 APIENTRY
1380 NtGdiGetEmbUFI(
1381 IN HDC hdc,
1382 OUT PUNIVERSAL_FONT_ID pufi,
1383 OUT OPTIONAL DESIGNVECTOR *pdv,
1384 OUT ULONG *pcjDV,
1385 OUT ULONG *pulBaseCheckSum,
1386 OUT FLONG *pfl,
1387 OUT KERNEL_PVOID *embFontID)
1388 {
1389 UNIMPLEMENTED;
1390 return FALSE;
1391 }
1392
1393 /*
1394 * @unimplemented
1395 */
1396 BOOL
1397 APIENTRY
1398 NtGdiGetUFIPathname(
1399 IN PUNIVERSAL_FONT_ID pufi,
1400 OUT OPTIONAL ULONG* pcwc,
1401 OUT OPTIONAL LPWSTR pwszPathname,
1402 OUT OPTIONAL ULONG* pcNumFiles,
1403 IN FLONG fl,
1404 OUT OPTIONAL BOOL *pbMemFont,
1405 OUT OPTIONAL ULONG *pcjView,
1406 OUT OPTIONAL PVOID pvView,
1407 OUT OPTIONAL BOOL *pbTTC,
1408 OUT OPTIONAL ULONG *piTTC)
1409 {
1410 UNIMPLEMENTED;
1411 return FALSE;
1412 }
1413
1414 /*
1415 * @unimplemented
1416 */
1417 ULONG
1418 APIENTRY
1419 NtGdiGetEmbedFonts(
1420 VOID)
1421 {
1422 UNIMPLEMENTED;
1423 return 0;
1424 }
1425
1426 /*
1427 * @unimplemented
1428 */
1429 BOOL
1430 APIENTRY
1431 NtGdiChangeGhostFont(
1432 IN KERNEL_PVOID *pfontID,
1433 IN BOOL bLoad)
1434 {
1435 UNIMPLEMENTED;
1436 return FALSE;
1437 }
1438
1439 /*
1440 * @unimplemented
1441 */
1442 BOOL
1443 APIENTRY
1444 NtGdiAddEmbFontToDC(
1445 IN HDC hdc,
1446 IN VOID **pFontID)
1447 {
1448 UNIMPLEMENTED;
1449 return FALSE;
1450 }
1451
1452 /*
1453 * @unimplemented
1454 */
1455 BOOL
1456 APIENTRY
1457 NtGdiGetWidthTable(
1458 IN HDC hdc,
1459 IN ULONG cSpecial,
1460 IN WCHAR *pwc,
1461 IN ULONG cwc,
1462 OUT USHORT *psWidth,
1463 OUT OPTIONAL WIDTHDATA *pwd,
1464 OUT FLONG *pflInfo)
1465 {
1466 UNIMPLEMENTED;
1467 return FALSE;
1468 }
1469
1470 /*
1471 * @unimplemented
1472 */
1473 BOOL
1474 APIENTRY
1475 NtGdiIcmBrushInfo(
1476 IN HDC hdc,
1477 IN HBRUSH hbrush,
1478 IN OUT PBITMAPINFO pbmiDIB,
1479 IN OUT PVOID pvBits,
1480 IN OUT ULONG *pulBits,
1481 OUT OPTIONAL DWORD *piUsage,
1482 OUT OPTIONAL BOOL *pbAlreadyTran,
1483 IN ULONG Command)
1484 {
1485 UNIMPLEMENTED;
1486 return FALSE;
1487 }
1488
1489 /*
1490 * @unimplemented
1491 */
1492 ULONG
1493 APIENTRY
1494 NtGdiMakeFontDir(
1495 IN FLONG flEmbed,
1496 OUT PBYTE pjFontDir,
1497 IN unsigned cjFontDir,
1498 IN LPWSTR pwszPathname,
1499 IN unsigned cjPathname)
1500 {
1501 UNIMPLEMENTED;
1502 return 0;
1503 }
1504
1505 /*
1506 * @unimplemented
1507 */
1508 BOOL
1509 APIENTRY
1510 NtGdiMonoBitmap(
1511 IN HBITMAP hbm)
1512 {
1513 UNIMPLEMENTED;
1514 return FALSE;
1515 }
1516
1517 /*
1518 * @unimplemented
1519 */
1520 HBITMAP
1521 APIENTRY
1522 NtGdiSetBitmapAttributes(
1523 IN HBITMAP hbm,
1524 IN DWORD dwFlags)
1525 {
1526 UNIMPLEMENTED;
1527 return NULL;
1528 }
1529
1530 /*
1531 * @unimplemented
1532 */
1533 ULONG
1534 APIENTRY
1535 NtGdiSetFontEnumeration(
1536 IN ULONG ulType)
1537 {
1538 UNIMPLEMENTED;
1539 return 0;
1540 }
1541
1542 /*
1543 * @unimplemented
1544 */
1545 BOOL
1546 APIENTRY
1547 NtGdiSetFontXform(
1548 IN HDC hdc,
1549 IN DWORD dwxScale,
1550 IN DWORD dwyScale)
1551 {
1552 UNIMPLEMENTED;
1553 return FALSE;
1554 }
1555
1556 /*
1557 * @unimplemented
1558 */
1559 BOOL
1560 APIENTRY
1561 NtGdiSetLinkedUFIs(
1562 IN HDC hdc,
1563 IN PUNIVERSAL_FONT_ID pufiLinks,
1564 IN ULONG uNumUFIs)
1565 {
1566 UNIMPLEMENTED;
1567 return FALSE;
1568 }
1569
1570 /*
1571 * @unimplemented
1572 */
1573 BOOL
1574 APIENTRY
1575 NtGdiSetMagicColors(
1576 IN HDC hdc,
1577 IN PALETTEENTRY peMagic,
1578 IN ULONG Index)
1579 {
1580 UNIMPLEMENTED;
1581 return FALSE;
1582 }
1583
1584 /*
1585 * @unimplemented
1586 */
1587 BOOL
1588 APIENTRY
1589 NtGdiUnloadPrinterDriver(
1590 IN LPWSTR pDriverName,
1591 IN ULONG cbDriverName)
1592 {
1593 UNIMPLEMENTED;
1594 return FALSE;
1595 }
1596
1597 /*
1598 * @implemented
1599 */
1600 BOOL
1601 APIENTRY
1602 NtGdiUnmapMemFont(
1603 IN PVOID pvView)
1604 {
1605 return TRUE;
1606 }
1607
1608 BOOL
1609 APIENTRY
1610 EngControlSprites(
1611 IN WNDOBJ *pwo,
1612 IN FLONG fl)
1613 {
1614 UNIMPLEMENTED;
1615 return FALSE;
1616 }
1617
1618 _Must_inspect_result_
1619 _Ret_opt_bytecap_(cjSize)
1620 ENGAPI
1621 PVOID
1622 APIENTRY
1623 EngFntCacheAlloc(
1624 _In_ ULONG ulFastCheckSum,
1625 _In_ ULONG cjSize)
1626 {
1627 UNIMPLEMENTED;
1628 return NULL;
1629 }
1630
1631 VOID
1632 APIENTRY
1633 EngFntCacheFault(
1634 IN ULONG ulFastCheckSum,
1635 IN ULONG iFaultMode)
1636 {
1637 UNIMPLEMENTED;
1638 }
1639
1640 PVOID
1641 APIENTRY
1642 EngFntCacheLookUp(
1643 IN ULONG FastCheckSum,
1644 OUT PULONG pulSize)
1645 {
1646 UNIMPLEMENTED;
1647 return NULL;
1648 }
1649
1650 BOOLEAN
1651 APIENTRY
1652 EngNineGrid(
1653 IN SURFOBJ* pDestSurfaceObj,
1654 IN SURFOBJ* pSourceSurfaceObj,
1655 IN CLIPOBJ* pClipObj,
1656 IN XLATEOBJ* pXlateObj,
1657 IN RECTL* prclSource,
1658 IN RECTL* prclDest,
1659 PVOID pvUnknown1,
1660 PVOID pvUnknown2,
1661 DWORD dwReserved)
1662 {
1663 UNIMPLEMENTED;
1664 return FALSE;
1665 }
1666
1667 /* EOF */