Changeset 13431 in josm for trunk/src


Ignore:
Timestamp:
2018-02-17T16:36:12+01:00 (7 years ago)
Author:
Don-vip
Message:

fix #15950 - Preferences Help button should go directly to selected Preferences tab Help page

Location:
trunk/src/org/openstreetmap/josm/gui/preferences
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/preferences/DefaultTabPreferenceSetting.java

    r12620 r13431  
    1010import javax.swing.JTabbedPane;
    1111
     12import org.openstreetmap.josm.gui.help.HelpUtil;
    1213import org.openstreetmap.josm.tools.GBC;
    1314import org.openstreetmap.josm.tools.Logging;
     
    136137        return subSettingMap != null ? subSettingMap.get(sub) : null;
    137138    }
     139
     140    @Override
     141    public String getHelpContext() {
     142        return HelpUtil.ht("/Action/Preferences");
     143    }
    138144}
  • trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java

    r12678 r13431  
    4242
    4343    private final PreferenceTabbedPane tpPreferences = new PreferenceTabbedPane();
     44    private final ContextSensitiveHelpAction helpAction = new ContextSensitiveHelpAction();
    4445    private boolean canceled;
    4546
     
    6869        btns.add(new JButton(new OKAction()));
    6970        btns.add(new JButton(new CancelAction()));
    70         btns.add(new JButton(new ContextSensitiveHelpAction(HelpUtil.ht("/Action/Preferences"))));
     71        btns.add(new JButton(helpAction));
    7172        pnl.add(expert, GBC.std().insets(5, 0, 0, 0));
    7273        pnl.add(btns, GBC.std().fill(GBC.HORIZONTAL));
     
    8586
    8687        InputMapUtils.addEscapeAction(getRootPane(), new CancelAction());
    87         HelpUtil.setHelpContext(getRootPane(), HelpUtil.ht("/Action/Preferences"));
     88        setHelpContext(HelpUtil.ht("/Action/Preferences"));
     89    }
     90
     91    /**
     92     * Sets the help context of the preferences dialog.
     93     * @param helpContext new help context
     94     * @since 13431
     95     */
     96    public final void setHelpContext(String helpContext) {
     97        helpAction.setHelpTopic(helpContext);
     98        HelpUtil.setHelpContext(getRootPane(), helpContext);
    8899    }
    89100
     
    97108    }
    98109
     110    /**
     111     * Determines if preferences changes have been canceled.
     112     * @return {@code true} if preferences changes have been canceled
     113     */
    99114    public boolean isCanceled() {
    100115        return canceled;
     
    109124        if (visible) {
    110125            // Make the pref window at most as large as the parent JOSM window
    111             // Have to take window decorations into account or the windows will
    112             // be too large
     126            // Have to take window decorations into account or the windows will be too large
    113127            Insets i = this.getParent().getInsets();
    114128            Dimension p = this.getParent().getSize();
    115129            p = new Dimension(Math.min(p.width-i.left-i.right, 700),
    116                     Math.min(p.height-i.top-i.bottom, 800));
     130                              Math.min(p.height-i.top-i.bottom, 800));
    117131            new WindowGeometry(
    118132                    getClass().getName() + ".geometry",
  • trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceTabbedPane.java

    r13160 r13431  
    55
    66import java.awt.Component;
     7import java.awt.Container;
    78import java.awt.Font;
    89import java.awt.GridBagLayout;
     
    610611                }
    611612            }
     613            Container ancestor = getTopLevelAncestor();
     614            if (ancestor instanceof PreferenceDialog) {
     615                ((PreferenceDialog) ancestor).setHelpContext(preferenceSettings.getHelpContext());
     616            }
    612617        }
    613618    }
  • trunk/src/org/openstreetmap/josm/gui/preferences/TabPreferenceSetting.java

    r8512 r13431  
    7878     */
    7979    boolean selectSubTab(SubPreferenceSetting subPref);
     80
     81    /**
     82     * Returns the help context for this preferences settings tab.
     83     * @return the help context for this preferences settings tab
     84     * @since 13431
     85     */
     86    String getHelpContext();
    8087}
  • trunk/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java

    r12846 r13431  
    6969import org.openstreetmap.josm.data.imagery.ImageryLayerInfo;
    7070import org.openstreetmap.josm.gui.MainApplication;
     71import org.openstreetmap.josm.gui.help.HelpUtil;
    7172import org.openstreetmap.josm.gui.tagging.presets.TaggingPreset;
    7273import org.openstreetmap.josm.gui.util.GuiHelper;
     
    993994        }
    994995
     996        @Override
     997        public String getHelpContext() {
     998            return HelpUtil.ht("/Preferences/Toolbar");
     999        }
    9951000    }
    9961001
  • trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AdvancedPreference.java

    r12881 r13431  
    4040import org.openstreetmap.josm.data.Preferences;
    4141import org.openstreetmap.josm.data.PreferencesUtils;
    42 import org.openstreetmap.josm.spi.preferences.Setting;
    43 import org.openstreetmap.josm.spi.preferences.StringSetting;
    4442import org.openstreetmap.josm.gui.dialogs.LogShowDialog;
     43import org.openstreetmap.josm.gui.help.HelpUtil;
    4544import org.openstreetmap.josm.gui.io.CustomConfigurator;
    4645import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
     
    5251import org.openstreetmap.josm.gui.widgets.JosmTextField;
    5352import org.openstreetmap.josm.spi.preferences.Config;
     53import org.openstreetmap.josm.spi.preferences.Setting;
     54import org.openstreetmap.josm.spi.preferences.StringSetting;
    5455import org.openstreetmap.josm.tools.GBC;
    5556import org.openstreetmap.josm.tools.Logging;
     
    463464        return false;
    464465    }
     466
     467    @Override
     468    public String getHelpContext() {
     469        return HelpUtil.ht("/Preferences/Advanced");
     470    }
    465471}
  • trunk/src/org/openstreetmap/josm/gui/preferences/audio/AudioPreference.java

    r13050 r13431  
    1111import javax.swing.JPanel;
    1212
     13import org.openstreetmap.josm.gui.help.HelpUtil;
    1314import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
    1415import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
     
    147148        return false;
    148149    }
     150
     151    @Override
     152    public String getHelpContext() {
     153        return HelpUtil.ht("/Preferences/Audio");
     154    }
    149155}
  • trunk/src/org/openstreetmap/josm/gui/preferences/display/DisplayPreference.java

    r8509 r13431  
    66import javax.swing.JTabbedPane;
    77
     8import org.openstreetmap.josm.gui.help.HelpUtil;
    89import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
    910import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
     
    4243        gui.createPreferenceTab(this).add(getTabPane(), GBC.eol().fill(GBC.BOTH));
    4344    }
     45
     46    @Override
     47    public String getHelpContext() {
     48        return HelpUtil.ht("/Preferences/Display");
     49    }
    4450}
  • trunk/src/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreference.java

    r13427 r13431  
    6262import org.openstreetmap.josm.gui.MainApplication;
    6363import org.openstreetmap.josm.gui.download.DownloadDialog;
     64import org.openstreetmap.josm.gui.help.HelpUtil;
    6465import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
    6566import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
     
    957958        MainApplication.getMenu().imageryMenu.refreshOffsetMenu();
    958959    }
     960
     961    @Override
     962    public String getHelpContext() {
     963        return HelpUtil.ht("/Preferences/Imagery");
     964    }
    959965}
  • trunk/src/org/openstreetmap/josm/gui/preferences/map/MapPreference.java

    r8509 r13431  
    66import javax.swing.JTabbedPane;
    77
     8import org.openstreetmap.josm.gui.help.HelpUtil;
    89import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
    910import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
     
    4142        gui.createPreferenceTab(this).add(getTabPane(), GBC.eol().fill(GBC.BOTH));
    4243    }
     44
     45    @Override
     46    public String getHelpContext() {
     47        return HelpUtil.ht("/Preferences/Map");
     48    }
    4349}
  • trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginPreference.java

    r12846 r13431  
    649649        }
    650650    }
     651
     652    @Override
     653    public String getHelpContext() {
     654        return HelpUtil.ht("/Preferences/Plugins");
     655    }
    651656}
  • trunk/src/org/openstreetmap/josm/gui/preferences/remotecontrol/RemoteControlPreference.java

    r13288 r13431  
    2828
    2929import org.openstreetmap.josm.Main;
     30import org.openstreetmap.josm.gui.help.HelpUtil;
    3031import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
    3132import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
     
    219220        return false;
    220221    }
     222
     223    @Override
     224    public String getHelpContext() {
     225        return HelpUtil.ht("/Preferences/RemoteControl");
     226    }
    221227}
  • trunk/src/org/openstreetmap/josm/gui/preferences/server/ServerAccessPreference.java

    r10763 r13431  
    110110        return false;
    111111    }
     112
     113    @Override
     114    public String getHelpContext() {
     115        return HelpUtil.ht("/Preferences/Connection");
     116    }
    112117}
  • trunk/src/org/openstreetmap/josm/gui/preferences/shortcut/ShortcutPreference.java

    r7668 r13431  
    66import javax.swing.JPanel;
    77
     8import org.openstreetmap.josm.gui.help.HelpUtil;
    89import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
    910import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
     
    5859        defaultFilter = substring;
    5960    }
     61
     62    @Override
     63    public String getHelpContext() {
     64        return HelpUtil.ht("/Preferences/Shortcuts");
     65    }
    6066}
  • trunk/src/org/openstreetmap/josm/gui/preferences/validator/ValidatorPreference.java

    r12649 r13431  
    66import javax.swing.JTabbedPane;
    77
     8import org.openstreetmap.josm.gui.help.HelpUtil;
    89import org.openstreetmap.josm.gui.preferences.DefaultTabPreferenceSetting;
    910import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
     
    4445        return false;
    4546    }
     47
     48    @Override
     49    public String getHelpContext() {
     50        return HelpUtil.ht("/Preferences/Validator");
     51    }
    4652}
Note: See TracChangeset for help on using the changeset viewer.