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.FontboldFontprotected java.awt.FontdefaultFontprotected intdropRowprotected java.awt.FontfixedWidthFontprotected javax.swing.border.BorderfocusBorderprotected javax.swing.border.BordernoFocusBorderprotected static booleansystemAlternateRowColors-
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 voidfirePropertyChange(java.lang.String propertyName, boolean oldValue, boolean newValue)Overridden for performance reasons.protected voidfirePropertyChange(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)Overridden for performance reasons.protected java.awt.ColorgetBackgroundColorForRow(int row)protected java.awt.FontgetBoldFont()protected java.awt.ColorgetDefaultBackgroundColor()protected java.awt.FontgetDefaultFont()protected java.awt.FontgetFixedWidthFont()protected javax.swing.border.BordergetNoFocusBorder()protected java.awt.ColorgetOSDependentBackgroundColor(javax.swing.JComponent parent, int row)Returns the background color appropriate for the given component.voidinvalidate()Overridden for performance reasons.voidrepaint()Overridden for performance reasons.voidrepaint(long tm, int x, int y, int width, int height)Overridden for performance reasons.voidrepaint(java.awt.Rectangle r)Overridden for performance reasons.voidrevalidate()Overridden for performance reasons.protected voidsetBold()voidsetDropRow(int dropRow)Sets the row where DnD would perform drop operation.voidsetFont(java.awt.Font f)voidsetShouldAlternateRowBackgroundColors(boolean alternate)booleanshouldAlternateRowBackgroundColor()Return whether or not the renderer should alternate row background colors.protected voidsuperSetFont(java.awt.Font font)protected voidsuperValidate()voidvalidate()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:
setFontin 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:
invalidatein 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:
validatein classjava.awt.Container
-
revalidate
public void revalidate()
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
revalidatein 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:
repaintin classjavax.swing.JComponent
-
repaint
public void repaint(java.awt.Rectangle r)
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
repaintin classjavax.swing.JComponent
-
repaint
public void repaint()
Overridden for performance reasons. See the Implementation Note for more information.- Overrides:
repaintin 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:
firePropertyChangein 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:
firePropertyChangein classjavax.swing.JComponent
-
-