Package docking.widgets.list
Class GListCellRenderer<E>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JLabel
-
- docking.widgets.label.GDHtmlLabel
-
- docking.widgets.AbstractGCellRenderer
-
- docking.widgets.list.GListCellRenderer<E>
-
- Type Parameters:
E
- the element-type this list models.
- All Implemented Interfaces:
GComponent
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
,javax.swing.ListCellRenderer<E>
,javax.swing.SwingConstants
public class GListCellRenderer<E> extends AbstractGCellRenderer implements javax.swing.ListCellRenderer<E>
Provides a common implementation of a list renderer, for use in both JList and JComboBox.HTML rendering defaults to disabled. See
GComponent.setHTMLRenderingEnabled(boolean)
.- 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 inherited from class docking.widgets.AbstractGCellRenderer
boldFont, defaultFont, dropRow, fixedWidthFont, focusBorder, noFocusBorder, 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 GListCellRenderer()
Constructs a new GListCellRenderer.GListCellRenderer(java.awt.Font f)
Constructs a new GListCellRenderer using the specified font.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.Dimension
computePlainTextListCellDimensions(javax.swing.JList<? extends E> list, java.util.List<E> items, int minWidth, int minHeight)
Returns the width, height necessary to display the largest element in this list.protected void
configureFont(javax.swing.JList<? extends E> list, javax.swing.ListModel<? extends E> model, int index)
static <E> GListCellRenderer<E>
createDefaultCellTextRenderer(java.util.function.Function<E,java.lang.String> cellToTextMappingFunction)
Returns a new ListCellRenderer that maps the list's data instance to a string used in the cell.protected java.lang.String
getItemText(E value)
Return the cell renderer textjava.awt.Component
getListCellRendererComponent(javax.swing.JList<? extends E> list, E value, int index, boolean isSelected, boolean hasFocus)
protected void
setForegroundColor(javax.swing.JList<? extends E> list, javax.swing.ListModel<? extends E> model, java.lang.Object value)
-
Methods inherited from class docking.widgets.AbstractGCellRenderer
firePropertyChange, firePropertyChange, getBackgroundColorForRow, getBoldFont, getDefaultBackgroundColor, getDefaultFont, getFixedWidthFont, getNoFocusBorder, getOSDependentBackgroundColor, invalidate, repaint, repaint, repaint, revalidate, setBold, setDropRow, setFont, setShouldAlternateRowBackgroundColors, shouldAlternateRowBackgroundColor, superSetFont, superValidate, 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, 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
-
-
-
-
Method Detail
-
createDefaultCellTextRenderer
public static <E> GListCellRenderer<E> createDefaultCellTextRenderer(java.util.function.Function<E,java.lang.String> cellToTextMappingFunction)
Returns a new ListCellRenderer that maps the list's data instance to a string used in the cell.Use this if you only need to provide a way to get the string value from the type being shown in the list.
- Parameters:
cellToTextMappingFunction
- a function that maps your custom type to a string value- Returns:
- new GListCellRenderer instance
-
getItemText
protected java.lang.String getItemText(E value)
Return the cell renderer text- Parameters:
value
- Cell object value- Returns:
- A string interpretation of value; generated by calling value.toString()
-
getListCellRendererComponent
public java.awt.Component getListCellRendererComponent(javax.swing.JList<? extends E> list, E value, int index, boolean isSelected, boolean hasFocus)
- Specified by:
getListCellRendererComponent
in interfacejavax.swing.ListCellRenderer<E>
-
setForegroundColor
protected void setForegroundColor(javax.swing.JList<? extends E> list, javax.swing.ListModel<? extends E> model, java.lang.Object value)
-
configureFont
protected void configureFont(javax.swing.JList<? extends E> list, javax.swing.ListModel<? extends E> model, int index)
-
computePlainTextListCellDimensions
public java.awt.Dimension computePlainTextListCellDimensions(javax.swing.JList<? extends E> list, java.util.List<E> items, int minWidth, int minHeight)
Returns the width, height necessary to display the largest element in this list.Useful for setting a JList's fixed cell width and height to the actual necessary size.
NOTE: the items and the renderer must be in plain text mode, not HTML rendering mode.
- Parameters:
list
- the JList that uses this cell rendereritems
- the items to measureminWidth
- the minimum width that can be returnedminHeight
- the minimum height that can be returned- Returns:
- a new Dimension containing a width and height value necessary to display the largest element in the list
-
-