[T2EMBED] Leverage Wine Staging 1.7.55 code and put our remaining stubs into a proper...
authorAmine Khaldi <amine.khaldi@reactos.org>
Wed, 2 Dec 2015 21:04:16 +0000 (21:04 +0000)
committerAmine Khaldi <amine.khaldi@reactos.org>
Wed, 2 Dec 2015 21:04:16 +0000 (21:04 +0000)
svn path=/trunk/; revision=70237

reactos/dll/win32/t2embed/CMakeLists.txt
reactos/dll/win32/t2embed/main.c [new file with mode: 0644]
reactos/dll/win32/t2embed/stubs.c [moved from reactos/dll/win32/t2embed/t2embed.c with 60% similarity]
reactos/dll/win32/t2embed/t2embed.spec
reactos/media/doc/README.WINE

index ac92562..99beb76 100644 (file)
@@ -1,14 +1,15 @@
 
+add_definitions(-D__WINESRC__)
 include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
 spec2def(t2embed.dll t2embed.spec)
 
 list(APPEND SOURCE
-    t2embed.c
-    t2embed.rc
+    main.c
+    stubs.c
     ${CMAKE_CURRENT_BINARY_DIR}/t2embed_stubs.c
     ${CMAKE_CURRENT_BINARY_DIR}/t2embed.def)
 
-add_library(t2embed SHARED ${SOURCE})
+add_library(t2embed SHARED ${SOURCE} t2embed.rc)
 set_module_type(t2embed win32dll UNICODE)
 target_link_libraries(t2embed wine)
 add_importlibs(t2embed gdi32 user32 advapi32 version msvcrt kernel32 ntdll)
diff --git a/reactos/dll/win32/t2embed/main.c b/reactos/dll/win32/t2embed/main.c
new file mode 100644 (file)
index 0000000..6726c4e
--- /dev/null
@@ -0,0 +1,89 @@
+/*
+ *
+ * Copyright 2009 Austin English
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#define WIN32_NO_STATUS
+#include <stdarg.h>
+#include <windef.h>
+#include <winbase.h>
+#include <t2embapi.h>
+#include <wine/debug.h>
+
+WINE_DEFAULT_DEBUG_CHANNEL(t2embed);
+
+BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
+{
+
+    switch (fdwReason)
+    {
+        case DLL_WINE_PREATTACH:
+            return FALSE;    /* prefer native version */
+        case DLL_PROCESS_ATTACH:
+            DisableThreadLibraryCalls(hinstDLL);
+            break;
+    }
+
+    return TRUE;
+}
+
+LONG WINAPI TTLoadEmbeddedFont(HANDLE *phFontReference, ULONG ulFlags,
+                               ULONG *pulPrivStatus, ULONG ulPrivs,
+                               ULONG *pulStatus, READEMBEDPROC lpfnReadFromStream,
+                               LPVOID lpvReadStream, LPWSTR szWinFamilyName,
+                               LPSTR szMacFamilyName, TTLOADINFO *pTTLoadInfo)
+{
+    FIXME("(%p 0x%08x %p 0x%08x %p %p %p %s %s %p) stub\n", phFontReference,
+          ulFlags, pulPrivStatus, ulPrivs, pulStatus, lpfnReadFromStream,
+          lpvReadStream, debugstr_w(szWinFamilyName), szMacFamilyName,
+          pTTLoadInfo);
+
+    return E_API_NOTIMPL;
+}
+
+LONG WINAPI TTEmbedFont(HDC hDC, ULONG ulFlags, ULONG ulCharSet, ULONG *pulPrivStatus,
+                         ULONG *pulStatus, WRITEEMBEDPROC lpfnWriteToStream, LPVOID lpvWriteStream,
+                         USHORT *pusCharCodeSet, USHORT usCharCodeCount, USHORT usLanguage,
+                         TTEMBEDINFO *pTTEmbedInfo)
+{
+    FIXME("(%p 0x%08x 0x%08x %p %p %p %p %p %u %u %p) stub\n", hDC,
+          ulFlags, ulCharSet, pulPrivStatus, pulStatus, lpfnWriteToStream,
+          lpvWriteStream, pusCharCodeSet, usCharCodeCount, usLanguage,
+          pTTEmbedInfo);
+
+    return E_API_NOTIMPL;
+}
+
+LONG WINAPI TTGetEmbeddingType(HDC hDC, ULONG *status)
+{
+    FIXME("(%p %p) stub\n", hDC, status);
+    if (status) *status = EMBED_NOEMBEDDING;
+    return E_API_NOTIMPL;
+}
+
+LONG WINAPI TTIsEmbeddingEnabled(HDC hDC, BOOL *enabled)
+{
+    FIXME("(%p %p) stub\n", hDC, enabled);
+    if (enabled) *enabled = FALSE;
+    return E_API_NOTIMPL;
+}
+
+LONG WINAPI TTDeleteEmbeddedFont(HANDLE hFontReference, ULONG flags, ULONG *status)
+{
+    FIXME("(%p 0x%08x %p) stub\n", hFontReference, flags, status);
+    return E_API_NOTIMPL;
+}
similarity index 60%
rename from reactos/dll/win32/t2embed/t2embed.c
rename to reactos/dll/win32/t2embed/stubs.c
index 8abb895..8a9f958 100644 (file)
@@ -1,19 +1,14 @@
 /*
  * PROJECT:         Font Embedding Dll
- * FILE:            dll\win32\t2embed\t2embed.c
- * PURPOSE:         Main file
+ * FILE:            dll\win32\t2embed\stubs.c
+ * PURPOSE:         Stubs file
  * PROGRAMMERS:     Dmitry Chapyshev (dmitry@reactos.org)
  */
 
 #define WIN32_NO_STATUS
