Module: wine Branch: master Commit: 29d896e40a4c21e486a5099097b9116b2ff0709f URL: http://source.winehq.org/git/wine.git/?a=commit;h=29d896e40a4c21e486a5099097...
Author: Aric Stewart aric@codeweavers.com Date: Tue Aug 24 11:55:18 2010 -0500
usp10: Add Tibetan Script.
---
dlls/usp10/shape.c | 8 ++++++++ dlls/usp10/usp10.c | 9 ++++++++- dlls/usp10/usp10_internal.h | 2 ++ 3 files changed, 18 insertions(+), 1 deletions(-)
diff --git a/dlls/usp10/shape.c b/dlls/usp10/shape.c index 81809af..cea9415 100644 --- a/dlls/usp10/shape.c +++ b/dlls/usp10/shape.c @@ -298,6 +298,12 @@ static OPENTYPE_FEATURE_RECORD sinhala_features[] = { 0x73747370 /*psts*/, 1}, };
+static OPENTYPE_FEATURE_RECORD tibetan_features[] = +{ + { 0x73766261 /*abvs*/, 1}, + { 0x73776c62 /*blws*/, 1}, +}; + typedef struct ScriptShapeDataTag { TEXTRANGE_PROPERTIES defaultTextRange; CHAR otTag[5]; @@ -324,6 +330,8 @@ static const ScriptShapeData ShapingData[] = {{ standard_features, 2}, "armn", NULL}, {{ standard_features, 2}, "geor", NULL}, {{ sinhala_features, 7}, "sinh", NULL}, + {{ tibetan_features, 2}, "tibt", NULL}, + {{ tibetan_features, 2}, "tibt", NULL}, };
static INT GSUB_is_glyph_covered(LPCVOID table , UINT glyph) diff --git a/dlls/usp10/usp10.c b/dlls/usp10/usp10.c index 235bb8a..23695cd 100644 --- a/dlls/usp10/usp10.c +++ b/dlls/usp10/usp10.c @@ -79,6 +79,8 @@ static const scriptRange scriptRanges[] = { { Script_Thaana, 0x780, 0x7bf, 0, 0}, /* Sinhala: U+0D80–U+0DFF */ { Script_Sinhala, 0xd80, 0xdff, 0, 0}, + /* Tibetan: U+0F00–U+0FFF */ + { Script_Tibetan, 0xf00, 0xfff, Script_Tibetan_Numeric, 0}, /* Georgian: U+10A0–U+10FF */ { Script_Georgian, 0x10a0, 0x10ff, 0, 0}, /* Phonetic Extensions: U+1D00–U+1DBF */ @@ -154,6 +156,10 @@ static const scriptData scriptInformation[] = { {LANG_GEORGIAN, 0, 0, 0, 0, ANSI_CHARSET, 0, 0, 0, 0, 0, 0, 1, 0, 0}}, {{Script_Sinhala, 0, 0, 0, 0, 0, 0, { 0,0,0,0,0,0,0,0,0,0,0}}, {LANG_SINHALESE, 0, 1, 0, 1, DEFAULT_CHARSET, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, + {{Script_Tibetan, 0, 0, 0, 0, 0, 0, { 0,0,0,0,0,0,0,0,0,0,0}}, + {LANG_TIBETAN, 0, 1, 1, 1, DEFAULT_CHARSET, 0, 0, 1, 0, 1, 0, 0, 0, 0}}, + {{Script_Tibetan_Numeric, 0, 0, 0, 0, 0, 0, { 0,0,0,0,0,0,0,0,0,0,0}}, + {LANG_TIBETAN, 1, 1, 0, 0, DEFAULT_CHARSET, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, };
static const SCRIPT_PROPERTIES *script_props[] = @@ -166,7 +172,8 @@ static const SCRIPT_PROPERTIES *script_props[] = &scriptInformation[10].props, &scriptInformation[11].props, &scriptInformation[12].props, &scriptInformation[13].props, &scriptInformation[14].props, &scriptInformation[15].props, - &scriptInformation[16].props + &scriptInformation[16].props, &scriptInformation[17].props, + &scriptInformation[18].props };
typedef struct { diff --git a/dlls/usp10/usp10_internal.h b/dlls/usp10/usp10_internal.h index b41de7d..bc3fd57 100644 --- a/dlls/usp10/usp10_internal.h +++ b/dlls/usp10/usp10_internal.h @@ -36,6 +36,8 @@ #define Script_Georgian 15 /* Unicode Chapter 10 */ #define Script_Sinhala 16 +#define Script_Tibetan 17 +#define Script_Tibetan_Numeric 18
#define GLYPH_BLOCK_SHIFT 8 #define GLYPH_BLOCK_SIZE (1UL << GLYPH_BLOCK_SHIFT)