com.dlsc.flexgantt.swing
Class MultiGanttChartContainer<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.JPanel
                  extended by com.dlsc.flexgantt.swing.MultiGanttChartContainer<T>
Type Parameters:
T -
All Implemented Interfaces:
IMultiGanttChartContainer<T>, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.ChangeListener

public class MultiGanttChartContainer<T extends AbstractGanttChart>
extends javax.swing.JPanel
implements IMultiGanttChartContainer<T>, javax.swing.event.ChangeListener

A default multi Gantt chart implementation, which is capable of storing several Gantt charts at once. The user can switch between the Gantt charts. Listeners attached to the container will be informed about the currently selected Gantt chart.

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

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
MultiGanttChartContainer()
          Constructs a new multi Gantt chart container.
 
Method Summary
 void addGanttChart(java.lang.String title, javax.swing.Icon icon, T gc)
          Adds a Gantt chart with the given title to the container.
 void addGanttChart(java.lang.String title, javax.swing.Icon icon, T gc, java.lang.String tip)
          Adds a Gantt chart with the given title to the container.
 void addGanttChart(java.lang.String title, T gc)
          Adds a Gantt chart with the given title to the container.
 void addMultiGanttChartContainerListener(IMultiGanttChartContainerListener l)
          Adds a listener to the container that will be informed about changes in the container.
protected  void fireContainerChanged(MultiGanttChartContainerEvent evt)
          Sends the given event to all listeners.
 T getGanttChart(int index)
          Returns the Gantt chart for the given index.
 int getGanttChartCount()
          Returns the total number of Gantt charts managed by the container.
 int getGanttChartIndex(T gc)
          Returns the index of the given Gantt chart.
 T getSelectedGanttChart()
          Returns the currently selected Gantt chart.
 void insertGanttChart(java.lang.String title, javax.swing.Icon icon, T gc, int index)
          Inserts the given Gantt chart at the given index / location.
 void insertGanttChart(java.lang.String title, javax.swing.Icon icon, T gc, java.lang.String tip, int index)
          Inserts the given Gantt chart at the given index / location.
 void insertGanttChart(java.lang.String title, T gc, int index)
          Inserts the given Gantt chart at the given index / location.
 void removeAllGanttCharts()
          Removes all Gantt charts.
 void removeGanttChart(int index)
          Removes the Gantt chart at the given index.
 void removeGanttChart(T gc)
          Removes the given Gantt chart.
 void removeMultiGanttChartContainerListener(IMultiGanttChartContainerListener l)
          Removes a listener from the container.
 void setSelectedGanttChart(int index)
          Sets the Gantt chart with the given index to be the selected Gantt chart.
 void setSelectedGanttChart(T gc)
          Sets the given Gantt chart to be the selected Gantt chart.
 void stateChanged(javax.swing.event.ChangeEvent e)
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, 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, paintBorder, 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, addImpl, 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, setLayout, 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

MultiGanttChartContainer

public MultiGanttChartContainer()
Constructs a new multi Gantt chart container.

Since:
1.0
Method Detail

getGanttChart

public T getGanttChart(int index)
Description copied from interface: IMultiGanttChartContainer
Returns the Gantt chart for the given index.

Specified by:
getGanttChart in interface IMultiGanttChartContainer<T extends AbstractGanttChart>
Parameters:
index - the index for which to return a Gantt chart
Returns:
the Gantt chart for the given index
See Also:
IMultiGanttChartContainer.getGanttChartCount()

getGanttChartCount

public int getGanttChartCount()
Description copied from interface: IMultiGanttChartContainer
Returns the total number of Gantt charts managed by the container.

Specified by:
getGanttChartCount in interface IMultiGanttChartContainer<T extends AbstractGanttChart>
Returns:
the total number of Gantt charts in the container

getSelectedGanttChart

public T getSelectedGanttChart()
Description copied from interface: IMultiGanttChartContainer
Returns the currently selected Gantt chart.

Specified by:
getSelectedGanttChart in interface IMultiGanttChartContainer<T extends AbstractGanttChart>
Returns:
the selected Gantt chart

addGanttChart

public void addGanttChart(java.lang.String title,
                          T gc)
Adds a Gantt chart with the given title to the container.

Parameters:
title - the title of the Gantt chart (will be shown in tab)
gc - the Gantt chart to add
Since:
1.0

addGanttChart

