SynthTreeUI (Java SE 15 & JDK 15)
Description: declaration: module: java.desktop, package: javax.swing.plaf.synth, class: SynthTreeUI
Keywords: javax.swing.plaf.synth.SynthTreeUI class

Module java.desktop
Package javax.swing.plaf.synth

# Class SynthTreeUI

java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.TreeUI
javax.swing.plaf.basic.BasicTreeUI
javax.swing.plaf.synth.SynthTreeUI

All Implemented Interfaces:
  `PropertyChangeListener`, `EventListener`, `SynthConstants`, `SynthUI`

    public class SynthTreeUI
    extends BasicTreeUI
    implements PropertyChangeListener, SynthUI

Provides the Synth L&F UI delegate for `JTree`.

Since:
  1.7

- ## Nested Class Summary

  ## Nested classes/interfaces declared in class javax.swing.plaf.basic.BasicTreeUI

  `BasicTreeUI.CellEditorHandler, BasicTreeUI.ComponentHandler, BasicTreeUI.FocusHandler, BasicTreeUI.KeyHandler, BasicTreeUI.MouseHandler, BasicTreeUI.MouseInputHandler, BasicTreeUI.NodeDimensionsHandler, BasicTreeUI.PropertyChangeHandler, BasicTreeUI.SelectionModelPropertyChangeHandler, BasicTreeUI.TreeCancelEditingAction, BasicTreeUI.TreeExpansionHandler, BasicTreeUI.TreeHomeAction, BasicTreeUI.TreeIncrementAction, BasicTreeUI.TreeModelHandler, BasicTreeUI.TreePageAction, BasicTreeUI.TreeSelectionHandler, BasicTreeUI.TreeToggleAction, BasicTreeUI.TreeTraverseAction`

- ## Field Summary

  ### Fields declared in class javax.swing.plaf.basic.BasicTreeUI

  `cellEditor, collapsedIcon, createdCellEditor, createdRenderer, currentCellRenderer, depthOffset, drawingCache, editingComponent, editingPath, editingRow, editorHasDifferentSize, expandedIcon, largeModel, lastSelectedRow, leftChildIndent, nodeDimensions, preferredMinSize, preferredSize, rendererPane, rightChildIndent, stopEditingInCompleteEditing, totalChildIndent, tree, treeModel, treeSelectionModel, treeState, validCachedPreferredSize`

  ### Fields declared in interface javax.swing.plaf.synth.SynthConstants

  `DEFAULT, DISABLED, ENABLED, FOCUSED, MOUSE_OVER, PRESSED, SELECTED`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `SynthTreeUI()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `static ComponentUI` | `createUI​(JComponent x)` | Creates a new UI object for the given component.
  `void` | `paint​(Graphics g, JComponent c)` | Paints the specified component according to the Look and Feel.
  `protected void` | `paint​(SynthContext context, Graphics g)` | Paints the specified component.
  `void` | `update​(Graphics g, JComponent c)` | Notifies this UI delegate to repaint the specified component.

  ### Methods declared in class javax.swing.plaf.basic.BasicTreeUI

  `cancelEditing, checkForClickInExpandControl, completeEditing, completeEditing, completeUIInstall, completeUIUninstall, configureLayoutCache, createCellEditorListener, createCellRendererPane, createComponentListener, createDefaultCellEditor, createDefaultCellRenderer, createFocusListener, createKeyListener, createLayoutCache, createMouseListener, createNodeDimensions, createPropertyChangeListener, createSelectionModelPropertyChangeListener, createTreeExpansionListener, createTreeModelListener, createTreeSelectionListener, drawCentered, drawDashedHorizontalLine, drawDashedVerticalLine, ensureRowsAreVisible, getBaseline, getBaselineResizeBehavior, getCellEditor, getCellRenderer, getClosestPathForLocation, getCollapsedIcon, getDropLineRect, getEditingPath, getExpandedIcon, getHashColor, getHorizontalLegBuffer, getLastChildPath, getLeadSelectionRow, getLeftChildIndent, getMaximumSize, getMinimumSize, getModel, getPathBounds, getPathForRow, getPreferredMinSize, getPreferredSize, getPreferredSize, getRightChildIndent, getRowCount, getRowForPath, getRowHeight, getRowX, getSelectionModel, getShowsRootHandles, getVerticalLegBuffer, handleExpandControlClick, installComponents, installDefaults, installKeyboardActions, installListeners, isDropLine, isEditable, isEditing, isLargeModel, isLeaf, isLocationInExpandControl, isMultiSelectEvent, isRootVisible, isToggleEvent, isToggleSelectionEvent, paintDropLine, paintExpandControl, paintHorizontalLine, paintHorizontalPartOfLeg, paintRow, paintVerticalLine, paintVerticalPartOfLeg, pathWasCollapsed, pathWasExpanded, prepareForUIInstall, prepareForUIUninstall, selectPathForEvent, setCellEditor, setCellRenderer, setCollapsedIcon, setEditable, setExpandedIcon, setHashColor, setLargeModel, setLeftChildIndent, setModel, setPreferredMinSize, setRightChildIndent, setRootVisible, setRowHeight, setSelectionModel, setShowsRootHandles, shouldPaintExpandControl, startEditing, startEditingAtPath, stopEditing, toggleExpandState, uninstallComponents, uninstallDefaults, uninstallKeyboardActions, uninstallListeners, updateCachedPreferredSize, updateCellEditor, updateDepthOffset, updateExpandedDescendants, updateLayoutCacheExpandedNodes, updateLeadSelectionRow, updateRenderer, updateSize`

  ### Methods declared in class javax.swing.plaf.ComponentUI

  `contains, getAccessibleChild, getAccessibleChildrenCount, installUI, uninstallUI`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods declared in interface java.beans.PropertyChangeListener

  `propertyChange`

  ### Methods declared in interface javax.swing.plaf.synth.SynthUI

  `getContext, paintBorder`

- ## Constructor Details

  - ### SynthTreeUI

    public SynthTreeUI()

- ## Method Details

  - ### createUI

    public static ComponentUI createUI​(JComponent x)
    Creates a new UI object for the given component.
    Parameters:
      `x` - component to create UI object for
    Returns:
      the UI object

  - ### update

    public void update​(Graphics g, JComponent c)
    Notifies this UI delegate to repaint the specified component. This method paints the component background, then calls the `paint(SynthContext,Graphics)` method.

    In general, this method does not need to be overridden by subclasses. All Look and Feel rendering code should reside in the `paint` method.

    Overrides:
      `update` in class `ComponentUI`
    Parameters:
      `g` - the `Graphics` object used for painting
      `c` - the component being painted
    See Also:
      `paint(SynthContext,Graphics)`

  - ### paint

    public void paint​(Graphics g, JComponent c)
    Paints the specified component according to the Look and Feel.

    This method is not used by Synth Look and Feel. Painting is handled by the `paint(SynthContext,Graphics)` method.

    Overrides:
      `paint` in class `ComponentUI`
    Parameters:
      `g` - the `Graphics` object used for painting
      `c` - the component being painted
    See Also:
      `paint(SynthContext,Graphics)`

  - ### paint

    protected void paint​(SynthContext context, Graphics g)
    Paints the specified component.
    Parameters:
      `context` - context for the component being painted
      `g` - the `Graphics` object used for painting
    See Also:
      `update(Graphics,JComponent)`