com.dlsc.flexgantt.swing
Class GanttChartToolBar<T extends AbstractGanttChart>

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 com.dlsc.flexgantt.swing.GanttChartToolBar<T>
Type Parameters:
T - the type of the Gantt chart that will be controlled by the toolbar
All Implemented Interfaces:
IMultiGanttChartContainerListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.SwingConstants

public class GanttChartToolBar<T extends AbstractGanttChart>
extends javax.swing.JToolBar
implements java.beans.PropertyChangeListener, IMultiGanttChartContainerListener

A toolbar for use in combination with a Gantt chart. This class is provided as a convenience for easily adding toolbar support to any application. However, most applications will require their own toolbar implementation before they get released to the customer.

Since:
1.0
Author:
Dirk Lemmermann
See Also:
Serialized Form

Nested Class Summary
static class GanttChartToolBar.Control
          An enumerator that can be used in combination with the toolbar constructor to determine which buttons are displayed.
static class GanttChartToolBar.Mode
          Different display modes supported by the toolbar.
 
Nested classes/interfaces inherited from class javax.swing.JToolBar
javax.swing.JToolBar.AccessibleJToolBar, javax.swing.JToolBar.Separator
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
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
GanttChartToolBar(IMultiGanttChartContainer<T> container)
          Creates a new toolbar for use with a Gantt chart container.
GanttChartToolBar(int orientation, IMultiGanttChartContainer<T> container)
          Creates a new toolbar for use with a Gantt chart.
GanttChartToolBar(int orientation, T ganttChart)
          Creates a new toolbar for use with a Gantt chart.
GanttChartToolBar(java.lang.String title, IMultiGanttChartContainer<T> container)
          Creates a new toolbar for use with a Gantt chart.
GanttChartToolBar(java.lang.String title, int orientation, IMultiGanttChartContainer<T> container)
          Creates a new toolbar for use with a Gantt chart.
GanttChartToolBar(java.lang.String title, int orientation, IMultiGanttChartContainer<T> container, java.util.Collection<GanttChartToolBar.Control> controls)
          Creates a new toolbar for use with a Gantt chart container.
GanttChartToolBar(java.lang.String title, int orientation, T ganttChart)
          Creates a new toolbar for use with a Gantt chart.
GanttChartToolBar(java.lang.String title, int orientation, T ganttChart, java.util.Collection<GanttChartToolBar.Control> controls)
          Creates a new toolbar for use with a Gantt chart.
GanttChartToolBar(java.lang.String title, T ganttChart)
          Creates a new toolbar for use with a Gantt chart.
GanttChartToolBar(T ganttChart)
          Creates a new toolbar for use with a Gantt chart.
 
Method Summary
 void containerChanged(MultiGanttChartContainerEvent evt)
          Listener callback method that will be invoked when the state of the container changes.
 javax.swing.AbstractButton getButton(GanttChartToolBar.Control control)
          Returns the button that was created for the given toolbar control.
 T getGanttChart()
          Returns the Gantt chart instance that gets controlled by the toolbar.
 GanttChartToolBar.Mode getMode()
          Returns the toolbar's display mode.
 void propertyChange(java.beans.PropertyChangeEvent evt)
           
 void setMode(GanttChartToolBar.Mode mode)
          Sets the toolbar's display mode to be one of the three options: text only, icon only, text and icon.
 
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
 

Constructor Detail

GanttChartToolBar

public GanttChartToolBar(java.lang.String title,
                         int orientation,
                         T ganttChart,
                         java.util.Collection<GanttChartToolBar.Control> controls)
Creates a new toolbar for use with a Gantt chart.

Parameters:
title - the name of the toolbar
orientation - the initial orientation -- it must be either HORIZONTAL or VERTICAL
ganttChart - the gantt chart controlled by the toolbar
controls - list of control elements that should be visible in the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(java.lang.String title,
                         int orientation,
                         T ganttChart)
Creates a new toolbar for use with a Gantt chart.

Parameters:
title - the name of the toolbar
orientation - the initial orientation -- it must be either HORIZONTAL or VERTICAL
ganttChart - the Gantt chart controlled by the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(java.lang.String title,
                         T ganttChart)
Creates a new toolbar for use with a Gantt chart. The toolbar's orientation will be horizontal.

Parameters:
title - the name of the toolbar
ganttChart - the Gantt chart controlled by the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(int orientation,
                         T ganttChart)
Creates a new toolbar for use with a Gantt chart. The toolbar will have no title.

Parameters:
orientation - the initial orientation -- it must be either HORIZONTAL or VERTICAL
ganttChart - the Gantt chart controlled by the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(T ganttChart)
Creates a new toolbar for use with a Gantt chart. The toolbar will have no name and its orientation will be horizontal.

Parameters:
ganttChart - the gantt chart controlled by the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(java.lang.String title,
                         int orientation,
                         IMultiGanttChartContainer<T> container,
                         java.util.Collection<GanttChartToolBar.Control> controls)
Creates a new toolbar for use with a Gantt chart container.

Parameters:
title - the name of the toolbar
orientation - the initial orientation -- it must be either HORIZONTAL or VERTICAL
container - the Gantt chart container controlled by the toolbar
controls - list of control elements that should be visible in the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(java.lang.String title,
                         int orientation,
                         IMultiGanttChartContainer<T> container)
Creates a new toolbar for use with a Gantt chart.

Parameters:
title - the name of the toolbar
orientation - the initial orientation -- it must be either HORIZONTAL or VERTICAL
container - the Gantt chart container controlled by the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(java.lang.String title,
                         IMultiGanttChartContainer<T> container)
Creates a new toolbar for use with a Gantt chart. The toolbar's orientation will be horizontal.

Parameters:
title - the name of the toolbar
container - the Gantt chart container controlled by the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(int orientation,
                         IMultiGanttChartContainer<T> container)
Creates a new toolbar for use with a Gantt chart. The toolbar will have no title.

Parameters:
orientation - the initial orientation -- it must be either HORIZONTAL or VERTICAL
container - the Gantt chart container controlled by the toolbar
Since:
1.0

GanttChartToolBar

public GanttChartToolBar(IMultiGanttChartContainer<T> container)
Creates a new toolbar for use with a Gantt chart container. The toolbar will have no name and its orientation will be horizontal.

Parameters:
container - the Gantt chart container controlled by the toolbar
Since:
1.0
Method Detail

setMode

public void setMode(GanttChartToolBar.Mode mode)
Sets the toolbar's display mode to be one of the three options: text only, icon only, text and icon.

Parameters:
mode - the toolbar display mode.
Since:
1.0
See Also:
getMode()

getMode

public GanttChartToolBar.Mode getMode()
Returns the toolbar's display mode.

Returns:
the display mode
Since:
1.0

getGanttChart

public T getGanttChart()
Returns the Gantt chart instance that gets controlled by the toolbar.

Returns:
the toolbar's Gantt chart
Since:
1.0

getButton

public javax.swing.AbstractButton getButton(GanttChartToolBar.Control control)
Returns the button that was created for the given toolbar control.

Parameters:
control - the toolbar control
Returns:
the button associated with the given action
Since:
1.0

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent evt)
Specified by:
propertyChange in interface java.beans.PropertyChangeListener

containerChanged

public void containerChanged(MultiGanttChartContainerEvent evt)
Description copied from interface: IMultiGanttChartContainerListener
Listener callback method that will be invoked when the state of the container changes.

Specified by:
containerChanged in interface IMultiGanttChartContainerListener
Parameters:
evt - the container event