Package docking.widgets
Class AbstractGCellRenderer
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JLabel
-
- docking.widgets.label.GDHtmlLabel
-
- docking.widgets.AbstractGCellRenderer
-
- All Implemented Interfaces:
GComponent
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
,javax.swing.SwingConstants
- Direct Known Subclasses:
GListCellRenderer
,GTableCellRenderer
public abstract class AbstractGCellRenderer extends GDHtmlLabel
A common base class for list and table renderer objects, unifying the Ghidra look and feel.It allows (but default-disables) HTML content, automatically paints alternating row background colors, and highlights the drop target in a drag-n-drop operation.
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected java.awt.Font
boldFont
protected java.awt.Font
defaultFont
protected int
dropRow
protected java.awt.Font
fixedWidthFont
protected javax.swing.border.Border
focusBorder
protected javax.swing.border.Border
noFocusBorder
protected static boolean
systemAlternateRowColors
-
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
-
-
Constructor Summary
Constructors Constructor Description AbstractGCellRenderer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
firePropertyChange(java.lang.String propertyName, boolean oldValue, boolean newValue)
Overridden for performance reasons.protected void
firePropertyChange(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
Overridden for performance reasons.protected java.awt.Color
getBackgroundColorForRow(int row)
protected java.awt.Font
getBoldFont()
protected java.awt.Color
getDefaultBackgroundColor()
protected java.awt.Font
getDefaultFont()
protected java.awt.Font
getFixedWidthFont()
protected javax.swing.border.Border
getNoFocusBorder()
protected java.awt.Color
getOSDependentBackgroundColor(javax.swing.JComponent parent, int row)
Returns the background color appropriate for the given component.void
invalidate()
Overridden for performance reasons.void
repaint()
Overridden for performance reasons.void
repaint(long tm, int x, int y, int width, int height)
Overridden for performance reasons.void
repaint(java.awt.Rectangle r)
Overridden for performance reasons.void
revalidate()
Overridden for performance reasons.protected void
setBold()
void
setDropRow(int dropRow)
Sets the row where DnD would perform drop operation.void
setFont(java.awt.Font f)
void
setShouldAlternateRowBackgroundColors(boolean alternate)
boolean
shouldAlternateRowBackgroundColor()
Return whether or not the renderer should alternate row background colors.protected void
superSetFont(java.awt.Font font)
protected void
superValidate()
void
validate()
Overridden for performance reasons.-
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, 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, 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
getHTMLRenderingEnabled, setHTMLRenderingEnabled
-
-
-
-
Field Detail
-
systemAlternateRowColors
protected static boolean systemAlternateRowColors
-
focusBorder
protected final javax.swing.border.Border focusBorder
-
noFocusBorder
protected final javax.swing.border.Border noFocusBorder
-
defaultFont
protected java.awt.Font defaultFont
-
fixedWidthFont
protected java.awt.Font fixedWidthFont
-
boldFont
protected java.awt.Font boldFont
-
dropRow
protected int dropRow
-
-
Method Detail
-
setShouldAlternateRowBackgroundColors
public void setShouldAlternateRowBackgroundColors(boolean alternate)
-
shouldAlternateRowBackgroundColor
public boolean shouldAlternateRowBackgroundColor()
Return whether or not the renderer should alternate row background colors.A renderer is unable to override an enforcing DISABLE_ALTERNATING_ROW_COLORS_PROPERTY system property -- if the property has disabled alternating colors (i.e., set to 'true'), this method returns false. If the property is false, individual renderers may assert control over alternating row colors.
- Returns:
- True if the rows may be painted in alternate background colors, false otherwise
- See Also:
DISABLE_ALTERNATING_ROW_COLORS_PROPERTY
-
getOSDependentBackgroundColor
protected java.awt.Color getOSDependentBackgroundColor(javax.swing.JComponent parent, int row)
Returns the background color appropriate for the given component. This may vary depending upon the current OS.- Parameters:
parent
- The parent being rendered -- likely a list or table.row
- The row being rendered.- Returns:
- the color
-
setFont
public void setFont(java.awt.Font f)
- Overrides:
setFont
in classjavax.swing.JComponent
-
superSetFont
protected void superSetFont(java.awt.Font font)
-
setBold
protected void setBold()
-
setDropRow
public void setDropRow(int dropRow)
Sets the row where DnD would perform drop operation.- Parameters:
dropRow
- the drop row
-
getNoFocusBorder
protected javax.swing.border.Border getNoFocusBorder()
-
getDefaultFont
protected java.awt.Font getDefaultFont()
-
getFixedWidthFont
protected java.awt.Font getFixedWidthFont()
-
getBoldFont
protected java.awt.Font getBoldFont()
-
getDefaultBackgroundColor
protected java.awt.Color getDefaultBackgroundColor()
-
getBackgroundColorForRow
protected java.awt.Color getBackgroundColorForRow(int row)
-
invalidate
public void invalidate()
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
invalidate
in classjava.awt.Container
- Since:
- 1.5
-
superValidate
protected void superValidate()
-
validate
public void validate()
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
validate
in classjava.awt.Container
-
revalidate
public void revalidate()
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
revalidate
in classjavax.swing.JComponent
-
repaint
public void repaint(long tm, int x, int y, int width, int height)
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
repaint
in classjavax.swing.JComponent
-
repaint
public void repaint(java.awt.Rectangle r)
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
repaint
in classjavax.swing.JComponent
-
repaint
public void repaint()
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
repaint
in classjava.awt.Component
- Since:
- 1.5
-
firePropertyChange
protected void firePropertyChange(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
firePropertyChange
in classjava.awt.Component
-
firePropertyChange
public void firePropertyChange(java.lang.String propertyName, boolean oldValue, boolean newValue)
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
firePropertyChange
in classjavax.swing.JComponent
-
-