Class ColumnHeaderRenderer

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.swing.plaf.UIResource, javax.swing.table.TableCellRenderer

    public class ColumnHeaderRenderer
    extends javax.swing.JComponent
    implements javax.swing.table.TableCellRenderer, javax.swing.plaf.UIResource
    Header renderer class which renders column sort feedback (arrows).

    Additionally, it allows to customize renderer properties like Font, Alignment and similar. This part needs to go somewhere else when we switch to Mustang.

    Note: #169-jdnc, #193-swingx - Header doesn't look right in winXP/mac seem - to be fixed, but could be brittle. Won't do more about it, Mustang will take care once SwingLabs is switched over to 1.6.

    See Also:
    Serialized Form
    • Nested Class Summary

      • 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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String DOWN_ICON_KEY  
      static java.lang.String METAL_BORDER_HACK  
      static java.lang.String UP_ICON_KEY  
      static java.lang.String VISTA_BORDER_HACK  
      • Fields inherited from class javax.swing.JComponent

        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

        accessibleContext, 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
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void adjustComponentOrientation​(java.awt.Component stamp)
      Adjusts the Component's orientation to JXTable's CO if appropriate.
      static ColumnHeaderRenderer createColumnHeaderRenderer()  
      boolean getAntiAliasedText()  
      javax.swing.table.TableCellRenderer getDelegateRenderer()  
      javax.swing.Icon getDownIcon()  
      int getHorizontalAlignment()  
      int getHorizontalTextPosition()  
      javax.swing.Icon getIcon()  
      int getIconTextGap()  
      static javax.swing.table.TableCellRenderer getSharedInstance()
      Returns the shared ColumnHeaderRenderer.
      java.awt.Component getTableCellRendererComponent​(javax.swing.JTable table, java.lang.Object value, boolean isSelected, boolean hasFocus, int rowIndex, int columnIndex)  
      javax.swing.Icon getUpIcon()  
      int getVerticalAlignment()  
      int getVerticalTextPosition()  
      void setAntiAliasedText​(boolean antiAlias)  
      void setBackground​(java.awt.Color background)  
      void setDownIcon​(javax.swing.Icon icon)  
      void setFont​(java.awt.Font font)  
      void setForeground​(java.awt.Color foreground)  
      void setHorizontalAlignment​(int alignment)  
      void setHorizontalTextPosition​(int textPosition)  
      void setIcon​(javax.swing.Icon icon)  
      void setIconTextGap​(int iconTextGap)  
      void setUpIcon​(javax.swing.Icon icon)  
      void setVerticalAlignment​(int alignment)  
      void setVerticalTextPosition​(int textPosition)  
      void updateUI()  
      void updateUI​(javax.swing.table.JTableHeader header)  
      • 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, getBaseline, getBaselineResizeBehavior, 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, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, 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, 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, getAccessibleContext, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • ColumnHeaderRenderer

        public ColumnHeaderRenderer()
      • ColumnHeaderRenderer

        public ColumnHeaderRenderer​(javax.swing.table.JTableHeader header)
    • Method Detail

      • getSharedInstance

        public static javax.swing.table.TableCellRenderer getSharedInstance()
        Returns the shared ColumnHeaderRenderer.

        Returns:
        the shared header renderer.
      • createColumnHeaderRenderer

        public static ColumnHeaderRenderer createColumnHeaderRenderer()
        Returns:
        a ColumnHeaderRenderer
      • getTableCellRendererComponent

        public java.awt.Component getTableCellRendererComponent​(javax.swing.JTable table,
                                                                java.lang.Object value,
                                                                boolean isSelected,
                                                                boolean hasFocus,
                                                                int rowIndex,
                                                                int columnIndex)
        Specified by:
        getTableCellRendererComponent in interface javax.swing.table.TableCellRenderer
      • adjustComponentOrientation

        protected void adjustComponentOrientation​(java.awt.Component stamp)
        Adjusts the Component's orientation to JXTable's CO if appropriate. Here: always.
        Parameters:
        stamp - the component to adjust.
      • setAntiAliasedText

        public void setAntiAliasedText​(boolean antiAlias)
      • getAntiAliasedText

        public boolean getAntiAliasedText()
      • setBackground

        public void setBackground​(java.awt.Color background)
        Overrides:
        setBackground in class javax.swing.JComponent
      • setForeground

        public void setForeground​(java.awt.Color foreground)
        Overrides:
        setForeground in class javax.swing.JComponent
      • setFont

        public void setFont​(java.awt.Font font)
        Overrides:
        setFont in class javax.swing.JComponent
      • setDownIcon

        public void setDownIcon​(javax.swing.Icon icon)
      • getDownIcon

        public javax.swing.Icon getDownIcon()
      • setUpIcon

        public void setUpIcon​(javax.swing.Icon icon)
      • getUpIcon

        public javax.swing.Icon getUpIcon()
      • setHorizontalAlignment

        public void setHorizontalAlignment​(int alignment)
      • getHorizontalAlignment

        public int getHorizontalAlignment()
      • setHorizontalTextPosition

        public void setHorizontalTextPosition​(int textPosition)
      • getHorizontalTextPosition

        public int getHorizontalTextPosition()
      • setIcon

        public void setIcon​(javax.swing.Icon icon)
      • getIcon

        public javax.swing.Icon getIcon()
      • setIconTextGap

        public void setIconTextGap​(int iconTextGap)
      • getIconTextGap

        public int getIconTextGap()
      • setVerticalAlignment

        public void setVerticalAlignment​(int alignment)
      • getVerticalAlignment

        public int getVerticalAlignment()
      • setVerticalTextPosition

        public void setVerticalTextPosition​(int textPosition)
      • getVerticalTextPosition

        public int getVerticalTextPosition()
      • getDelegateRenderer

        public javax.swing.table.TableCellRenderer getDelegateRenderer()
        Returns:
        the delegate renderer.
      • updateUI

        public void updateUI()
        Overrides:
        updateUI in class javax.swing.JComponent
      • updateUI

        public void updateUI​(javax.swing.table.JTableHeader header)