Class ToolbarPreferences
- java.lang.Object
-
- org.openstreetmap.josm.gui.preferences.ToolbarPreferences
-
- All Implemented Interfaces:
PreferenceSettingFactory,TaggingPresetListener
public class ToolbarPreferences extends java.lang.Object implements PreferenceSettingFactory, TaggingPresetListener
Toolbar preferences.- Since:
- 172
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classToolbarPreferences.ActionDefinitionAction definition.private static classToolbarPreferences.ActionParametersTableModelstatic classToolbarPreferences.ActionParserParse actions from a nameclassToolbarPreferences.SettingsToolbar preferences settings.private classToolbarPreferences.ToolbarPopupMenu
-
Field Summary
Fields Modifier and Type Field Description private static java.awt.datatransfer.DataFlavorACTION_FLAVORprivate java.util.Map<java.lang.Object,ToolbarPreferences.ActionDefinition>buttonActionsjavax.swing.JToolBarcontrolprivate static java.lang.String[]deftoolbarprivate static java.lang.StringDIALOGSprivate static java.lang.StringEMPTY_TOOLBAR_MARKERstatic java.lang.StringIMAGERY_PREFIXThe prefix for imagery toolbar entries.private ToolbarPreferences.ToolbarPopupMenupopupMenuprivate java.util.Map<java.lang.String,javax.swing.Action>regactionsKey: Registered name (property "toolbar" of action).private javax.swing.tree.DefaultMutableTreeNoderootActionsNodeprivate booleanshowInfoAboutMissingActionsprivate static java.lang.StringTOOLBAR
-
Constructor Summary
Constructors Constructor Description ToolbarPreferences()Constructs a newToolbarPreferences.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private javax.swing.AbstractButtonaddButtonAndShortcut(ToolbarPreferences.ActionDefinition action)voidaddCustomButton(java.lang.String definitionText, int preferredIndex, boolean removeIfExists)The method to add custom button on toolbar like search or preset buttonsPreferenceSettingcreatePreferenceSetting()Creates preference settings.voidenableInfoAboutMissingAction()Call withtruewhen all plugins were loaded.private java.util.Collection<ToolbarPreferences.ActionDefinition>getDefinedActions()static java.util.Collection<java.lang.String>getToolString()private static voidloadAction(javax.swing.tree.DefaultMutableTreeNode node, javax.swing.MenuElement menu, java.util.Map<java.lang.String,javax.swing.Action> actionsInMenu)private voidloadActions(java.util.Map<java.lang.String,javax.swing.Action> actionsInMenu)voidrefreshToolbarControl()Parse the toolbar preference setting and construct the toolbar GUI control.javax.swing.Actionregister(javax.swing.Action action)Registers an action to the toolbar preferences.voidtaggingPresetsModified()Called after list of tagging presets has been modified.javax.swing.Actionunregister(javax.swing.Action action)Unregisters an action from the toolbar preferences.
-
-
-
Field Detail
-
EMPTY_TOOLBAR_MARKER
private static final java.lang.String EMPTY_TOOLBAR_MARKER
- See Also:
- Constant Field Values
-
TOOLBAR
private static final java.lang.String TOOLBAR
- See Also:
- Constant Field Values
-
DIALOGS
private static final java.lang.String DIALOGS
- See Also:
- Constant Field Values
-
IMAGERY_PREFIX
public static final java.lang.String IMAGERY_PREFIX
The prefix for imagery toolbar entries.- Since:
- 11657
- See Also:
- Constant Field Values
-
popupMenu
private final ToolbarPreferences.ToolbarPopupMenu popupMenu
-
regactions
private final java.util.Map<java.lang.String,javax.swing.Action> regactions
Key: Registered name (property "toolbar" of action). Value: The action to execute.
-
rootActionsNode
private final javax.swing.tree.DefaultMutableTreeNode rootActionsNode
-
control
public final javax.swing.JToolBar control
-
buttonActions
private final java.util.Map<java.lang.Object,ToolbarPreferences.ActionDefinition> buttonActions
-
showInfoAboutMissingActions
private boolean showInfoAboutMissingActions
-
deftoolbar
private static final java.lang.String[] deftoolbar
-
ACTION_FLAVOR
private static final java.awt.datatransfer.DataFlavor ACTION_FLAVOR
-
-
Constructor Detail
-
ToolbarPreferences
public ToolbarPreferences()
Constructs a newToolbarPreferences.
-
-
Method Detail
-
createPreferenceSetting
public PreferenceSetting createPreferenceSetting()
Description copied from interface:PreferenceSettingFactoryCreates preference settings.- Specified by:
createPreferenceSettingin interfacePreferenceSettingFactory- Returns:
- created preference settings
-
loadAction
private static void loadAction(javax.swing.tree.DefaultMutableTreeNode node, javax.swing.MenuElement menu, java.util.Map<java.lang.String,javax.swing.Action> actionsInMenu)
-
loadActions
private void loadActions(java.util.Map<java.lang.String,javax.swing.Action> actionsInMenu)
-
getToolString
public static java.util.Collection<java.lang.String> getToolString()
-
getDefinedActions
private java.util.Collection<ToolbarPreferences.ActionDefinition> getDefinedActions()
-
register
public javax.swing.Action register(javax.swing.Action action)
Registers an action to the toolbar preferences.- Parameters:
action- Action to register- Returns:
- The parameter (for better chaining)
-
unregister
public javax.swing.Action unregister(javax.swing.Action action)
Unregisters an action from the toolbar preferences.- Parameters:
action- Action to unregister- Returns:
- The removed action, or null
- Since:
- 11654
-
refreshToolbarControl
public void refreshToolbarControl()
Parse the toolbar preference setting and construct the toolbar GUI control.Call this, if anything has changed in the toolbar settings and you want to refresh the toolbar content (e.g. after registering actions in a plugin)
-
addCustomButton
public void addCustomButton(java.lang.String definitionText, int preferredIndex, boolean removeIfExists)
The method to add custom button on toolbar like search or preset buttons- Parameters:
definitionText- toolbar definition text to describe the new button, must be carefully generated by usingToolbarPreferences.ActionParserpreferredIndex- place to put the new button, give -1 for the end of toolbarremoveIfExists- if true and the button already exists, remove it
-
addButtonAndShortcut
private javax.swing.AbstractButton addButtonAndShortcut(ToolbarPreferences.ActionDefinition action)
-
taggingPresetsModified
public void taggingPresetsModified()
Description copied from interface:TaggingPresetListenerCalled after list of tagging presets has been modified.- Specified by:
taggingPresetsModifiedin interfaceTaggingPresetListener
-
enableInfoAboutMissingAction
public void enableInfoAboutMissingAction()
Call withtruewhen all plugins were loaded.- Since:
- 18361
-
-