Ignore:
Timestamp:
2019-11-03T16:31:40+01:00 (4 years ago)
Author:
Don-vip
Message:

fix #18284 - Add name:ko-Latn|ja_rm|sr-Latn|zh_pinyin|ja_kana|ja-Latn|ja-Hira to the list of known language codes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRenderer.java

    r14185 r15501  
    1010import java.awt.Font;
    1111import java.util.Collection;
    12 import java.util.Locale;
    1312import java.util.Map;
    1413import java.util.Objects;
    1514import java.util.Optional;
    1615import java.util.concurrent.CopyOnWriteArrayList;
    17 import java.util.regex.Matcher;
    18 import java.util.regex.Pattern;
    1916
    2017import javax.swing.JLabel;
     
    2825import org.openstreetmap.josm.data.preferences.CachingProperty;
    2926import org.openstreetmap.josm.data.preferences.NamedColorProperty;
     27import org.openstreetmap.josm.tools.I18n;
     28import org.openstreetmap.josm.tools.Pair;
    3029
    3130/**
     
    4342    private static final CachingProperty<Boolean> DISCARDABLE
    4443            = new BooleanProperty("display.discardable-keys", false).cached();
    45 
    46     // Matches ISO-639 two and three letters language codes
    47     private static final Pattern LANGUAGE_NAMES = Pattern.compile("name:(\\p{Lower}{2,3})");
    4844
    4945    static {
     
    118114            boolean knownNameKey = false;
    119115            if (column == 0 && str != null) {
    120                 Matcher m = LANGUAGE_NAMES.matcher(str);
    121                 if (m.matches()) {
    122                     String code = m.group(1);
    123                     String label = new Locale(code).getDisplayLanguage();
    124                     knownNameKey = !code.equals(label);
     116                Pair<String, Boolean> label = I18n.getLocalizedLanguageName(str);
     117                if (label != null) {
     118                    knownNameKey = label.b;
    125119                    if (knownNameKey) {
    126120                        str = new StringBuilder("<html><body>").append(str)
    127                                 .append(" <i>&lt;").append(label).append("&gt;</i></body></html>").toString();
     121                                .append(" <i>&lt;").append(label.a).append("&gt;</i></body></html>").toString();
    128122                    }
    129123                }
Note: See TracChangeset for help on using the changeset viewer.