Package com.illumon.iris.gui.table
Class ColumnRenderer
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLabel
com.illumon.iris.gui.table.GenericColumnRenderer
com.illumon.iris.gui.table.ColumnRenderer
- All Implemented Interfaces:
AutoResizableTableCellRenderer
,ImageObserver
,MenuContainer
,Serializable
,Accessible
,SwingConstants
,TableCellRenderer
- Direct Known Subclasses:
ArrayRenderer
,DBColumnRenderer
,LogLevelColumnRenderer
,PersistentQueryStatusColumnRenderer
public class ColumnRenderer extends GenericColumnRenderer
A
GenericColumnRenderer
that prioritizes properties (foreground, background, font, etc) specified by the
GuiColumn
. It is also contextually aware of other row states (such as staleness).- See Also:
- Serialized Form
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Fields Modifier and Type Field Description protected Color
background_
protected GuiColumn
column_
protected Color
foreground_
protected static int
STALE_ALPHA
protected static float
STALE_WASH
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
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
-
Constructor Summary
Constructors Constructor Description ColumnRenderer(GuiColumn column)
ColumnRenderer(GuiColumn column, UIDefaults colorDefaults, UIDefaults fontDefaults)
-
Method Summary
Modifier and Type Method Description Color
getBackground(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
Get the background color for the current cell.protected Font
getFont(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
Get the font for the cell.protected Color
getForeground(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
Get the foreground color for the current cell.protected int
getHorizontalAlignment(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
Get the horizontal alignment for the cell.protected String
getText(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
Get the text for this cell.protected boolean
shouldApplyNumberFormatting(Object value)
Methods inherited from class com.illumon.iris.gui.table.GenericColumnRenderer
firePropertyChange, firePropertyChange, getColorDefaults, getFontDefaults, getTableCellRendererComponent, isAutoResize, repaint, repaint, revalidate, setAutoResize, setColors, 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, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, 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, 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, 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, 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, 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
-
Field Details
-
STALE_WASH
protected static final float STALE_WASH- See Also:
- Constant Field Values
-
STALE_ALPHA
protected static final int STALE_ALPHA- See Also:
- Constant Field Values
-
column_
-
background_
-
foreground_
-
-
Constructor Details
-
Method Details
-
getBackground
public Color getBackground(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)Get the background color for the current cell. If theGuiColumn
specified a background and the row is not selected it will use theGuiColumn
's color. Otherwise it will use the colors specified by theUIDefaults
. If the model indicates that the cell is stale, it will wash the color.- Overrides:
getBackground
in classGenericColumnRenderer
- Parameters:
table
- The table being rendered.value
- The value to render.isSelected
- If this cell is selected.hasFocus
- If this cell has focus.row
- The current row number.column
- The current column index.- Returns:
- A
Color
to use for this cell's background. - See Also:
GenericColumnRenderer.getBackground(JTable, Object, boolean, boolean, int, int)
-
getForeground
protected Color getForeground(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)Get the foreground color for the current cell. If theGuiColumn
specified a foreground use that, unless the value is null. If the model indicates that the cell is stale it will wash the color.- Overrides:
getForeground
in classGenericColumnRenderer
- Parameters:
table
- The table being rendered.value
- The value being rendered.isSelected
- If the cell is selected.hasFocus
- If the cell has focus.row
- The current row number.column
- The current column index.- Returns:
- A
Color
to use for this cell's foreground. - See Also:
GenericColumnRenderer.getForeground(JTable, Object, boolean, boolean, int, int)
-
getHorizontalAlignment
protected int getHorizontalAlignment(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)Get the horizontal alignment for the cell. If specified by theGuiColumn
it will use that value. otherwise it will Right align numbers, and left align everything else.- Overrides:
getHorizontalAlignment
in classGenericColumnRenderer
- Parameters:
table
- The table being rendered.value
- The value being rendered.isSelected
- If the cell is selected.hasFocus
- If the cell has focus.row
- The current row number.column
- The current column index.- Returns:
- The cell's horizontal alignment.
- ImplNote:
- This method does _not_ invoke super.
-
getFont
protected Font getFont(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)Get the font for the cell. If specified by theGuiColumn
that will be used. Otherwise it will delegate toGenericColumnRenderer.getFont(JTable, Object, boolean, boolean, int, int)
- Overrides:
getFont
in classGenericColumnRenderer
- Parameters:
table
- The table being rendered.value
- The value being rendered.isSelected
- If the cell is selected.hasFocus
- If the cell has focus.row
- The current row number.column
- The current column index.- Returns:
- The font to use.
-
getText
protected String getText(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)Get the text for this cell. This uses theFormat
from theGuiColumn
. Arrays will formatted usingArrayFormatter
- Overrides:
getText
in classGenericColumnRenderer
- Parameters:
table
- The table being rendered.value
- The value being rendered.isSelected
- If the cell is selected.hasFocus
- If the cell has focus.row
- The current row number.column
- The current column index.- Returns:
- The String to render
- ImplNote:
- This does not invoke super except in case of formatting error.
-
shouldApplyNumberFormatting
- Overrides:
shouldApplyNumberFormatting
in classGenericColumnRenderer
-