com.dlsc.flexgantt.swing.layer.system
Class DefaultResourceRowRenderer

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.layer.system.DefaultRowRenderer
                      extended by com.dlsc.flexgantt.swing.layer.system.DefaultResourceRowRenderer
All Implemented Interfaces:
IRowRenderer, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class DefaultResourceRowRenderer
extends DefaultRowRenderer

A row renderer specialized on drawing the row background when the hierarchy / tree node is an instance of DefaultResourceNode. The renderer is capable of looking up and rendering the capacity lines defined on the resource node.

Since:
1.0
Author:
Dirk Lemmermann
See Also:
IResourceNode.getCapacityLines(int, boolean), IResourceNode.getCapacityLocation(int, double), 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 com.dlsc.flexgantt.swing.layer.system.DefaultRowRenderer
model, node
 
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
protected DefaultResourceRowRenderer()
          Constructs a new row renderer.
 
Method Summary
 java.awt.Color getMajorCapacityLineColor()
          Returns the color used for drawing the major capacity line.
 java.awt.Color getMinorCapacityLineColor()
          Returns the color used for drawing the minor capacity lines.
protected  IResourceNode getResourceNode()
          Returns the resource node for which the renderer is currently being invoked.
 java.awt.Component getRowRendererComponent(RowLayer layer, java.lang.Object node, boolean selected, int row, ITimeSpan span, boolean hasFocus)
          Returns a component that will be used for renderering additional information about a row (for example resource capacity lines).
 boolean isPaintMajorCapacityLines()
           
 boolean isPaintMinorCapacityLines()
           
protected  void paintComponent(java.awt.Graphics g)
           
protected  void paintLines(java.awt.Graphics g, boolean major)
          Draws the capacity lines.
 void setMajorCapacityLineColor(java.awt.Color color)
          Sets the color used for drawing the major capacity lines.
 void setMinorCapacityLineColor(java.awt.Color color)
          Sets the color used for drawing the minor capacity lines.
 void setPaintMajorCapacityLines(boolean paintMajorCapacityLines)
           
 void setPaintMinorCapacityLines(boolean paintMinorCapacityLines)
           
 
Methods inherited from class com.dlsc.flexgantt.swing.layer.system.DefaultRowRenderer
firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getFocusBackground, getFocusForeground, getLineColor, getLineColor, getModel, getNode, getRow, getRowLayer, getTimeSpan, hasFocus, invalidate, isDebug, isFocusVisible, isPaintingLines, isSelected, isShowingSelection, paintLines, repaint, repaint, repaint, revalidate, setDebug, setFocusBackground, setFocusForeground, setFocusVisible, setLineColor, setPaintingLines, setShowingSelection, validate
 
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, 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, 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, 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, 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, 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, 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, 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, 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

DefaultResourceRowRenderer

protected DefaultResourceRowRenderer()
Constructs a new row renderer.

Since:
1.0
Method Detail

getMajorCapacityLineColor

public java.awt.Color getMajorCapacityLineColor()
Returns the color used for drawing the major capacity line.

Returns:
the color used for the major capacity lines
Since:
1.0

setMajorCapacityLineColor

public void setMajorCapacityLineColor(java.awt.Color color)
Sets the color used for drawing the major capacity lines.

Parameters:
color - the color used for the major capacity lines
Since:
1.0

getMinorCapacityLineColor

public java.awt.Color getMinorCapacityLineColor()
Returns the color used for drawing the minor capacity lines.

Returns:
the color used for the minor capacity lines
Since:
1.0

setMinorCapacityLineColor

public void setMinorCapacityLineColor(java.awt.Color color)
Sets the color used for drawing the minor capacity lines.

Parameters:
color - the color used for the minor capacity lines
Since:
1.0

getRowRendererComponent

public java.awt.Component getRowRendererComponent(RowLayer layer,
                                                  java.lang.Object node,
                                                  boolean selected,
                                                  int row,
                                                  ITimeSpan span,
                                                  boolean hasFocus)
Description copied from interface: IRowRenderer
Returns a component that will be used for renderering additional information about a row (for example resource capacity lines). The component's width will be equal to the width of the layer container, which can be rather large (up to Integer.MAX_VALUE). The rendering routine needs to use the clipping information for its paint operations to guarantee high performance.

Specified by:
getRowRendererComponent in interface IRowRenderer
Overrides:
getRowRendererComponent in class DefaultRowRenderer
Parameters:
layer - the layer component that will lookup the renderer and call its paint method
node - the tree table / Gantt chart node for the given row
selected - a flag indicating whether the row is currently selected on the left-hand side. Usually selections are only visualized in the tree table but row renderers are free to choose whether they would also like to visualize it
row - the row for which a renderer component gets requested
span - the time span that needs to be painted. This span is not equivalent to the entire span of the Gantt chart. It is the time span that covers the clip that needs to be painted.
hasFocus - a flag indicating whether the row currently has the focus (the mouse cursor hovers on top of it)
Returns:
a component that will be used for rendering additional row information

paintComponent

protected void paintComponent(java.awt.Graphics g)
Overrides:
paintComponent in class DefaultRowRenderer

paintLines

protected void paintLines(java.awt.Graphics g,
                          boolean major)
Draws the capacity lines.

Parameters:
g - the graphics context into which to draw
major - if TRUE the major capacity lines will be drawn, if FALSE the minor lines
Since:
1.0

getResourceNode

protected IResourceNode getResourceNode()
Returns the resource node for which the renderer is currently being invoked.

Returns:
the currently rendered resource node
Since:
1.0

isPaintMajorCapacityLines

public boolean isPaintMajorCapacityLines()
Returns:
the paintMajorCapacityLines
Since:
1.0

setPaintMajorCapacityLines

public void setPaintMajorCapacityLines(boolean paintMajorCapacityLines)
Parameters:
paintMajorCapacityLines - the paintMajorCapacityLines to set
Since:
1.0

isPaintMinorCapacityLines

public boolean isPaintMinorCapacityLines()
Returns:
the paintMinorCapacityLines
Since:
1.0

setPaintMinorCapacityLines

public void setPaintMinorCapacityLines(boolean paintMinorCapacityLines)
Parameters:
paintMinorCapacityLines - the paintMinorCapacityLines to set
Since:
1.0