Ontimize 5.2072EN

com.ontimize.gui.table
Class SortTableCellRenderer

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JLabel
                  extended byjavax.swing.table.DefaultTableCellRenderer
                      extended bycom.ontimize.gui.table.CellRenderer
                          extended bycom.ontimize.gui.table.HeadCellRenderer
                              extended bycom.ontimize.gui.table.SortTableCellRenderer
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.swing.SwingConstants, javax.swing.table.TableCellRenderer

public class SortTableCellRenderer
extends HeadCellRenderer

This class renders the table header according to the information that must be shown. For example, changes the label and the icon in the header depending on the sorting, grouping, etc., of the information managed by the table.

See Also:
Serialized Form

Nested Class Summary
static class SortTableCellRenderer.CustomHeaderUI
           
static class SortTableCellRenderer.ListMouseListener
           
 
Nested classes inherited from class com.ontimize.gui.table.HeadCellRenderer
HeadCellRenderer.EText
 
Nested classes inherited from class com.ontimize.gui.table.CellRenderer
CellRenderer.CellRendererColorManager, CellRenderer.CellRendererFontManager
 
Nested classes inherited from class javax.swing.table.DefaultTableCellRenderer
javax.swing.table.DefaultTableCellRenderer.UIResource
 
Nested classes inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  java.awt.Color backgroundColor
           
protected  java.awt.Image bgCurrentImage
           
protected  javax.swing.ImageIcon bgGroupingImage
           
protected  javax.swing.ImageIcon bgImage
           
protected  javax.swing.JTable currentTable
           
protected  javax.swing.border.Border defaultBorder
           
static java.awt.Color defaultForegroundFilterColor
           
static int defaultVerticalHeaderMargin
          Vertical margin to use in the table header
protected  javax.swing.border.Border firstColumnBorder
           
protected  java.awt.Color foregroundColor
           
protected  java.awt.Color foregroundFilterColor
           
protected  java.awt.Color groupBackgroundColor
           
static java.lang.String HEADCELLRENDERER_NAME
          The name of class.
protected  javax.swing.border.Border lastColumnBorder
           
static int MAX_VALUE_HEAD_RENDERER_LINES
          Maximum number of lines that the headers can occupy
protected  int minHeaderHeight
           
static boolean paintSortIcon
           
protected  java.awt.Font predFont
           
protected  int verticalHeaderMargin
           
 
Fields inherited from class com.ontimize.gui.table.CellRenderer
CELLRENDERER_NAME, cellRendererColorManager, cellRendererFontManager, component, configureRenderer, editableFontColor, emptyBorder, evenEditableBackgroundColor, evenRowBackgroundColor, focusBorder, focusBorderColor, font, fontColor, format, noRequiredInsertColumns, oddEditableBackgroundColor, oddRowBackgroundColor, prefSize, remarkEditable, remarkLines, requiredInsertColumns, selectedBackgroundColor, selectedEditableBackgroundColor, selectedFontColor
 
Fields inherited from class javax.swing.table.DefaultTableCellRenderer
noFocusBorder
 
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
SortTableCellRenderer(javax.swing.JTable table)
           
SortTableCellRenderer(javax.swing.JTable table, java.util.Hashtable params)
           
 
Method Summary
protected  int getFirstColumnIndex()
           
protected  int getLastColumnIndex()
           
 java.lang.String getName()
           
protected  Table getOntimizeTable(javax.swing.JTable table)
           
 java.awt.Dimension getPreferredSize()
           
 java.awt.Component getTableCellRendererComponent(javax.swing.JTable table, java.lang.Object value, boolean selected, boolean hasFocus, int row, int column)
           
 int getVerticalHeaderMargin()
           
protected  void init(java.util.Hashtable parameters)
          Adds configurable parameters for class that renders the table header according to the information that must be shown.
 void paintComponent(java.awt.Graphics g)
           
 void setVerticalHeaderMargin(int verticalHeaderMargin)
           
 void updateUI()
           
 
Methods inherited from class com.ontimize.gui.table.HeadCellRenderer
setMaxLinesNumber, setTipWhenNeeded
 
