Class TreeCellContext

java.lang.Object
org.jdesktop.swingx.renderer.CellContext
org.jdesktop.swingx.renderer.TreeCellContext
All Implemented Interfaces:
Serializable

public class TreeCellContext extends CellContext
Tree specific CellContext.
  • PENDING: use focus border as returned from list or table instead of rolling its own? The missing ui-border probably is a consequence of the border hacking as implemented in core default renderer. SwingX has a composite default which should use the "normal" border.
  • PENDING: selection colors couple explicitly to SwingX - should we go JXTree as generic type?
  • PENDING: for a JXTree use the icons as returned by the xtree api?
See Also:
  • Field Details

    • leafIcon

      protected Icon leafIcon
      the icon to use for a leaf node.
    • closedIcon

      protected Icon closedIcon
      the default icon to use for a closed folder.
    • openIcon

      protected Icon openIcon
      the default icon to use for a open folder.
  • Constructor Details

    • TreeCellContext

      public TreeCellContext()
  • Method Details

    • installContext

      public void installContext(JTree component, Object value, int row, int column, boolean selected, boolean focused, boolean expanded, boolean leaf)
      Sets state of the cell's context. Note that the component might be null to indicate a cell without a concrete context. All accessors must cope with.
      Parameters:
      component - the component the cell resides on, might be null
      value - the content value of the cell
      row - the cell's row index in view coordinates
      column - the cell's column index in view coordinates
      selected - the cell's selected state
      focused - the cell's focused state
      expanded - the cell's expanded state
      leaf - the cell's leaf state
    • getComponent

      public JTree getComponent()
      Description copied from class: CellContext
      Returns the component the cell resides on, may be null. Subclasses are expected to override and return the component type they are handling.
      Overrides:
      getComponent in class CellContext
      Returns:
      the component the cell resides on, may be null.
    • getTreePath

      public TreePath getTreePath()
      Returns the treePath for the row or null if invalid.
    • isEditable

      public boolean isEditable()
      Returns the cell's editability. Subclasses should override to return a reasonable cell-related state.

      Here: false.

      PENDING: implement to return the tree cell editability!

      Overrides:
      isEditable in class CellContext
      Returns:
      the cell's editable property.
    • getSelectionBackground

      protected Color getSelectionBackground()
      Returns the default selection background color of the renderered component. Typically, the color is LF specific. It's up to subclasses to look it up. Here: returns null.

      PENDING: return UI properties here?

      Overrides:
      getSelectionBackground in class CellContext
      Returns:
      the selection background color of the rendered component.
    • getSelectionForeground

      protected Color getSelectionForeground()
      Returns the default selection foreground color of the renderered component. Typically, the color is LF specific. It's up to subclasses to look it up. Here: returns null.

      PENDING: return UI properties here?

      Overrides:
      getSelectionForeground in class CellContext
      Returns:
      the selection foreground color of the rendered component.
    • getUIPrefix

      protected String getUIPrefix()
      Returns the component type specific prefix of keys for lookup in the UIManager. Subclasses must override, here: returns the empty String.
      Overrides:
      getUIPrefix in class CellContext
      Returns:
      the component type specific prefix.
    • getLeafIcon

      protected Icon getLeafIcon()
      Returns the default icon to use for leaf cell.
      Returns:
      the icon to use for leaf cell.
    • getOpenIcon

      protected Icon getOpenIcon()
      Returns the default icon to use for open cell.
      Returns:
      the icon to use for open cell.
    • getClosedIcon

      protected Icon getClosedIcon()
      Returns the default icon to use for closed cell.
      Returns:
      the icon to use for closed cell.
    • getIcon

      public Icon getIcon()
      Returns the icon. Subclasses should override to return a reasonable cell-related state.

      Here: null.

      Overridden to return a default depending for the leaf/open cell state.

      Overrides:
      getIcon in class CellContext
      Returns:
      the cell's icon.
    • getFocusBorder

      protected Border getFocusBorder()
      Description copied from class: CellContext
      Returns the default focus border of the renderered component. Typically, the border is LF specific.
      Overrides:
      getFocusBorder in class CellContext
      Returns:
      the focus border of the rendered component.