Package docking.widgets.table

# Class GTableCellRenderer

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLabel
docking.widgets.label.AbstractHtmlLabel
docking.widgets.label.GDHtmlLabel
docking.widgets.AbstractGCellRenderer
docking.widgets.table.GTableCellRenderer

All Implemented Interfaces:
  `GComponent`, `ImageObserver`, `MenuContainer`, `PropertyChangeListener`, `Serializable`, `EventListener`, `Accessible`, `SwingConstants`, `TableCellRenderer`

Direct Known Subclasses:
  `AbstractGColumnRenderer`, `DefaultTableCellRendererWrapper`, `GBooleanCellRenderer`, `GenericDateCellRenderer`, `GhidraTableCellRenderer`, `LogLevelTableCellRenderer`

public class GTableCellRenderer extends AbstractGCellRenderer implements TableCellRenderer
A default table cell renderer that relies on the `toString()` method when rendering the cells of the table.

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class javax.swing.JLabel

  `JLabel.AccessibleJLabel`

  ## Nested classes/interfaces inherited from class javax.swing.JComponent

  `JComponent.AccessibleJComponent`

  ## Nested classes/interfaces inherited from class java.awt.Container

  `Container.AccessibleAWTContainer`

  ## 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 static final FloatingPointPrecisionSettingsDefinition`
  `FLOATING_POINT_PRECISION_SETTING`
  `protected static final FormatSettingsDefinition`
  `INTEGER_RADIX_SETTING`
  `protected static final IntegerSignednessFormattingModeSettingsDefinition`
  `INTEGER_SIGNEDNESS_MODE_SETTING`

  ### Fields inherited from class docking.widgets.AbstractGCellRenderer

  `boldFont, defaultFont, dropRow, fixedWidthFont, focusBorder, noFocusBorder, systemAlternateRowColors`

  ### Fields inherited from class javax.swing.JLabel

  `labelFor`

  ### 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 docking.widgets.GComponent

  `HTML_DISABLE_STRING`

  ### 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
  `GTableCellRenderer()`
  Constructs a new GTableCellRenderer.
  `GTableCellRenderer(Font f)`
  Constructs a new GTableCellRenderer using the specified font.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected void`
  `configureFont(JTable table, TableModel model, int column)`
  `protected String`
  `formatNumber(Number value, Settings settings)`
  Format a Number per the Settings parameters.
  `protected int`
  `getPrecision(Settings settings)`
  `protected int`
  `getRadix(Settings settings)`
  `protected SignednessFormatMode`
  `getSignMode(Settings settings)`
  `Component`
  `getTableCellRendererComponent(GTableCellRenderingData data)`
  Provide basic cell rendering -- setting foreground and background colors, font, text, alignment, drop color, and border.
  `final Component`
  `getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)`
  Satisfies the Java `TableCellRenderer` interface; retrieves column data via a GTableCellRenderingData object, and defers painting to `getTableCellRendererComponent(GTableCellRenderingData)`.
  `protected String`
  `getText(Object value)`
  Return the cell renderer text
  `protected void`
  `setForegroundColor(JTable table, TableModel model, Object value)`

  ### Methods inherited from class docking.widgets.AbstractGCellRenderer

  `firePropertyChange, firePropertyChange, getAlternatingBackgroundColor, getBackgroundColorForRow, getBoldFont, getDefaultBackgroundColor, getDefaultFont, getErrorForegroundColor, getFixedWidthFont, getNoFocusBorder, getUneditableForegroundColor, invalidate, repaint, repaint, repaint, revalidate, setBackground, setBold, setDropRow, setFont, setForeground, setShouldAlternateRowBackgroundColors, shouldAlternateRowBackgroundColor, superSetFont, superValidate, validate`

  ### Methods inherited from class docking.widgets.label.AbstractHtmlLabel

  `propertyChange, setText, updateUI`

  ### 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, setUI, setVerticalAlignment, setVerticalTextPosition`

  ### 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, 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, 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, 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`

  ### Methods inherited from interface docking.widgets.GComponent

  `isHTMLRenderingEnabled, setHTMLRenderingEnabled`

- ## Field Details

  - ### INTEGER_RADIX_SETTING

    protected static final FormatSettingsDefinition INTEGER_RADIX_SETTING

  - ### INTEGER_SIGNEDNESS_MODE_SETTING

    protected static final IntegerSignednessFormattingModeSettingsDefinition INTEGER_SIGNEDNESS_MODE_SETTING

  - ### FLOATING_POINT_PRECISION_SETTING

    protected static final FloatingPointPrecisionSettingsDefinition FLOATING_POINT_PRECISION_SETTING

- ## Constructor Details

  - ### GTableCellRenderer

    public GTableCellRenderer()
    Constructs a new GTableCellRenderer.

  - ### GTableCellRenderer

    public GTableCellRenderer(Font f)
    Constructs a new GTableCellRenderer using the specified font.
    Parameters:
      `f` - the font to use when rendering text in the table cells

- ## Method Details

  - ### getText

    protected String getText(Object value)
    Return the cell renderer text
    Parameters:
      `value` - Cell object value
    Returns:
      A string interpretation of value; generated by calling value.toString()

  - ### getTableCellRendererComponent

    public final Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
    Satisfies the Java `TableCellRenderer` interface; retrieves column data via a GTableCellRenderingData object, and defers painting to `getTableCellRendererComponent(GTableCellRenderingData)`.

    This is marked `final` to redirect subclasses to the enhanced method, `getTableCellRendererComponent(GTableCellRenderingData)`.

    Throws an AssertException if the table this renderer is used with is not a `GTable` instance.

    Specified by:
      `getTableCellRendererComponent` in interface `TableCellRenderer`
    See Also:
      - `TableCellRenderer.getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)`
      - `getTableCellRendererComponent(GTableCellRenderingData)`

  - ### getTableCellRendererComponent

    public Component getTableCellRendererComponent(GTableCellRenderingData data)
    Provide basic cell rendering -- setting foreground and background colors, font, text, alignment, drop color, and border. Additional data that may be of use to the renderer is passed through the `GTableCellRenderingData` object.
    Parameters:
      `data` - Context data used in the rendering of a data cell.
    Returns:
      The component used for drawing the table cell.

  - ### setForegroundColor

    protected void setForegroundColor(JTable table, TableModel model, Object value)

  - ### configureFont

    protected void configureFont(JTable table, TableModel model, int column)

  - ### getRadix

    protected int getRadix(Settings settings)

  - ### getSignMode

    protected SignednessFormatMode getSignMode(Settings settings)

  - ### getPrecision

    protected int getPrecision(Settings settings)

  - ### formatNumber

    protected String formatNumber(Number value, Settings settings)
    Format a Number per the Settings parameters.
    Parameters:
      `value` - the number to format
      `settings` - settings controlling the display of the Number parameter
    Returns:
      a formatted representation of the Number value