Hans Leidekker : usp10: Implement ScriptGetLogicalWidths.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Feb 19 07:02:10 CST 2007


Module: wine
Branch: master
Commit: df2c8a2551c0fe16965248418e41f871eb3a159b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=df2c8a2551c0fe16965248418e41f871eb3a159b

Author: Hans Leidekker <hans at it.vu.nl>
Date:   Sun Feb 18 19:38:07 2007 +0100

usp10: Implement ScriptGetLogicalWidths.

---

 dlls/usp10/usp10.c    |   32 ++++++++++++++++++++++++++++++++
 dlls/usp10/usp10.spec |    2 +-
 2 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/dlls/usp10/usp10.c b/dlls/usp10/usp10.c
index c3b0a17..b2b4b3f 100644
--- a/dlls/usp10/usp10.c
+++ b/dlls/usp10/usp10.c
@@ -1682,3 +1682,35 @@ HRESULT WINAPI ScriptStringGetOrder(SCRIPT_STRING_ANALYSIS ssa, UINT *order)
 
     return S_OK;
 }
+
+/***********************************************************************
+ *      ScriptGetLogicalWidths (USP10.@)
+ *
+ * Convert advance widths to logical widths.
+ *
+ * PARAMS
+ *  sa          [I] Script analysis.
+ *  nbchars     [I] Number of characters.
+ *  nbglyphs    [I] Number of glyphs.
+ *  glyph_width [I] Array of glyph widths.
+ *  log_clust   [I] Array of logical clusters.
+ *  sva         [I] Visual attributes.
+ *  widths      [O] Array of logical widths.
+ *
+ * RETURNS
+ *  Success: S_OK
+ *  Failure: a non-zero HRESULT.
+ */
+HRESULT WINAPI ScriptGetLogicalWidths(const SCRIPT_ANALYSIS *sa, int nbchars, int nbglyphs,
+                                      const int *glyph_width, const WORD *log_clust,
+                                      const SCRIPT_VISATTR *sva, int *widths)
+{
+    int i;
+
+    TRACE("(%p, %d, %d, %p, %p, %p, %p)\n",
+          sa, nbchars, nbglyphs, glyph_width, log_clust, sva, widths);
+
+    /* FIXME */
+    for (i = 0; i < nbchars; i++) widths[i] = glyph_width[i];
+    return S_OK;
+}
diff --git a/dlls/usp10/usp10.spec b/dlls/usp10/usp10.spec
index df07f43..ac1506e 100644
--- a/dlls/usp10/usp10.spec
+++ b/dlls/usp10/usp10.spec
@@ -8,7 +8,7 @@
 @ stdcall ScriptGetCMap(ptr ptr ptr long long ptr)
 @ stdcall ScriptGetFontProperties(long ptr ptr)
 @ stdcall ScriptGetGlyphABCWidth(ptr ptr long ptr)
-@ stub ScriptGetLogicalWidths
+@ stdcall ScriptGetLogicalWidths(ptr long long ptr ptr ptr ptr)
 @ stdcall ScriptGetProperties(ptr long)
 @ stdcall ScriptIsComplex(wstr long long)
 @ stdcall ScriptItemize(wstr long long ptr ptr ptr ptr)




More information about the wine-cvs mailing list