com.dlsc.flexgantt.swing.treetable
Class DefaultColumnHeaderRenderer

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JLabel
                  extended by com.dlsc.flexgantt.swing.treetable.DefaultColumnHeaderRenderer
All Implemented Interfaces:
IColumnHeaderRenderer, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.SwingConstants

public class DefaultColumnHeaderRenderer
extends javax.swing.JLabel
implements IColumnHeaderRenderer

The default colum header renderer displays the column's name. The renderer looks up a header value via TreeTableColumn.getHeaderValue() and then invokes Object.toString() on it.

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

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
 
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
protected  java.awt.Color focusBackground
          A background color used for visualizing that the colum header is the focus owner.
protected  java.awt.Color focusForeground
          A foreground color used for visualizing that the colum header is the focus owner.
protected  boolean multiColumnSort
          A flag indicating whether the user is currently performing a sort based on multiple columns.
protected  SortDirection sortDirection
          The direction in which the table column is sorted.
protected  java.awt.Font sortOrderFont
          The font used for drawing the sort numbers (when using multi-column) sort.
protected  int sortPosition
          The sort position, which is relevant when doing a multi-column sort.
 
Fields inherited from class javax.swing.JLabel
labelFor
 
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
DefaultColumnHeaderRenderer()
          Constructs a new header renderer.
 
Method Summary
 void firePropertyChange(java.lang.String propertyName, boolean oldValue, boolean newValue)
          Overriden for performance reasons.
 void firePropertyChange(java.lang.String propertyName, byte oldValue, byte newValue)
          Overriden for performance reasons.
 void firePropertyChange(java.lang.String propertyName, char oldValue, char newValue)
          Overriden for performance reasons.
 void firePropertyChange(java.lang.String propertyName, double oldValue, double newValue)
          Overriden for performance reasons.
 void firePropertyChange(java.lang.String propertyName, float oldValue, float newValue)
          Overriden for performance reasons.
 void firePropertyChange(java.lang.String propertyName, long oldValue, long newValue)
          Overriden for performance reasons.
