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
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:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JLabel
JLabel.AccessibleJLabelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Colorprotected GuiColumnprotected Colorprotected static final intprotected static final floatFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields 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
ConstructorsConstructorDescriptionColumnRenderer(GuiColumn column) ColumnRenderer(GuiColumn column, UIDefaults colorDefaults, UIDefaults fontDefaults) -
Method Summary
Modifier and TypeMethodDescriptiongetBackground(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) Get the background color for the current cell.protected FontGet the font for the cell.protected ColorgetForeground(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) Get the foreground color for the current cell.protected intgetHorizontalAlignment(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) Get the horizontal alignment for the cell.protected StringGet the text for this cell.protected booleanMethods inherited from class com.illumon.iris.gui.table.GenericColumnRenderer
firePropertyChange, firePropertyChange, getColorDefaults, getFontDefaults, getTableCellRendererComponent, isAutoResize, repaint, repaint, revalidate, setAutoResize, setColors, validateMethods 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, updateUIMethods 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, updateMethods 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, validateTreeMethods 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:
-
STALE_ALPHA
protected static final int STALE_ALPHA- See Also:
-
column_
-
background_
-
foreground_
-
-
Constructor Details
-
ColumnRenderer
-
ColumnRenderer
-
-
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 theGuiColumnspecified 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:
getBackgroundin 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
Colorto use for this cell's background. - See Also:
-
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 theGuiColumnspecified a foreground use that, unless the value is null. If the model indicates that the cell is stale it will wash the color.- Overrides:
getForegroundin 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
Colorto use for this cell's foreground. - See Also:
-
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 theGuiColumnit will use that value. otherwise it will Right align numbers, and left align everything else.- Overrides:
getHorizontalAlignmentin 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 theGuiColumnthat will be used. Otherwise it will delegate toGenericColumnRenderer.getFont(JTable, Object, boolean, boolean, int, int)- Overrides:
getFontin 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 theFormatfrom theGuiColumn. Arrays will formatted usingArrayFormatter- Overrides:
getTextin 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:
shouldApplyNumberFormattingin classGenericColumnRenderer
-