001// License: GPL. For details, see LICENSE file. 002package org.openstreetmap.josm.gui.preferences.display; 003 004import static org.openstreetmap.josm.tools.I18n.tr; 005 006import org.openstreetmap.josm.gui.help.HelpUtil; 007import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting; 008import org.openstreetmap.josm.gui.preferences.PreferenceSetting; 009import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory; 010import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane; 011 012/** 013 * "GPS Points" drawing preferences. 014 */ 015public class GPXPreference extends DefaultTabPreferenceSetting { 016 017 /** 018 * Factory used to create a new {@code GPXPreference}. 019 */ 020 public static class Factory implements PreferenceSettingFactory { 021 @Override 022 public PreferenceSetting createPreferenceSetting() { 023 return new GPXPreference(); 024 } 025 } 026 027 GPXPreference() { 028 super("layer/gpx_small", tr("GPS Points"), tr("Settings that control the drawing of GPS tracks.")); 029 } 030 031 private GPXSettingsPanel gpxPanel; 032 033 @Override 034 public void addGui(PreferenceTabbedPane gui) { 035 gpxPanel = new GPXSettingsPanel(); 036 gui.addValidationListener(gpxPanel); 037 createPreferenceTabWithScrollPane(gui, gpxPanel); 038 } 039 040 @Override 041 public boolean ok() { 042 return gpxPanel.savePreferences(); 043 } 044 045 @Override 046 public boolean isExpert() { 047 return false; 048 } 049 050 @Override 051 public String getHelpContext() { 052 return HelpUtil.ht("/Preferences/GPXPreference"); 053 } 054}