Module: wine Branch: master Commit: b21ca5628e24c0bc6c04ac9a2cdd04246f150383 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b21ca5628e24c0bc6c04ac9a2c...
Author: Aric Stewart aric@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)