Changeset 15501 in josm for trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRenderer.java
- Timestamp:
- 2019-11-03T16:31:40+01:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRenderer.java
r14185 r15501 10 10 import java.awt.Font; 11 11 import java.util.Collection; 12 import java.util.Locale;13 12 import java.util.Map; 14 13 import java.util.Objects; 15 14 import java.util.Optional; 16 15 import java.util.concurrent.CopyOnWriteArrayList; 17 import java.util.regex.Matcher;18 import java.util.regex.Pattern;19 16 20 17 import javax.swing.JLabel; … … 28 25 import org.openstreetmap.josm.data.preferences.CachingProperty; 29 26 import org.openstreetmap.josm.data.preferences.NamedColorProperty; 27 import org.openstreetmap.josm.tools.I18n; 28 import org.openstreetmap.josm.tools.Pair; 30 29 31 30 /** … … 43 42 private static final CachingProperty<Boolean> DISCARDABLE 44 43 = new BooleanProperty("display.discardable-keys", false).cached(); 45 46 // Matches ISO-639 two and three letters language codes47 private static final Pattern LANGUAGE_NAMES = Pattern.compile("name:(\\p{Lower}{2,3})");48 44 49 45 static { … … 118 114 boolean knownNameKey = false; 119 115 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; 125 119 if (knownNameKey) { 126 120 str = new StringBuilder("<html><body>").append(str) 127 .append(" <i><").append(label ).append("></i></body></html>").toString();121 .append(" <i><").append(label.a).append("></i></body></html>").toString(); 128 122 } 129 123 }
Note:
See TracChangeset
for help on using the changeset viewer.