org.pushingpixels.substance.internal.ui
Class SubstanceTableHeaderUI

java.lang.Object
  extended by javax.swing.plaf.ComponentUI
      extended by javax.swing.plaf.TableHeaderUI
          extended by javax.swing.plaf.basic.BasicTableHeaderUI
              extended by org.pushingpixels.substance.internal.ui.SubstanceTableHeaderUI

public class SubstanceTableHeaderUI
extends javax.swing.plaf.basic.BasicTableHeaderUI

UI for table headers in Substance look and feel.


Nested Class Summary
protected  class SubstanceTableHeaderUI.ColumnHeaderRepaintCallback
          Repaints a single column header during the fade animation cycle.
protected static class SubstanceTableHeaderUI.ScrollPaneCornerFiller
          Corner filler for tables wrapped in scroll panes.
 
Nested classes/interfaces inherited from class javax.swing.plaf.basic.BasicTableHeaderUI
javax.swing.plaf.basic.BasicTableHeaderUI.MouseInputHandler
 
Field Summary
protected  javax.swing.table.TableCellRenderer defaultHeaderRenderer
          The default renderer.
protected  java.util.Map<java.lang.Integer,java.lang.Object> selectedIndices
          Holds the list of currently selected indices.
protected  javax.swing.event.ListSelectionListener substanceFadeSelectionListener
          Listener for transition animations on list selections.
protected  org.pushingpixels.substance.internal.ui.SubstanceTableHeaderUI.TableHeaderListener substanceHeaderListener
          Repaints the header on column selection.
protected  java.beans.PropertyChangeListener substancePropertyChangeListener
          Property change listener.
 
Fields inherited from class javax.swing.plaf.basic.BasicTableHeaderUI
header, mouseInputListener, rendererPane
 
Constructor Summary
SubstanceTableHeaderUI()
          Creates a new UI delegate.
 
Method Summary
static javax.swing.plaf.ComponentUI createUI(javax.swing.JComponent comp)
           
 ComponentState getColumnState(int columnIndex)
          Returns the current state for the specified cell.
protected static java.awt.Color getGridColor(javax.swing.table.JTableHeader header)
          Returns the grid color for the table header.
 StateTransitionTracker.ModelStateInfo getModelStateInfo(int columnIndex)
           
 javax.swing.JComponent getScrollPaneCornerFiller()
          Returns the scroll pane corner filler component.
 StateTransitionTracker getStateTransitionTracker(int columnIndex)
           
 StateTransitionTracker getTracker(int columnIndex, boolean initialRollover, boolean initialSelected)
           
protected  void installDefaults()
           
protected  void installListeners()
           
 void paint(java.awt.Graphics g, javax.swing.JComponent c)
           
protected  void paintGrid(java.awt.Graphics g, javax.swing.JComponent c)
           
 void processColumnModelChangeEvent(javax.swing.table.TableColumnModel oldModel, javax.swing.table.TableColumnModel newModel)
          Processes the events on model changes on the table column model.
protected  void uninstallDefaults()
           
protected  void uninstallListeners()
           
 void uninstallUI(javax.swing.JComponent c)
           
 void update(java.awt.Graphics g, javax.swing.JComponent c)
           
 
Methods inherited from class javax.swing.plaf.basic.BasicTableHeaderUI
createMouseInputListener, getBaseline, getMaximumSize, getMinimumSize, getPreferredSize, getRolloverColumn, installKeyboardActions, installUI, rolloverColumnUpdated, uninstallKeyboardActions
 
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaselineResizeBehavior
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

substanceHeaderListener

protected org.pushingpixels.substance.internal.ui.SubstanceTableHeaderUI.TableHeaderListener substanceHeaderListener
Repaints the header on column selection.


defaultHeaderRenderer

protected javax.swing.table.TableCellRenderer defaultHeaderRenderer
The default renderer.


selectedIndices

protected java.util.Map<java.lang.Integer,java.lang.Object> selectedIndices
Holds the list of currently selected indices.


substanceFadeSelectionListener

protected javax.swing.event.ListSelectionListener substanceFadeSelectionListener
Listener for transition animations on list selections.


substancePropertyChangeListener

protected java.beans.PropertyChangeListener substancePropertyChangeListener
Property change listener.

Constructor Detail

SubstanceTableHeaderUI

public SubstanceTableHeaderUI()
Creates a new UI delegate.

Method Detail

createUI

public static javax.swing.plaf.ComponentUI createUI(javax.swing.JComponent comp)

installListeners

protected void installListeners()
Overrides:
installListeners in class javax.swing.plaf.basic.BasicTableHeaderUI

installDefaults

protected void installDefaults()
Overrides:
installDefaults in class javax.swing.plaf.basic.BasicTableHeaderUI

uninstallListeners

protected void uninstallListeners()
Overrides:
uninstallListeners in class javax.swing.plaf.basic.BasicTableHeaderUI

uninstallDefaults

protected void uninstallDefaults()
Overrides:
uninstallDefaults in class javax.swing.plaf.basic.BasicTableHeaderUI

paint

public void paint(java.awt.Graphics g,
                  javax.swing.JComponent c)
Overrides:
paint in class javax.swing.plaf.basic.BasicTableHeaderUI

paintGrid

protected void paintGrid(java.awt.Graphics g,
                         javax.swing.JComponent c)
Parameters:
g -
c -

getGridColor

protected static java.awt.Color getGridColor(javax.swing.table.JTableHeader header)
Returns the grid color for the table header.

Parameters:
header - Table header.
Returns:
Grid color.

update

public void update(java.awt.Graphics g,
                   javax.swing.JComponent c)
Overrides:
update in class javax.swing.plaf.ComponentUI

uninstallUI

public void uninstallUI(javax.swing.JComponent c)
Overrides:
uninstallUI in class javax.swing.plaf.basic.BasicTableHeaderUI

getColumnState

public ComponentState getColumnState(int columnIndex)
Returns the current state for the specified cell.

Parameters:
columnIndex - Column index.
Returns:
The current state for the specified column.

getModelStateInfo

public StateTransitionTracker.ModelStateInfo getModelStateInfo(int columnIndex)

getStateTransitionTracker

public StateTransitionTracker getStateTransitionTracker(int columnIndex)

getScrollPaneCornerFiller

public javax.swing.JComponent getScrollPaneCornerFiller()
Returns the scroll pane corner filler component. This method is used in SubstanceScrollPaneUI to put a consistent filler for tables.

Returns:
Scroll pane corner filler.

processColumnModelChangeEvent

public void processColumnModelChangeEvent(javax.swing.table.TableColumnModel oldModel,
                                          javax.swing.table.TableColumnModel newModel)
Processes the events on model changes on the table column model.

Parameters:
oldModel - Old column model.
newModel - New column model.

getTracker

public StateTransitionTracker getTracker(int columnIndex,
                                         boolean initialRollover,
                                         boolean initialSelected)