[v2 4/6] winhlp32: prepare winhlp32 for more font types

Jean-Christophe Cardot wine at cardot.net
Sun Apr 10 15:06:10 CDT 2016


Patch 4: prepare winhlp32 for more font types (mvb font, new font)

Signed-off-by: Jean-Christophe Cardot <wine at cardot.net>
---
 programs/winhlp32/hlpfile.c | 20 ++++++++++++++++++++
 programs/winhlp32/hlpfile.h |  3 +++
 2 files changed, 23 insertions(+)

diff --git a/programs/winhlp32/hlpfile.c b/programs/winhlp32/hlpfile.c
index b3106ff..2e455b2 100644
--- a/programs/winhlp32/hlpfile.c
+++ b/programs/winhlp32/hlpfile.c
@@ -1865,6 +1865,26 @@ static BOOL HLPFILE_ReadFont(HLPFILE* hlpfile)
     hlpfile->fonts = HeapAlloc(GetProcessHeap(), 0, sizeof(HLPFILE_FONT) * dscr_num);
 
     len = (dscr_offset - face_offset) / face_num;
+
+    /* mvb font */
+    if (face_offset >= 16)
+    {
+        hlpfile->scale = 1L;
+        hlpfile->rounderr = 0;
+        WINE_FIXME("mvb font: not implemented\n");
+        return FALSE;
+    }
+    /* new font */
+    if (face_offset >= 12)
+    {
+        hlpfile->scale = 1L;
+        hlpfile->rounderr = 0;
+        WINE_FIXME("new font: not implemented\n");
+        return FALSE;
+    }
+    /* old font */
+    hlpfile->scale = 10L;
+    hlpfile->rounderr = 5;
 /* EPP     for (i = face_offset; i < dscr_offset; i += len) */
 /* EPP         WINE_FIXME("[%d]: %*s\n", i / len, len, ref + i); */
     for (i = 0; i < dscr_num; i++)
diff --git a/programs/winhlp32/hlpfile.h b/programs/winhlp32/hlpfile.h
index 6c40c3a..127764b 100644
--- a/programs/winhlp32/hlpfile.h
+++ b/programs/winhlp32/hlpfile.h
@@ -149,6 +149,9 @@ typedef struct tagHlpFileFile
     COLORREF                    popup_color;
 
     LPSTR                       help_on_file;
+
+    long                        scale;
+    int                         rounderr;
 } HLPFILE;
 
 /*
-- 
2.7.4




More information about the wine-patches mailing list