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