Class JToolBarLoader

java.lang.Object
  |
  +--JToolBarLoader

public class JToolBarLoader
extends java.lang.Object

Builds up a Swing toolbar by reading the settings from a resource file. It's intended to use this class for loading toolbar's created with Magic Menu.


Field Summary
static java.lang.String ACTION_SUFFIX
          Suffix applied to the key used in resource file lookups for an action.
static java.lang.String IMAGE_SUFFIX
          Suffix applied to the key used in resource file lookups for an image.
static java.lang.String LABEL_SUFFIX
          Suffix applied to the key used in resource file lookups for a label.
static char MNEMONIC_ESCAPE
          The escape character to identify a mnemonic in a label.
static int STRUT_SIZE
          The distance between separated toolbar components.
static java.lang.String TOOLTIP_SUFFIX
          Suffix applied to the key used in resource file lookups for a tooltip.
 
Constructor Summary
JToolBarLoader(java.util.Properties properties)
          Create a new JToolBarLoader object.
JToolBarLoader(java.util.ResourceBundle resources)
          Create a new JToolBarLoader object.
 
Method Summary
protected  java.awt.Component createTool(java.lang.String key)
          Hook through which every toolbar item is created.
 javax.swing.JToolBar createToolBar(java.lang.String key)
          Create the toolbar for the specified key.
protected  javax.swing.JButton createToolBarButton(java.lang.String key)
          Create a button to go inside of the toolbar.
protected  java.awt.event.ActionListener getAction(java.lang.String cmd)
          Return the Action with name cmd stored in the command hashtable.
 java.util.Hashtable getCommands()
          Returns a hashtable containing the toolbar commands.
 java.awt.event.ActionListener getDefaultActionListener()
          Return the default action listener.
protected  java.net.URL getResource(java.lang.String key)
          Read the name of an image from the resource bundle and convert if to an URL.
protected  java.lang.String getResourceString(java.lang.String key)
          Read a string from the resource file containing the toolbar definition.
protected  javax.swing.ImageIcon loadImageIcon(java.net.URL url)
          Hook through which ImageIcons are loaded.
protected  void reportError(java.lang.String text)
          This method will be called, if some errors occur.
 void setCommands(java.util.Hashtable commands)
          Set the hashtable containing the toolbar commands.
 void setDefaultActionListener(java.awt.event.ActionListener al)
          Set the default action listener.
protected  java.lang.String[] tokenize(java.lang.String input)
          Take the given string and chop it up into a series of strings on whitespace boundries.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

IMAGE_SUFFIX

public static final java.lang.String IMAGE_SUFFIX
Suffix applied to the key used in resource file lookups for an image.

LABEL_SUFFIX

public static final java.lang.String LABEL_SUFFIX
Suffix applied to the key used in resource file lookups for a label.

ACTION_SUFFIX

public static final java.lang.String ACTION_SUFFIX
Suffix applied to the key used in resource file lookups for an action.

TOOLTIP_SUFFIX

public static final java.lang.String TOOLTIP_SUFFIX
Suffix applied to the key used in resource file lookups for a tooltip.

MNEMONIC_ESCAPE

public static final char MNEMONIC_ESCAPE
The escape character to identify a mnemonic in a label.

STRUT_SIZE

public static final int STRUT_SIZE
The distance between separated toolbar components.
Constructor Detail

JToolBarLoader

public JToolBarLoader(java.util.ResourceBundle resources)
Create a new JToolBarLoader object.
Parameters:
resources - A resources bundle containing the toolbar settings.

JToolBarLoader

public JToolBarLoader(java.util.Properties properties)
Create a new JToolBarLoader object.
Parameters:
properties - Properties containing the menu settings.
Method Detail

getCommands

public java.util.Hashtable getCommands()
Returns a hashtable containing the toolbar commands. The hashtable contains pairs of action name and Action object.

setCommands

public void setCommands(java.util.Hashtable commands)
Set the hashtable containing the toolbar commands. This hashtable should contain pairs of action name and Action object. If a commands hashtable is set, this should be done before the first call to createToolBar, createTool or createMenuItem.
See Also:
createToolBar(java.lang.String), createTool(java.lang.String), createToolBarButton(java.lang.String)

getDefaultActionListener

public java.awt.event.ActionListener getDefaultActionListener()
Return the default action listener. This action listener is registered at every toolbar item, which has no associated command in the commands hashtable.

setDefaultActionListener

public void setDefaultActionListener(java.awt.event.ActionListener al)
Set the default action listener. This action listener is registered at every toolbar item,which has no associated command in the commands hashtable. If a ActionListener is set, this should be done before the first call to createToolBar, createTool or createMenuToolBarButton.
See Also:
createToolBar(java.lang.String), createTool(java.lang.String), createToolBarButton(java.lang.String)

createToolBarButton

protected javax.swing.JButton createToolBarButton(java.lang.String key)
Create a button to go inside of the toolbar. By default this will load an image resource.
Parameters:
key - The key in the resource file to serve as the basis of lookups.

getAction

protected java.awt.event.ActionListener getAction(java.lang.String cmd)
Return the Action with name cmd stored in the command hashtable. If it doesn't exist, return the default action listener.
Parameters:
cmd - The action command of the associated toolbar button.

getResourceString

protected java.lang.String getResourceString(java.lang.String key)
Read a string from the resource file containing the toolbar definition.

getResource

protected java.net.URL getResource(java.lang.String key)
Read the name of an image from the resource bundle and convert if to an URL. The name in the resource bundle must be a relative path. It's relative to the location of this class.

tokenize

protected java.lang.String[] tokenize(java.lang.String input)
Take the given string and chop it up into a series of strings on whitespace boundries. This is useful for trying to get an array of strings out of the resource file.

createToolBar

public javax.swing.JToolBar createToolBar(java.lang.String key)
Create the toolbar for the specified key. This pulls the definition of the toolbar from the associated resource bundle.

createTool

protected java.awt.Component createTool(java.lang.String key)
Hook through which every toolbar item is created. This method can be used to integrate custom gui elements into the toolbar.

loadImageIcon

protected javax.swing.ImageIcon loadImageIcon(java.net.URL url)
Hook through which ImageIcons are loaded. If some kind of image cache should be implemented, this method can be overwritten.

reportError

protected void reportError(java.lang.String text)
This method will be called, if some errors occur. By default this will cause an output to stderr.