Class BasicTableCellRenderer<T>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JLabel
-
- javax.swing.table.DefaultTableCellRenderer
-
- com.tagtraum.beatunes.songtable.renderer.BasicTableCellRenderer<T>
-
- All Implemented Interfaces:
BeaTunesTableCellRenderer
,ImageObserver
,MenuContainer
,Serializable
,Accessible
,SwingConstants
,TableCellRenderer
- Direct Known Subclasses:
BitRateTableCellRenderer
,ColorTableCellRenderer
,CompilationTableCellRenderer
,DanceabilityTableCellRenderer
,DateTableCellRenderer
,DoubleTableCellRenderer
,EnabledTableCellRenderer
,FileSizeTableCellRenderer
,IndexTableCellRenderer
,InstrumentationTableCellRenderer
,IntegerTableCellRenderer
,IssueTableCellRenderer
,KeyTableCellRenderer
,LanguageTableCellRenderer
,LikingTableCellRenderer
,LocationTableCellRenderer
,MeasuresPerMinuteTableCellRenderer
,MediaKindTableCellRenderer
,MoodTableCellRenderer
,ProtektedTableCellRenderer
,ReplayGainTableCellRenderer
,SampleRateTableCellRenderer
,SortStringTableCellRenderer
,TagsTableCellRenderer
,TimeSignatureTableCellRenderer
,TotalTimeTableCellRenderer
,TuningTableCellRenderer
,XofYTableCellRenderer
public class BasicTableCellRenderer<T> extends DefaultTableCellRenderer implements BeaTunesTableCellRenderer
Basic table cell renderer.- Author:
- Hendrik Schreiber
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.table.DefaultTableCellRenderer
DefaultTableCellRenderer.UIResource
-
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 inherited from class javax.swing.table.DefaultTableCellRenderer
noFocusBorder
-
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 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 BasicTableCellRenderer()
BasicTableCellRenderer(Property<? extends T> property)
BasicTableCellRenderer(Property<? extends T> property, boolean showTooltip)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected T
extractProperty(Object object)
Typically simply callspropertyExtractor.get(value)
.protected Object
formatProperty(T property)
By default returns an empty String for null, otherwise the property itself.BeaTunes
getApplication()
Issue
getIssue()
protected Rectangle
getIssueHighlightBounds(Graphics g)
protected int
getIssueHighlightWidth(Graphics g)
protected List<Issue>
getIssues(Object value)
Property<? extends T>
getProperty()
Component
getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
protected String
getToolTipText(T property, Object formattedProperty)
boolean
isShowTooltip()
Show the rendered value also as tooltip?void
paint(Graphics g)
protected void
paintIssueHighlight(Graphics g)
void
setApplication(BeaTunes beaTunes)
void
setProperty(Property<? extends T> property)
void
setShowTooltip(boolean showTooltip)
Enable/disable showing the rendered value also as tooltip.-
Methods inherited from class javax.swing.table.DefaultTableCellRenderer
firePropertyChange, firePropertyChange, invalidate, isOpaque, repaint, repaint, repaint, revalidate, setBackground, setForeground, setValue, updateUI, 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
-
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, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, 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, setFont, 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 com.tagtraum.beatunes.plaf.BeaTunesTableCellRenderer
isFocusedAndSelected
-
-
-
-
Method Detail
-
getApplication
public BeaTunes getApplication()
-
setApplication
public void setApplication(BeaTunes beaTunes)
- Specified by:
setApplication
in interfaceBeaTunesTableCellRenderer
- Parameters:
beaTunes
- beaTunes
-
isShowTooltip
public boolean isShowTooltip()
Description copied from interface:BeaTunesTableCellRenderer
Show the rendered value also as tooltip?- Specified by:
isShowTooltip
in interfaceBeaTunesTableCellRenderer
- Returns:
- true or false
-
setShowTooltip
public void setShowTooltip(boolean showTooltip)
Description copied from interface:BeaTunesTableCellRenderer
Enable/disable showing the rendered value also as tooltip.- Specified by:
setShowTooltip
in interfaceBeaTunesTableCellRenderer
- Parameters:
showTooltip
- showTooltip
-
getTableCellRendererComponent
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
- Specified by:
getTableCellRendererComponent
in interfaceTableCellRenderer
- Overrides:
getTableCellRendererComponent
in classDefaultTableCellRenderer
-
getIssue
public Issue getIssue()
-
paint
public void paint(Graphics g)
- Overrides:
paint
in classJComponent
-
paintIssueHighlight
protected void paintIssueHighlight(Graphics g)
-
getIssueHighlightWidth
protected int getIssueHighlightWidth(Graphics g)
-
formatProperty
protected Object formatProperty(T property)
By default returns an empty String for null, otherwise the property itself. If you would like to format the given property somehow, do it here.- Parameters:
property
- typed property- Returns:
- formatted property
-
extractProperty
protected T extractProperty(Object object)
Typically simply callspropertyExtractor.get(value)
. If you want to convert some values into special (other) values (e.g. 0 into null), override this method.- Parameters:
object
- object- Returns:
- property value
-
-