[PATCH] Implement GdipGetLogFontA
Adam Petaccia
adam at tpetaccia.com
Sun Nov 9 12:03:06 CST 2008
---
dlls/gdiplus/font.c | 25 +++++++++++++++++++++++++
dlls/gdiplus/gdiplus.spec | 2 +-
2 files changed, 26 insertions(+), 1 deletions(-)
diff --git a/dlls/gdiplus/font.c b/dlls/gdiplus/font.c
index 32713c7..2477f7b 100644
--- a/dlls/gdiplus/font.c
+++ b/dlls/gdiplus/font.c
@@ -368,6 +368,31 @@ GpStatus WINGDIPAPI GdipGetFontUnit(GpFont *font, Unit *unit)
}
/*******************************************************************************
+ * GdipGetLogFontA [GDIPLUS.@]
+ */
+GpStatus WINGDIPAPI GdipGetLogFontA(GpFont *font, GpGraphics *graphics,
+ LOGFONTA *lfa)
+{
+ INT bytesWritten;
+ /* FIXME: use graphics */
+ if(!(font && graphics && lfa))
+ return InvalidParameter;
+
+ memcpy(&font->lfw, lfa, sizeof(LOGFONTA));
+ bytesWritten = WideCharToMultiByte(CP_ACP, 0, font->lfw.lfFaceName, -1,
+ lfa->lfFaceName, LF_FACESIZE, NULL, NULL);
+
+ if (bytesWritten == 0)
+ {
+ ERR("Could not convert from WideChar to Multibyte with error %d\n",
+ GetLastError());
+ return GenericError;
+ }
+
+ return Ok;
+}
+
+/*******************************************************************************
* GdipGetLogFontW [GDIPLUS.@]
*/
GpStatus WINGDIPAPI GdipGetLogFontW(GpFont *font, GpGraphics *graphics,
diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index a2790a3..0e7ac5c 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -311,7 +311,7 @@
@ stdcall GdipGetLineSpacing(ptr long ptr)
@ stub GdipGetLineTransform
@ stdcall GdipGetLineWrapMode(ptr ptr)
-@ stub GdipGetLogFontA
+@ stdcall GdipGetLogFontA(ptr ptr ptr)
@ stdcall GdipGetLogFontW(ptr ptr ptr)
@ stdcall GdipGetMatrixElements(ptr ptr)
@ stub GdipGetMetafileDownLevelRasterizationLimit
--
1.5.6.3
More information about the wine-patches
mailing list