Methods inherited from class com.ontimize.gui.table.CellRenderer
calculatePreferredTextWidth, calculatePreferredTextWidth, getDarker, getDefaultFocusBorder, getEvenRowBackgroundColor, getFont, getFontMetrics, getShownText, getSoftDarker, isInsertingRow, isRequiredInsertingRow, setCellRendererColorManager, setCellRendererFontManager, setEditableRemark, setEvenRowBackgroundColor, setFormater, setJComponent, setLineRemark
 
Methods inherited from class javax.swing.table.DefaultTableCellRenderer
firePropertyChange, firePropertyChange, isOpaque, repaint, repaint, revalidate, setBackground, setForeground, setValue, validate
 
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
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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
 

Field Detail

HEADCELLRENDERER_NAME

public static final java.lang.String HEADCELLRENDERER_NAME
The name of class. Used by L&F to put UI properties.

Since:
5.2062EN
See Also:
Constant Field Values

MAX_VALUE_HEAD_RENDERER_LINES

public static int MAX_VALUE_HEAD_RENDERER_LINES
Maximum number of lines that the headers can occupy


defaultVerticalHeaderMargin

public static int defaultVerticalHeaderMargin
Vertical margin to use in the table header


defaultForegroundFilterColor

public static java.awt.Color defaultForegroundFilterColor

paintSortIcon

public static boolean paintSortIcon

verticalHeaderMargin

protected int verticalHeaderMargin

minHeaderHeight

protected int minHeaderHeight

currentTable

protected javax.swing.JTable currentTable

predFont

protected java.awt.Font predFont

groupBackgroundColor

protected java.awt.Color groupBackgroundColor

backgroundColor

protected java.awt.Color backgroundColor

foregroundColor

protected java.awt.Color foregroundColor

foregroundFilterColor

protected java.awt.Color foregroundFilterColor

bgImage

protected javax.swing.ImageIcon bgImage

bgGroupingImage

protected javax.swing.ImageIcon bgGroupingImage

bgCurrentImage

protected java.awt.Image bgCurrentImage

defaultBorder

protected javax.swing.border.Border defaultBorder

lastColumnBorder

protected javax.swing.border.Border lastColumnBorder

firstColumnBorder

protected javax.swing.border.Border firstColumnBorder
Constructor Detail

SortTableCellRenderer

public SortTableCellRenderer(javax.swing.JTable table,
                             java.util.Hashtable params)

SortTableCellRenderer

public SortTableCellRenderer(javax.swing.JTable table)
Method Detail

init

protected void init(java.util.Hashtable parameters)
Adds configurable parameters for class that renders the table header according to the information that must be shown. This parameters are specified in .xml definition of Table.

Parameters:
parameters - the Hashtable with parameters

attribute values default required meaning
headerheight no The height for header.
headerfont no Font for header text. It is accepted a string like : 'Arial-BOLD-18'. Similar to Font.decode
headerfg no Color for foreground in header.
headerbg no Color for background in header.
fontshadowcolor no Color of shadow for font.
headerbgimage no Path to background image.
headerbggroupimage no Path to background image when the column is grouped.
headerborder no Border of header.
headerlastcolumnborder no Border for last column in header
headerfirstcolumnborder no Border for first column in header

getName

public java.lang.String getName()
Overrides:
getName in class CellRenderer

updateUI

public void updateUI()
Overrides:
updateUI in class HeadCellRenderer

paintComponent

public void paintComponent(java.awt.Graphics g)

getTableCellRendererComponent

public java.awt.Component getTableCellRendererComponent(javax.swing.JTable table,
                                                        java.lang.Object value,
                                                        boolean selected,
                                                        boolean hasFocus,
                                                        int row,
                                                        int column)
Specified by:
getTableCellRendererComponent in interface javax.swing.table.TableCellRenderer
Overrides:
getTableCellRendererComponent in class HeadCellRenderer

getLastColumnIndex

protected int getLastColumnIndex()

getFirstColumnIndex

protected int getFirstColumnIndex()

getPreferredSize

public java.awt.Dimension getPreferredSize()
Overrides:
getPreferredSize in class CellRenderer

getVerticalHeaderMargin

public int getVerticalHeaderMargin()

setVerticalHeaderMargin

public void setVerticalHeaderMargin(int verticalHeaderMargin)

getOntimizeTable

protected Table getOntimizeTable(javax.swing.JTable table)

Ontimize