jsky.util.gui
Class GenericToolBar

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JToolBar
                  extended by jsky.util.gui.GenericToolBar
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, SwingConstants
Direct Known Subclasses:
ImageDisplayToolBar, NavigatorToolBar

public class GenericToolBar
extends JToolBar

Implements a generic toolbar that can be used for a number of file/URL browser type applications. The class using this toolbar must implement the GenericToolBarTarget interface.

See Also:
Serialized Form

Nested Class Summary
protected  class GenericToolBar.ButtonPropertyChangeListener
          Local class to enable or disable toolbar buttons when the related actions are enabled or disabled.
 
Nested classes/interfaces inherited from class javax.swing.JToolBar
JToolBar.AccessibleJToolBar, JToolBar.Separator
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  JButton backButton
          Handle for the "Back" button
protected  JButton forwardButton
          Handle for the "Forward" button
protected  JButton openButton
          Handle for the "Open" button
protected  boolean showPictures
          If true, display button icons
protected  boolean showText
          If true, display button labels
protected  GenericToolBarTarget target
          Target panel
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
GenericToolBar()
          Create the toolbar with no target (derived class must add all items)
GenericToolBar(GenericToolBarTarget target)
          Create the toolbar for the given Generic target
GenericToolBar(GenericToolBarTarget target, boolean addItems)
          Create the toolbar for the given Generic target.
GenericToolBar(GenericToolBarTarget target, boolean addItems, int orientation)
          Create the toolbar for the given Generic target.
 
Method Summary
protected  void addToolBarItems()
          Add the items to the tool bar
 JButton getBackButton()
           
 JButton getForwardButton()
           
 JButton getOpenButton()
           
protected  JButton makeBackButton()
          Make the Back button, if it does not yet exists.
protected  JButton makeButton(String toolTip, Action action, boolean isMenuButton)
          Make and return a toolbar button.
protected  JButton makeForwardButton()
          Make the Forward button, if it does not yet exists.
protected  JButton makeMenuButton(String toolTip, JPopupMenu menu)
          Make and return a menu button with the given tool tip and menu.
protected  JButton makeOpenButton()
          Make the Open button, if it does not yet exists.
protected  JToggleButton makeToggleButton(String toolTip, Action action)
          Make and return a toolbar toggle button.
 void setShowPictures(boolean b)
          Set to true to show toolbar buttons with icons
 void setShowText(boolean b)
          Set to true to show toolbar buttons with labels
protected  AbstractButton setupButton(AbstractButton button)
          Set the common attributes for toolbar buttons
 void update()
          Update the toolbar display using the current text/pictures options.
protected  void updateButton(AbstractButton button, String text, Icon icon)
          Update the given button to display text, and/or icons, depending on the current settigs.
 
Methods inherited from class javax.swing.JToolBar
add, addImpl, addSeparator, addSeparator, createActionChangeListener, createActionComponent, getAccessibleContext, getComponentAtIndex, getComponentIndex, getMargin, getOrientation, getUI, getUIClassID, isBorderPainted, isFloatable, isRollover, paintBorder, paramString, setBorderPainted, setFloatable, setLayout, setMargin, setOrientation, setRollover, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

target

protected GenericToolBarTarget target
Target panel


openButton

protected JButton openButton
Handle for the "Open" button


backButton

protected JButton backButton
Handle for the "Back" button


forwardButton

protected JButton forwardButton
Handle for the "Forward" button


showPictures

protected boolean showPictures
If true, display button icons


showText

protected boolean showText
If true, display button labels

Constructor Detail

GenericToolBar

public GenericToolBar(GenericToolBarTarget target,
                      boolean addItems,
                      int orientation)
Create the toolbar for the given Generic target.

Parameters:
target - the target object owning the toolbar
addItems - if true, add the toolbar items, otherwise they should be added by calling addToolBarItems() in a derived class.
orientation - the orientation desired

GenericToolBar

public GenericToolBar(GenericToolBarTarget target,
                      boolean addItems)
Create the toolbar for the given Generic target.

Parameters:
target - the target object owning the toolbar
addItems - if true, add the toolbar items, otherwise they should be added by calling addToolBarItems() in a derived class.

GenericToolBar

public GenericToolBar(GenericToolBarTarget target)
Create the toolbar for the given Generic target


GenericToolBar

public GenericToolBar()
Create the toolbar with no target (derived class must add all items)

Method Detail

addToolBarItems

protected void addToolBarItems()
Add the items to the tool bar


setupButton

protected AbstractButton setupButton(AbstractButton button)
Set the common attributes for toolbar buttons


makeOpenButton

protected JButton makeOpenButton()
Make the Open button, if it does not yet exists. Otherwise update the display using the current options for displaying text or icons.

Returns:
the Open button

makeBackButton

protected JButton makeBackButton()
Make the Back button, if it does not yet exists. Otherwise update the display using the current options for displaying text or icons.

Returns:
the Back button

makeForwardButton

protected JButton makeForwardButton()
Make the Forward button, if it does not yet exists. Otherwise update the display using the current options for displaying text or icons.

Returns:
the Forward button

makeButton

protected JButton makeButton(String toolTip,
                             Action action,
                             boolean isMenuButton)
Make and return a toolbar button.

Parameters:
toolTip - the tool tip text
action - the action for the button
isMenuButton - true if the button will have a menu

makeToggleButton

protected JToggleButton makeToggleButton(String toolTip,
                                         Action action)
Make and return a toolbar toggle button.

Parameters:
toolTip - the tool tip text
action - the action for the button
isMenuButton - true if the button will have a menu

makeMenuButton

protected JButton makeMenuButton(String toolTip,
                                 JPopupMenu menu)
Make and return a menu button with the given tool tip and menu.

Parameters:
toolTip - the tool tip text for the button
menu - the menu for the button

updateButton

protected void updateButton(AbstractButton button,
                            String text,
                            Icon icon)
Update the given button to display text, and/or icons, depending on the current settigs.

Parameters:
button - the button
text - the button text
icon - the URL string for the button's icon

setShowPictures

public void setShowPictures(boolean b)
Set to true to show toolbar buttons with icons


setShowText

public void setShowText(boolean b)
Set to true to show toolbar buttons with labels


update

public void update()
Update the toolbar display using the current text/pictures options.


getOpenButton

public JButton getOpenButton()

getBackButton

public JButton getBackButton()

getForwardButton

public JButton getForwardButton()


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.