[T2EMBED] Leverage Wine Staging 1.7.55 code and put our remaining stubs into a proper...
[reactos.git] / reactos / dll / win32 / t2embed / main.c
1 /*
2 *
3 * Copyright 2009 Austin English
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
18 */
19
20 #define WIN32_NO_STATUS
21 #include <stdarg.h>
22 #include <windef.h>
23 #include <winbase.h>
24 #include <t2embapi.h>
25 #include <wine/debug.h>
26
27 WINE_DEFAULT_DEBUG_CHANNEL(t2embed);
28
29 BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
30 {
31
32 switch (fdwReason)
33 {
34 case DLL_WINE_PREATTACH:
35 return FALSE; /* prefer native version */
36 case DLL_PROCESS_ATTACH:
37 DisableThreadLibraryCalls(hinstDLL);
38 break;
39 }
40
41 return TRUE;
42 }
43
44 LONG WINAPI TTLoadEmbeddedFont(HANDLE *phFontReference, ULONG ulFlags,
45 ULONG *pulPrivStatus, ULONG ulPrivs,
46 ULONG *pulStatus, READEMBEDPROC lpfnReadFromStream,
47 LPVOID lpvReadStream, LPWSTR szWinFamilyName,
48 LPSTR szMacFamilyName, TTLOADINFO *pTTLoadInfo)
49 {
50 FIXME("(%p 0x%08x %p 0x%08x %p %p %p %s %s %p) stub\n", phFontReference,
51 ulFlags, pulPrivStatus, ulPrivs, pulStatus, lpfnReadFromStream,
52 lpvReadStream, debugstr_w(szWinFamilyName), szMacFamilyName,
53 pTTLoadInfo);
54
55 return E_API_NOTIMPL;
56 }
57
58 LONG WINAPI TTEmbedFont(HDC hDC, ULONG ulFlags, ULONG ulCharSet, ULONG *pulPrivStatus,
59 ULONG *pulStatus, WRITEEMBEDPROC lpfnWriteToStream, LPVOID lpvWriteStream,
60 USHORT *pusCharCodeSet, USHORT usCharCodeCount, USHORT usLanguage,
61 TTEMBEDINFO *pTTEmbedInfo)
62 {
63 FIXME("(%p 0x%08x 0x%08x %p %p %p %p %p %u %u %p) stub\n", hDC,
64 ulFlags, ulCharSet, pulPrivStatus, pulStatus, lpfnWriteToStream,
65 lpvWriteStream, pusCharCodeSet, usCharCodeCount, usLanguage,
66 pTTEmbedInfo);
67
68 return E_API_NOTIMPL;
69 }
70
71 LONG WINAPI TTGetEmbeddingType(HDC hDC, ULONG *status)
72 {
73 FIXME("(%p %p) stub\n", hDC, status);
74 if (status) *status = EMBED_NOEMBEDDING;
75 return E_API_NOTIMPL;
76 }
77
78 LONG WINAPI TTIsEmbeddingEnabled(HDC hDC, BOOL *enabled)
79 {
80 FIXME("(%p %p) stub\n", hDC, enabled);
81 if (enabled) *enabled = FALSE;
82 return E_API_NOTIMPL;
83 }
84
85 LONG WINAPI TTDeleteEmbeddedFont(HANDLE hFontReference, ULONG flags, ULONG *status)
86 {
87 FIXME("(%p 0x%08x %p) stub\n", hFontReference, flags, status);
88 return E_API_NOTIMPL;
89 }