class IconBox
extends javax.swing.JComponent
Modifier and Type | Class and Description |
---|---|
(package private) static interface |
IconBox.CellRenderer
Defines how list model elements will be rendered as icons and tooltips.
|
private class |
IconBox.DefaultRenderer
Default renderer.
|
private static class |
IconBox.Entry
Convenience struct-type class which aggregates an icon and a tooltip.
|
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
private java.awt.Color |
disabledBg_ |
private static javax.swing.ListModel |
EMPTY_LIST_MODEL |
private java.awt.Color |
enabledBg_ |
private java.util.List |
entryList_ |
private int |
gap_ |
private java.awt.Dimension |
maxSize_ |
private java.awt.Dimension |
minSize_ |
private javax.swing.ListModel |
model_ |
private javax.swing.event.ListDataListener |
modelListener_ |
private java.awt.Dimension |
prefSize_ |
private IconBox.CellRenderer |
renderer_ |
private boolean |
reversed_ |
private boolean |
trailing_ |
private int |
transSize_ |
private boolean |
vertical_ |
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
IconBox(int transSize)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
private static javax.swing.ListModel |
createEmptyListModel()
Constructs an immutable list model with no content.
|
private IconBox.Entry |
createEntry(int index)
Constructs an Entry object from an object contained in the ListModel,
using the currently installed renderer.
|
int |
getIndexAt(java.awt.Point point)
Returns the index of the list model element whose icon is displayed
at a given point in this component.
|
java.awt.Dimension |
getMaximumSize() |
java.awt.Dimension |
getMinimumSize() |
javax.swing.ListModel |
getModel()
Returns the list model used by this component.
|
java.awt.Dimension |
getPreferredSize() |
IconBox.CellRenderer |
getRenderer()
Returns the object which turns list model contents into display things.
|
boolean |
getReversed()
Returns the first-to-last ordering of the icons in this component.
|
java.lang.String |
getToolTipText(java.awt.event.MouseEvent evt) |
boolean |
getTrailing()
Returns the alignment of the icons in this component.
|
int |
getTransverseSize()
Returns the transverse dimension in pixels of this box.
|
boolean |
getVertical()
Returns whether icons will be lined up horizontally or vertically.
|
protected void |
paintComponent(java.awt.Graphics g) |
private void |
refreshState()
Refreshes the list-related state from scratch.
|
void |
setEnabled(boolean enabled) |
void |
setMaximumSize(java.awt.Dimension maxSize) |
void |
setMinimumSize(java.awt.Dimension minSize) |
void |
setModel(javax.swing.ListModel model)
Sets the list model for use with this component.
|
void |
setPreferredSize(java.awt.Dimension prefSize) |
void |
setRenderer(IconBox.CellRenderer renderer)
Sets the object which is used to turn list model contents into the
icons and tooltips displayed by this component.
|
void |
setReversed(boolean reversed)
Sets the first-to-last ordering of the icons in this component.
|
void |
setTrailing(boolean trailing)
Sets the alignment of the icons in this component.
|
void |
setTransverseSize(int transSize)
Sets the transverse dimension in pixels of this box.
|
void |
setVertical(boolean vertical)
Sets whether icons will be lined up in a horizontal or vertical line.
|
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, 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, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setNextFocusableComponent, setOpaque, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
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, validate, validateTree
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, firePropertyChange, getAccessibleContext, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
private final java.util.List entryList_
private final javax.swing.event.ListDataListener modelListener_
private final java.awt.Color enabledBg_
private final java.awt.Color disabledBg_
private boolean vertical_
private boolean trailing_
private boolean reversed_
private int transSize_
private int gap_
private IconBox.CellRenderer renderer_
private javax.swing.ListModel model_
private java.awt.Dimension minSize_
private java.awt.Dimension maxSize_
private java.awt.Dimension prefSize_
private static final javax.swing.ListModel EMPTY_LIST_MODEL
public IconBox(int transSize)
transSize
- the transverse (horizontal/vertical) size
available for icons in pixelspublic void setVertical(boolean vertical)
vertical
- true for vertical run, false for horizontalpublic boolean getVertical()
public void setTrailing(boolean trailing)
trailing
- false for left/top, true for right/bottom alignmentpublic boolean getTrailing()
public void setReversed(boolean reversed)
reversed
- false for increasing to right/bottom,
true for increasig to left/toppublic boolean getReversed()
public void setEnabled(boolean enabled)
setEnabled
in class javax.swing.JComponent
private void refreshState()
private IconBox.Entry createEntry(int index)
index
- index of entry in listpublic void setModel(javax.swing.ListModel model)
model
- list modelpublic javax.swing.ListModel getModel()
public void setTransverseSize(int transSize)
transSize
- pixel count across list runpublic int getTransverseSize()
public void setRenderer(IconBox.CellRenderer renderer)
renderer
- new rendererpublic IconBox.CellRenderer getRenderer()
public void setPreferredSize(java.awt.Dimension prefSize)
setPreferredSize
in class javax.swing.JComponent
public java.awt.Dimension getPreferredSize()
getPreferredSize
in class javax.swing.JComponent
public void setMinimumSize(java.awt.Dimension minSize)
setMinimumSize
in class javax.swing.JComponent
public java.awt.Dimension getMinimumSize()
getMinimumSize
in class javax.swing.JComponent
public void setMaximumSize(java.awt.Dimension maxSize)
setMaximumSize
in class javax.swing.JComponent
public java.awt.Dimension getMaximumSize()
getMaximumSize
in class javax.swing.JComponent
public int getIndexAt(java.awt.Point point)
point
- point to interrogateprotected void paintComponent(java.awt.Graphics g)
paintComponent
in class javax.swing.JComponent
public java.lang.String getToolTipText(java.awt.event.MouseEvent evt)
getToolTipText
in class javax.swing.JComponent
private static javax.swing.ListModel createEmptyListModel()