Class RadianceDefaultTreeCellRenderer

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.SwingConstants, javax.swing.tree.TreeCellRenderer, FilteredIconAwareRenderer

    public class RadianceDefaultTreeCellRenderer
    extends javax.swing.JLabel
    implements javax.swing.tree.TreeCellRenderer, FilteredIconAwareRenderer
    Default renderer for tree cells. Note that this does not extend DefaultTreeCellRenderer as other default renderers since that class overrides Component.setBackground(Color) and prevents the pass-through of UIResource colors that Radiance sets for odd-even row striping.
    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
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.Map<ComponentState,​java.lang.Float> activeContributions  
      protected boolean hasFocus
      True if has focus.
      protected boolean selected
      Is the value currently selected.
      private javax.swing.JTree tree
      Last tree the renderer was painted in.
      • Fields inherited from class javax.swing.JLabel

        labelFor
      • 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
    • 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.
      void firePropertyChange​(java.lang.String propertyName, byte oldValue, byte newValue)
      Overridden for performance reasons.
      void firePropertyChange​(java.lang.String propertyName, char oldValue, char newValue)
      Overridden for performance reasons.
      void firePropertyChange​(java.lang.String propertyName, double oldValue, double newValue)
      Overridden for performance reasons.
      void firePropertyChange​(java.lang.String propertyName, float oldValue, float newValue)
      Overridden for performance reasons.
      void firePropertyChange​(java.lang.String propertyName, int oldValue, int newValue)
      Overridden for performance reasons.
      void firePropertyChange​(java.lang.String propertyName, long oldValue, long newValue)
      Overridden for performance reasons.
      void firePropertyChange​(java.lang.String propertyName, short oldValue, short newValue)
      Overridden for performance reasons.
      protected void firePropertyChange​(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
      Overridden for performance reasons.
      java.util.Map<ComponentState,​java.lang.Float> getActiveContributions()  
      private RadianceColorScheme getColorSchemeForState​(javax.swing.JTree tree, RadianceTreeUI ui, ComponentState activeState)  
      private javax.swing.Icon getDefaultClosedIcon()
      Returns the default icon that is used to represent non-leaf nodes that are not expanded.
      private javax.swing.Icon getDefaultLeafIcon()
      Returns the default icon that is used to represent leaf nodes.
      private javax.swing.Icon getDefaultOpenIcon()
      Returns the default icon that is used to represent non-leaf nodes that are expanded.
      java.awt.Font getFont()
      Gets the font of this component.
      java.awt.Dimension getPreferredSize()
      Overrides JComponent.getPreferredSize to return slightly wider preferred size value.
      java.awt.Component getTreeCellRendererComponent​(javax.swing.JTree tree, java.lang.Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
      Configures the renderer based on the passed in components.
      void invalidate()
      Overridden for performance reasons.
      void paint​(java.awt.Graphics g)  
      protected void paintComponent​(java.awt.Graphics g)  
      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.
      void setFont​(java.awt.Font font)
      Subclassed to map FontUIResources to null.
      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, 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, 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, paintBorder, paintChildren, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, 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
    • Field Detail

      • tree

        private javax.swing.JTree tree
        Last tree the renderer was painted in.
      • selected

        protected boolean selected
        Is the value currently selected.
      • hasFocus

        protected boolean hasFocus
        True if has focus.
      • activeContributions

        private java.util.Map<ComponentState,​java.lang.Float> activeContributions
    • Constructor Detail

      • RadianceDefaultTreeCellRenderer

        public RadianceDefaultTreeCellRenderer()
        Returns a new instance of RadianceDefaultTreeCellRenderer. Alignment is set to start aligned. Icons and text color are determined from the UIManager.
    • Method Detail

      • getDefaultOpenIcon

        private javax.swing.Icon getDefaultOpenIcon()
        Returns the default icon that is used to represent non-leaf nodes that are expanded.
        Returns:
        The default icon for non-leaf expanded nodes.
      • getDefaultClosedIcon

        private javax.swing.Icon getDefaultClosedIcon()
        Returns the default icon that is used to represent non-leaf nodes that are not expanded.
        Returns:
        The default icon for non-leaf non-expanded nodes.
      • getDefaultLeafIcon

        private javax.swing.Icon getDefaultLeafIcon()
        Returns the default icon that is used to represent leaf nodes.
        Returns:
        The default icon for leaf nodes.
      • setFont

        public void setFont​(java.awt.Font font)
        Subclassed to map FontUIResources to null. If font is null, or a FontUIResource, this has the effect of letting the font of the JTree show through. On the other hand, if font is non-null, and not a FontUIResource, the font becomes font.
        Overrides:
        setFont in class javax.swing.JComponent
      • getFont

        public java.awt.Font getFont()
        Gets the font of this component.
        Specified by:
        getFont in interface java.awt.MenuContainer
        Overrides:
        getFont in class java.awt.Component
        Returns:
        this component's font; if a font has not been set for this component, the font of its parent is returned
      • getTreeCellRendererComponent

        public java.awt.Component getTreeCellRendererComponent​(javax.swing.JTree tree,
                                                               java.lang.Object value,
                                                               boolean selected,
                                                               boolean expanded,
                                                               boolean leaf,
                                                               int row,
                                                               boolean hasFocus)
        Configures the renderer based on the passed in components. The value is set from messaging the tree with convertValueToText, which ultimately invokes toString on value. The foreground color is set based on the selection and the icon is set based on on leaf and expanded.
        Specified by:
        getTreeCellRendererComponent in interface javax.swing.tree.TreeCellRenderer
      • getPreferredSize

        public java.awt.Dimension getPreferredSize()
        Overrides JComponent.getPreferredSize to return slightly wider preferred size value.
        Overrides:
        getPreferredSize in class javax.swing.JComponent
      • validate

        public void validate()
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        validate in class java.awt.Container
      • invalidate

        public void invalidate()
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        invalidate in class java.awt.Container
      • revalidate

        public void revalidate()
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        revalidate in class javax.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 class javax.swing.JComponent
      • repaint

        public void repaint​(java.awt.Rectangle r)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        repaint in class javax.swing.JComponent
      • repaint

        public void repaint()
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        repaint in class java.awt.Component
      • 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 class java.awt.Component
      • firePropertyChange

        public void firePropertyChange​(java.lang.String propertyName,
                                       byte oldValue,
                                       byte newValue)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        firePropertyChange in class java.awt.Component
      • firePropertyChange

        public void firePropertyChange​(java.lang.String propertyName,
                                       char oldValue,
                                       char newValue)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        firePropertyChange in class javax.swing.JComponent
      • firePropertyChange

        public void firePropertyChange​(java.lang.String propertyName,
                                       short oldValue,
                                       short newValue)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        firePropertyChange in class java.awt.Component
      • firePropertyChange

        public void firePropertyChange​(java.lang.String propertyName,
                                       int oldValue,
                                       int newValue)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        firePropertyChange in class javax.swing.JComponent
      • firePropertyChange

        public void firePropertyChange​(java.lang.String propertyName,
                                       long oldValue,
                                       long newValue)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        firePropertyChange in class java.awt.Component
      • firePropertyChange

        public void firePropertyChange​(java.lang.String propertyName,
                                       float oldValue,
                                       float newValue)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        firePropertyChange in class java.awt.Component
      • firePropertyChange

        public void firePropertyChange​(java.lang.String propertyName,
                                       double oldValue,
                                       double newValue)
        Overridden for performance reasons. See the Implementation Note for more information.
        Overrides:
        firePropertyChange in class java.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 class javax.swing.JComponent
      • paint

        public final void paint​(java.awt.Graphics g)
        Overrides:
        paint in class javax.swing.JComponent
      • paintComponent

        protected final void paintComponent​(java.awt.Graphics g)
        Overrides:
        paintComponent in class javax.swing.JComponent