Aric Stewart : usp10: Add Cyrillic script.

Alexandre Julliard julliard at winehq.org
Tue Aug 24 11:09:18 CDT 2010


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

Author: Aric Stewart <aric at codeweavers.com>
Date:   Mon Aug 23 13:58:07 2010 -0500

usp10: Add Cyrillic script.

---

 dlls/usp10/shape.c          |    1 +
 dlls/usp10/usp10.c          |   11 ++++++++++-
 dlls/usp10/usp10_internal.h |    1 +
 3 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/dlls/usp10/shape.c b/dlls/usp10/shape.c
index 9140453..6a8db33 100644
--- a/dlls/usp10/shape.c
+++ b/dlls/usp10/shape.c
@@ -307,6 +307,7 @@ static const ScriptShapeData ShapingData[] =
     {{ arabic_features, 6}, "arab", ContextualShape_Arabic},
     {{ NULL, 0}, "thaa", NULL},
     {{ standard_features, 2}, "grek", NULL},
+    {{ standard_features, 2}, "cyrl", NULL},
 };
 
 static INT GSUB_is_glyph_covered(LPCVOID table , UINT glyph)
diff --git a/dlls/usp10/usp10.c b/dlls/usp10/usp10.c
index 93f33ea..af82180 100644
--- a/dlls/usp10/usp10.c
+++ b/dlls/usp10/usp10.c
@@ -58,6 +58,9 @@ static const scriptRange scriptRanges[] = {
     { Script_Latin,      0x00,   0x2af ,  Script_Numeric, Script_Punctuation},
     /* Greek: U+0370–U+03FF */
     { Script_Greek,      0x370,  0x3ff,  0, 0},
+    /* Cyrillic: U+0400–U+04FF */
+    /* Cyrillic Supplement: U+0500–U+052F */
+    { Script_Cyrillic,   0x400,  0x52f,  0, 0},
     /* Hebrew: U+0590–U+05FF */
     { Script_Hebrew,     0x590,  0x5ff,  0, 0},
     /* Arabic: U+0600–U+06FF */
@@ -80,6 +83,10 @@ static const scriptRange scriptRanges[] = {
     { Script_Greek,      0x1f00, 0x1fff, 0, 0},
     /* Latin Extended-C: U+2C60–U+2C7F */
     { Script_Latin,      0x2c60, 0x2c7f, 0, 0},
+    /* Cyrillic Extended-A: U+2DE0–U+2DFF */
+    { Script_Cyrillic,   0x2de0, 0x2dff,  0, 0},
+    /* Cyrillic Extended-B: U+A640–U+A69F */
+    { Script_Cyrillic,   0xa640, 0xa69f,  0, 0},
     /* Modifier Tone Letters: U+A700–U+A71F */
     /* Latin Extended-D: U+A720–U+A7FF */
     { Script_Latin,      0xa700, 0xa7ff, 0, 0},
@@ -129,6 +136,8 @@ static const scriptData scriptInformation[] = {
      {LANG_DIVEHI, 0, 1, 0, 1, DEFAULT_CHARSET, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
     {{Script_Greek, 0, 0, 0, 0, 0, 0, { 0,0,0,0,0,0,0,0,0,0,0}},
      {LANG_GREEK, 0, 0, 0, 0, GREEK_CHARSET, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
+    {{Script_Cyrillic, 0, 0, 0, 0, 0, 0, { 0,0,0,0,0,0,0,0,0,0,0}},
+     {LANG_RUSSIAN, 0, 0, 0, 0, RUSSIAN_CHARSET, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
 };
 
 static const SCRIPT_PROPERTIES *script_props[] =
@@ -139,7 +148,7 @@ static const SCRIPT_PROPERTIES *script_props[] =
     &scriptInformation[6].props, &scriptInformation[7].props,
     &scriptInformation[8].props, &scriptInformation[9].props,
     &scriptInformation[10].props, &scriptInformation[11].props,
-    &scriptInformation[12].props
+    &scriptInformation[12].props, &scriptInformation[13].props
 };
 
 typedef struct {
diff --git a/dlls/usp10/usp10_internal.h b/dlls/usp10/usp10_internal.h
index 94699d9..436af4d 100644
--- a/dlls/usp10/usp10_internal.h
+++ b/dlls/usp10/usp10_internal.h
@@ -31,6 +31,7 @@
 #define Script_Persian 10
 #define Script_Thaana  11
 #define Script_Greek   12
+#define Script_Cyrillic   13
 
 #define GLYPH_BLOCK_SHIFT 8
 #define GLYPH_BLOCK_SIZE  (1UL << GLYPH_BLOCK_SHIFT)




More information about the wine-cvs mailing list