Ticket #7548: 7548_alpha.patch
File 7548_alpha.patch, 48.2 KB (added by , 12 years ago) |
---|
-
src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java
diff --git a/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java b/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java index 8a7d48d..7c0b26c 100644
a b import org.openstreetmap.josm.gui.mappaint.MapPaintStyles.MapPaintSylesUpdateLis 64 64 import org.openstreetmap.josm.gui.mappaint.StyleSource; 65 65 import org.openstreetmap.josm.gui.preferences.PreferenceDialog; 66 66 import org.openstreetmap.josm.gui.preferences.SourceEntry; 67 import org.openstreetmap.josm.gui.preferences.map.MapPaintPreference; 67 68 import org.openstreetmap.josm.gui.widgets.HtmlPanel; 68 69 import org.openstreetmap.josm.gui.widgets.PopupMenuLauncher; 69 70 import org.openstreetmap.josm.tools.GBC; … … public class MapPaintDialog extends ToggleDialog { 370 371 @Override 371 372 public void actionPerformed(ActionEvent e) { 372 373 final PreferenceDialog p =new PreferenceDialog(Main.parent); 373 p.select MapPaintPreferenceTab();374 p.selectPreferencesTabByClass(MapPaintPreference.class); 374 375 p.setVisible(true); 375 376 } 376 377 } -
src/org/openstreetmap/josm/gui/preferences/DefaultTabPreferenceSetting.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/DefaultTabPreferenceSetting.java b/src/org/openstreetmap/josm/gui/preferences/DefaultTabPreferenceSetting.java index b296159..17fc08e 100644
a b 1 // License: GPL. For details, see LICENSE file. 2 package org.openstreetmap.josm.gui.preferences; 3 4 import javax.swing.JPanel; 5 import javax.swing.JScrollPane; 6 7 import org.openstreetmap.josm.tools.GBC; 8 9 public abstract class DefaultTabPreferenceSetting extends DefaultPreferenceSetting implements TabPreferenceSetting { 10 11 private final String iconName; 12 private final String description; 13 private final String title; 14 15 public DefaultTabPreferenceSetting() { 16 this(null, null, null); 17 } 18 19 public DefaultTabPreferenceSetting(String iconName, String title, String description) { 20 this(iconName, title, description, false); 21 } 22 23 public DefaultTabPreferenceSetting(String iconName, String title, String description, boolean isExpert) { 24 super(isExpert); 25 this.iconName = iconName; 26 this.description = description; 27 this.title = title; 28 } 29 30 @Override 31 public String getIconName() { 32 return iconName; 33 } 34 35 @Override 36 public String getTooltip() { 37 if (getDescription() != null) { 38 return "<html>"+getDescription()+"</html>"; 39 } else { 40 return null; 41 } 42 } 43 44 @Override 45 public String getDescription() { 46 return description; 47 } 48 49 @Override 50 public String getTitle() { 51 return title; 52 } 53 54 protected final void createPreferenceTabWithScrollPane(PreferenceTabbedPane gui, JPanel panel) { 55 GBC a = GBC.eol().insets(-5,0,0,0); 56 a.anchor = GBC.EAST; 57 58 JScrollPane scrollPane = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); 59 scrollPane.setBorder(null); 60 61 JPanel tab = gui.createPreferenceTab(this); 62 tab.add(scrollPane, GBC.eol().fill(GBC.BOTH)); 63 tab.add(GBC.glue(0,10), a); 64 } 65 } 1 // License: GPL. For details, see LICENSE file. 2 package org.openstreetmap.josm.gui.preferences; 3 4 import javax.swing.JComponent; 5 import javax.swing.JPanel; 6 import javax.swing.JScrollPane; 7 8 import org.openstreetmap.josm.tools.GBC; 9 10 public abstract class DefaultTabPreferenceSetting extends DefaultPreferenceSetting implements TabPreferenceSetting { 11 12 private final String iconName; 13 private final String description; 14 private final String title; 15 16 public DefaultTabPreferenceSetting() { 17 this(null, null, null); 18 } 19 20 public DefaultTabPreferenceSetting(String iconName, String title, String description) { 21 this(iconName, title, description, false); 22 } 23 24 public DefaultTabPreferenceSetting(String iconName, String title, String description, boolean isExpert) { 25 super(isExpert); 26 this.iconName = iconName; 27 this.description = description; 28 this.title = title; 29 } 30 31 @Override 32 public String getIconName() { 33 return iconName; 34 } 35 36 @Override 37 public String getTooltip() { 38 if (getDescription() != null) { 39 return "<html>"+getDescription()+"</html>"; 40 } else { 41 return null; 42 } 43 } 44 45 @Override 46 public String getDescription() { 47 return description; 48 } 49 50 @Override 51 public String getTitle() { 52 return title; 53 } 54 55 protected final void createPreferenceTabWithScrollPane(PreferenceTabbedPane gui, JComponent panel) { 56 GBC a = GBC.eol().insets(-5,0,0,0); 57 a.anchor = GBC.EAST; 58 59 JScrollPane scrollPane = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); 60 scrollPane.setBorder(null); 61 62 JPanel tab = gui.createPreferenceTab(this); 63 tab.add(scrollPane, GBC.eol().fill(GBC.BOTH)); 64 tab.add(GBC.glue(0,10), a); 65 } 66 } -
src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java b/src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java index f6f9f14..f871802 100644
a b public class PreferenceDialog extends JDialog { 169 169 new CancelAction().cancel(); 170 170 } 171 171 } 172 173 public void selectMapPaintPreferenceTab() {174 tpPreferences.selectTabByPref(MapPreference.class);175 tpPreferences.getMapPreference().mapcontent.setSelectedIndex(1);176 }177 172 } -
src/org/openstreetmap/josm/gui/preferences/PreferenceTabbedPane.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/PreferenceTabbedPane.java b/src/org/openstreetmap/josm/gui/preferences/PreferenceTabbedPane.java index 5a014f2..f62c134 100644
a b import org.openstreetmap.josm.gui.preferences.advanced.AdvancedPreference; 32 32 import org.openstreetmap.josm.gui.preferences.display.ColorPreference; 33 33 import org.openstreetmap.josm.gui.preferences.display.DisplayPreference; 34 34 import org.openstreetmap.josm.gui.preferences.display.DrawingPreference; 35 import org.openstreetmap.josm.gui.preferences.display.GPXSettingsPanel; 35 36 import org.openstreetmap.josm.gui.preferences.display.LafPreference; 36 37 import org.openstreetmap.josm.gui.preferences.display.LanguagePreference; 37 38 import org.openstreetmap.josm.gui.preferences.imagery.ImageryPreference; … … import org.openstreetmap.josm.gui.preferences.map.MapPaintPreference; 40 41 import org.openstreetmap.josm.gui.preferences.map.MapPreference; 41 42 import org.openstreetmap.josm.gui.preferences.map.ProjectionPreference; 42 43 import org.openstreetmap.josm.gui.preferences.map.TaggingPresetPreference; 44 import org.openstreetmap.josm.gui.preferences.server.ProxyPreferencesPanel; 43 45 import org.openstreetmap.josm.gui.preferences.shortcut.ShortcutPreference; 44 46 import org.openstreetmap.josm.plugins.PluginDownloadTask; 45 47 import org.openstreetmap.josm.plugins.PluginHandler; … … public class PreferenceTabbedPane extends JTabbedPane implements MouseWheelListe 337 339 int position = index; 338 340 for (PreferenceTab tab : tabs) { 339 341 if (tab.getTabPreferenceSetting().equals(tps)) { 340 insertTab(null, icon, tab.getComponent(), tps.getTooltip(), position++); 342 if (tps instanceof IconPreferenceSetting) { 343 insertTab(null, icon, tab.getComponent(), tps.getTooltip(), position++); 344 } else { 345 insertTab(tps.getTitle(), null, tab.getComponent(), tps.getTooltip(), position++); 346 } 341 347 } 342 348 } 343 349 } … … public class PreferenceTabbedPane extends JTabbedPane implements MouseWheelListe 361 367 addGUITabsForSetting(icon, tps); 362 368 } else { 363 369 // If it has not been initialized, create an empty tab with only icon and tooltip 364 addTab(null, icon, new PreferencePanel(tps), tps.getTooltip()); 370 if (tps instanceof IconPreferenceSetting) { 371 addTab(null, icon, new PreferencePanel(tps), tps.getTooltip()); 372 } else { 373 addTab(tps.getTitle(), null, new PreferencePanel(tps), tps.getTooltip()); 374 } 365 375 } 366 376 } 367 377 } … … public class PreferenceTabbedPane extends JTabbedPane implements MouseWheelListe 391 401 return null; 392 402 } 393 403 404 static class IconPreferenceSetting extends DefaultTabPreferenceSetting { 405 406 public static class Factory implements PreferenceSettingFactory { 407 408 private final String iconName, title, description; 409 410 public Factory(String iconName, String title, String description) { 411 this.iconName = iconName; 412 this.title = title; 413 this.description = description; 414 } 415 416 @Override 417 public PreferenceSetting createPreferenceSetting() { 418 return new IconPreferenceSetting(iconName, title, description); 419 } 420 } 421 422 public IconPreferenceSetting(String iconName, String title, String description) { 423 super(iconName, title, description); 424 } 425 426 @Override 427 public void addGui(PreferenceTabbedPane gui) { 428 createPreferenceTabWithScrollPane(gui, new JPanel()); 429 } 430 431 @Override 432 public boolean ok() { 433 return false; 434 } 435 } 436 394 437 static { 438 395 439 // order is important! 396 settingsFactory.add(new DisplayPreference.Factory());440 settingsFactory.add(new IconPreferenceSetting.Factory("map", tr("Mapping"), "")); 397 441 settingsFactory.add(new DrawingPreference.Factory()); 398 settingsFactory.add(new ColorPreference.Factory()); 399 settingsFactory.add(new LafPreference.Factory()); 400 settingsFactory.add(new LanguagePreference.Factory()); 401 settingsFactory.add(new ServerAccessPreference.Factory()); 402 settingsFactory.add(new MapPreference.Factory()); 442 settingsFactory.add(new GPXSettingsPanel.Factory()); 403 443 settingsFactory.add(new ProjectionPreference.Factory()); 404 444 settingsFactory.add(new MapPaintPreference.Factory()); 405 445 settingsFactory.add(new TaggingPresetPreference.Factory()); 446 settingsFactory.add(new ImageryPreference.Factory()); 447 448 settingsFactory.add(new IconPreferenceSetting.Factory("connection", tr("Server"), tr("Connection Settings for the OSM server."))); 449 settingsFactory.add(new ServerAccessPreference.Factory()); 450 settingsFactory.add(new ProxyPreferencesPanel.Factory()); 451 452 settingsFactory.add(new IconPreferenceSetting.Factory("display", tr("User Interface"), tr("Various settings that influence the visual representation of the whole program."))); 453 settingsFactory.add(new ColorPreference.Factory()); 454 settingsFactory.add(new LafPreference.Factory()); 455 settingsFactory.add(new LanguagePreference.Factory()); 406 456 settingsFactory.add(new BackupPreference.Factory()); 407 if(!Main.applet) {408 settingsFactory.add(new PluginPreference.Factory());409 }410 457 settingsFactory.add(Main.toolbar); 411 settingsFactory.add(new AudioPreference.Factory());412 458 settingsFactory.add(new ShortcutPreference.Factory()); 459 460 settingsFactory.add(new IconPreferenceSetting.Factory("advanced", tr("Advanced Preferences"), "")); 461 settingsFactory.add(new AudioPreference.Factory()); 413 462 settingsFactory.add(new ValidatorPreference.Factory()); 414 463 settingsFactory.add(new RemoteControlPreference.Factory()); 415 settingsFactory.add(new ImageryPreference.Factory());464 settingsFactory.add(new AdvancedPreference.Factory()); 416 465 466 settingsFactory.add(new IconPreferenceSetting.Factory("plugin", tr("Plugins"), tr("Install new plugins or configure installed plugins."))); 467 if(!Main.applet) { 468 settingsFactory.add(new PluginPreference.Factory()); 469 } 417 470 PluginHandler.getPreferenceSetting(settingsFactory); 418 471 419 // always the last: advanced tab420 settingsFactory.add(new AdvancedPreference.Factory());421 472 } 422 473 423 474 /** -
src/org/openstreetmap/josm/gui/preferences/ServerAccessPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/ServerAccessPreference.java b/src/org/openstreetmap/josm/gui/preferences/ServerAccessPreference.java index 307696e..39b1c4b 100644
a b package org.openstreetmap.josm.gui.preferences; 3 3 4 4 import static org.openstreetmap.josm.tools.I18n.tr; 5 5 6 import java.awt.BorderLayout; 7 import java.awt.GridBagConstraints; 8 import java.awt.GridBagLayout; 9 import java.awt.Insets; 10 6 import sun.awt.VerticalBagLayout; 11 7 import javax.swing.JPanel; 12 import javax.swing.JScrollPane;13 import javax.swing.JTabbedPane;14 15 8 import org.openstreetmap.josm.gui.help.HelpUtil; 16 9 import org.openstreetmap.josm.gui.preferences.server.AuthenticationPreferencesPanel; 17 10 import org.openstreetmap.josm.gui.preferences.server.OsmApiUrlInputPanel; 18 import org.openstreetmap.josm.gui.preferences.server.ProxyPreferencesPanel; 19 import org.openstreetmap.josm.gui.widgets.VerticallyScrollablePanel; 11 20 12 public class ServerAccessPreference extends DefaultTabPreferenceSetting { 21 13 22 14 public static class Factory implements PreferenceSettingFactory { … … public class ServerAccessPreference extends DefaultTabPreferenceSetting { 26 18 } 27 19 28 20 private ServerAccessPreference() { 29 super("connection", tr("Connection Settings"), tr("Connection Settings for the OSM server.")); 21 super("connection", tr("Connection Settings"), 22 tr("Connection Settings for the OSM server as well as your identity and how to authenticate at the OSM server.")); 30 23 } 31 24 32 25 private OsmApiUrlInputPanel pnlApiUrlPreferences; 33 26 34 private JTabbedPane tpServerPreferences;35 27 /** indicates whether to use the default OSM URL or not */ 36 28 /** panel for configuring authentication preferences */ 37 29 private AuthenticationPreferencesPanel pnlAuthPreferences; 38 /** panel for configuring proxy preferences */ 39 private ProxyPreferencesPanel pnlProxyPreferences; 40 /** panel for backup preferences */ 41 42 /** 43 * Embeds a vertically scrollable panel in a {@see JScrollPane} 44 * @param panel the panel 45 * @return the scroll pane 46 */ 47 protected JScrollPane wrapVerticallyScrollablePanel(VerticallyScrollablePanel panel) { 48 JScrollPane sp = new JScrollPane(panel); 49 sp.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); 50 sp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); 51 return sp; 52 } 53 54 /** 55 * Builds the tabbed pane with the server preferences 56 * 57 * @return 58 */ 59 protected JPanel buildTabbedServerPreferences() { 60 JPanel pnl = new JPanel(new BorderLayout()); 61 62 tpServerPreferences = new JTabbedPane(); 63 pnlAuthPreferences = new AuthenticationPreferencesPanel(); 64 tpServerPreferences.add(wrapVerticallyScrollablePanel(pnlAuthPreferences)); 65 pnlProxyPreferences = new ProxyPreferencesPanel(); 66 tpServerPreferences.add(wrapVerticallyScrollablePanel(pnlProxyPreferences)); 67 68 tpServerPreferences.setTitleAt(0, tr("Authentication")); 69 tpServerPreferences.setTitleAt(1, tr("Proxy settings")); 70 tpServerPreferences.setToolTipTextAt(0, tr("Configure your identity and how to authenticate at the OSM server")); 71 tpServerPreferences.setToolTipTextAt(1, tr("Configure whether to use a proxy server")); 72 73 pnl.add(tpServerPreferences, BorderLayout.CENTER); 74 return pnl; 75 } 76 30 77 31 /** 78 32 * Builds the panel for entering the server access preferences 79 33 * 80 34 * @return 81 35 */ 82 36 protected JPanel buildContentPanel() { 83 JPanel pnl = new JPanel(new GridBagLayout()); 84 GridBagConstraints gc = new GridBagConstraints(); 37 JPanel pnl = new JPanel(new VerticalBagLayout(20)); 85 38 86 // the checkbox for the default UL 87 gc.fill = GridBagConstraints.HORIZONTAL; 88 gc.anchor = GridBagConstraints.NORTHWEST; 89 gc.weightx = 1.0; 90 gc.insets = new Insets(0,0,0,0); 91 pnl.add(pnlApiUrlPreferences = new OsmApiUrlInputPanel(), gc); 92 93 // the remaining access properties 94 gc.gridy = 1; 95 gc.fill = GridBagConstraints.BOTH; 96 gc.weightx = 1.0; 97 gc.weighty = 1.0; 98 gc.insets = new Insets(10,0,3,3); 99 pnl.add(buildTabbedServerPreferences(), gc); 39 pnl.add(pnlApiUrlPreferences = new OsmApiUrlInputPanel()); 40 pnl.add(pnlAuthPreferences = new AuthenticationPreferencesPanel()); 100 41 101 42 // let the AuthPreferencesPanel know when the API URL changes 102 //103 43 pnlApiUrlPreferences.addPropertyChangeListener(pnlAuthPreferences); 104 44 105 45 HelpUtil.setHelpContext(pnl, HelpUtil.ht("/Preferences/Connection")); … … public class ServerAccessPreference extends DefaultTabPreferenceSetting { 107 47 } 108 48 109 49 public void addGui(PreferenceTabbedPane gui) { 110 GridBagConstraints gc = new GridBagConstraints(); 111 gc.fill = GridBagConstraints.BOTH; 112 gc.weightx = 1.0; 113 gc.weighty = 1.0; 114 gc.anchor = GridBagConstraints.NORTHWEST; 115 gui.createPreferenceTab(this).add(buildContentPanel(), gc); 116 50 createPreferenceTabWithScrollPane(gui, buildContentPanel()); 117 51 initFromPreferences(); 118 52 } 119 53 … … public class ServerAccessPreference extends DefaultTabPreferenceSetting { 123 57 public void initFromPreferences() { 124 58 pnlApiUrlPreferences.initFromPreferences(); 125 59 pnlAuthPreferences.initFromPreferences(); 126 pnlProxyPreferences.initFromPreferences();127 60 } 128 61 129 62 /** … … public class ServerAccessPreference extends DefaultTabPreferenceSetting { 132 65 public boolean ok() { 133 66 pnlApiUrlPreferences.saveToPreferences(); 134 67 pnlAuthPreferences.saveToPreferences(); 135 pnlProxyPreferences.saveToPreferences();136 68 return false; 137 69 } 138 70 } -
src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java b/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java index 440f2fb..8b96b03 100644
a b public class ToolbarPreferences implements PreferenceSettingFactory { 498 498 private String movingComponent; 499 499 500 500 public Settings(DefaultMutableTreeNode rootActionsNode) { 501 super("toolbar", tr("Toolbar customization"), tr("Customize the elements on the toolbar."));501 super("toolbar", tr("Toolbar"), tr("Customize the elements on the toolbar.")); 502 502 actionsTreeModel = new DefaultTreeModel(rootActionsNode); 503 503 actionsTree = new JTree(actionsTreeModel); 504 504 } -
src/org/openstreetmap/josm/gui/preferences/display/ColorPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/display/ColorPreference.java b/src/org/openstreetmap/josm/gui/preferences/display/ColorPreference.java index 3ed2a58..d7f87f1 100644
a b import org.openstreetmap.josm.gui.layer.GpxLayer; 40 40 import org.openstreetmap.josm.gui.layer.ImageryLayer; 41 41 import org.openstreetmap.josm.gui.layer.OsmDataLayer; 42 42 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer; 43 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 43 44 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 44 45 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 45 46 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 46 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;47 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;48 47 import org.openstreetmap.josm.tools.ColorHelper; 49 48 import org.openstreetmap.josm.tools.GBC; 50 49 51 public class ColorPreference implements SubPreferenceSetting {50 public class ColorPreference extends DefaultTabPreferenceSetting { 52 51 53 52 public static class Factory implements PreferenceSettingFactory { 54 53 public PreferenceSetting createPreferenceSetting() { … … public class ColorPreference implements SubPreferenceSetting { 64 63 JButton defaultSet; 65 64 JButton remove; 66 65 66 public ColorPreference() { 67 super(null, tr("Colors"), null); 68 } 69 67 70 /** 68 71 * Set the colors to be shown in the preference table. This method creates a table model if 69 72 * none exists and overwrites all existing values. … … public class ColorPreference implements SubPreferenceSetting { 238 241 buttonPanel.add(defaultSet, GBC.std().insets(5,5,5,0)); 239 242 buttonPanel.add(defaultAll, GBC.std().insets(0,5,0,0)); 240 243 buttonPanel.add(remove, GBC.std().insets(0,5,0,0)); 241 gui.getDisplayPreference().displaycontent.addTab(tr("Colors"), panel); 244 245 createPreferenceTabWithScrollPane(gui, panel); 242 246 } 243 247 244 248 Boolean isRemoveColor(int row) … … public class ColorPreference implements SubPreferenceSetting { 283 287 public boolean isExpert() { 284 288 return false; 285 289 } 286 287 @Override288 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {289 return gui.getDisplayPreference();290 }291 290 } -
src/org/openstreetmap/josm/gui/preferences/display/DrawingPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/display/DrawingPreference.java b/src/org/openstreetmap/josm/gui/preferences/display/DrawingPreference.java index 0c33939..87f0dce 100644
a b import javax.swing.Box; 12 12 import javax.swing.JCheckBox; 13 13 import javax.swing.JLabel; 14 14 import javax.swing.JPanel; 15 import javax.swing.JScrollPane;16 15 17 16 import org.openstreetmap.josm.Main; 18 17 import org.openstreetmap.josm.actions.ExpertToggleAction; 18 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 19 19 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 20 20 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 21 21 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 22 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;23 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;24 22 import org.openstreetmap.josm.tools.GBC; 25 23 26 public class DrawingPreference implements SubPreferenceSetting {24 public class DrawingPreference extends DefaultTabPreferenceSetting { 27 25 28 26 public static class Factory implements PreferenceSettingFactory { 29 27 public PreferenceSetting createPreferenceSetting() { … … public class DrawingPreference implements SubPreferenceSetting { 31 29 } 32 30 } 33 31 34 private GPXSettingsPanel gpxPanel;35 32 private JCheckBox directionHint = new JCheckBox(tr("Draw Direction Arrows")); 36 33 private JCheckBox headArrow = new JCheckBox(tr("Only on the head of a way.")); 37 34 private JCheckBox onewayArrow = new JCheckBox(tr("Draw oneway arrows.")); … … public class DrawingPreference implements SubPreferenceSetting { 46 43 private JCheckBox useAntialiasing = new JCheckBox(tr("Smooth map graphics (antialiasing)")); 47 44 private JCheckBox outlineOnly = new JCheckBox(tr("Draw only outlines of areas")); 48 45 46 public DrawingPreference() { 47 super(null, tr("OSM Data"), ""); 48 } 49 49 50 public void addGui(PreferenceTabbedPane gui) { 50 //gui.display.setPreferredSize(new Dimension(400,600)); 51 gpxPanel = new GPXSettingsPanel(); 52 gui.addValidationListener(gpxPanel); 53 JPanel panel = gpxPanel; 54 55 JScrollPane scrollpane = new JScrollPane(panel); 56 scrollpane.setBorder(BorderFactory.createEmptyBorder( 0, 0, 0, 0 )); 57 gui.getDisplayPreference().displaycontent.addTab(tr("GPS Points"), scrollpane); 58 panel = new JPanel(new GridBagLayout()); 51 52 JPanel panel = new JPanel(new GridBagLayout()); 59 53 panel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5)); 60 54 61 55 // directionHint … … public class DrawingPreference implements SubPreferenceSetting { 132 126 ExpertToggleAction.addVisibilitySwitcher(outlineOnly); 133 127 134 128 panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH)); 135 scrollpane = new JScrollPane(panel); 136 scrollpane.setBorder(BorderFactory.createEmptyBorder( 0, 0, 0, 0 )); 137 gui.getDisplayPreference().displaycontent.addTab(tr("OSM Data"), scrollpane); 129 130 createPreferenceTabWithScrollPane(gui, panel); 138 131 } 139 132 140 133 public boolean ok() { 141 gpxPanel.savePreferences();142 134 Main.pref.put("draw.data.area_outline_only", outlineOnly.isSelected()); 143 135 Main.pref.put("draw.segment.direction", directionHint.isSelected()); 144 136 Main.pref.put("draw.segment.head_only", headArrow.isSelected()); … … public class DrawingPreference implements SubPreferenceSetting { 166 158 public boolean isExpert() { 167 159 return false; 168 160 } 169 170 @Override171 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {172 return gui.getDisplayPreference();173 }174 161 } -
src/org/openstreetmap/josm/gui/preferences/display/GPXSettingsPanel.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/display/GPXSettingsPanel.java b/src/org/openstreetmap/josm/gui/preferences/display/GPXSettingsPanel.java index dae0791..b26582e 100644
a b import org.openstreetmap.josm.Main; 25 25 import org.openstreetmap.josm.actions.ExpertToggleAction; 26 26 import org.openstreetmap.josm.gui.layer.markerlayer.Marker; 27 27 import org.openstreetmap.josm.gui.layer.markerlayer.Marker.TemplateEntryProperty; 28 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 29 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 30 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 31 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 28 32 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane.ValidationListener; 29 33 import org.openstreetmap.josm.tools.GBC; 30 34 import org.openstreetmap.josm.tools.template_engine.ParseError; 31 35 import org.openstreetmap.josm.tools.template_engine.TemplateParser; 32 36 33 37 public class GPXSettingsPanel extends JPanel implements ValidationListener { 38 39 public static class Factory implements PreferenceSettingFactory { 40 41 @Override 42 public PreferenceSetting createPreferenceSetting() { 43 return new DefaultTabPreferenceSetting(null, tr("GPS Points"), "") { 44 45 private GPXSettingsPanel gpx; 46 47 @Override 48 public void addGui(PreferenceTabbedPane gui) { 49 createPreferenceTabWithScrollPane(gui, gpx = new GPXSettingsPanel()); 50 gui.addValidationListener(gpx); 51 } 52 53 @Override 54 public boolean ok() { 55 gpx.savePreferences(); 56 return false; 57 } 58 }; 59 } 60 } 34 61 35 62 private static final int WAYPOINT_LABEL_CUSTOM = 6; 36 63 private static final String[] LABEL_PATTERN_TEMPLATE = new String[] {Marker.LABEL_PATTERN_AUTO, Marker.LABEL_PATTERN_NAME, -
src/org/openstreetmap/josm/gui/preferences/display/LafPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/display/LafPreference.java b/src/org/openstreetmap/josm/gui/preferences/display/LafPreference.java index bbdc128..ae95b7f 100644
a b import javax.swing.JComboBox; 14 14 import javax.swing.JLabel; 15 15 import javax.swing.JList; 16 16 import javax.swing.JPanel; 17 import javax.swing.JScrollPane;18 17 import javax.swing.ListCellRenderer; 19 18 import javax.swing.UIManager; 20 19 import javax.swing.UIManager.LookAndFeelInfo; 21 20 22 21 import org.openstreetmap.josm.Main; 23 22 import org.openstreetmap.josm.actions.ExpertToggleAction; 23 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 24 24 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 25 25 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 26 26 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 27 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;28 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;29 27 import org.openstreetmap.josm.tools.GBC; 30 28 31 public class LafPreference implements SubPreferenceSetting {29 public class LafPreference extends DefaultTabPreferenceSetting { 32 30 33 31 public static class Factory implements PreferenceSettingFactory { 34 32 public PreferenceSetting createPreferenceSetting() { … … public class LafPreference implements SubPreferenceSetting { 47 45 private JCheckBox modeless = new JCheckBox(tr("Modeless working (Potlatch style)")); 48 46 private JCheckBox dynamicButtons = new JCheckBox(tr("Dynamic buttons in side menus")); 49 47 48 public LafPreference() { 49 super(null, tr("Look and Feel"), ""); 50 } 51 50 52 public void addGui(PreferenceTabbedPane gui) { 51 53 lafCombo = new JComboBox(UIManager.getInstalledLookAndFeels()); 52 54 … … public class LafPreference implements SubPreferenceSetting { 113 115 panel.add(GBC.glue(5,0), GBC.std().fill(GBC.HORIZONTAL)); 114 116 panel.add(lafCombo, GBC.eol().fill(GBC.HORIZONTAL)); 115 117 116 JScrollPane scrollpane = new JScrollPane(panel);117 scrollpane.setBorder(BorderFactory.createEmptyBorder( 0, 0, 0, 0 )); 118 gui.getDisplayPreference().displaycontent.addTab(tr("Look and Feel"), scrollpane);118 panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH)); 119 120 createPreferenceTabWithScrollPane(gui, panel); 119 121 } 120 122 121 123 public boolean ok() { … … public class LafPreference implements SubPreferenceSetting { 133 135 public boolean isExpert() { 134 136 return false; 135 137 } 136 137 @Override138 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {139 return gui.getDisplayPreference();140 }141 138 } -
src/org/openstreetmap/josm/gui/preferences/display/LanguagePreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/display/LanguagePreference.java b/src/org/openstreetmap/josm/gui/preferences/display/LanguagePreference.java index a4f52fa..b3443a0 100644
a b import javax.swing.JPanel; 19 19 import javax.swing.ListCellRenderer; 20 20 21 21 import org.openstreetmap.josm.Main; 22 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 22 23 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 23 24 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 24 25 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 25 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;26 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;27 26 import org.openstreetmap.josm.tools.GBC; 28 27 import org.openstreetmap.josm.tools.I18n; 29 28 30 public class LanguagePreference implements SubPreferenceSetting {29 public class LanguagePreference extends DefaultTabPreferenceSetting { 31 30 public static class Factory implements PreferenceSettingFactory { 32 31 public PreferenceSetting createPreferenceSetting() { 33 32 return new LanguagePreference(); … … public class LanguagePreference implements SubPreferenceSetting { 39 38 /** the model for the combo box */ 40 39 private LanguageComboBoxModel model; 41 40 41 public LanguagePreference() { 42 super(null, tr("Language"), ""); 43 } 44 42 45 public void addGui(final PreferenceTabbedPane gui) { 43 46 model = new LanguageComboBoxModel(); 44 47 // Selecting the language BEFORE the JComboBox listens to model changes speed up initialization by ~35ms (see #7386) … … public class LanguagePreference implements SubPreferenceSetting { 47 50 langCombo = new JComboBox(model); 48 51 langCombo.setRenderer(new LanguageCellRenderer(langCombo.getRenderer())); 49 52 50 LafPreference lafPreference = gui.getSetting(LafPreference.class); 51 final JPanel panel = lafPreference.panel; 53 final JPanel panel = new JPanel(); 52 54 panel.add(new JLabel(tr("Language")), GBC.std().insets(20, 0, 0, 0)); 53 55 panel.add(GBC.glue(5,0), GBC.std().fill(GBC.HORIZONTAL)); 54 56 panel.add(langCombo, GBC.eol().fill(GBC.HORIZONTAL)); 55 panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH)); 57 //panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH)); 58 createPreferenceTabWithScrollPane(gui, panel); 56 59 } 57 60 58 61 public boolean ok() { … … public class LanguagePreference implements SubPreferenceSetting { 116 119 public boolean isExpert() { 117 120 return false; 118 121 } 119 120 @Override121 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {122 return gui.getDisplayPreference();123 }124 122 } -
src/org/openstreetmap/josm/gui/preferences/map/BackupPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/map/BackupPreference.java b/src/org/openstreetmap/josm/gui/preferences/map/BackupPreference.java index 9aeb86d..cc71551 100644
a b import javax.swing.JTextField; 18 18 19 19 import org.openstreetmap.josm.data.AutosaveTask; 20 20 import org.openstreetmap.josm.data.preferences.BooleanProperty; 21 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 21 22 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 22 23 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 23 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;24 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;25 24 import org.openstreetmap.josm.gui.widgets.HtmlPanel; 26 25 import org.openstreetmap.josm.gui.widgets.VerticallyScrollablePanel; 27 26 import org.openstreetmap.josm.tools.GBC; 28 27 29 public class BackupPreference implements SubPreferenceSetting {28 public class BackupPreference extends DefaultTabPreferenceSetting { 30 29 31 30 public static class Factory implements PreferenceSettingFactory { 32 31 @Override … … public class BackupPreference implements SubPreferenceSetting { 96 95 autosaveEnabled.actionPerformed(null); 97 96 98 97 panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH)); 99 JScrollPane sp = new JScrollPane(panel);100 sp.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);101 sp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);102 98 103 gui.getMapPreference().mapcontent.addTab(tr("File backup"), null, sp, tr("Configure whether to create backup files")); 99 createPreferenceTabWithScrollPane(gui, panel); 100 } 101 102 @Override 103 public String getIconName() { 104 return null; 105 } 106 107 @Override 108 public String getTitle() { 109 return tr("File backup"); 110 } 111 112 @Override 113 public String getTooltip() { 114 return tr("Configure whether to create backup files"); 115 } 116 117 @Override 118 public String getDescription() { 119 return getTooltip(); 104 120 } 105 121 106 122 @Override … … public class BackupPreference implements SubPreferenceSetting { 118 134 public boolean isExpert() { 119 135 return false; 120 136 } 121 122 @Override123 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {124 return gui.getMapPreference();125 }126 137 } -
src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java b/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java index 7cf6051..4439973 100644
a b import java.util.TreeSet; 14 14 import javax.swing.BorderFactory; 15 15 import javax.swing.JCheckBox; 16 16 import javax.swing.JPanel; 17 import javax.swing.event.ChangeEvent;18 import javax.swing.event.ChangeListener;19 17 20 18 import org.openstreetmap.josm.Main; 21 19 import org.openstreetmap.josm.gui.mappaint.MapPaintStyles; 20 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 22 21 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 23 22 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 24 23 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 25 24 import org.openstreetmap.josm.gui.preferences.SourceEditor; 26 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;27 25 import org.openstreetmap.josm.gui.preferences.SourceEditor.ExtendedSourceEntry; 28 26 import org.openstreetmap.josm.gui.preferences.SourceEntry; 29 27 import org.openstreetmap.josm.gui.preferences.SourceProvider; 30 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;31 28 import org.openstreetmap.josm.tools.GBC; 32 29 import org.openstreetmap.josm.tools.Predicate; 33 30 import org.openstreetmap.josm.tools.Utils; 34 31 35 public class MapPaintPreference implements SubPreferenceSetting {32 public class MapPaintPreference extends DefaultTabPreferenceSetting { 36 33 private SourceEditor sources; 37 34 private JCheckBox enableIconDefault; 38 35 … … public class MapPaintPreference implements SubPreferenceSetting { 50 47 } 51 48 } 52 49 50 public MapPaintPreference() { 51 super(null, tr("Map Paint Styles"), ""); 52 } 53 54 @Override 53 55 public void addGui(final PreferenceTabbedPane gui) { 54 56 enableIconDefault = new JCheckBox(tr("Enable built-in icon defaults"), 55 57 Main.pref.getBoolean("mappaint.icon.enable-defaults", true)); … … public class MapPaintPreference implements SubPreferenceSetting { 62 64 panel.add(sources, GBC.eol().fill(GBC.BOTH)); 63 65 panel.add(enableIconDefault, GBC.eol().insets(11,2,5,0)); 64 66 65 gui.getMapPreference().mapcontent.addTab(tr("Map Paint Styles"), panel); 66 67 // this defers loading of style sources to the first time the tab 68 // with the map paint preferences is selected by the user 69 // 70 gui.getMapPreference().mapcontent.addChangeListener( 71 new ChangeListener() { 72 public void stateChanged(ChangeEvent e) { 73 if (gui.getMapPreference().mapcontent.getSelectedComponent() == panel) { 74 sources.initiallyLoadAvailableSources(); 75 } 76 } 77 } 78 ); 67 createPreferenceTabWithScrollPane(gui, panel); 68 69 sources.initiallyLoadAvailableSources(); 79 70 } 80 71 81 72 static class MapPaintSourceEditor extends SourceEditor { … … public class MapPaintPreference implements SubPreferenceSetting { 275 266 public boolean isExpert() { 276 267 return false; 277 268 } 278 279 @Override280 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {281 return gui.getMapPreference();282 }283 269 } -
src/org/openstreetmap/josm/gui/preferences/map/ProjectionPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/map/ProjectionPreference.java b/src/org/openstreetmap/josm/gui/preferences/map/ProjectionPreference.java index b77be03..36428a4 100644
a b import org.openstreetmap.josm.data.projection.Projection; 28 28 import org.openstreetmap.josm.data.projection.ProjectionSubPrefs; 29 29 import org.openstreetmap.josm.data.projection.Projections; 30 30 import org.openstreetmap.josm.gui.NavigatableComponent; 31 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 31 32 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 32 33 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 33 34 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 34 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;35 35 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting; 36 36 import org.openstreetmap.josm.plugins.PluginHandler; 37 37 import org.openstreetmap.josm.tools.GBC; 38 38 39 public class ProjectionPreference implements SubPreferenceSetting {39 public class ProjectionPreference extends DefaultTabPreferenceSetting { 40 40 41 41 public static class Factory implements PreferenceSettingFactory { 42 42 public PreferenceSetting createPreferenceSetting() { … … public class ProjectionPreference implements SubPreferenceSetting { 99 99 */ 100 100 static private GBC projSubPrefPanelGBC = GBC.std().fill(GBC.BOTH).weight(1.0, 1.0); 101 101 102 public ProjectionPreference() { 103 super(null, tr("Map Projection"), ""); 104 } 105 102 106 public void addGui(PreferenceTabbedPane gui) { 103 107 setupProjectionCombo(); 104 108 … … public class ProjectionPreference implements SubPreferenceSetting { 139 143 projPanel.add(unitsCombo, GBC.eop().fill(GBC.HORIZONTAL).insets(0,5,5,5)); 140 144 projPanel.add(GBC.glue(1,1), GBC.std().fill(GBC.HORIZONTAL).weight(1.0, 1.0)); 141 145 142 JScrollPane scrollpane = new JScrollPane(projPanel); 143 gui.getMapPreference().mapcontent.addTab(tr("Map Projection"), scrollpane); 146 createPreferenceTabWithScrollPane(gui, projPanel); 144 147 145 148 updateMeta(Main.getProjection()); 146 149 } … … public class ProjectionPreference implements SubPreferenceSetting { 297 300 public boolean isExpert() { 298 301 return false; 299 302 } 300 301 @Override302 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {303 return gui.getMapPreference();304 }305 303 } -
src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java b/src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java index 788f549..60dae55 100644
a b import javax.swing.JMenu; 20 20 import javax.swing.JMenuItem; 21 21 import javax.swing.JOptionPane; 22 22 import javax.swing.JPanel; 23 import javax.swing.JScrollPane; 23 24 import javax.swing.JSeparator; 24 25 import javax.swing.event.ChangeEvent; 25 26 import javax.swing.event.ChangeListener; 26 27 27 28 import org.openstreetmap.josm.Main; 28 29 import org.openstreetmap.josm.gui.ExtendedDialog; 30 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 29 31 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 30 32 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 31 33 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 32 import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;33 34 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane.ValidationListener; 34 35 import org.openstreetmap.josm.gui.preferences.SourceEditor; 35 36 import org.openstreetmap.josm.gui.preferences.SourceEditor.ExtendedSourceEntry; 36 37 import org.openstreetmap.josm.gui.preferences.SourceEntry; 37 38 import org.openstreetmap.josm.gui.preferences.SourceProvider; 38 import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;39 39 import org.openstreetmap.josm.gui.tagging.TaggingPreset; 40 40 import org.openstreetmap.josm.gui.tagging.TaggingPresetMenu; 41 41 import org.openstreetmap.josm.gui.tagging.TaggingPresetSeparator; … … import org.openstreetmap.josm.tools.GBC; 44 44 import org.xml.sax.SAXException; 45 45 import org.xml.sax.SAXParseException; 46 46 47 public class TaggingPresetPreference implements SubPreferenceSetting {47 public class TaggingPresetPreference extends DefaultTabPreferenceSetting { 48 48 49 49 public static class Factory implements PreferenceSettingFactory { 50 50 public PreferenceSetting createPreferenceSetting() { … … public class TaggingPresetPreference implements SubPreferenceSetting { 53 53 } 54 54 55 55 private TaggingPresetPreference() { 56 super( );56 super(null, tr("Tagging Presets"), ""); 57 57 } 58 58 59 59 private static final List<SourceProvider> presetSourceProviders = new ArrayList<SourceProvider>(); … … public class TaggingPresetPreference implements SubPreferenceSetting { 153 153 } 154 154 }; 155 155 156 @Override 156 157 public void addGui(final PreferenceTabbedPane gui) { 157 158 sortMenu = new JCheckBox(tr("Sort presets menu"), 158 159 Main.pref.getBoolean("taggingpreset.sortmenu", false)); … … public class TaggingPresetPreference implements SubPreferenceSetting { 162 163 panel.add(sortMenu, GBC.eol().insets(5,5,5,0)); 163 164 sources = new TaggingPresetSourceEditor(); 164 165 panel.add(sources, GBC.eol().fill(GBC.BOTH)); 165 gui.getMapPreference().mapcontent.addTab(tr("Tagging Presets"), panel); 166 167 // this defers loading of tagging preset sources to the first time the tab 168 // with the tagging presets is selected by the user 169 // 170 gui.getMapPreference().mapcontent.addChangeListener( 171 new ChangeListener() { 172 public void stateChanged(ChangeEvent e) { 173 if (gui.getMapPreference().mapcontent.getSelectedComponent() == panel) { 174 sources.initiallyLoadAvailableSources(); 175 } 176 } 177 } 178 ); 179 gui.addValidationListener(validationListener); 166 167 createPreferenceTabWithScrollPane(gui, panel); 168 169 sources.initiallyLoadAvailableSources(); 180 170 } 181 171 182 172 static class TaggingPresetSourceEditor extends SourceEditor { … … public class TaggingPresetPreference implements SubPreferenceSetting { 342 332 public boolean isExpert() { 343 333 return false; 344 334 } 345 346 @Override347 public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {348 return gui.getMapPreference();349 }350 335 } -
src/org/openstreetmap/josm/gui/preferences/server/ProxyPreferencesPanel.java
diff --git a/src/org/openstreetmap/josm/gui/preferences/server/ProxyPreferencesPanel.java b/src/org/openstreetmap/josm/gui/preferences/server/ProxyPreferencesPanel.java index 0199c4f..cf33530 100644
a b import javax.swing.JTextField; 28 28 import org.openstreetmap.josm.Main; 29 29 import org.openstreetmap.josm.gui.JMultilineLabel; 30 30 import org.openstreetmap.josm.gui.help.HelpUtil; 31 import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 32 import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 33 import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 34 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 31 35 import org.openstreetmap.josm.gui.widgets.VerticallyScrollablePanel; 32 36 import org.openstreetmap.josm.io.DefaultProxySelector; 33 37 import org.openstreetmap.josm.io.auth.CredentialsAgent; … … import org.openstreetmap.josm.tools.GBC; 37 41 38 42 public class ProxyPreferencesPanel extends VerticallyScrollablePanel { 39 43 44 public static class Factory implements PreferenceSettingFactory { 45 46 @Override 47 public PreferenceSetting createPreferenceSetting() { 48 return new DefaultTabPreferenceSetting(null, tr("Proxy settings"), tr("Configure whether to use a proxy server")) { 49 50 private ProxyPreferencesPanel pnlProxyPreferences; 51 52 @Override 53 public void addGui(PreferenceTabbedPane gui) { 54 createPreferenceTabWithScrollPane(gui, pnlProxyPreferences = new ProxyPreferencesPanel()); 55 pnlProxyPreferences.initFromPreferences(); 56 } 57 58 @Override 59 public boolean ok() { 60 pnlProxyPreferences.saveToPreferences(); 61 return false; 62 } 63 }; 64 } 65 } 66 40 67 public enum ProxyPolicy { 41 68 NO_PROXY("no-proxy"), 42 69 USE_SYSTEM_SETTINGS("use-system-settings"),