mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-15 09:45:26 +00:00
ICU-1221 change LayoutEngine to use the same script enumeration as
UScriptCode X-SVN-Rev: 6231
This commit is contained in:
parent
4c453dd177
commit
e32b47f79a
6 changed files with 163 additions and 202 deletions
|
@ -233,15 +233,48 @@ const IndicClassTable mlymClassTable = {0x0D00, 0x0D6F, 3, MLYM_SCRIPT_FLAGS, ml
|
|||
// IndicClassTable addresses
|
||||
//
|
||||
const IndicClassTable *indicClassTables[] = {
|
||||
&devaClassTable, // 'deva'
|
||||
&bengClassTable, // 'beng'
|
||||
&punjClassTable, // 'punj' punjabi == gurmukhi
|
||||
&gujrClassTable, // 'gujr'
|
||||
&oryaClassTable, // 'orya'
|
||||
&tamlClassTable, // 'taml'
|
||||
&teluClassTable, // 'telu'
|
||||
&kndaClassTable, // 'knda'
|
||||
&mlymClassTable // 'mlyn'
|
||||
NULL, /* 'zyyy' (COMMON) */
|
||||
NULL, /* 'qaai' (INHERITED) */
|
||||
NULL, /* 'arab' (ARABIC) */
|
||||
NULL, /* 'armn' (ARMENIAN) */
|
||||
&bengClassTable, /* 'beng' (BENGALI) */
|
||||
NULL, /* 'bopo' (BOPOMOFO) */
|
||||
NULL, /* 'cher' (CHEROKEE) */
|
||||
NULL, /* 'qaac' (COPTIC) */
|
||||
NULL, /* 'cyrl' (CYRILLIC) */
|
||||
NULL, /* 'dsrt' (DESERET) */
|
||||
&devaClassTable, /* 'deva' (DEVANAGARI) */
|
||||
NULL, /* 'ethi' (ETHIOPIC) */
|
||||
NULL, /* 'geor' (GEORGIAN) */
|
||||
NULL, /* 'goth' (GOTHIC) */
|
||||
NULL, /* 'grek' (GREEK) */
|
||||
&gujrClassTable, /* 'gujr' (GUJARATI) */
|
||||
&punjClassTable, /* 'guru' (GURMUKHI) */
|
||||
NULL, /* 'hani' (HAN) */
|
||||
NULL, /* 'hang' (HANGUL) */
|
||||
NULL, /* 'hebr' (HEBREW) */
|
||||
NULL, /* 'hira' (HIRAGANA) */
|
||||
&kndaClassTable, /* 'knda' (KANNADA) */
|
||||
NULL, /* 'kata' (KATAKANA) */
|
||||
NULL, /* 'khmr' (KHMER) */
|
||||
NULL, /* 'laoo' (LAO) */
|
||||
NULL, /* 'latn' (LATIN) */
|
||||
&mlymClassTable, /* 'mlym' (MALAYALAM) */
|
||||
NULL, /* 'mong' (MONGOLIAN) */
|
||||
NULL, /* 'mymr' (MYANMAR) */
|
||||
NULL, /* 'ogam' (OGHAM) */
|
||||
NULL, /* 'ital' (OLD-ITALIC) */
|
||||
&oryaClassTable, /* 'orya' (ORIYA) */
|
||||
NULL, /* 'runr' (RUNIC) */
|
||||
NULL, /* 'sinh' (SINHALA) */
|
||||
NULL, /* 'syrc' (SYRIAC) */
|
||||
&tamlClassTable, /* 'taml' (TAMIL) */
|
||||
&teluClassTable, /* 'telu' (TELUGU) */
|
||||
NULL, /* 'thaa' (THAANA) */
|
||||
NULL, /* 'thai' (THAI) */
|
||||
NULL, /* 'tibt' (TIBETAN) */
|
||||
NULL, /* 'cans' (CANADIAN-ABORIGINAL) */
|
||||
NULL /* 'yiii' (YI) */
|
||||
};
|
||||
|
||||
IndicClassTable::CharClass IndicClassTable::getCharClass(LEUnicode ch) const
|
||||
|
@ -263,11 +296,11 @@ IndicClassTable::CharClass IndicClassTable::getCharClass(LEUnicode ch) const
|
|||
|
||||
const IndicClassTable *IndicClassTable::getScriptClassTable(le_int32 scriptCode)
|
||||
{
|
||||
if (scriptCode < devaScriptCode || scriptCode > mlymScriptCode) {
|
||||
return NULL;
|
||||
}
|
||||
if (scriptCode < 0 || scriptCode >= scriptCodeCount) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return indicClassTables[scriptCode - devaScriptCode];
|
||||
return indicClassTables[scriptCode];
|
||||
}
|
||||
|
||||
le_int32 IndicReordering::getWorstCaseExpansion(le_int32 scriptCode)
|
||||
|
|
|
@ -12,49 +12,50 @@
|
|||
#define __LESCRIPTS_H
|
||||
|
||||
enum ScriptCodes {
|
||||
zyyyScriptCode = -1,
|
||||
qaaiScriptCode = 0,
|
||||
latnScriptCode = 1,
|
||||
grekScriptCode = 2,
|
||||
cyrlScriptCode = 3,
|
||||
armnScriptCode = 4,
|
||||
hebrScriptCode = 5,
|
||||
arabScriptCode = 6,
|
||||
syrcScriptCode = 7,
|
||||
thaaScriptCode = 8,
|
||||
devaScriptCode = 9,
|
||||
bengScriptCode = 10,
|
||||
guruScriptCode = 11,
|
||||
gujrScriptCode = 12,
|
||||
oryaScriptCode = 13,
|
||||
tamlScriptCode = 14,
|
||||
teluScriptCode = 15,
|
||||
kndaScriptCode = 16,
|
||||
mlymScriptCode = 17,
|
||||
sinhScriptCode = 18,
|
||||
thaiScriptCode = 19,
|
||||
laooScriptCode = 20,
|
||||
tibtScriptCode = 21,
|
||||
mymrScriptCode = 22,
|
||||
georScriptCode = 23,
|
||||
hangScriptCode = 24,
|
||||
ethiScriptCode = 25,
|
||||
cherScriptCode = 26,
|
||||
cansScriptCode = 27,
|
||||
ogamScriptCode = 28,
|
||||
runrScriptCode = 29,
|
||||
khmrScriptCode = 30,
|
||||
mongScriptCode = 31,
|
||||
hiraScriptCode = 32,
|
||||
kataScriptCode = 33,
|
||||
bopoScriptCode = 34,
|
||||
haniScriptCode = 35,
|
||||
yiiiScriptCode = 36,
|
||||
italScriptCode = 37,
|
||||
gothScriptCode = 38,
|
||||
dsrtScriptCode = 39,
|
||||
zyyyScriptCode = 0,
|
||||
qaaiScriptCode = 1,
|
||||
arabScriptCode = 2,
|
||||
armnScriptCode = 3,
|
||||
bengScriptCode = 4,
|
||||
bopoScriptCode = 5,
|
||||
cherScriptCode = 6,
|
||||
qaacScriptCode = 7,
|
||||
cyrlScriptCode = 8,
|
||||
dsrtScriptCode = 9,
|
||||
devaScriptCode = 10,
|
||||
ethiScriptCode = 11,
|
||||
georScriptCode = 12,
|
||||
gothScriptCode = 13,
|
||||
grekScriptCode = 14,
|
||||
gujrScriptCode = 15,
|
||||
guruScriptCode = 16,
|
||||
haniScriptCode = 17,
|
||||
hangScriptCode = 18,
|
||||
hebrScriptCode = 19,
|
||||
hiraScriptCode = 20,
|
||||
kndaScriptCode = 21,
|
||||
kataScriptCode = 22,
|
||||
khmrScriptCode = 23,
|
||||
laooScriptCode = 24,
|
||||
latnScriptCode = 25,
|
||||
mlymScriptCode = 26,
|
||||
mongScriptCode = 27,
|
||||
mymrScriptCode = 28,
|
||||
ogamScriptCode = 29,
|
||||
italScriptCode = 30,
|
||||
oryaScriptCode = 31,
|
||||
runrScriptCode = 32,
|
||||
sinhScriptCode = 33,
|
||||
syrcScriptCode = 34,
|
||||
tamlScriptCode = 35,
|
||||
teluScriptCode = 36,
|
||||
thaaScriptCode = 37,
|
||||
thaiScriptCode = 38,
|
||||
tibtScriptCode = 39,
|
||||
cansScriptCode = 40,
|
||||
yiiiScriptCode = 41,
|
||||
|
||||
scriptCodeCount = 40
|
||||
scriptCodeCount = 42
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -13,44 +13,46 @@
|
|||
#include "OpenTypeLayoutEngine.h"
|
||||
|
||||
const LETag OpenTypeLayoutEngine::scriptTags[] = {
|
||||
zyyyScriptTag, /* 'zyyy' (COMMON) */
|
||||
qaaiScriptTag, /* 'qaai' (INHERITED) */
|
||||
latnScriptTag, /* 'latn' (LATIN) */
|
||||
grekScriptTag, /* 'grek' (GREEK) */
|
||||
cyrlScriptTag, /* 'cyrl' (CYRILLIC) */
|
||||
armnScriptTag, /* 'armn' (ARMENIAN) */
|
||||
hebrScriptTag, /* 'hebr' (HEBREW) */
|
||||
arabScriptTag, /* 'arab' (ARABIC) */
|
||||
syrcScriptTag, /* 'syrc' (SYRIAC) */
|
||||
thaaScriptTag, /* 'thaa' (THAANA) */
|
||||
devaScriptTag, /* 'deva' (DEVANAGARI) */
|
||||
armnScriptTag, /* 'armn' (ARMENIAN) */
|
||||
bengScriptTag, /* 'beng' (BENGALI) */
|
||||
guruScriptTag, /* 'guru' (GURMUKHI) */
|
||||
bopoScriptTag, /* 'bopo' (BOPOMOFO) */
|
||||
cherScriptTag, /* 'cher' (CHEROKEE) */
|
||||
qaacScriptTag, /* 'qaac' (COPTIC) */
|
||||
cyrlScriptTag, /* 'cyrl' (CYRILLIC) */
|
||||
dsrtScriptTag, /* 'dsrt' (DESERET) */
|
||||
devaScriptTag, /* 'deva' (DEVANAGARI) */
|
||||
ethiScriptTag, /* 'ethi' (ETHIOPIC) */
|
||||
georScriptTag, /* 'geor' (GEORGIAN) */
|
||||
gothScriptTag, /* 'goth' (GOTHIC) */
|
||||
grekScriptTag, /* 'grek' (GREEK) */
|
||||
gujrScriptTag, /* 'gujr' (GUJARATI) */
|
||||
guruScriptTag, /* 'guru' (GURMUKHI) */
|
||||
haniScriptTag, /* 'hani' (HAN) */
|
||||
hangScriptTag, /* 'hang' (HANGUL) */
|
||||
hebrScriptTag, /* 'hebr' (HEBREW) */
|
||||
hiraScriptTag, /* 'hira' (HIRAGANA) */
|
||||
kndaScriptTag, /* 'knda' (KANNADA) */
|
||||
kataScriptTag, /* 'kata' (KATAKANA) */
|
||||
khmrScriptTag, /* 'khmr' (KHMER) */
|
||||
laooScriptTag, /* 'laoo' (LAO) */
|
||||
latnScriptTag, /* 'latn' (LATIN) */
|
||||
mlymScriptTag, /* 'mlym' (MALAYALAM) */
|
||||
mongScriptTag, /* 'mong' (MONGOLIAN) */
|
||||
mymrScriptTag, /* 'mymr' (MYANMAR) */
|
||||
ogamScriptTag, /* 'ogam' (OGHAM) */
|
||||
italScriptTag, /* 'ital' (OLD-ITALIC) */
|
||||
oryaScriptTag, /* 'orya' (ORIYA) */
|
||||
runrScriptTag, /* 'runr' (RUNIC) */
|
||||
sinhScriptTag, /* 'sinh' (SINHALA) */
|
||||
syrcScriptTag, /* 'syrc' (SYRIAC) */
|
||||
tamlScriptTag, /* 'taml' (TAMIL) */
|
||||
teluScriptTag, /* 'telu' (TELUGU) */
|
||||
kndaScriptTag, /* 'knda' (KANNADA) */
|
||||
mlymScriptTag, /* 'mlym' (MALAYALAM) */
|
||||
sinhScriptTag, /* 'sinh' (SINHALA) */
|
||||
thaaScriptTag, /* 'thaa' (THAANA) */
|
||||
thaiScriptTag, /* 'thai' (THAI) */
|
||||
laooScriptTag, /* 'laoo' (LAO) */
|
||||
tibtScriptTag, /* 'tibt' (TIBETAN) */
|
||||
mymrScriptTag, /* 'mymr' (MYANMAR) */
|
||||
georScriptTag, /* 'geor' (GEORGIAN) */
|
||||
hangScriptTag, /* 'hang' (HANGUL) */
|
||||
ethiScriptTag, /* 'ethi' (ETHIOPIC) */
|
||||
cherScriptTag, /* 'cher' (CHEROKEE) */
|
||||
cansScriptTag, /* 'cans' (UCAS) */
|
||||
ogamScriptTag, /* 'ogam' (OGHAM) */
|
||||
runrScriptTag, /* 'runr' (RUNIC) */
|
||||
khmrScriptTag, /* 'khmr' (KHMER) */
|
||||
mongScriptTag, /* 'mong' (MONGOLIAN) */
|
||||
hiraScriptTag, /* 'hira' (HIRAGANA) */
|
||||
kataScriptTag, /* 'kata' (KATAKANA) */
|
||||
bopoScriptTag, /* 'bopo' (BOPOMOFO) */
|
||||
haniScriptTag, /* 'hani' (HAN) */
|
||||
yiiiScriptTag, /* 'yiii' (YI) */
|
||||
italScriptTag, /* 'ital' (OLD_ITALIC) */
|
||||
gothScriptTag, /* 'goth' (GOTHIC) */
|
||||
dsrtScriptTag /* 'dsrt' (DESERET) */
|
||||
cansScriptTag, /* 'cans' (CANADIAN-ABORIGINAL) */
|
||||
yiiiScriptTag /* 'yiii' (YI) */
|
||||
};
|
||||
|
|
|
@ -14,48 +14,49 @@
|
|||
#include "LETypes.h"
|
||||
#include "LEScripts.h"
|
||||
|
||||
const LETag zyyyScriptTag = 0x7A797979; /* 'zyyy' (COMMON) */
|
||||
const LETag qaaiScriptTag = 0x71616169; /* 'qaai' (INHERITED) */
|
||||
const LETag latnScriptTag = 0x6C61746E; /* 'latn' (LATIN) */
|
||||
const LETag grekScriptTag = 0x6772656B; /* 'grek' (GREEK) */
|
||||
const LETag cyrlScriptTag = 0x6379726C; /* 'cyrl' (CYRILLIC) */
|
||||
const LETag armnScriptTag = 0x61726D6E; /* 'armn' (ARMENIAN) */
|
||||
const LETag hebrScriptTag = 0x68656272; /* 'hebr' (HEBREW) */
|
||||
const LETag arabScriptTag = 0x61726162; /* 'arab' (ARABIC) */
|
||||
const LETag syrcScriptTag = 0x73797263; /* 'syrc' (SYRIAC) */
|
||||
const LETag thaaScriptTag = 0x74686161; /* 'thaa' (THAANA) */
|
||||
const LETag devaScriptTag = 0x64657661; /* 'deva' (DEVANAGARI) */
|
||||
const LETag armnScriptTag = 0x61726D6E; /* 'armn' (ARMENIAN) */
|
||||
const LETag bengScriptTag = 0x62656E67; /* 'beng' (BENGALI) */
|
||||
const LETag guruScriptTag = 0x67757275; /* 'guru' (GURMUKHI) */
|
||||
const LETag bopoScriptTag = 0x626F706F; /* 'bopo' (BOPOMOFO) */
|
||||
const LETag cherScriptTag = 0x63686572; /* 'cher' (CHEROKEE) */
|
||||
const LETag qaacScriptTag = 0x71616163; /* 'qaac' (COPTIC) */
|
||||
const LETag cyrlScriptTag = 0x6379726C; /* 'cyrl' (CYRILLIC) */
|
||||
const LETag dsrtScriptTag = 0x64737274; /* 'dsrt' (DESERET) */
|
||||
const LETag devaScriptTag = 0x64657661; /* 'deva' (DEVANAGARI) */
|
||||
const LETag ethiScriptTag = 0x65746869; /* 'ethi' (ETHIOPIC) */
|
||||
const LETag georScriptTag = 0x67656F72; /* 'geor' (GEORGIAN) */
|
||||
const LETag gothScriptTag = 0x676F7468; /* 'goth' (GOTHIC) */
|
||||
const LETag grekScriptTag = 0x6772656B; /* 'grek' (GREEK) */
|
||||
const LETag gujrScriptTag = 0x67756A72; /* 'gujr' (GUJARATI) */
|
||||
const LETag guruScriptTag = 0x67757275; /* 'guru' (GURMUKHI) */
|
||||
const LETag haniScriptTag = 0x68616E69; /* 'hani' (HAN) */
|
||||
const LETag hangScriptTag = 0x68616E67; /* 'hang' (HANGUL) */
|
||||
const LETag hebrScriptTag = 0x68656272; /* 'hebr' (HEBREW) */
|
||||
const LETag hiraScriptTag = 0x68697261; /* 'hira' (HIRAGANA) */
|
||||
const LETag kndaScriptTag = 0x6B6E6461; /* 'knda' (KANNADA) */
|
||||
const LETag kataScriptTag = 0x6B617461; /* 'kata' (KATAKANA) */
|
||||
const LETag khmrScriptTag = 0x6B686D72; /* 'khmr' (KHMER) */
|
||||
const LETag laooScriptTag = 0x6C616F6F; /* 'laoo' (LAO) */
|
||||
const LETag latnScriptTag = 0x6C61746E; /* 'latn' (LATIN) */
|
||||
const LETag mlymScriptTag = 0x6D6C796D; /* 'mlym' (MALAYALAM) */
|
||||
const LETag mongScriptTag = 0x6D6F6E67; /* 'mong' (MONGOLIAN) */
|
||||
const LETag mymrScriptTag = 0x6D796D72; /* 'mymr' (MYANMAR) */
|
||||
const LETag ogamScriptTag = 0x6F67616D; /* 'ogam' (OGHAM) */
|
||||
const LETag italScriptTag = 0x6974616C; /* 'ital' (OLD-ITALIC) */
|
||||
const LETag oryaScriptTag = 0x6F727961; /* 'orya' (ORIYA) */
|
||||
const LETag runrScriptTag = 0x72756E72; /* 'runr' (RUNIC) */
|
||||
const LETag sinhScriptTag = 0x73696E68; /* 'sinh' (SINHALA) */
|
||||
const LETag syrcScriptTag = 0x73797263; /* 'syrc' (SYRIAC) */
|
||||
const LETag tamlScriptTag = 0x74616D6C; /* 'taml' (TAMIL) */
|
||||
const LETag teluScriptTag = 0x74656C75; /* 'telu' (TELUGU) */
|
||||
const LETag kndaScriptTag = 0x6B6E6461; /* 'knda' (KANNADA) */
|
||||
const LETag mlymScriptTag = 0x6D6C796D; /* 'mlym' (MALAYALAM) */
|
||||
const LETag sinhScriptTag = 0x73696E68; /* 'sinh' (SINHALA) */
|
||||
const LETag thaaScriptTag = 0x74686161; /* 'thaa' (THAANA) */
|
||||
const LETag thaiScriptTag = 0x74686169; /* 'thai' (THAI) */
|
||||
const LETag laooScriptTag = 0x6C616F6F; /* 'laoo' (LAO) */
|
||||
const LETag tibtScriptTag = 0x74696274; /* 'tibt' (TIBETAN) */
|
||||
const LETag mymrScriptTag = 0x6D796D72; /* 'mymr' (MYANMAR) */
|
||||
const LETag georScriptTag = 0x67656F72; /* 'geor' (GEORGIAN) */
|
||||
const LETag hangScriptTag = 0x68616E67; /* 'hang' (HANGUL) */
|
||||
const LETag ethiScriptTag = 0x65746869; /* 'ethi' (ETHIOPIC) */
|
||||
const LETag cherScriptTag = 0x63686572; /* 'cher' (CHEROKEE) */
|
||||
const LETag cansScriptTag = 0x63616E73; /* 'cans' (UCAS) */
|
||||
const LETag ogamScriptTag = 0x6F67616D; /* 'ogam' (OGHAM) */
|
||||
const LETag runrScriptTag = 0x72756E72; /* 'runr' (RUNIC) */
|
||||
const LETag khmrScriptTag = 0x6B686D72; /* 'khmr' (KHMER) */
|
||||
const LETag mongScriptTag = 0x6D6F6E67; /* 'mong' (MONGOLIAN) */
|
||||
const LETag hiraScriptTag = 0x68697261; /* 'hira' (HIRAGANA) */
|
||||
const LETag kataScriptTag = 0x6B617461; /* 'kata' (KATAKANA) */
|
||||
const LETag bopoScriptTag = 0x626F706F; /* 'bopo' (BOPOMOFO) */
|
||||
const LETag haniScriptTag = 0x68616E69; /* 'hani' (HAN) */
|
||||
const LETag cansScriptTag = 0x63616E73; /* 'cans' (CANADIAN-ABORIGINAL) */
|
||||
const LETag yiiiScriptTag = 0x79696969; /* 'yiii' (YI) */
|
||||
const LETag italScriptTag = 0x6974616C; /* 'ital' (OLD_ITALIC) */
|
||||
const LETag gothScriptTag = 0x676F7468; /* 'goth' (GOTHIC) */
|
||||
const LETag dsrtScriptTag = 0x64737274; /* 'dsrt' (DESERET) */
|
||||
|
||||
const LETag zyyyScriptTag = 0x7A797979; /* 'zyyy' (COMMON) */
|
||||
const LETag nullScriptTag = 0x00000000; /* '' (NULL) */
|
||||
|
||||
const LETag noLangSysTag = 0x00000000; /* '' (NONE) */
|
||||
|
|
|
@ -6,61 +6,12 @@
|
|||
*/
|
||||
|
||||
#include "unicode/loengine.h"
|
||||
#include "layout/LEScripts.h"
|
||||
|
||||
//
|
||||
// This table maps ICU's UScriptCode values
|
||||
// into the LayoutEngines script codes, as defined
|
||||
// in LEScripts.h.
|
||||
//
|
||||
// NOTE: it's important to keep this list in synch
|
||||
// both with UScriptCode and LEScripts...
|
||||
//
|
||||
// NOTE: REALLY, LEScripts.h should be adjusted to
|
||||
// match UScriptCode, so this isn't even necessary...
|
||||
//
|
||||
int32_t ICULayoutEngine::le_scriptCodes[] = {
|
||||
qaaiScriptCode, // USCRIPT_COMMON (zyyyScriptCode is -1!)
|
||||
qaaiScriptCode, // USCRIPT_INHERITED
|
||||
arabScriptCode, // USCRIPT_ARABIC
|
||||
armnScriptCode, // USCRIPT_ARMENIAN
|
||||
bengScriptCode, // USCRIPT_BENGALI
|
||||
bopoScriptCode, // USCRIPT_BOPOMOFO
|
||||
cherScriptCode, // USCRIPT_CHEROKEE
|
||||
qaaiScriptCode, // USCRIPT_COPTIC (no qaacScriptCode)
|
||||
cyrlScriptCode, // USCRIPT_CYRILLIC
|
||||
dsrtScriptCode, // USCRIPT_DESERET
|
||||
devaScriptCode, // USCRIPT_DEVANAGARI
|
||||
ethiScriptCode, // USCRIPT_ETHIOPIC
|
||||
georScriptCode, // USCRIPT_GEORGIAN
|
||||
gothScriptCode, // USCRIPT_GOTHIC
|
||||
grekScriptCode, // USCRIPT_GREEK
|
||||
gujrScriptCode, // USCRIPT_GUJARATI
|
||||
guruScriptCode, // USCRIPT_GURMUKHI
|
||||
haniScriptCode, // USCRIPT_HAN
|
||||
hangScriptCode, // USCRIPT_HANGUL
|
||||
hebrScriptCode, // USCRIPT_HEBREW
|
||||
hiraScriptCode, // USCRIPT_HIRAGANA
|
||||
kndaScriptCode, // USCRIPT_KANNADA
|
||||
kataScriptCode, // USCRIPT_KATAKANA
|
||||
khmrScriptCode, // USCRIPT_KHMER
|
||||
laooScriptCode, // USCRIPT_LAO
|
||||
latnScriptCode, // USCRIPT_LATIN
|
||||
mlymScriptCode, // USCRIPT_MALAYALAM
|
||||
mongScriptCode, // USCRIPT_MONGOLIAN
|
||||
mymrScriptCode, // USCRIPT_MYANMAR
|
||||
ogamScriptCode, // USCRIPT_OGHAM
|
||||
italScriptCode, // USCRIPT_OLD_ITALIC
|
||||
oryaScriptCode, // USCRIPT_ORIYA
|
||||
runrScriptCode, // USCRIPT_RUNIC
|
||||
sinhScriptCode, // USCRIPT_SINHALA
|
||||
syrcScriptCode, // USCRIPT_SYRIAC
|
||||
tamlScriptCode, // USCRIPT_TAMIL
|
||||
teluScriptCode, // USCRIPT_TELUGU
|
||||
thaaScriptCode, // USCRIPT_THAANA
|
||||
thaiScriptCode, // USCRIPT_THAI
|
||||
tibtScriptCode, // USCRIPT_TIBETAN
|
||||
cansScriptCode, // USCRIPT_UCAS
|
||||
yiiiScriptCode // USCRIPT_YI
|
||||
};
|
||||
|
||||
/*
|
||||
* This file is needed to make sure that the
|
||||
* inline methods defined in loengine.h are
|
||||
* exported by the build...
|
||||
*/
|
||||
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
* use LayoutEngine in a way that is consistent with the rest
|
||||
* of ICU.
|
||||
*
|
||||
*(LayoutEngine was developed seperately from ICU and
|
||||
* (LayoutEngine was developed seperately from ICU and
|
||||
* the same source is used in non-ICU environments, so it cannot
|
||||
* be changed to match ICU coding conventions).
|
||||
*
|
||||
|
@ -46,24 +46,6 @@
|
|||
class U_LAYOUT_API ICULayoutEngine
|
||||
{
|
||||
private:
|
||||
/**
|
||||
* This is the table used to translate UScriptCode
|
||||
* values to the script codes defined in LEScripts.h.
|
||||
*/
|
||||
static int32_t le_scriptCodes[];
|
||||
|
||||
/**
|
||||
* This method converts an UScriptCode value to
|
||||
* a LayoutEngine script code as defined in LEScripts.
|
||||
*
|
||||
* @param script - the UScriptCode value
|
||||
*
|
||||
* @return the LayoutEngine script code.
|
||||
*
|
||||
* @see LEScripts.h
|
||||
*/
|
||||
static int32_t le_scriptCode(UScriptCode script);
|
||||
|
||||
/**
|
||||
* This holds the instance of LayoutEngine that does all
|
||||
* the work.
|
||||
|
@ -337,20 +319,11 @@ inline ICULayoutEngine *ICULayoutEngine::createInstance(const LEFontInstance *fo
|
|||
Locale &locale, UErrorCode &success)
|
||||
{
|
||||
LayoutEngine *engine = LayoutEngine::layoutEngineFactory(fontInstance,
|
||||
le_scriptCode(script),
|
||||
(le_int32) script,
|
||||
0,
|
||||
(LEErrorCode &) success);
|
||||
|
||||
return new ICULayoutEngine(engine);
|
||||
}
|
||||
|
||||
inline int32_t ICULayoutEngine::le_scriptCode(UScriptCode script)
|
||||
{
|
||||
if (script < 0 || script >= USCRIPT_CODE_LIMIT) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return le_scriptCodes[script];
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Reference in a new issue