- Move some functions from stubs.c to new file eng/mapping.c
[reactos.git] / reactos / 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
332 DWORD
333 APIENTRY
334 EngSetPrinterData(
335 IN HANDLE hPrinter,
336 IN LPWSTR pType,
337 IN DWORD dwType,
338 IN LPBYTE lpbPrinterData,
339 IN DWORD cjPrinterData
340 )
341 {
342 // www.osr.com/ddk/graphics/gdifncs_8drb.htm
343 UNIMPLEMENTED;
344 return 0;
345 }
346
347 BOOL
348 APIENTRY
349 EngStrokeAndFillPath(
350 IN SURFOBJ *pso,
351 IN PATHOBJ *ppo,
352 IN CLIPOBJ *pco,
353 IN XFORMOBJ *pxo,
354 IN BRUSHOBJ *pboStroke,
355 IN LINEATTRS *plineattrs,
356 IN BRUSHOBJ *pboFill,
357 IN POINTL *pptlBrushOrg,
358 IN MIX mixFill,
359 IN FLONG flOptions
360 )
361 {
362 // www.osr.com/ddk/graphics/gdifncs_2xwn.htm
363 UNIMPLEMENTED;
364 return FALSE;
365 }
366
367 BOOL
368 APIENTRY
369 EngStrokePath(
370 IN SURFOBJ *pso,
371 IN PATHOBJ *ppo,
372 IN CLIPOBJ *pco,
373 IN XFORMOBJ *pxo,
374 IN BRUSHOBJ *pbo,
375 IN POINTL *pptlBrushOrg,
376 IN LINEATTRS *plineattrs,
377 IN MIX mix
378 )
379 {
380 // www.osr.com/ddk/graphics/gdifncs_4yaw.htm
381 UNIMPLEMENTED;
382 return FALSE;
383 }
384
385
386 INT
387 APIENTRY
388 EngWideCharToMultiByte(
389 IN UINT CodePage,
390 IN LPWSTR WideCharString,
391 IN INT BytesInWideCharString,
392 OUT LPSTR MultiByteString,
393 IN INT BytesInMultiByteString
394 )
395 {
396 // www.osr.com/ddk/graphics/gdifncs_35wn.htm
397 UNIMPLEMENTED;
398 return 0;
399 }
400
401 BOOL
402 APIENTRY
403 EngWritePrinter (
404 IN HANDLE hPrinter,
405 IN LPVOID pBuf,
406 IN DWORD cbBuf,
407 OUT LPDWORD pcWritten
408 )
409 {
410 // www.osr.com/ddk/graphics/gdifncs_9v6v.htm
411 UNIMPLEMENTED;
412 return FALSE;
413 }
414
415 /*
416 * @unimplemented
417 */
418 ULONG
419 APIENTRY
420 FONTOBJ_cGetAllGlyphHandles (
421 IN FONTOBJ *FontObj,
422 IN HGLYPH *Glyphs
423 )
424 {
425 UNIMPLEMENTED;
426 return 0;
427 }
428
429 /*
430 * @unimplemented
431 */
432 ULONG
433 APIENTRY
434 FONTOBJ_cGetGlyphs(
435 IN FONTOBJ *FontObj,
436 IN ULONG Mode,
437 IN ULONG NumGlyphs,
438 IN HGLYPH *GlyphHandles,
439 IN PVOID *OutGlyphs
440 )
441 {
442 UNIMPLEMENTED;
443 return 0;
444 }
445
446 /*
447 * @unimplemented
448 */
449 IFIMETRICS*
450 APIENTRY
451 FONTOBJ_pifi ( IN FONTOBJ *FontObj )
452 {
453 UNIMPLEMENTED;
454 return NULL;
455 }
456
457 /*
458 * @unimplemented
459 */
460 PVOID
461 APIENTRY
462 FONTOBJ_pvTrueTypeFontFile (
463 IN FONTOBJ *FontObj,
464 IN ULONG *FileSize)
465 {
466 UNIMPLEMENTED;
467 return NULL;
468 }
469
470 /*
471 * @unimplemented
472 */
473 XFORMOBJ*
474 APIENTRY
475 FONTOBJ_pxoGetXform ( IN FONTOBJ *FontObj )
476 {
477 UNIMPLEMENTED;
478 return NULL;
479 }
480
481 /*
482 * @unimplemented
483 */
484 VOID
485 APIENTRY
486 FONTOBJ_vGetInfo (
487 IN FONTOBJ *FontObj,
488 IN ULONG InfoSize,
489 OUT PFONTINFO FontInfo)
490 {
491 UNIMPLEMENTED;
492 }
493
494 LONG
495 APIENTRY
496 HT_ComputeRGBGammaTable(
497 IN USHORT GammaTableEntries,
498 IN USHORT GammaTableType,
499 IN USHORT RedGamma,
500 IN USHORT GreenGamma,
501 IN USHORT BlueGamma,
502 OUT LPBYTE pGammaTable
503 )
504 {
505 // www.osr.com/ddk/graphics/gdifncs_9dpj.htm
506 UNIMPLEMENTED;
507 return 0;
508 }
509
510 LONG
511 APIENTRY
512 HT_Get8BPPFormatPalette(
513 OUT LPPALETTEENTRY pPaletteEntry,
514 IN USHORT RedGamma,
515 IN USHORT GreenGamma,
516 IN USHORT BlueGamma
517 )
518 {
519 // www.osr.com/ddk/graphics/gdifncs_8kvb.htm
520 UNIMPLEMENTED;
521 return 0;
522 }
523
524 BOOL
525 APIENTRY
526 PATHOBJ_bCloseFigure ( IN PATHOBJ *ppo )
527 {
528 // www.osr.com/ddk/graphics/gdifncs_5mhz.htm
529 UNIMPLEMENTED;
530 return FALSE;
531 }
532
533 BOOL
534 APIENTRY
535 PATHOBJ_bEnum (
536 IN PATHOBJ *ppo,
537 OUT PATHDATA *ppd
538 )
539 {
540 // www.osr.com/ddk/graphics/gdifncs_98o7.htm
541 UNIMPLEMENTED;
542 return FALSE;
543 }
544
545 BOOL
546 APIENTRY
547 PATHOBJ_bEnumClipLines(
548 IN PATHOBJ *ppo,
549 IN ULONG cb,
550 OUT CLIPLINE *pcl
551 )
552 {
553 // www.osr.com/ddk/graphics/gdifncs_4147.htm
554 UNIMPLEMENTED;
555 return FALSE;
556 }
557
558 BOOL
559 APIENTRY
560 PATHOBJ_bMoveTo(
561 IN PATHOBJ *ppo,
562 IN POINTFIX ptfx
563 )
564 {
565 // www.osr.com/ddk/graphics/gdifncs_70vb.htm
566 UNIMPLEMENTED;
567 return FALSE;
568 }
569
570 BOOL
571 APIENTRY
572 PATHOBJ_bPolyBezierTo(
573 IN PATHOBJ *ppo,
574 IN POINTFIX *pptfx,
575 IN ULONG cptfx
576 )
577 {
578 // www.osr.com/ddk/graphics/gdifncs_2c9z.htm
579 UNIMPLEMENTED;
580 return FALSE;
581 }
582
583 BOOL
584 APIENTRY
585 PATHOBJ_bPolyLineTo(
586 IN PATHOBJ *ppo,
587 IN POINTFIX *pptfx,
588 IN ULONG cptfx
589 )
590 {
591 // www.osr.com/ddk/graphics/gdifncs_0x47.htm
592 UNIMPLEMENTED;
593 return FALSE;
594 }
595
596 VOID
597 APIENTRY
598 PATHOBJ_vEnumStart ( IN PATHOBJ *ppo )
599 {
600 // www.osr.com/ddk/graphics/gdifncs_74br.htm
601 UNIMPLEMENTED;
602 }
603
604 VOID
605 APIENTRY
606 PATHOBJ_vEnumStartClipLines(
607 IN PATHOBJ *ppo,
608 IN CLIPOBJ *pco,
609 IN SURFOBJ *pso,
610 IN LINEATTRS *pla
611 )
612 {
613 // www.osr.com/ddk/graphics/gdifncs_5grr.htm
614 UNIMPLEMENTED;
615 }
616
617 VOID
618 APIENTRY
619 PATHOBJ_vGetBounds(
620 IN PATHOBJ *ppo,
621 OUT PRECTFX prectfx
622 )
623 {
624 // www.osr.com/ddk/graphics/gdifncs_8qp3.htm
625 UNIMPLEMENTED;
626 }
627
628 /*
629 * @unimplemented
630 */
631 ULONG APIENTRY
632 EngDitherColor(
633 IN HDEV hdev,
634 IN ULONG iMode,
635 IN ULONG rgb,
636 OUT ULONG *pul)
637 {
638 return DCR_SOLID;
639 }
640
641 /*
642 * @unimplemented
643 */
644 HANDLE APIENTRY
645 BRUSHOBJ_hGetColorTransform(
646 IN BRUSHOBJ *Brush)
647 {
648 UNIMPLEMENTED;
649 return NULL;
650 }
651
652 /*
653 * @unimplemented
654 */
655 BOOL
656 APIENTRY
657 EngDeleteFile(
658 IN LPWSTR FileName)
659 {
660 UNIMPLEMENTED;
661 return FALSE;
662 }
663
664
665
666 /*
667 * @unimplemented
668 */
669 BOOL APIENTRY
670 EngGetPrinterDriver(
671 IN HANDLE Printer,
672 IN LPWSTR Environment,
673 IN DWORD Level,
674 OUT BYTE *DrvInfo,
675 IN DWORD Buf,
676 OUT DWORD *Needed)
677 {
678 UNIMPLEMENTED;
679 return FALSE;
680 }
681
682 /*
683 * @unimplemented
684 */
685 ULONG APIENTRY
686 EngHangNotification(
687 IN HDEV Dev,
688 IN PVOID Reserved)
689 {
690 UNIMPLEMENTED;
691 return EHN_ERROR;
692 }
693
694
695
696 /*
697 * @unimplemented
698 */
699 BOOL APIENTRY
700 EngLpkInstalled()
701 {
702 UNIMPLEMENTED;
703 return FALSE;
704 }
705
706 /*
707 * @unimplemented
708 */
709 BOOL APIENTRY
710 EngPlgBlt(
711 IN SURFOBJ *Dest,
712 IN SURFOBJ *Source,
713 IN SURFOBJ *Mask,
714 IN CLIPOBJ *Clip,
715 IN XLATEOBJ *Xlate,
716 IN COLORADJUSTMENT *ColorAdjustment,
717 IN POINTL *BrusOrigin,
718 IN POINTFIX *DestPoints,
719 IN RECTL *SourceRect,
720 IN POINTL *MaskPoint,
721 IN ULONG Mode)
722 {
723 UNIMPLEMENTED;
724 return FALSE;
725 }
726
727 /*
728 * @unimplemented
729 */
730 BOOL APIENTRY
731 EngQueryDeviceAttribute(
732 IN HDEV Device,
733 IN ENG_DEVICE_ATTRIBUTE Attribute,
734 IN VOID *In,
735 IN ULONG InSize,
736 OUT VOID *Out,
737 OUT ULONG OutSize)
738 {
739 UNIMPLEMENTED;
740 return FALSE;
741 }
742
743 /*
744 * @unimplemented
745 */
746 LARGE_INTEGER
747 APIENTRY
748 EngQueryFileTimeStamp(IN LPWSTR FileName)
749 {
750 LARGE_INTEGER FileTime;
751 FileTime.QuadPart = 0;
752 UNIMPLEMENTED;
753 return FileTime;
754 }
755
756
757 /*
758 * @unimplemented
759 */
760 FD_GLYPHSET * APIENTRY
761 FONTOBJ_pfdg(
762 IN FONTOBJ *FontObj)
763 {
764 UNIMPLEMENTED;
765 return NULL;
766 }
767
768 /*
769 * @unimplemented
770 */
771 PBYTE APIENTRY
772 FONTOBJ_pjOpenTypeTablePointer(
773 IN FONTOBJ *FontObj,
774 IN ULONG Tag,
775 OUT ULONG *Table)
776 {
777 UNIMPLEMENTED;
778 return NULL;
779 }
780
781 /*
782 * @unimplemented
783 */
784 PFD_GLYPHATTR APIENTRY
785 FONTOBJ_pQueryGlyphAttrs(
786 IN FONTOBJ *FontObj,
787 IN ULONG Mode)
788 {
789 UNIMPLEMENTED;
790 return NULL;
791 }
792
793 /*
794 * @unimplemented
795 */
796 LPWSTR APIENTRY
797 FONTOBJ_pwszFontFilePaths(
798 IN FONTOBJ *FontObj,
799 OUT ULONG *PathLength)
800 {
801 UNIMPLEMENTED;
802 return NULL;
803 }
804
805 /*
806 * @unimplemented
807 */
808 LONG APIENTRY
809 HT_Get8BPPMaskPalette(
810 IN OUT LPPALETTEENTRY PaletteEntry,
811 IN BOOL Use8BPPMaskPal,
812 IN BYTE CMYMask,
813 IN USHORT RedGamma,
814 IN USHORT GreenGamma,
815 IN USHORT BlueGamma)
816 {
817 UNIMPLEMENTED;
818 return 0;
819 }
820
821 /*
822 * @unimplemented
823 */
824
825 BOOL
826 APIENTRY
827 NtGdiAnyLinkedFonts()
828 {
829 UNIMPLEMENTED;
830 return FALSE;
831 }
832
833 /*
834 * @unimplemented
835 */
836 HANDLE
837 APIENTRY
838 NtGdiBRUSHOBJ_hGetColorTransform(
839 IN BRUSHOBJ *Brush)
840 {
841 UNIMPLEMENTED;
842 return NULL;
843 }
844
845 /*
846 * @unimplemented
847 */
848 PVOID APIENTRY
849 NtGdiBRUSHOBJ_pvAllocRbrush(IN BRUSHOBJ *BrushObj,
850 IN ULONG ObjSize)
851 {
852 UNIMPLEMENTED;
853 return NULL;
854 }
855
856 /*
857 * @unimplemented
858 */
859 PVOID APIENTRY
860 NtGdiBRUSHOBJ_pvGetRbrush(IN BRUSHOBJ *BrushObj)
861 {
862 UNIMPLEMENTED;
863 return NULL;
864 }
865
866 /*
867 * @unimplemented
868 */
869 ULONG APIENTRY
870 NtGdiBRUSHOBJ_ulGetBrushColor(BRUSHOBJ *pbo)
871 {
872 UNIMPLEMENTED;
873 return 0;
874 }
875
876 /*
877 * @unimplemented
878 */
879 BOOL APIENTRY
880 NtGdiCLIPOBJ_bEnum( IN CLIPOBJ *ClipObj,
881 IN ULONG ObjSize,
882 OUT ULONG *EnumRects)
883 {
884 UNIMPLEMENTED;
885 return FALSE;
886 }
887
888
889 /*
890 * @unimplemented
891 */
892 ULONG APIENTRY
893 NtGdiCLIPOBJ_cEnumStart(IN CLIPOBJ *ClipObj,
894 IN BOOL ShouldDoAll,
895 IN ULONG ClipType,
896 IN ULONG BuildOrder,
897 IN ULONG MaxRects)
898 {
899 UNIMPLEMENTED;
900 return 0;
901 }
902
903
904 /*
905 * @unimplemented
906 */
907 PATHOBJ* APIENTRY
908 NtGdiCLIPOBJ_ppoGetPath(CLIPOBJ *ClipObj)
909 {
910 UNIMPLEMENTED;
911 return NULL;
912 }
913
914
915 /*
916 * @unimplemented
917 */
918 BOOL
919 APIENTRY
920 NtGdiEnableEudc(BOOL enable)
921 {
922 UNIMPLEMENTED;
923 return FALSE;
924 }
925
926
927 /*
928 * @unimplemented
929 */
930 BOOL APIENTRY
931 NtGdiEngAssociateSurface(IN HSURF Surface,
932 IN HDEV Dev,
933 IN ULONG Hooks)
934 {
935 UNIMPLEMENTED;
936 return FALSE;
937 }
938
939 /*
940 * @unimplemented
941 */
942 CLIPOBJ* APIENTRY
943 NtGdiEngCreateClip(VOID)
944 {
945 UNIMPLEMENTED;
946 return NULL;
947 }
948
949
950 /*
951 * @unimplemented
952 */
953 VOID APIENTRY
954 NtGdiEngDeleteClip(CLIPOBJ *ClipRegion)
955 {
956 UNIMPLEMENTED;
957 }
958
959
960 /*
961 * @unimplemented
962 */
963 BOOL APIENTRY
964 NtGdiEngCheckAbort(SURFOBJ *pso)
965 {
966 UNIMPLEMENTED;
967 return FALSE;
968 }
969
970 /*
971 * @implemented
972 */
973 HSURF APIENTRY
974 NtGdiEngCreateDeviceSurface( IN DHSURF Surface,
975 IN SIZEL Size,
976 IN ULONG FormatVersion)
977 {
978 if ( FormatVersion <= BMF_8RLE &&
979 FormatVersion >= BMF_1BPP )
980 return EngCreateDeviceSurface(Surface, Size, FormatVersion);
981 else
982 return NULL;
983 }
984
985 /*
986 * @implemented
987 */
988 HBITMAP APIENTRY
989 NtGdiEngCreateDeviceBitmap(
990 IN DHSURF dhsurf,
991 IN SIZEL sizl,
992 IN ULONG iFormatCompat)
993 {
994 if ( ( sizl.cx > 0 && sizl.cy > 0 && (((LONGLONG)(sizl.cy * sizl.cx)) <= 0xFFFFFFFFULL) ) &&
995 iFormatCompat <= BMF_8RLE &&
996 iFormatCompat >= BMF_1BPP )
997 return EngCreateDeviceBitmap(dhsurf, sizl, iFormatCompat);
998 else
999 return NULL;
1000 }
1001
1002
1003 /*
1004 * @unimplemented
1005 */
1006 BOOL APIENTRY
1007 NtGdiEngCopyBits(SURFOBJ *Dest,
1008 SURFOBJ *Source,
1009 CLIPOBJ *Clip,
1010 XLATEOBJ *ColorTranslation,
1011 RECTL *DestRect,
1012 POINTL *SourcePoint)
1013 {
1014 UNIMPLEMENTED;
1015 return FALSE;
1016 }
1017
1018 /*
1019 * @implemented
1020 */
1021 HBITMAP APIENTRY
1022 NtGdiEngCreateBitmap(IN SIZEL Size,
1023 IN LONG Width,
1024 IN ULONG Format,
1025 IN ULONG Flags,
1026 IN PVOID Bits)
1027 {
1028 return EngCreateBitmap(Size,
1029 Width,
1030 Format,
1031 Flags,
1032 Bits);
1033 }
1034
1035
1036 /*
1037 * @implemented
1038 */
1039 HPALETTE APIENTRY
1040 NtGdiEngCreatePalette(IN ULONG Mode,
1041 IN ULONG NumColors,
1042 IN ULONG *Colors,
1043 IN ULONG Red,
1044 IN ULONG Green,
1045 IN ULONG Blue)
1046 {
1047 return EngCreatePalette( Mode,
1048 NumColors,
1049 Colors,
1050 Red,
1051 Green,
1052 Blue);
1053 }
1054
1055 BOOL APIENTRY
1056 NtGdiEngTransparentBlt(IN SURFOBJ *Dest,
1057 IN SURFOBJ *Source,
1058 IN CLIPOBJ *Clip,
1059 IN XLATEOBJ *ColorTranslation,
1060 IN PRECTL DestRect,
1061 IN PRECTL SourceRect,
1062 IN ULONG TransparentColor,
1063 IN ULONG Reserved)
1064 {
1065 UNIMPLEMENTED;
1066 return FALSE;
1067 }
1068
1069
1070 /*
1071 * @unimplemented
1072 */
1073 BOOL APIENTRY
1074 NtGdiEngTextOut(SURFOBJ *pso,
1075 STROBJ *pstro,
1076 FONTOBJ *pfo,
1077 CLIPOBJ *pco,
1078 RECTL *prclExtra,
1079 RECTL *prclOpaque,
1080 BRUSHOBJ *pboFore,
1081 BRUSHOBJ *pboOpaque,
1082 POINTL *pptlOrg,
1083 MIX mix)
1084 {
1085 UNIMPLEMENTED;
1086 return FALSE;
1087 }
1088
1089 /*
1090 * @unimplemented
1091 */
1092 BOOL APIENTRY
1093 NtGdiEngStrokePath(SURFOBJ *pso,
1094 PATHOBJ *ppo,
1095 CLIPOBJ *pco,
1096 XFORMOBJ *pxo,
1097 BRUSHOBJ *pbo,
1098 POINTL *pptlBrushOrg,
1099 LINEATTRS *plineattrs,
1100 MIX mix)
1101 {
1102 UNIMPLEMENTED;
1103 return FALSE;
1104 }
1105
1106 /*
1107 * @implemented
1108 */
1109 BOOL APIENTRY
1110 NtGdiEngDeletePalette(IN HPALETTE Palette)
1111 {
1112 return EngDeletePalette(Palette);
1113 }
1114
1115 /*
1116 * @unimplemented
1117 */
1118 BOOL APIENTRY
1119 NtGdiEngStrokeAndFillPath(SURFOBJ *pso,
1120 PATHOBJ *ppo,
1121 CLIPOBJ *pco,
1122 XFORMOBJ *pxo,
1123 BRUSHOBJ *pboStroke,
1124 LINEATTRS *plineattrs,
1125 BRUSHOBJ *pboFill,
1126 POINTL *pptlBrushOrg,
1127 MIX mixFill,
1128 FLONG flOptions)
1129 {
1130 UNIMPLEMENTED;
1131 return FALSE;
1132 }
1133
1134 /*
1135 * @unimplemented
1136 */
1137 VOID APIENTRY
1138 NtGdiEngDeletePath(PATHOBJ *ppo)
1139 {
1140 UNIMPLEMENTED;
1141 }
1142
1143 /*
1144 * @unimplemented
1145 */
1146 BOOL APIENTRY
1147 NtGdiEngDeleteSurface(IN HSURF Surface)
1148 {
1149 UNIMPLEMENTED;
1150 return FALSE;
1151 }
1152
1153 /*
1154 * @unimplemented
1155 */
1156 BOOL APIENTRY
1157 NtGdiEngEraseSurface(SURFOBJ *Surface,
1158 RECTL *Rect,
1159 ULONG iColor)
1160 {
1161 UNIMPLEMENTED;
1162 return FALSE;
1163 }
1164
1165 /*
1166 * @unimplemented
1167 */
1168 BOOL APIENTRY
1169 NtGdiEngFillPath(SURFOBJ *pso,
1170 PATHOBJ *ppo,
1171 CLIPOBJ *pco,
1172 BRUSHOBJ *pbo,
1173 POINTL *pptlBrushOrg,
1174 MIX mix,
1175 FLONG flOptions)
1176 {
1177 UNIMPLEMENTED;
1178 return FALSE;
1179 }
1180
1181 BOOL APIENTRY
1182 NtGdiEngGradientFill(SURFOBJ *psoDest,
1183 CLIPOBJ *pco,
1184 XLATEOBJ *pxlo,
1185 TRIVERTEX *pVertex,
1186 ULONG nVertex,
1187 PVOID pMesh,
1188 ULONG nMesh,
1189 RECTL *prclExtents,
1190 POINTL *pptlDitherOrg,
1191 ULONG ulMode)
1192 {
1193 UNIMPLEMENTED;
1194 return FALSE;
1195 }
1196
1197 BOOL APIENTRY
1198 NtGdiEngLineTo(SURFOBJ *Surface,
1199 CLIPOBJ *Clip,
1200 BRUSHOBJ *Brush,
1201 LONG x1,
1202 LONG y1,
1203 LONG x2,
1204 LONG y2,
1205 RECTL *RectBounds,
1206 MIX mix)
1207 {
1208 UNIMPLEMENTED;
1209 return FALSE;
1210 }
1211
1212
1213 /*
1214 * @unimplemented
1215 */
1216 BOOL APIENTRY
1217 NtGdiEngMarkBandingSurface(HSURF hsurf)
1218 {
1219 UNIMPLEMENTED;
1220 return FALSE;
1221 }
1222
1223
1224 /*
1225 * @unimplemented
1226 */
1227 BOOL APIENTRY
1228 NtGdiEngPaint(IN SURFOBJ *Surface,
1229 IN CLIPOBJ *ClipRegion,
1230 IN BRUSHOBJ *Brush,
1231 IN POINTL *BrushOrigin,
1232 IN MIX Mix)
1233 {
1234 UNIMPLEMENTED;
1235 return FALSE;
1236 }
1237
1238 /*
1239 * @unimplemented
1240 */
1241 BOOL APIENTRY
1242 NtGdiEngPlgBlt(SURFOBJ *psoTrg,
1243 SURFOBJ *psoSrc,
1244 SURFOBJ *psoMsk,
1245 CLIPOBJ *pco,
1246 XLATEOBJ *pxlo,
1247 COLORADJUSTMENT *pca,
1248 POINTL *pptlBrushOrg,
1249 POINTFIX *pptfx,
1250 RECTL *prcl,
1251 POINTL *pptl,
1252 ULONG iMode)
1253 {
1254 UNIMPLEMENTED;
1255 return FALSE;
1256 }
1257
1258 /*
1259 * @unimplemented
1260 */
1261 BOOL APIENTRY
1262 NtGdiEngStretchBltROP(SURFOBJ *psoDest,
1263 SURFOBJ *psoSrc,
1264 SURFOBJ *psoMask,
1265 CLIPOBJ *pco,
1266 XLATEOBJ *pxlo,
1267 COLORADJUSTMENT *pca,
1268 POINTL *pptlHTOrg,
1269 RECTL *prclDest,
1270 RECTL *prclSrc,
1271 POINTL *pptlMask,
1272 ULONG iMode,
1273 BRUSHOBJ *pbo,
1274 DWORD rop4)
1275 {
1276 UNIMPLEMENTED;
1277 return FALSE;
1278 }
1279
1280 FD_GLYPHSET* APIENTRY
1281 NtGdiEngComputeGlyphSet( INT nCodePage,
1282 INT nFirstChar,
1283 INT cChars)
1284 {
1285 UNIMPLEMENTED;
1286 return NULL;
1287 }
1288
1289 /*
1290 * @unimplemented
1291 */
1292 ULONG
1293 APIENTRY
1294 NtGdiFONTOBJ_cGetAllGlyphHandles(IN FONTOBJ *FontObj,
1295 IN HGLYPH *Glyphs)
1296 {
1297 UNIMPLEMENTED;
1298 return 0;
1299 }
1300
1301
1302 /*
1303 * @unimplemented
1304 */
1305 ULONG
1306 APIENTRY
1307 NtGdiFONTOBJ_cGetGlyphs(IN FONTOBJ *FontObj,
1308 IN ULONG Mode,
1309 IN ULONG NumGlyphs,
1310 IN HGLYPH *GlyphHandles,
1311 IN PVOID *OutGlyphs)
1312 {
1313 UNIMPLEMENTED;
1314 return 0;
1315 }
1316
1317 /*
1318 * @unimplemented
1319 */
1320 BOOL
1321 APIENTRY
1322 NtGdiAddRemoteFontToDC(
1323 IN HDC hdc,
1324 IN PVOID pvBuffer,
1325 IN ULONG cjBuffer,
1326 IN OPTIONAL PUNIVERSAL_FONT_ID pufi)
1327 {
1328 UNIMPLEMENTED;
1329 return 0;
1330 }
1331
1332 /*
1333 * @unimplemented
1334 */
1335 HANDLE
1336 APIENTRY
1337 NtGdiAddFontMemResourceEx(
1338 IN PVOID pvBuffer,
1339 IN DWORD cjBuffer,
1340 IN DESIGNVECTOR *pdv,
1341 IN ULONG cjDV,
1342 OUT DWORD *pNumFonts
1343 )
1344 {
1345 UNIMPLEMENTED;
1346 return NULL;
1347 }
1348
1349
1350 /*
1351 * @unimplemented
1352 */
1353 BOOL
1354 APIENTRY
1355 NtGdiRemoveMergeFont(
1356 IN HDC hdc,
1357 IN UNIVERSAL_FONT_ID *pufi)
1358 {
1359 UNIMPLEMENTED;
1360 return FALSE;
1361 }
1362
1363 /*
1364 * @unimplemented
1365 */
1366 BOOL
1367 APIENTRY
1368 NtGdiAddRemoteMMInstanceToDC(
1369 IN HDC hdc,
1370 IN DOWNLOADDESIGNVECTOR *pddv,
1371 IN ULONG cjDDV)
1372 {
1373 UNIMPLEMENTED;
1374 return FALSE;
1375 }
1376
1377
1378 /*
1379 * @unimplemented
1380 */
1381 BOOL
1382 APIENTRY
1383 NtGdiFontIsLinked(IN HDC hdc)
1384 {
1385 UNIMPLEMENTED;
1386 return FALSE;
1387 }
1388
1389 /*
1390 * @unimplemented
1391 */
1392 BOOL
1393 APIENTRY
1394 NtGdiCheckBitmapBits(
1395 IN HDC hdc,
1396 IN HANDLE hColorTransform,
1397 IN PVOID pvBits,
1398 IN ULONG bmFormat,
1399 IN DWORD dwWidth,
1400 IN DWORD dwHeight,
1401 IN DWORD dwStride,
1402 OUT PBYTE paResults)
1403 {
1404 UNIMPLEMENTED;
1405 return FALSE;
1406 }
1407
1408 /*
1409 * @unimplemented
1410 */
1411 HBITMAP
1412 APIENTRY
1413 NtGdiClearBitmapAttributes(
1414 IN HBITMAP hbm,
1415 IN DWORD dwFlags)
1416 {
1417 UNIMPLEMENTED;
1418 return NULL;
1419 }
1420
1421
1422 /*
1423 * @unimplemented
1424 */
1425 BOOL
1426 APIENTRY
1427 NtGdiGetUFI(
1428 IN HDC hdc,
1429 OUT PUNIVERSAL_FONT_ID pufi,
1430 OUT OPTIONAL DESIGNVECTOR *pdv,
1431 OUT ULONG *pcjDV,
1432 OUT ULONG *pulBaseCheckSum,
1433 OUT FLONG *pfl)
1434 {
1435 UNIMPLEMENTED;
1436 return FALSE;
1437 }
1438
1439 /*
1440 * @unimplemented
1441 */
1442 PFD_GLYPHATTR
1443 APIENTRY
1444 NtGdiFONTOBJ_pQueryGlyphAttrs(
1445 IN FONTOBJ *pfo,
1446 IN ULONG iMode)
1447 {
1448 UNIMPLEMENTED;
1449 return NULL;
1450 }
1451
1452 /*
1453 * @unimplemented
1454 */
1455 IFIMETRICS*
1456 APIENTRY
1457 NtGdiFONTOBJ_pifi(
1458 IN FONTOBJ *pfo)
1459 {
1460 UNIMPLEMENTED;
1461 return NULL;
1462 }
1463
1464 /*
1465 * @unimplemented
1466 */
1467 FD_GLYPHSET*
1468 APIENTRY
1469 NtGdiFONTOBJ_pfdg(IN FONTOBJ *pfo)
1470 {
1471 UNIMPLEMENTED;
1472 return NULL;
1473 }
1474
1475 /*
1476 * @unimplemented
1477 */
1478 PVOID
1479 APIENTRY
1480 NtGdiFONTOBJ_pvTrueTypeFontFile(
1481 IN FONTOBJ *pfo,
1482 OUT ULONG *pcjFile
1483 )
1484 {
1485 UNIMPLEMENTED;
1486 return NULL;
1487 }
1488
1489 /*
1490 * @unimplemented
1491 */
1492 VOID
1493 APIENTRY
1494 NtGdiFONTOBJ_vGetInfo(
1495 IN FONTOBJ *pfo,
1496 IN ULONG cjSize,
1497 OUT FONTINFO *pfi)
1498 {
1499 UNIMPLEMENTED;
1500 }
1501
1502 /*
1503 * @unimplemented
1504 */
1505 XFORMOBJ*
1506 APIENTRY
1507 NtGdiFONTOBJ_pxoGetXform(IN FONTOBJ *pfo)
1508 {
1509 UNIMPLEMENTED;
1510 return NULL;
1511 }
1512
1513 /*
1514 * @unimplemented
1515 */
1516 HBRUSH
1517 APIENTRY
1518 NtGdiClearBrushAttributes(
1519 IN HBRUSH hbm,
1520 IN DWORD dwFlags)
1521 {
1522 UNIMPLEMENTED;
1523 return NULL;
1524 }
1525
1526 /*
1527 * @unimplemented
1528 */
1529 ULONG
1530 APIENTRY
1531 NtGdiColorCorrectPalette(
1532 IN HDC hdc,
1533 IN HPALETTE hpal,
1534 IN ULONG FirstEntry,
1535 IN ULONG NumberOfEntries,
1536 IN OUT PALETTEENTRY *ppalEntry,
1537 IN ULONG Command)
1538 {
1539 UNIMPLEMENTED;
1540 return 0;
1541 }
1542
1543 /*
1544 * @unimplemented
1545 */
1546 HANDLE
1547 APIENTRY
1548 NtGdiCreateColorTransform(
1549 IN HDC hdc,
1550 IN LPLOGCOLORSPACEW pLogColorSpaceW,
1551 IN OPTIONAL PVOID pvSrcProfile,
1552 IN ULONG cjSrcProfile,
1553 IN OPTIONAL PVOID pvDestProfile,
1554 IN ULONG cjDestProfile,
1555 IN OPTIONAL PVOID pvTargetProfile,
1556 IN ULONG cjTargetProfile)
1557 {
1558 UNIMPLEMENTED;
1559 return NULL;
1560 }
1561
1562 /*
1563 * @unimplemented
1564 */
1565 BOOL
1566 APIENTRY
1567 NtGdiComputeXformCoefficients(IN HDC hdc)
1568 {
1569 UNIMPLEMENTED;
1570 return FALSE;
1571 }
1572
1573
1574 /*
1575 * @unimplemented
1576 */
1577 BOOL
1578 APIENTRY
1579 NtGdiConsoleTextOut(
1580 IN HDC hdc,
1581 IN POLYTEXTW *lpto,
1582 IN UINT nStrings,
1583 IN RECTL *prclBounds)
1584 {
1585 UNIMPLEMENTED;
1586 return FALSE;
1587 }
1588
1589 /*
1590 * @unimplemented
1591 */
1592 BOOL
1593 APIENTRY
1594 NtGdiDeleteColorTransform(
1595 IN HDC hdc,
1596 IN HANDLE hColorTransform)
1597 {
1598 UNIMPLEMENTED;
1599 return FALSE;
1600 }
1601
1602 /*
1603 * @unimplemented
1604 */
1605 ULONG
1606 APIENTRY
1607 NtGdiGetPerBandInfo(
1608 IN HDC hdc,
1609 IN OUT PERBANDINFO *ppbi)
1610 {
1611 UNIMPLEMENTED;
1612 return 0;
1613 }
1614
1615 /*
1616 * @unimplemented
1617 */
1618 BOOL
1619 APIENTRY
1620 NtGdiDoBanding(
1621 IN HDC hdc,
1622 IN BOOL bStart,
1623 OUT POINTL *pptl,
1624 OUT PSIZE pSize)
1625 {
1626 UNIMPLEMENTED;
1627 return FALSE;
1628 }
1629
1630
1631 /*
1632 * @unimplemented
1633 */
1634 BOOL
1635 APIENTRY
1636 NtGdiEnumFontChunk(
1637 IN HDC hdc,
1638 IN ULONG_PTR idEnum,
1639 IN ULONG cjEfdw,
1640 OUT ULONG *pcjEfdw,
1641 OUT PENUMFONTDATAW pefdw)
1642 {
1643 UNIMPLEMENTED;
1644 return FALSE;
1645 }
1646
1647 /*
1648 * @unimplemented
1649 */
1650 BOOL
1651 APIENTRY
1652 NtGdiEnumFontClose(
1653 IN ULONG_PTR idEnum)
1654 {
1655 UNIMPLEMENTED;
1656 return FALSE;
1657 }
1658
1659 /*
1660 * @unimplemented
1661 */
1662 ULONG_PTR
1663 APIENTRY
1664 NtGdiEnumFontOpen(
1665 IN HDC hdc,
1666 IN ULONG iEnumType,
1667 IN FLONG flWin31Compat,
1668 IN ULONG cwchMax,
1669 IN OPTIONAL LPWSTR pwszFaceName,
1670 IN ULONG lfCharSet,
1671 OUT ULONG *pulCount)
1672 {
1673 UNIMPLEMENTED;
1674 return 0;
1675 }
1676
1677 /*
1678 * @unimplemented
1679 */
1680 BOOL
1681 APIENTRY
1682 NtGdiEudcLoadUnloadLink(
1683 IN OPTIONAL LPCWSTR pBaseFaceName,
1684 IN UINT cwcBaseFaceName,
1685 IN LPCWSTR pEudcFontPath,
1686 IN UINT cwcEudcFontPath,
1687 IN INT iPriority,
1688 IN INT iFontLinkType,
1689 IN BOOL bLoadLin)
1690 {
1691 UNIMPLEMENTED;
1692 return FALSE;
1693 }
1694
1695 /*
1696 * @unimplemented
1697 */
1698 BOOL
1699 APIENTRY
1700 NtGdiForceUFIMapping(
1701 IN HDC hdc,
1702 IN PUNIVERSAL_FONT_ID pufi)
1703 {
1704 UNIMPLEMENTED;
1705 return FALSE;
1706 }
1707
1708 /*
1709 * @unimplemented
1710 */
1711 NTSTATUS
1712 APIENTRY
1713 NtGdiFullscreenControl(
1714 IN FULLSCREENCONTROL FullscreenCommand,
1715 IN PVOID FullscreenInput,
1716 IN DWORD FullscreenInputLength,
1717 OUT PVOID FullscreenOutput,
1718 IN OUT PULONG FullscreenOutputLength)
1719 {
1720 UNIMPLEMENTED;
1721 return FALSE;
1722 }
1723
1724 /*
1725 * @unimplemented
1726 */
1727 DWORD
1728 APIENTRY
1729 NtGdiGetCharacterPlacementW(
1730 IN HDC hdc,
1731 IN LPWSTR pwsz,
1732 IN INT nCount,
1733 IN INT nMaxExtent,
1734 IN OUT LPGCP_RESULTSW pgcpw,
1735 IN DWORD dwFlags)
1736 {
1737 UNIMPLEMENTED;
1738 return 0;
1739 }
1740
1741 /*
1742 * @unimplemented
1743 */
1744 BOOL
1745 APIENTRY
1746 NtGdiGetCharWidthInfo(
1747 IN HDC hdc,
1748 OUT PCHWIDTHINFO pChWidthInfo)
1749 {
1750 UNIMPLEMENTED;
1751 return FALSE;
1752 }
1753
1754 /*
1755 * @unimplemented
1756 */
1757 ULONG_PTR
1758 APIENTRY
1759 NtGdiGetColorSpaceforBitmap(
1760 IN HBITMAP hsurf)
1761 {
1762 UNIMPLEMENTED;
1763 return 0;
1764 }
1765
1766 /*
1767 * @unimplemented
1768 */
1769 BOOL
1770 APIENTRY
1771 NtGdiGetETM(
1772 IN HDC hdc,
1773 OUT EXTTEXTMETRIC *petm)
1774 {
1775 UNIMPLEMENTED;
1776 return FALSE;
1777 }
1778
1779 /*
1780 * @unimplemented
1781 */
1782 ULONG
1783 APIENTRY
1784 NtGdiGetEudcTimeStampEx(
1785 IN OPTIONAL LPWSTR lpBaseFaceName,
1786 IN ULONG cwcBaseFaceName,
1787 IN BOOL bSystemTimeStamp)
1788 {
1789 UNIMPLEMENTED;
1790 return 0;
1791 }
1792
1793
1794 /*
1795 * @unimplemented
1796 */
1797 BOOL
1798 APIENTRY
1799 NtGdiInitSpool()
1800 {
1801 UNIMPLEMENTED;
1802 return FALSE;
1803 }
1804
1805
1806 /*
1807 * @unimplemented
1808 */
1809 INT
1810 APIENTRY
1811 NtGdiQueryFonts( OUT PUNIVERSAL_FONT_ID pufiFontList,
1812 IN ULONG nBufferSize,
1813 OUT PLARGE_INTEGER pTimeStamp)
1814 {
1815 UNIMPLEMENTED;
1816 return 0;
1817 }
1818
1819 /*
1820 * @unimplemented
1821 */
1822 INT
1823 APIENTRY
1824 NtGdiGetSpoolMessage( DWORD u1,
1825 DWORD u2,
1826 DWORD u3,
1827 DWORD u4)
1828 {
1829 /* FIXME the prototypes */
1830 UNIMPLEMENTED;
1831 return 0;
1832 }
1833
1834 /*
1835 * @unimplemented
1836 */
1837 DWORD
1838 APIENTRY
1839 NtGdiGetGlyphIndicesWInternal(
1840 IN HDC hdc,
1841 IN OPTIONAL LPWSTR pwc,
1842 IN INT cwc,
1843 OUT OPTIONAL LPWORD pgi,
1844 IN DWORD iMode,
1845 IN BOOL bSubset)
1846 {
1847 UNIMPLEMENTED;
1848 return 0;
1849 }
1850
1851 /*
1852 * @unimplemented
1853 */
1854 INT
1855 APIENTRY
1856 NtGdiGetLinkedUFIs(
1857 IN HDC hdc,
1858 OUT OPTIONAL PUNIVERSAL_FONT_ID pufiLinkedUFIs,
1859 IN INT BufferSize)
1860 {
1861 UNIMPLEMENTED;
1862 return 0;
1863 }
1864
1865
1866 /*
1867 * @unimplemented
1868 */
1869 HBITMAP
1870 APIENTRY
1871 NtGdiGetObjectBitmapHandle(
1872 IN HBRUSH hbr,
1873 OUT UINT *piUsage)
1874 {
1875 UNIMPLEMENTED;
1876 return 0;
1877 }
1878
1879 /*
1880 * @unimplemented
1881 */
1882 BOOL
1883 APIENTRY
1884 NtGdiGetMonitorID(
1885 IN HDC hdc,
1886 IN DWORD dwSize,
1887 OUT LPWSTR pszMonitorID)
1888 {
1889 UNIMPLEMENTED;
1890 return FALSE;
1891 }
1892
1893 /*
1894 * @unimplemented
1895 */
1896 BOOL
1897 APIENTRY
1898 NtGdiDrawStream(
1899 IN HDC hdcDst,
1900 IN ULONG cjIn,
1901 IN VOID *pvIn)
1902 {
1903 UNIMPLEMENTED;
1904 return FALSE;
1905 }
1906
1907
1908 /*
1909 * @unimplemented
1910 */
1911 BOOL
1912 NtGdiUMPDEngFreeUserMem(
1913 IN KERNEL_PVOID *ppv)
1914 {
1915 UNIMPLEMENTED;
1916 return FALSE;
1917 }
1918
1919 /*
1920 * @unimplemented
1921 */
1922 BOOL
1923 NtGdiBRUSHOBJ_DeleteRbrush(
1924 IN BRUSHOBJ *pbo,
1925 IN BRUSHOBJ *pboB)
1926 {
1927 UNIMPLEMENTED;
1928 return FALSE;
1929 }
1930
1931 /*
1932 * @unimplemented
1933 */
1934 BOOL
1935 NtGdiSetPUMPDOBJ(
1936 IN HUMPD humpd,
1937 IN BOOL bStoreID,
1938 OUT HUMPD *phumpd,
1939 OUT BOOL *pbWOW64)
1940 {
1941 UNIMPLEMENTED;
1942 return FALSE;
1943 }
1944
1945 /*
1946 * @unimplemented
1947 */
1948 BOOL
1949 NtGdiUpdateTransform(IN HDC hdc)
1950 {
1951 UNIMPLEMENTED;
1952 return FALSE;
1953 }
1954
1955 /*
1956 * @unimplemented
1957 */
1958 LONG
1959 APIENTRY
1960 NtGdiHT_Get8BPPMaskPalette(
1961 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry,
1962 IN BOOL Use8BPPMaskPal,
1963 IN BYTE CMYMask,
1964 IN USHORT RedGamma,
1965 IN USHORT GreenGamma,
1966 IN USHORT BlueGamma)
1967 {
1968 UNIMPLEMENTED;
1969 return FALSE;
1970 }
1971
1972 /*
1973 * @unimplemented
1974 */
1975 LONG
1976 APIENTRY
1977 NtGdiHT_Get8BPPFormatPalette(
1978 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry,
1979 IN USHORT RedGamma,
1980 IN USHORT GreenGamma,
1981 IN USHORT BlueGamma)
1982 {
1983 UNIMPLEMENTED;
1984 return FALSE;
1985 }
1986
1987 /*
1988 * @unimplemented
1989 */
1990 ULONG
1991 APIENTRY
1992 NtGdiQueryFontAssocInfo(
1993 IN HDC hdc)
1994 {
1995 UNIMPLEMENTED;
1996 return 0;
1997 }
1998
1999 /*
2000 * @unimplemented
2001 */
2002 UINT
2003 APIENTRY
2004 NtGdiGetStringBitmapW(
2005 IN HDC hdc,
2006 IN LPWSTR pwsz,
2007 IN UINT cwc,
2008 OUT BYTE *lpSB,
2009 IN UINT cj)
2010 {
2011 UNIMPLEMENTED;
2012 return 0;
2013 }
2014
2015 /*
2016 * @unimplemented
2017 */
2018 BOOL
2019 APIENTRY
2020 NtGdiPATHOBJ_bEnum(
2021 IN PATHOBJ *ppo,
2022 OUT PATHDATA *ppd)
2023 {
2024 UNIMPLEMENTED;
2025 return FALSE;
2026 }
2027
2028 /*
2029 * @unimplemented
2030 */
2031 BOOL
2032 APIENTRY
2033 NtGdiPATHOBJ_bEnumClipLines(
2034 IN PATHOBJ *ppo,
2035 IN ULONG cb,
2036 OUT CLIPLINE *pcl)
2037 {
2038 UNIMPLEMENTED;
2039 return FALSE;
2040 }
2041
2042 /*
2043 * @unimplemented
2044 */
2045 VOID
2046 APIENTRY
2047 NtGdiPATHOBJ_vGetBounds(
2048 IN PATHOBJ *ppo,
2049 OUT PRECTFX prectfx)
2050 {
2051 UNIMPLEMENTED;
2052 }
2053
2054
2055
2056 /*
2057 * @unimplemented
2058 */
2059 VOID
2060 APIENTRY
2061 NtGdiPATHOBJ_vEnumStart(
2062 IN PATHOBJ *ppo)
2063 {
2064 UNIMPLEMENTED;
2065 }
2066
2067 /*
2068 * @unimplemented
2069 */
2070 VOID
2071 APIENTRY
2072 NtGdiPATHOBJ_vEnumStartClipLines(
2073 IN PATHOBJ *ppo,
2074 IN CLIPOBJ *pco,
2075 IN SURFOBJ *pso,
2076 IN LINEATTRS *pla)
2077 {
2078 UNIMPLEMENTED;
2079 }
2080
2081
2082 /*
2083 * @unimplemented
2084 */
2085 BOOL
2086 APIENTRY
2087 NtGdiRemoveFontMemResourceEx(
2088 IN HANDLE hMMFont)
2089 {
2090 UNIMPLEMENTED;
2091 return FALSE;
2092 }
2093
2094
2095 /*
2096 * @unimplemented
2097 */
2098 BOOL
2099 APIENTRY
2100 NtGdiRemoveFontResourceW(
2101 IN WCHAR *pwszFiles,
2102 IN ULONG cwc,
2103 IN ULONG cFiles,
2104 IN ULONG fl,
2105 IN DWORD dwPidTid,
2106 IN OPTIONAL DESIGNVECTOR *pdv)
2107 {
2108 UNIMPLEMENTED;
2109 return FALSE;
2110 }
2111
2112 /*
2113 * @unimplemented
2114 */
2115 BOOL
2116 APIENTRY
2117 NtGdiPolyTextOutW(
2118 IN HDC hdc,
2119 IN POLYTEXTW *pptw,
2120 IN UINT cStr,
2121 IN DWORD dwCodePage)
2122 {
2123 UNIMPLEMENTED;
2124 return FALSE;
2125 }
2126
2127 /*
2128 * @unimplemented
2129 */
2130 NTSTATUS
2131 APIENTRY
2132 NtGdiGetStats(
2133 IN HANDLE hProcess,
2134 IN INT iIndex,
2135 IN INT iPidType,
2136 OUT PVOID pResults,
2137 IN UINT cjResultSize)
2138 {
2139 UNIMPLEMENTED;
2140 return STATUS_NOT_IMPLEMENTED;
2141 }
2142
2143
2144 /*
2145 * @unimplemented
2146 */
2147 ULONG
2148 APIENTRY
2149 NtGdiXLATEOBJ_cGetPalette(
2150 IN XLATEOBJ *pxlo,
2151 IN ULONG iPal,
2152 IN ULONG cPal,
2153 OUT ULONG *pPal)
2154 {
2155 UNIMPLEMENTED;
2156 return 0;
2157 }
2158
2159 /*
2160 * @unimplemented
2161 */
2162 ULONG
2163 APIENTRY
2164 NtGdiXLATEOBJ_iXlate(
2165 IN XLATEOBJ *pxlo,
2166 IN ULONG iColor)
2167 {
2168 UNIMPLEMENTED;
2169 return 0;
2170 }
2171
2172 /*
2173 * @unimplemented
2174 */
2175 HANDLE
2176 APIENTRY
2177 NtGdiXLATEOBJ_hGetColorTransform(
2178 IN XLATEOBJ *pxlo)
2179 {
2180 UNIMPLEMENTED;
2181 return 0;
2182 }
2183
2184 /*
2185 * @unimplemented
2186 */
2187 BOOL
2188 APIENTRY
2189 NtGdiXFORMOBJ_bApplyXform(
2190 IN XFORMOBJ *pxo,
2191 IN ULONG iMode,
2192 IN ULONG cPoints,
2193 IN PVOID pvIn,
2194 OUT PVOID pvOut)
2195 {
2196 UNIMPLEMENTED;
2197 return FALSE;
2198 }
2199
2200 /*
2201 * @unimplemented
2202 */
2203 ULONG
2204 APIENTRY
2205 NtGdiXFORMOBJ_iGetXform(
2206 IN XFORMOBJ *pxo,
2207 OUT OPTIONAL XFORML *pxform)
2208 {
2209 UNIMPLEMENTED;
2210 return 0;
2211 }
2212
2213 /*
2214 * @unimplemented
2215 */
2216 INT
2217 APIENTRY
2218 NtGdiSetupPublicCFONT(
2219 IN HDC hdc,
2220 IN OPTIONAL HFONT hf,
2221 IN ULONG ulAve)
2222 {
2223 UNIMPLEMENTED;
2224 return 0;
2225 }
2226
2227 /*
2228 * @unimplemented
2229 */
2230 HBRUSH
2231 APIENTRY
2232 NtGdiSetBrushAttributes(
2233 IN HBRUSH hbm,
2234 IN DWORD dwFlags)
2235 {
2236 UNIMPLEMENTED;
2237 return NULL;
2238 }
2239
2240 /*
2241 * @unimplemented
2242 */
2243 BOOL
2244 APIENTRY
2245 NtGdiSTROBJ_bEnum(
2246 IN STROBJ *pstro,
2247 OUT ULONG *pc,
2248 OUT PGLYPHPOS *ppgpos)
2249 {
2250 UNIMPLEMENTED;
2251 return FALSE;
2252 }
2253
2254 /*
2255 * @unimplemented
2256 */
2257 BOOL
2258 APIENTRY
2259 NtGdiSTROBJ_bEnumPositionsOnly(
2260 IN STROBJ *pstro,
2261 OUT ULONG *pc,
2262 OUT PGLYPHPOS *ppgpos)
2263 {
2264 UNIMPLEMENTED;
2265 return FALSE;
2266 }
2267
2268 /*
2269 * @unimplemented
2270 */
2271 BOOL
2272 APIENTRY
2273 NtGdiSTROBJ_bGetAdvanceWidths(
2274 IN STROBJ*pstro,
2275 IN ULONG iFirst,
2276 IN ULONG c,
2277 OUT POINTQF*pptqD)
2278 {
2279 UNIMPLEMENTED;
2280 return FALSE;
2281 }
2282
2283 /*
2284 * @unimplemented
2285 */
2286 VOID
2287 APIENTRY
2288 NtGdiSTROBJ_vEnumStart(
2289 IN STROBJ *pstro)
2290 {
2291 UNIMPLEMENTED;
2292 }
2293
2294 /*
2295 * @unimplemented
2296 */
2297 DWORD
2298 APIENTRY
2299 NtGdiSTROBJ_dwGetCodePage(
2300 IN STROBJ *pstro)
2301 {
2302 UNIMPLEMENTED;
2303 return 0;
2304 }
2305
2306 /*
2307 * @unimplemented
2308 */
2309 BOOL
2310 APIENTRY
2311 NtGdiGetEmbUFI(
2312 IN HDC hdc,
2313 OUT PUNIVERSAL_FONT_ID pufi,
2314 OUT OPTIONAL DESIGNVECTOR *pdv,
2315 OUT ULONG *pcjDV,
2316 OUT ULONG *pulBaseCheckSum,
2317 OUT FLONG *pfl,
2318 OUT KERNEL_PVOID *embFontID)
2319 {
2320 UNIMPLEMENTED;
2321 return FALSE;
2322 }
2323
2324 /*
2325 * @unimplemented
2326 */
2327 BOOL
2328 APIENTRY
2329 NtGdiGetUFIPathname(
2330 IN PUNIVERSAL_FONT_ID pufi,
2331 OUT OPTIONAL ULONG* pcwc,
2332 OUT OPTIONAL LPWSTR pwszPathname,
2333 OUT OPTIONAL ULONG* pcNumFiles,
2334 IN FLONG fl,
2335 OUT OPTIONAL BOOL *pbMemFont,
2336 OUT OPTIONAL ULONG *pcjView,
2337 OUT OPTIONAL PVOID pvView,
2338 OUT OPTIONAL BOOL *pbTTC,
2339 OUT OPTIONAL ULONG *piTTC)
2340 {
2341 UNIMPLEMENTED;
2342 return FALSE;
2343 }
2344
2345 /*
2346 * @unimplemented
2347 */
2348 ULONG
2349 APIENTRY
2350 NtGdiGetEmbedFonts(
2351 VOID)
2352 {
2353 UNIMPLEMENTED;
2354 return 0;
2355 }
2356
2357 /*
2358 * @unimplemented
2359 */
2360 BOOL
2361 APIENTRY
2362 NtGdiChangeGhostFont(
2363 IN KERNEL_PVOID *pfontID,
2364 IN BOOL bLoad)
2365 {
2366 UNIMPLEMENTED;
2367 return FALSE;
2368 }
2369
2370 /*
2371 * @unimplemented
2372 */
2373 BOOL
2374 APIENTRY
2375 NtGdiAddEmbFontToDC(
2376 IN HDC hdc,
2377 IN VOID **pFontID)
2378 {
2379 UNIMPLEMENTED;
2380 return FALSE;
2381 }
2382
2383 /*
2384 * @unimplemented
2385 */
2386 BOOL
2387 APIENTRY
2388 NtGdiGetWidthTable(
2389 IN HDC hdc,
2390 IN ULONG cSpecial,
2391 IN WCHAR *pwc,
2392 IN ULONG cwc,
2393 OUT USHORT *psWidth,
2394 OUT OPTIONAL WIDTHDATA *pwd,
2395 OUT FLONG *pflInfo)
2396 {
2397 UNIMPLEMENTED;
2398 return FALSE;
2399 }
2400
2401
2402 /*
2403 * @unimplemented
2404 */
2405 BOOL
2406 APIENTRY
2407 NtGdiIcmBrushInfo(
2408 IN HDC hdc,
2409 IN HBRUSH hbrush,
2410 IN OUT PBITMAPINFO pbmiDIB,
2411 IN OUT PVOID pvBits,
2412 IN OUT ULONG *pulBits,
2413 OUT OPTIONAL DWORD *piUsage,
2414 OUT OPTIONAL BOOL *pbAlreadyTran,
2415 IN ULONG Command)
2416 {
2417 UNIMPLEMENTED;
2418 return FALSE;
2419 }
2420
2421 /*
2422 * @implemented
2423 */
2424 BOOL
2425 APIENTRY
2426 NtGdiInit()
2427 {
2428 return TRUE;
2429 }
2430
2431 /*
2432 * @unimplemented
2433 */
2434 ULONG
2435 APIENTRY
2436 NtGdiMakeFontDir(
2437 IN FLONG flEmbed,
2438 OUT PBYTE pjFontDir,
2439 IN unsigned cjFontDir,
2440 IN LPWSTR pwszPathname,
2441 IN unsigned cjPathname)
2442 {
2443 UNIMPLEMENTED;
2444 return 0;
2445 }
2446
2447 /*
2448 * @unimplemented
2449 */
2450 BOOL
2451 APIENTRY
2452 NtGdiMonoBitmap(
2453 IN HBITMAP hbm)
2454 {
2455 UNIMPLEMENTED;
2456 return FALSE;
2457 }
2458
2459 /*
2460 * @unimplemented
2461 */
2462 HBITMAP
2463 APIENTRY
2464 NtGdiSetBitmapAttributes(
2465 IN HBITMAP hbm,
2466 IN DWORD dwFlags)
2467 {
2468 UNIMPLEMENTED;
2469 return NULL;
2470 }
2471
2472 /*
2473 * @unimplemented
2474 */
2475 ULONG
2476 APIENTRY
2477 NtGdiSetFontEnumeration(
2478 IN ULONG ulType)
2479 {
2480 UNIMPLEMENTED;
2481 return 0;
2482 }
2483
2484 /*
2485 * @unimplemented
2486 */
2487 BOOL
2488 APIENTRY
2489 NtGdiSetFontXform(
2490 IN HDC hdc,
2491 IN DWORD dwxScale,
2492 IN DWORD dwyScale)
2493 {
2494 UNIMPLEMENTED;
2495 return FALSE;
2496 }
2497
2498 /*
2499 * @unimplemented
2500 */
2501 BOOL
2502 APIENTRY
2503 NtGdiSetLinkedUFIs(
2504 IN HDC hdc,
2505 IN PUNIVERSAL_FONT_ID pufiLinks,
2506 IN ULONG uNumUFIs)
2507 {
2508 UNIMPLEMENTED;
2509 return FALSE;
2510 }
2511
2512 /*
2513 * @unimplemented
2514 */
2515 BOOL
2516 APIENTRY
2517 NtGdiSetMagicColors(
2518 IN HDC hdc,
2519 IN PALETTEENTRY peMagic,
2520 IN ULONG Index)
2521 {
2522 UNIMPLEMENTED;
2523 return FALSE;
2524 }
2525
2526 /*
2527 * @unimplemented
2528 */
2529 BOOL
2530 APIENTRY
2531 NtGdiUnloadPrinterDriver(
2532 IN LPWSTR pDriverName,
2533 IN ULONG cbDriverName)
2534 {
2535 UNIMPLEMENTED;
2536 return FALSE;
2537 }
2538
2539 /*
2540 * @implemented
2541 */
2542 BOOL
2543 APIENTRY
2544 NtGdiUnmapMemFont(
2545 IN PVOID pvView)
2546 {
2547 return TRUE;
2548 }
2549
2550 BOOL
2551 APIENTRY
2552 EngControlSprites(
2553 IN WNDOBJ *pwo,
2554 IN FLONG fl)
2555 {
2556 UNIMPLEMENTED;
2557 return FALSE;
2558 }
2559
2560 PVOID
2561 APIENTRY
2562 EngFntCacheAlloc(IN ULONG FastCheckSum,
2563 IN ULONG ulSize)
2564 {
2565 UNIMPLEMENTED;
2566 return NULL;
2567 }
2568
2569 VOID
2570 APIENTRY
2571 EngFntCacheFault(IN ULONG ulFastCheckSum,
2572 IN ULONG iFaultMode)
2573 {
2574 UNIMPLEMENTED;
2575 }
2576
2577 PVOID
2578 APIENTRY
2579 EngFntCacheLookUp(IN ULONG FastCheckSum,
2580 OUT PULONG pulSize)
2581 {
2582 UNIMPLEMENTED;
2583 return NULL;
2584 }
2585
2586 BOOLEAN
2587 APIENTRY
2588 EngNineGrid(IN SURFOBJ* pDestSurfaceObj,
2589 IN SURFOBJ* pSourceSurfaceObj,
2590 IN CLIPOBJ* pClipObj,
2591 IN XLATEOBJ* pXlateObj,
2592 IN RECTL* prclSource,
2593 IN RECTL* prclDest,
2594 PVOID pvUnknown1,
2595 PVOID pvUnknown2,
2596 DWORD dwReserved)
2597 {
2598 UNIMPLEMENTED;
2599 return FALSE;
2600 }