6855715: Font2Dtest demo needs to be updated to support Unicode 5.1.0

Reviewed-by: okutsu
This commit is contained in:
Yuka Kamiya 2009-06-30 09:38:16 +09:00
parent f17d1e509e
commit f2d770bf73

View File

@ -53,7 +53,7 @@ import javax.swing.*;
public final class RangeMenu extends JComboBox implements ActionListener { public final class RangeMenu extends JComboBox implements ActionListener {
/// Painfully extracted from java.lang.Character.UnicodeBlock. Arrrgh! /// Painfully extracted from java.lang.Character.UnicodeBlock. Arrrgh!
/// Unicode 3.0 data. /// Unicode 5.1.0 data.
private final int[][] UNICODE_RANGES = { private final int[][] UNICODE_RANGES = {
{ 0x000000, 0x00007f }, /// BASIC_LATIN { 0x000000, 0x00007f }, /// BASIC_LATIN
@ -63,14 +63,16 @@ public final class RangeMenu extends JComboBox implements ActionListener {
{ 0x000250, 0x0002af }, /// IPA_EXTENSIONS { 0x000250, 0x0002af }, /// IPA_EXTENSIONS
{ 0x0002b0, 0x0002ff }, /// SPACING_MODIFIER_LETTERS { 0x0002b0, 0x0002ff }, /// SPACING_MODIFIER_LETTERS
{ 0x000300, 0x00036f }, /// COMBINING_DIACRITICAL_MARKS { 0x000300, 0x00036f }, /// COMBINING_DIACRITICAL_MARKS
{ 0x000370, 0x0003ff }, /// GREEK { 0x000370, 0x0003ff }, /// GREEK_AND_COPTIC
{ 0x000400, 0x0004ff }, /// CYRILLIC { 0x000400, 0x0004ff }, /// CYRILLIC
{ 0x000500, 0x00052f }, /// CYRILLIC_SUPPLEMENTARY { 0x000500, 0x00052f }, /// CYRILLIC_SUPPLEMENTARY
{ 0x000530, 0x00058f }, /// ARMENIAN { 0x000530, 0x00058f }, /// ARMENIAN
{ 0x000590, 0x0005ff }, /// HEBREW { 0x000590, 0x0005ff }, /// HEBREW
{ 0x000600, 0x0006ff }, /// ARABIC { 0x000600, 0x0006ff }, /// ARABIC
{ 0x000700, 0x00074f }, /// SYRIAC { 0x000700, 0x00074f }, /// SYRIAC
{ 0x000750, 0x00077f }, /// ARABIC_SUPPLEMENT
{ 0x000780, 0x0007bf }, /// THAANA { 0x000780, 0x0007bf }, /// THAANA
{ 0x0007c0, 0x0007ff }, /// NKO
{ 0x000900, 0x00097f }, /// DEVANAGARI { 0x000900, 0x00097f }, /// DEVANAGARI
{ 0x000980, 0x0009ff }, /// BENGALI { 0x000980, 0x0009ff }, /// BENGALI
{ 0x000a00, 0x000a7f }, /// GURMUKHI { 0x000a00, 0x000a7f }, /// GURMUKHI
@ -88,6 +90,7 @@ public final class RangeMenu extends JComboBox implements ActionListener {
{ 0x0010a0, 0x0010ff }, /// GEORGIAN { 0x0010a0, 0x0010ff }, /// GEORGIAN
{ 0x001100, 0x0011ff }, /// HANGUL_JAMO { 0x001100, 0x0011ff }, /// HANGUL_JAMO
{ 0x001200, 0x00137f }, /// ETHIOPIC { 0x001200, 0x00137f }, /// ETHIOPIC
{ 0x001380, 0x00139f }, /// ETHIOPIC_SUPPLEMENT
{ 0x0013a0, 0x0013ff }, /// CHEROKEE { 0x0013a0, 0x0013ff }, /// CHEROKEE
{ 0x001400, 0x00167f }, /// UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS { 0x001400, 0x00167f }, /// UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS
{ 0x001680, 0x00169f }, /// OGHAM { 0x001680, 0x00169f }, /// OGHAM
@ -100,8 +103,16 @@ public final class RangeMenu extends JComboBox implements ActionListener {
{ 0x001800, 0x0018af }, /// MONGOLIAN { 0x001800, 0x0018af }, /// MONGOLIAN
{ 0x001900, 0x00194f }, /// LIMBU { 0x001900, 0x00194f }, /// LIMBU
{ 0x001950, 0x00197f }, /// TAI_LE { 0x001950, 0x00197f }, /// TAI_LE
{ 0x001980, 0x0019df }, /// NEW_TAI_LE
{ 0x0019e0, 0x0019ff }, /// KHMER_SYMBOLS { 0x0019e0, 0x0019ff }, /// KHMER_SYMBOLS
{ 0x001a00, 0x001a1f }, /// BUGINESE
{ 0x001b00, 0x001b7f }, /// BALINESE
{ 0x001b80, 0x001bbf }, /// SUNDANESE
{ 0x001c00, 0x001c4f }, /// LEPCHA
{ 0x001c50, 0x001c7f }, /// OL_CHIKI
{ 0x001d00, 0x001d7f }, /// PHONETIC_EXTENSIONS { 0x001d00, 0x001d7f }, /// PHONETIC_EXTENSIONS
{ 0x001d80, 0x001dbf }, /// PHONEITC EXTENSIONS SUPPLEMENT
{ 0x001dc0, 0x001dff }, /// COMBINING_DIACRITICAL_MAKRS_SUPPLEMENT
{ 0x001e00, 0x001eff }, /// LATIN_EXTENDED_ADDITIONAL { 0x001e00, 0x001eff }, /// LATIN_EXTENDED_ADDITIONAL
{ 0x001f00, 0x001fff }, /// GREEK_EXTENDED { 0x001f00, 0x001fff }, /// GREEK_EXTENDED
{ 0x002000, 0x00206f }, /// GENERAL_PUNCTUATION { 0x002000, 0x00206f }, /// GENERAL_PUNCTUATION
@ -128,6 +139,14 @@ public final class RangeMenu extends JComboBox implements ActionListener {
{ 0x002980, 0x0029ff }, /// MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B { 0x002980, 0x0029ff }, /// MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B
{ 0x002a00, 0x002aff }, /// SUPPLEMENTAL_MATHEMATICAL_OPERATORS { 0x002a00, 0x002aff }, /// SUPPLEMENTAL_MATHEMATICAL_OPERATORS
{ 0x002b00, 0x002bff }, /// MISCELLANEOUS_SYMBOLS_AND_ARROWS { 0x002b00, 0x002bff }, /// MISCELLANEOUS_SYMBOLS_AND_ARROWS
{ 0x002c00, 0x002c5f }, /// GLAGOLITIC
{ 0x002c60, 0x002c7f }, /// LATIN_EXTENDED-C
{ 0x002c80, 0x002cff }, /// COPTIC
{ 0x002d00, 0x002d2f }, /// GEORGIAN_SUPPLEMENT
{ 0x002d30, 0x002d7f }, /// TIFINAGH
{ 0x002d80, 0x002ddf }, /// ETHIOPIC_EXTENDED
{ 0x002de0, 0x002dff }, /// CYRILLIC_EXTENDED-A
{ 0x002e00, 0x002e7f }, /// SUPPLEMENTAL_PUNCTUATION
{ 0x002e80, 0x002eff }, /// CJK_RADICALS_SUPPLEMENT { 0x002e80, 0x002eff }, /// CJK_RADICALS_SUPPLEMENT
{ 0x002f00, 0x002fdf }, /// KANGXI_RADICALS { 0x002f00, 0x002fdf }, /// KANGXI_RADICALS
{ 0x002ff0, 0x002fff }, /// IDEOGRAPHIC_DESCRIPTION_CHARACTERS { 0x002ff0, 0x002fff }, /// IDEOGRAPHIC_DESCRIPTION_CHARACTERS
@ -138,6 +157,7 @@ public final class RangeMenu extends JComboBox implements ActionListener {
{ 0x003130, 0x00318f }, /// HANGUL_COMPATIBILITY_JAMO { 0x003130, 0x00318f }, /// HANGUL_COMPATIBILITY_JAMO
{ 0x003190, 0x00319f }, /// KANBUN { 0x003190, 0x00319f }, /// KANBUN
{ 0x0031a0, 0x0031bf }, /// BOPOMOFO_EXTENDED { 0x0031a0, 0x0031bf }, /// BOPOMOFO_EXTENDED
{ 0x0031c0, 0x0031ef }, /// CJK_STROKES
{ 0x0031f0, 0x0031ff }, /// KATAKANA_PHONETIC_EXTENSIONS { 0x0031f0, 0x0031ff }, /// KATAKANA_PHONETIC_EXTENSIONS
{ 0x003200, 0x0032ff }, /// ENCLOSED_CJK_LETTERS_AND_MONTHS { 0x003200, 0x0032ff }, /// ENCLOSED_CJK_LETTERS_AND_MONTHS
{ 0x003300, 0x0033ff }, /// CJK_COMPATIBILITY { 0x003300, 0x0033ff }, /// CJK_COMPATIBILITY
@ -146,13 +166,26 @@ public final class RangeMenu extends JComboBox implements ActionListener {
{ 0x004e00, 0x009fff }, /// CJK_UNIFIED_IDEOGRAPHS { 0x004e00, 0x009fff }, /// CJK_UNIFIED_IDEOGRAPHS
{ 0x00a000, 0x00a48f }, /// YI_SYLLABLES { 0x00a000, 0x00a48f }, /// YI_SYLLABLES
{ 0x00a490, 0x00a4cf }, /// YI_RADICALS { 0x00a490, 0x00a4cf }, /// YI_RADICALS
{ 0x00a500, 0x00a63f }, /// YAI
{ 0x00a640, 0x00a69f }, /// CYRILLIC_EXTENDED-B
{ 0x00a700, 0x00a71f }, /// MODIFIER_TONE_LETTERS
{ 0x00a720, 0x00a7ff }, /// LATIN_EXTENDED-D
{ 0x00a800, 0x00a82f }, /// SYLOTI_NAGRI
{ 0x00a840, 0x00a87f }, /// PHAGS-PA
{ 0x00a880, 0x00a8df }, /// SAURASHTRA
{ 0x00a900, 0x00a92f }, /// KAYAH_LI
{ 0x00a930, 0x00a95f }, /// REJANG
{ 0x00aa00, 0x00aa5f }, /// CHAM
{ 0x00ac00, 0x00d7af }, /// HANGUL_SYLLABLES { 0x00ac00, 0x00d7af }, /// HANGUL_SYLLABLES
{ 0x00d800, 0x00dfff }, /// SURROGATES_AREA { 0x00d800, 0x00db7f }, /// HIGH_SURROGATES_AREA
{ 0x00db80, 0x00dbff }, /// HIGH_PRIVATE_USE_SURROGATES_AREA
{ 0x00dc00, 0x00dfff }, /// LOW_SURROGATES_AREA
{ 0x00e000, 0x00f8ff }, /// PRIVATE_USE_AREA { 0x00e000, 0x00f8ff }, /// PRIVATE_USE_AREA
{ 0x00f900, 0x00faff }, /// CJK_COMPATIBILITY_IDEOGRAPHS { 0x00f900, 0x00faff }, /// CJK_COMPATIBILITY_IDEOGRAPHS
{ 0x00fb00, 0x00fb4f }, /// ALPHABETIC_PRESENTATION_FORMS { 0x00fb00, 0x00fb4f }, /// ALPHABETIC_PRESENTATION_FORMS
{ 0x00fb50, 0x00fdff }, /// ARABIC_PRESENTATION_FORMS_A { 0x00fb50, 0x00fdff }, /// ARABIC_PRESENTATION_FORMS_A
{ 0x00fe00, 0x00fe0f }, /// VARIATION_SELECTORS { 0x00fe00, 0x00fe0f }, /// VARIATION_SELECTORS
{ 0x00fe10, 0x00fe1f }, /// VERTICAL_FORMS
{ 0x00fe20, 0x00fe2f }, /// COMBINING_HALF_MARKS { 0x00fe20, 0x00fe2f }, /// COMBINING_HALF_MARKS
{ 0x00fe30, 0x00fe4f }, /// CJK_COMPATIBILITY_FORMS { 0x00fe30, 0x00fe4f }, /// CJK_COMPATIBILITY_FORMS
{ 0x00fe50, 0x00fe6f }, /// SMALL_FORM_VARIANTS { 0x00fe50, 0x00fe6f }, /// SMALL_FORM_VARIANTS
@ -162,17 +195,32 @@ public final class RangeMenu extends JComboBox implements ActionListener {
{ 0x010000, 0x01007f }, /// LINEAR_B_SYLLABARY { 0x010000, 0x01007f }, /// LINEAR_B_SYLLABARY
{ 0x010080, 0x0100ff }, /// LINEAR_B_IDEOGRAMS { 0x010080, 0x0100ff }, /// LINEAR_B_IDEOGRAMS
{ 0x010100, 0x01013f }, /// AEGEAN_NUMBERS { 0x010100, 0x01013f }, /// AEGEAN_NUMBERS
{ 0x010140, 0x01018f }, /// ANCIENT_GREEK_NUMBERS
{ 0x010190, 0x0101cf }, /// ANCIENT_SYMBOLS
{ 0x0101d0, 0x0101ff }, /// PHAISTOS_DISC
{ 0x010280, 0x01029f }, /// LYCIAN
{ 0x0102a0, 0x0102df }, /// CARIAN
{ 0x010300, 0x01032f }, /// OLD_ITALIC { 0x010300, 0x01032f }, /// OLD_ITALIC
{ 0x010330, 0x01034f }, /// GOTHIC { 0x010330, 0x01034f }, /// GOTHIC
{ 0x010380, 0x01039f }, /// UGARITIC { 0x010380, 0x01039f }, /// UGARITIC
{ 0x0103a0, 0x0103df }, /// OLD_PERSIAN
{ 0x010400, 0x01044f }, /// DESERET { 0x010400, 0x01044f }, /// DESERET
{ 0x010450, 0x01047f }, /// SHAVIAN { 0x010450, 0x01047f }, /// SHAVIAN
{ 0x010480, 0x0104af }, /// OSMANYA { 0x010480, 0x0104af }, /// OSMANYA
{ 0x010800, 0x01083f }, /// CYPRIOT_SYLLABARY { 0x010800, 0x01083f }, /// CYPRIOT_SYLLABARY
{ 0x010900, 0x01091f }, /// PHOENICIAN
{ 0x010920, 0x01093f }, /// LYDIAN
{ 0x010a00, 0x010a5f }, /// KHAROSHTHI
{ 0x012000, 0x0123ff }, /// CUNEIFORM
{ 0x012400, 0x01247f }, /// CUNEIFORM_NUMBERS_AND_PUNCTUATION
{ 0x01d000, 0x01d0ff }, /// BYZANTINE_MUSICAL_SYMBOLS { 0x01d000, 0x01d0ff }, /// BYZANTINE_MUSICAL_SYMBOLS
{ 0x01d100, 0x01d1ff }, /// MUSICAL_SYMBOLS { 0x01d100, 0x01d1ff }, /// MUSICAL_SYMBOLS
{ 0x01d200, 0x01d24f }, /// ANCIENT_GREEK_MUSICAL_NOTATION
{ 0x01d300, 0x01d35f }, /// TAI_XUAN_JING_SYMBOLS { 0x01d300, 0x01d35f }, /// TAI_XUAN_JING_SYMBOLS
{ 0x01d360, 0x01d37f }, /// COUNTING_ROD_NUMERALS
{ 0x01d400, 0x01d7ff }, /// MATHEMATICAL_ALPHANUMERIC_SYMBOLS { 0x01d400, 0x01d7ff }, /// MATHEMATICAL_ALPHANUMERIC_SYMBOLS
{ 0x01f000, 0x01f02f }, /// MAHJONG_TILES
{ 0x01f030, 0x01f09f }, /// DOMINO_TILES
{ 0x020000, 0x02a6df }, /// CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B { 0x020000, 0x02a6df }, /// CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B
{ 0x02f800, 0x02fa1f }, /// CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT { 0x02f800, 0x02fa1f }, /// CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT
{ 0x0e0000, 0x0e007f }, /// TAGS { 0x0e0000, 0x0e007f }, /// TAGS
@ -190,14 +238,16 @@ public final class RangeMenu extends JComboBox implements ActionListener {
"IPA Extensions", "IPA Extensions",
"Spacing Modifier Letters", "Spacing Modifier Letters",
"Combining Diacritical Marks", "Combining Diacritical Marks",
"Greek", "Greek and Coptic",
"Cyrillic", "Cyrillic",
"Cyrillic Supplement", "Cyrillic Supplement",
"Armenian", "Armenian",
"Hebrew", "Hebrew",
"Arabic", "Arabic",
"Syriac", "Syriac",
"Arabic Supplement",
"Thaana", "Thaana",
"NKo",
"Devanagari", "Devanagari",
"Bengali", "Bengali",
"Gurmukhi", "Gurmukhi",
@ -215,6 +265,7 @@ public final class RangeMenu extends JComboBox implements ActionListener {
"Georgian", "Georgian",
"Hangul Jamo", "Hangul Jamo",
"Ethiopic", "Ethiopic",
"Ethiopic Supplement",
"Cherokee", "Cherokee",
"Unified Canadian Aboriginal Syllabics", "Unified Canadian Aboriginal Syllabics",
"Ogham", "Ogham",
@ -227,14 +278,22 @@ public final class RangeMenu extends JComboBox implements ActionListener {
"Mongolian", "Mongolian",
"Limbu", "Limbu",
"Tai Le", "Tai Le",
"New Tai Lue",
"Khmer Symbols", "Khmer Symbols",
"Buginese",
"Balinese",
"Sundanese",
"Lepcha",
"Ol Chiki",
"Phonetic Extensions", "Phonetic Extensions",
"Phonetic Extensions Supplement",
"Combining Diacritical Marks Supplement",
"Latin Extended Additional", "Latin Extended Additional",
"Greek Extended", "Greek Extended",
"General Punctuation", "General Punctuation",
"Superscripts and Subscripts", "Superscripts and Subscripts",
"Currency Symbols", "Currency Symbols",
"Combining Marks for Symbols", "Combining Diacritical Marks for Symbols",
"Letterlike Symbols", "Letterlike Symbols",
"Number Forms", "Number Forms",
"Arrows", "Arrows",
@ -255,6 +314,14 @@ public final class RangeMenu extends JComboBox implements ActionListener {
"Miscellaneous Mathematical Symbols-B", "Miscellaneous Mathematical Symbols-B",
"Supplemental Mathematical Operators", "Supplemental Mathematical Operators",
"Miscellaneous Symbols and Arrows", "Miscellaneous Symbols and Arrows",
"Glagolitic",
"Latin Extended-C",
"Coptic",
"Georgian Supplement",
"Tifinagh",
"Ethiopic Extended",
"Cyrillic Extended-A",
"Supplemental Punctuation",
"CJK Radicals Supplement", "CJK Radicals Supplement",
"Kangxi Radicals", "Kangxi Radicals",
"Ideographic Description Characters", "Ideographic Description Characters",
@ -265,6 +332,7 @@ public final class RangeMenu extends JComboBox implements ActionListener {
"Hangul Compatibility Jamo", "Hangul Compatibility Jamo",
"Kanbun", "Kanbun",
"Bopomofo Extended", "Bopomofo Extended",
"CJK Strokes",
"Katakana Phonetic Extensions", "Katakana Phonetic Extensions",
"Enclosed CJK Letters and Months", "Enclosed CJK Letters and Months",
"CJK Compatibility", "CJK Compatibility",
@ -273,13 +341,26 @@ public final class RangeMenu extends JComboBox implements ActionListener {
"CJK Unified Ideographs", "CJK Unified Ideographs",
"Yi Syllables", "Yi Syllables",
"Yi Radicals", "Yi Radicals",
"Vai",
"Cyrillic Extended-B",
"Modifier Tone Letters",
"Latin Extended-D",
"Syloti Nagri",
"Phags-pa",
"Saurashtra",
"Kayah Li",
"Rejang",
"Cham",
"Hangul Syllables", "Hangul Syllables",
"Surrogates Area", // High Surrogates, High Private Use Surrogates, Low Surrogates "High Surrogates",
"High Private Use Surrogates",
"Low Surrogates",
"Private Use Area", "Private Use Area",
"CJK Compatibility Ideographs", "CJK Compatibility Ideographs",
"Alphabetic Presentation Forms", "Alphabetic Presentation Forms",
"Arabic Presentation Forms-A", "Arabic Presentation Forms-A",
"Variation Selectors", "Variation Selectors",
"Vertical Forms",
"Combining Half Marks", "Combining Half Marks",
"CJK Compatibility Forms", "CJK Compatibility Forms",
"Small Form Variants", "Small Form Variants",
@ -289,17 +370,32 @@ public final class RangeMenu extends JComboBox implements ActionListener {
"Linear B Syllabary", "Linear B Syllabary",
"Linear B Ideograms", "Linear B Ideograms",
"Aegean Numbers", "Aegean Numbers",
"Ancient Greek Numbers",
"Ancient Symbols",
"Phaistos Disc",
"Lycian",
"Carian",
"Old Italic", "Old Italic",
"Gothic", "Gothic",
"Ugaritic", "Ugaritic",
"Old Persian",
"Deseret", "Deseret",
"Shavian", "Shavian",
"Osmanya", "Osmanya",
"Cypriot Syllabary", "Cypriot Syllabary",
"Phoenician",
"Lydian",
"Kharoshthi",
"Cuneiform",
"Cuneiform Numbers and Punctuation",
"Byzantine Musical Symbols", "Byzantine Musical Symbols",
"Musical Symbols", "Musical Symbols",
"Ancient Greek Musical Notation",
"Tai Xuan Jing Symbols", "Tai Xuan Jing Symbols",
"Counting Rod Numerals",
"Mathematical Alphanumeric Symbols", "Mathematical Alphanumeric Symbols",
"Mahjong Tiles",
"Domino Tiles",
"CJK Unified Ideographs Extension B", "CJK Unified Ideographs Extension B",
"CJK Compatibility Ideographs Supplement", "CJK Compatibility Ideographs Supplement",
"Tags", "Tags",