-
-#include <stdarg.h>
 #include <windef.h>
-#include <winbase.h>
 #include <t2embapi.h>
-#include <wine/debug.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(t2embed);
+#include <debug.h>
 
 LONG
 WINAPI
@@ -28,34 +23,6 @@ TTCharToUnicode(HDC hDC,
     return E_NONE;
 }
 
-LONG
-WINAPI
-TTDeleteEmbeddedFont(HANDLE hFontReference,
-                     ULONG ulFlags,
-                     ULONG* pulStatus)
-{
-    UNIMPLEMENTED;
-    return E_NONE;
-}
-
-LONG
-WINAPI
-TTEmbedFont(HDC hDC,
-            ULONG ulFlags,
-            ULONG ulCharSet,
-            ULONG* pulPrivStatus,
-            ULONG* pulStatus,
-            WRITEEMBEDPROC lpfnWriteToStream,
-            LPVOID lpvWriteStream,
-            USHORT* pusCharCodeSet,
-            USHORT usCharCodeCount,
-            USHORT usLanguage,
-            TTEMBEDINFO* pTTEmbedInfo)
-{
-    UNIMPLEMENTED;
-    return E_NONE;
-}
-
 LONG
 WINAPI
 TTEmbedFontFromFileA(HDC hDC,
@@ -99,24 +66,6 @@ TTGetEmbeddedFontInfo(ULONG ulFlags,
     return E_NONE;
 }
 
-LONG
-WINAPI
-TTGetEmbeddingType(HDC hDC,
-                   ULONG* pulPrivStatus)
-{
-    UNIMPLEMENTED;
-    return E_NONE;
-}
-
-LONG
-WINAPI
-TTIsEmbeddingEnabled(HDC hDC,
-                     BOOL* pbEnabled)
-{
-    UNIMPLEMENTED;
-    return E_NONE;
-}
-
 LONG
 WINAPI
 TTIsEmbeddingEnabledForFacename(LPSTR lpszFacename,
@@ -126,23 +75,6 @@ TTIsEmbeddingEnabledForFacename(LPSTR lpszFacename,
     return E_NONE;
 }
 
-LONG
-WINAPI
-TTLoadEmbeddedFont(HANDLE *phFontReference,
-                   ULONG ulFlags,
-                   ULONG* pulPrivStatus,
-                   ULONG ulPrivs,
-                   ULONG* pulStatus,
-                   READEMBEDPROC lpfnReadFromStream,
-                   LPVOID lpvReadStream,
-                   LPWSTR szWinFamilyName,
-                   LPSTR szMacFamilyName, 
-                   TTLOADINFO* pTTLoadInfo)
-{
-    UNIMPLEMENTED;
-    return E_NONE;
-}
-
 LONG
 WINAPI
 TTRunValidationTests(HDC hDC,
@@ -190,20 +122,3 @@ TTGetNewFontName(HANDLE* phFontReference,
     UNIMPLEMENTED;
     return E_NONE;
 }
-
-
-BOOL
-WINAPI
-DllMain(IN HINSTANCE hinstDLL,
-        IN DWORD dwReason,
-        IN LPVOID lpvReserved)
-{
-    switch (dwReason)
-    {
-        case DLL_PROCESS_ATTACH:
-            DisableThreadLibraryCalls(hinstDLL);
-            break;
-    }
-
-    return TRUE;
-}
index 364f71b..4c3ef6f 100644 (file)
 @ stdcall TTRunValidationTests(ptr ptr)
 @ stub _TTCharToUnicode@24
 @ stub _TTDeleteEmbeddedFont@12
-@ stub _TTEmbedFont@44
+@ stdcall _TTEmbedFont@44(long long long ptr ptr ptr ptr ptr long long ptr) TTEmbedFont
 @ stub _TTEmbedFontFromFileA@52
 @ stub _TTEnableEmbeddingForFacename@8
 @ stub _TTGetEmbeddedFontInfo@28
-@ stub _TTGetEmbeddingType@8
-@ stub _TTIsEmbeddingEnabled@8
+@ stdcall _TTGetEmbeddingType@8(long ptr) TTGetEmbeddingType
+@ stdcall _TTIsEmbeddingEnabled@8(long ptr) TTIsEmbeddingEnabled
 @ stub _TTIsEmbeddingEnabledForFacename@8
-@ stub _TTLoadEmbeddedFont@40
+@ stdcall _TTLoadEmbeddedFont@40(ptr long ptr long ptr ptr ptr wstr str ptr) TTLoadEmbeddedFont
 @ stub _TTRunValidationTests@8
 @ stdcall TTEmbedFontEx(ptr long long ptr ptr ptr ptr ptr long long ptr)
 @ stdcall TTRunValidationTestsEx(ptr ptr)
index 92d2697..12aa704 100644 (file)
@@ -187,6 +187,7 @@ reactos/dll/win32/stdole2.tlb         # Synced to WineStaging-1.7.55
 reactos/dll/win32/stdole32.tlb        # Synced to WineStaging-1.7.55
 reactos/dll/win32/sti                 # Synced to WineStaging-1.7.55
 reactos/dll/win32/sxs                 # Synced to WineStaging-1.7.55
+reactos/dll/win32/t2embed             # Synced to WineStaging-1.7.55
 reactos/dll/win32/tapi32              # Synced to WineStaging-1.7.55
 reactos/dll/win32/traffic             # Synced to WineStaging-1.7.55
 reactos/dll/win32/twain_32            # Synced to WineStaging-1.7.55