Changeset 1169 in josm for trunk/src/org/openstreetmap/josm/gui/preferences/LanguagePreference.java
- Timestamp:
- 2008-12-23T15:07:05+01:00 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/preferences/LanguagePreference.java
r1165 r1169 20 20 21 21 public class LanguagePreference implements PreferenceSetting { 22 23 24 25 26 22 /** 23 * ComboBox with all available Translations 24 */ 25 private JComboBox langCombo; 26 private final Locale AUTO_LANGUAGE = null; 27 27 28 public void addGui(PreferenceDialog gui) { 29 langCombo = new JComboBox(I18n.getAvailableTranslations()); 30 langCombo.insertItemAt(AUTO_LANGUAGE, 0); // Default 31 langCombo.insertItemAt(Locale.ENGLISH, 1); // Built-in language 32 String ln = Main.pref.get("language"); 33 langCombo.setSelectedIndex(0); 34 35 if (ln != null) { 36 for (int i = 1; i < langCombo.getItemCount(); ++i) { 37 if (((Locale) langCombo.getItemAt(i)).toString().equals(ln)) { 38 langCombo.setSelectedIndex(i); 39 break; 40 } 41 } 42 } 28 public void addGui(PreferenceDialog gui) { 29 langCombo = new JComboBox(I18n.getAvailableTranslations()); 30 langCombo.insertItemAt(AUTO_LANGUAGE, 0); // Default 31 langCombo.insertItemAt(Locale.ENGLISH, 1); // Built-in language 32 String ln = Main.pref.get("language"); 33 langCombo.setSelectedIndex(0); 43 34 44 final ListCellRenderer oldRenderer = langCombo.getRenderer(); 45 langCombo.setRenderer(new DefaultListCellRenderer() { 46 @Override 47 public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, 48 boolean cellHasFocus) { 49 Locale l = (Locale) value; 50 return oldRenderer.getListCellRendererComponent(list, 51 l == AUTO_LANGUAGE ? tr("Default (Auto determined)") : l.getDisplayName(), 52 index, isSelected, cellHasFocus); 53 } 54 }); 55 langCombo.addActionListener(gui.requireRestartAction); 35 if (ln != null) { 36 for (int i = 1; i < langCombo.getItemCount(); ++i) { 37 if (((Locale) langCombo.getItemAt(i)).toString().equals(ln)) { 38 langCombo.setSelectedIndex(i); 39 break; 40 } 41 } 42 } 56 43 57 JPanel panel = null; 58 for(PreferenceSetting s : gui.settings) 59 { 60 if(s instanceof LafPreference) 61 panel = ((LafPreference)s).panel; 62 } 63 panel.add(new JLabel(tr("Language")), GBC.std().insets(20, 0, 0, 0)); 64 panel.add(GBC.glue(5,0), GBC.std().fill(GBC.HORIZONTAL)); 65 panel.add(langCombo, GBC.eol().fill(GBC.HORIZONTAL)); 66 panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH)); 67 } 44 final ListCellRenderer oldRenderer = langCombo.getRenderer(); 45 langCombo.setRenderer(new DefaultListCellRenderer() { 46 @Override 47 public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, 48 boolean cellHasFocus) { 49 Locale l = (Locale) value; 50 return oldRenderer.getListCellRendererComponent(list, 51 l == AUTO_LANGUAGE ? tr("Default (Auto determined)") : l.getDisplayName(), 52 index, isSelected, cellHasFocus); 53 } 54 }); 55 langCombo.addActionListener(gui.requireRestartAction); 68 56 69 public void ok() { 70 if(langCombo.getSelectedItem() == null) 71 { 72 Main.pref.put("language", null); 73 } 74 else 75 { 76 String l = ((Locale)langCombo.getSelectedItem()).toString(); 77 Main.pref.put("language", l); 78 } 79 } 57 JPanel panel = null; 58 for(PreferenceSetting s : gui.settings) 59 { 60 if(s instanceof LafPreference) 61 panel = ((LafPreference)s).panel; 62 } 63 panel.add(new JLabel(tr("Language")), GBC.std().insets(20, 0, 0, 0)); 64 panel.add(GBC.glue(5,0), GBC.std().fill(GBC.HORIZONTAL)); 65 panel.add(langCombo, GBC.eol().fill(GBC.HORIZONTAL)); 66 panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH)); 67 } 68 69 public void ok() { 70 if(langCombo.getSelectedItem() == null) 71 { 72 Main.pref.put("language", null); 73 } 74 else 75 { 76 String l = ((Locale)langCombo.getSelectedItem()).toString(); 77 Main.pref.put("language", l); 78 } 79 } 80 80 }
Note:
See TracChangeset
for help on using the changeset viewer.