Aric Stewart : usp10: Add Tibetan Script.
Alexandre Julliard
julliard at winehq.org
Wed Aug 25 12:35:04 CDT 2010
Module: wine
Branch: master
Commit: 29d896e40a4c21e486a5099097b9116b2ff0709f
URL: http://source.winehq.org/git/wine.git/?a=commit;h=29d896e40a4c21e486a5099097b9116b2ff0709f
Author: Aric Stewart <aric at 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)
More information about the wine-cvs
mailing list