protected  void firePropertyChange(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
          Overriden for performance reasons.
 void firePropertyChange(java.lang.String propertyName, short oldValue, short newValue)
          Overriden for performance reasons.
 java.awt.Component getColumnHeaderRendererComponent(TreeTableHeader header, TreeTableColumn column, boolean selected, boolean hasFocus, SortDirection sortDirection, int sortPosition)
          Returns a component that gets used to render the header of a column in the tree table header component.
 java.awt.Color getFocusBackground()
          Returns the color used for the background of the column header when the header is the focus owner.
 java.awt.Color getFocusForeground()
          Returns the color used for the foreground of the column header when the header is the focus owner.
 java.awt.Dimension getPreferredSize()
           
 void invalidate()
          Overriden for performance reasons.
protected  void paintComponent(java.awt.Graphics g)
           
 void repaint()
          Overriden for performance reasons.
 void repaint(int x, int y, int width, int height)
          Overriden for performance reasons.
 void repaint(long tm)
          Overriden for performance reasons.
 void revalidate()
          Overriden for performance reasons.
 void setFocusBackground(java.awt.Color color)
          Sets the color used for the background of the column header when the header is the focus owner.
 void setFocusForeground(java.awt.Color color)
          Sets the color used for the foreground of the column header when the header is the focus owner.
 void validate()
          Overriden for performance reasons.
 
Methods inherited from class javax.swing.JLabel
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, 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, 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, hasFocus, hide, 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
 

Field Detail

focusForeground

protected java.awt.Color focusForeground
A foreground color used for visualizing that the colum header is the focus owner.

Since:
1.0

focusBackground

protected java.awt.Color focusBackground
A background color used for visualizing that the colum header is the focus owner.

Since:
1.0

sortDirection

protected SortDirection sortDirection
The direction in which the table column is sorted.

Since:
1.0

sortOrderFont

protected java.awt.Font sortOrderFont
The font used for drawing the sort numbers (when using multi-column) sort.

Since:
1.0

sortPosition

protected int sortPosition
The sort position, which is relevant when doing a multi-column sort.

Since:
1.0

multiColumnSort

protected boolean multiColumnSort
A flag indicating whether the user is currently performing a sort based on multiple columns.

Since:
1.0
Constructor Detail

DefaultColumnHeaderRenderer

public DefaultColumnHeaderRenderer()
Constructs a new header renderer.

Since:
1.0
Method Detail

getColumnHeaderRendererComponent

public java.awt.Component getColumnHeaderRendererComponent(TreeTableHeader header,
                                                           TreeTableColumn column,
                                                           boolean selected,
                                                           boolean hasFocus,
                                                           SortDirection sortDirection,
                                                           int sortPosition)
Description copied from interface: IColumnHeaderRenderer
Returns a component that gets used to render the header of a column in the tree table header component.

Specified by:
getColumnHeaderRendererComponent in interface IColumnHeaderRenderer
Parameters:
header - the tree table header component in which the header will be rendered
column - the column for which to draw a header
selected - a flag indicating whether the column is currently selected
hasFocus - a flag indicating whether the column currently has the focus
sortDirection - indicates whether the column is sorted and in which direction
sortPosition - the sort position (important when doing a multi-column sort)
Returns:
a component that will renderer the header of the given column

paintComponent

protected void paintComponent(java.awt.Graphics g)
Overrides:
paintComponent in class javax.swing.JComponent

getPreferredSize

public java.awt.Dimension getPreferredSize()
Overrides:
getPreferredSize in class javax.swing.JComponent

getFocusBackground

public java.awt.Color getFocusBackground()
Returns the color used for the background of the column header when the header is the focus owner.

Returns:
the focus background color
Since:
1.0

setFocusBackground

public void setFocusBackground(java.awt.Color color)
Sets the color used for the background of the column header when the header is the focus owner.

Parameters:
color - the focus background color
Since:
1.0

getFocusForeground

public java.awt.Color getFocusForeground()
Returns the color used for the foreground of the column header when the header is the focus owner.

Returns:
the focus foreground color
Since:
1.0

setFocusForeground

public void setFocusForeground(java.awt.Color color)
Sets the color used for the foreground of the column header when the header is the focus owner.

Parameters:
color - the focus foreground color
Since:
1.0

validate

public void validate()
Overriden for performance reasons.

Overrides:
validate in class java.awt.Container
Since:
1.0

invalidate

public void invalidate()
Overriden for performance reasons.

Overrides:
invalidate in class java.awt.Container
Since:
1.0

revalidate

public void revalidate()
Overriden for performance reasons.

Overrides:
revalidate in class javax.swing.JComponent
Since:
1.0

firePropertyChange

public void firePropertyChange(java.lang.String propertyName,
                               boolean oldValue,
                               boolean newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class javax.swing.JComponent
Since:
1.0

firePropertyChange

public void firePropertyChange(java.lang.String propertyName,
                               byte oldValue,
                               byte newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class java.awt.Component
Since:
1.0

firePropertyChange

public void firePropertyChange(java.lang.String propertyName,
                               char oldValue,
                               char newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class javax.swing.JComponent
Since:
1.0

firePropertyChange

public void firePropertyChange(java.lang.String propertyName,
                               double oldValue,
                               double newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class java.awt.Component
Since:
1.0

firePropertyChange

public void firePropertyChange(java.lang.String propertyName,
                               float oldValue,
                               float newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class java.awt.Component
Since:
1.0

firePropertyChange

public void firePropertyChange(java.lang.String propertyName,
                               long oldValue,
                               long newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class java.awt.Component
Since:
1.0

firePropertyChange

protected void firePropertyChange(java.lang.String propertyName,
                                  java.lang.Object oldValue,
                                  java.lang.Object newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class java.awt.Component
Since:
1.0

firePropertyChange

public void firePropertyChange(java.lang.String propertyName,
                               short oldValue,
                               short newValue)
Overriden for performance reasons.

Overrides:
firePropertyChange in class java.awt.Component
Since:
1.0

repaint

public void repaint()
Overriden for performance reasons.

Overrides:
repaint in class java.awt.Component
Since:
1.0

repaint

public void repaint(int x,
                    int y,
                    int width,
                    int height)
Overriden for performance reasons.

Overrides:
repaint in class java.awt.Component
Since:
1.0

repaint

public void repaint(long tm)
Overriden for performance reasons.

Overrides:
repaint in class java.awt.Component
Since:
1.0