public void addGanttChart(java.lang.String title,
                          javax.swing.Icon icon,
                          T gc)
Adds a Gantt chart with the given title to the container.

Parameters:
title - the title of the Gantt chart (will be shown in tab)
icon - the icon of the Gantt chart (will be shown in tab)
gc - the Gantt chart to add
Since:
1.0

addGanttChart

public void addGanttChart(java.lang.String title,
                          javax.swing.Icon icon,
                          T gc,
                          java.lang.String tip)
Adds a Gantt chart with the given title to the container.

Parameters:
title - the title of the Gantt chart (will be shown in tab)
icon - the icon of the Gantt chart (will be shown in tab)
gc - the Gantt chart to add
tip - the tooltip of the Gantt chart (will be shown in tab)
Since:
1.0

setSelectedGanttChart

public void setSelectedGanttChart(int index)
Sets the Gantt chart with the given index to be the selected Gantt chart.

Parameters:
index - the index of the Gantt chart that will be selected
Since:
1.0

setSelectedGanttChart

public void setSelectedGanttChart(T gc)
Sets the given Gantt chart to be the selected Gantt chart.

Parameters:
gc - the Gantt chart that will be selected
Since:
1.0

getGanttChartIndex

public int getGanttChartIndex(T gc)
Description copied from interface: IMultiGanttChartContainer
Returns the index of the given Gantt chart.

Specified by:
getGanttChartIndex in interface IMultiGanttChartContainer<T extends AbstractGanttChart>
Parameters:
gc - the Gantt chart for which to return the index
Returns:
the index for the given Gantt chart

insertGanttChart

public void insertGanttChart(java.lang.String title,
                             T gc,
                             int index)
Inserts the given Gantt chart at the given index / location.

Parameters:
title - the title of the Gantt chart (will be shown in the tab)
gc - the inserted Gantt chart
index - the index where the Gantt chart will be inserted
Since:
1.0

insertGanttChart

public void insertGanttChart(java.lang.String title,
                             javax.swing.Icon icon,
                             T gc,
                             int index)
Inserts the given Gantt chart at the given index / location.

Parameters:
title - the title of the Gantt chart (will be shown in the tab)
icon - the icon of the Gantt chart (will be shown in the tab)
gc - the inserted Gantt chart
index - the index where the Gantt chart will be inserted
Since:
1.0

insertGanttChart

public void insertGanttChart(java.lang.String title,
                             javax.swing.Icon icon,
                             T gc,
                             java.lang.String tip,
                             int index)
Inserts the given Gantt chart at the given index / location.

Parameters:
title - the title of the Gantt chart (will be shown in the tab)
icon - the icon of the Gantt chart (will be shown in the tab)
gc - the inserted Gantt chart
tip - the tooltip text of the Gantt chart (will be shown in the tab)
index - the index where the Gantt chart will be inserted
Since:
1.0

removeGanttChart

public void removeGanttChart(T gc)
Removes the given Gantt chart.

Parameters:
gc - the Gantt chart that will be removed
Since:
1.0

removeGanttChart

public void removeGanttChart(int index)
Removes the Gantt chart at the given index.

Parameters:
index - the index of the Gantt chart that will be removed
Since:
1.0

removeAllGanttCharts

public void removeAllGanttCharts()
Removes all Gantt charts.

Since:
1.0

addMultiGanttChartContainerListener

public void addMultiGanttChartContainerListener(IMultiGanttChartContainerListener l)
Description copied from interface: IMultiGanttChartContainer
Adds a listener to the container that will be informed about changes in the container.

Specified by:
addMultiGanttChartContainerListener in interface IMultiGanttChartContainer<T extends AbstractGanttChart>
Parameters:
l - the listener that will be added to the container

removeMultiGanttChartContainerListener

public void removeMultiGanttChartContainerListener(IMultiGanttChartContainerListener l)
Description copied from interface: IMultiGanttChartContainer
Removes a listener from the container.

Specified by:
removeMultiGanttChartContainerListener in interface IMultiGanttChartContainer<T extends AbstractGanttChart>
Parameters:
l - the listener to remove

fireContainerChanged

protected void fireContainerChanged(MultiGanttChartContainerEvent evt)
Sends the given event to all listeners.

Parameters:
evt - the container event to be sent to the listeners
Since:
1.0

stateChanged

public void stateChanged(javax.swing.event.ChangeEvent e)
Specified by:
stateChanged in interface javax.swing.event.ChangeListener