类javax.swing.tree.TreeCellRenderer源码实例Demo

下面列出了怎么用javax.swing.tree.TreeCellRenderer的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: size-analyzer   文件: AnalyzeSizeToolWindowTest.java
@Test
public void categoryNodesHaveCorrectExtraInformation() {
  JPanel toolPanel = toolWindow.getContent();
  Component[] components = toolPanel.getComponents();
  OnePixelSplitter splitter = (OnePixelSplitter) components[0];
  JBScrollPane leftPane = (JBScrollPane) splitter.getFirstComponent();
  JViewport leftView = leftPane.getViewport();
  Tree suggestionTree = (Tree) leftView.getView();

  TreePath webPPath = getTreePathWithString(suggestionTree, webPCategoryData.toString());
  TreeCellRenderer treeCellRenderer = suggestionTree.getCellRenderer();
  Component renderedNode =
      treeCellRenderer.getTreeCellRendererComponent(
          suggestionTree,
          webPPath.getLastPathComponent(),
          false,
          false,
          false,
          suggestionTree.getRowForPath(webPPath),
          false);
  assertThat(renderedNode.toString()).contains("2 recommendations");
  assertThat(renderedNode.toString()).contains("29.30 KB");
}
 
源代码2 项目: netbeans   文件: ResultTreeView.java
public Component getTreeCellRendererComponent(JTree tree,
                                                 Object value,
                                                 boolean selected,
                                                 boolean expanded,
                                                 boolean leaf,
                                                 int row,
                                                 boolean hasFocus) {
       boolean isResultRootNode =
                       (value instanceof TreeNode)
                       && (((TreeNode) value).getParent() == null);
// render no icon space an empty icon of a callStackFrame
       boolean isCallstackFrame = false;
       if (null != value) {
           isCallstackFrame = (Visualizer.findNode(value) instanceof CallstackFrameNode);
       }

       TreeCellRenderer renderer = (isResultRootNode || isCallstackFrame)
                                   ? noIconTreeCellRenderer
                                   : defaultTreeCellRenderer;
       return renderer.getTreeCellRendererComponent(
               tree, value, selected, expanded, leaf, row, hasFocus);
   }
 
源代码3 项目: ramus   文件: FirstRowCellEditor.java
public boolean isCellEditable(final EventObject anEvent) {
    if (anEvent instanceof MouseEvent) {
        final MouseEvent event = (MouseEvent) anEvent;
        final int row = treeTable.rowAtPoint(event.getPoint());
        final Rectangle bounds = tree.getRowBounds(row);
        int offset = bounds.x;
        final Object node = tree.getPathForRow(row).getLastPathComponent();
        final boolean leaf = tree.getModel().isLeaf(node);
        final boolean expanded = tree.isExpanded(row);
        final TreeCellRenderer tcr = tree.getCellRenderer();
        final Component treeComponent = tcr.getTreeCellRendererComponent(
                tree, node, true, expanded, leaf, row, false);
        if (treeComponent instanceof JLabel) {
            final JLabel label = (JLabel) treeComponent;

            final Icon icon = label.getIcon();
            if (icon != null) {
                offset += icon.getIconWidth() + label.getIconTextGap();
            }

        }
        if (event.getPoint().x < offset)
            return false;
    }
    return deligate.isCellEditable(anEvent);
}
 
源代码4 项目: darklaf   文件: DarkUIUtil.java
public static boolean isInCell(final Component c) {
    if (getParentOfType(DarkTableHeaderRendererPane.class, c, CELL_SEARCH_DEPTH) != null) return false;
    boolean inCellRenderer = getParentOfType(c, CELL_SEARCH_DEPTH, CellRendererPane.class, CellEditor.class,
                                             TableCellRenderer.class, TableCellEditor.class,
                                             TreeCellRenderer.class, TreeCellEditor.class,
                                             ListCellRenderer.class, CellRenderer.class) != null;
    return inCellRenderer && getParentOfType(JComboBox.class, c) == null;
}
 
源代码5 项目: jdk1.8-source-analysis   文件: SynthTreeUI.java
/**
 * {@inheritDoc}
 */
@Override
protected TreeCellEditor createDefaultCellEditor() {
    TreeCellRenderer renderer = tree.getCellRenderer();
    DefaultTreeCellEditor editor;

    if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
        editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
                                         renderer);
    }
    else {
        editor = new SynthTreeCellEditor(tree, null);
    }
    return editor;
}
 
源代码6 项目: jdk1.8-source-analysis   文件: SynthTreeUI.java
private void configureRenderer(SynthContext context) {
    TreeCellRenderer renderer = tree.getCellRenderer();

    if (renderer instanceof DefaultTreeCellRenderer) {
        DefaultTreeCellRenderer r = (DefaultTreeCellRenderer)renderer;
        SynthStyle style = context.getStyle();

        context.setComponentState(ENABLED | SELECTED);
        Color color = r.getTextSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setTextSelectionColor(style.getColor(
                                 context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setBackgroundSelectionColor(style.getColor(
                                    context, ColorType.TEXT_BACKGROUND));
        }

        context.setComponentState(ENABLED);
        color = r.getTextNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setTextNonSelectionColor(style.getColorForState(
                                    context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setBackgroundNonSelectionColor(style.getColorForState(
                              context, ColorType.TEXT_BACKGROUND));
        }
    }
}
 
源代码7 项目: MeteoInfo   文件: CheckTreeCellRenderer.java
public CheckTreeCellRenderer(TreeCellRenderer delegate, CheckTreeSelectionModel selectionModel) {
    this.delegate = delegate;
    this.selectionModel = selectionModel;
    setLayout(new BorderLayout());
    setOpaque(false);
    checkBox.setOpaque(false);
}
 
源代码8 项目: dragonwell8_jdk   文件: SynthTreeUI.java
/**
 * {@inheritDoc}
 */
@Override
protected TreeCellEditor createDefaultCellEditor() {
    TreeCellRenderer renderer = tree.getCellRenderer();
    DefaultTreeCellEditor editor;

    if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
        editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
                                         renderer);
    }
    else {
        editor = new SynthTreeCellEditor(tree, null);
    }
    return editor;
}
 
源代码9 项目: ghidra   文件: GTreeDragNDropAdapter.java
/** Paint each of the given nodes that is inside of the clips */
private void paintNodes(List<GTreeNode> nodes, Graphics g) {
	TreeCellRenderer cellRenderer = tree.getCellRenderer();
	Rectangle clip = g.getClipBounds();
	Container parent = tree.getParent();
	int yOffset = 0;

	try {
		for (GTreeNode node : nodes) {

			int row = tree.getRowForPath(node.getTreePath());
			Rectangle rowBounds = tree.getRowBounds(row);
			rowBounds = SwingUtilities.convertRectangle(tree, rowBounds, parent);
			if (clip.y > rowBounds.y + rowBounds.height) {
				continue; // above our clip
			}

			if (clip.y + clip.height < rowBounds.y + rowBounds.height) {
				// painted past the bounds of our clip
				return;
			}

			Component renderer =
				cellRenderer.getTreeCellRendererComponent(tree, node, true, true,
					node.isLeaf(), row, false);
			renderer.setSize(renderer.getPreferredSize());

			// move down the point in our graphics space into which we will paint
			yOffset += rowBounds.height;
			g.translate(0, rowBounds.height);
			renderer.paint(g);
		}
	}
	finally {
		// restore the point into graphics that we will paint
		g.translate(0, -yOffset);
	}
}
 
源代码10 项目: TencentKona-8   文件: SynthTreeUI.java
/**
 * {@inheritDoc}
 */
@Override
protected TreeCellEditor createDefaultCellEditor() {
    TreeCellRenderer renderer = tree.getCellRenderer();
    DefaultTreeCellEditor editor;

    if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
        editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
                                         renderer);
    }
    else {
        editor = new SynthTreeCellEditor(tree, null);
    }
    return editor;
}
 
源代码11 项目: TencentKona-8   文件: SynthTreeUI.java
private void configureRenderer(SynthContext context) {
    TreeCellRenderer renderer = tree.getCellRenderer();

    if (renderer instanceof DefaultTreeCellRenderer) {
        DefaultTreeCellRenderer r = (DefaultTreeCellRenderer)renderer;
        SynthStyle style = context.getStyle();

        context.setComponentState(ENABLED | SELECTED);
        Color color = r.getTextSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setTextSelectionColor(style.getColor(
                                 context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setBackgroundSelectionColor(style.getColor(
                                    context, ColorType.TEXT_BACKGROUND));
        }

        context.setComponentState(ENABLED);
        color = r.getTextNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setTextNonSelectionColor(style.getColorForState(
                                    context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setBackgroundNonSelectionColor(style.getColorForState(
                              context, ColorType.TEXT_BACKGROUND));
        }
    }
}
 
源代码12 项目: jdk8u60   文件: SynthTreeUI.java
/**
 * {@inheritDoc}
 */
@Override
protected TreeCellEditor createDefaultCellEditor() {
    TreeCellRenderer renderer = tree.getCellRenderer();
    DefaultTreeCellEditor editor;

    if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
        editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
                                         renderer);
    }
    else {
        editor = new SynthTreeCellEditor(tree, null);
    }
    return editor;
}
 
源代码13 项目: jdk8u60   文件: SynthTreeUI.java
private void configureRenderer(SynthContext context) {
    TreeCellRenderer renderer = tree.getCellRenderer();

    if (renderer instanceof DefaultTreeCellRenderer) {
        DefaultTreeCellRenderer r = (DefaultTreeCellRenderer)renderer;
        SynthStyle style = context.getStyle();

        context.setComponentState(ENABLED | SELECTED);
        Color color = r.getTextSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setTextSelectionColor(style.getColor(
                                 context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setBackgroundSelectionColor(style.getColor(
                                    context, ColorType.TEXT_BACKGROUND));
        }

        context.setComponentState(ENABLED);
        color = r.getTextNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setTextNonSelectionColor(style.getColorForState(
                                    context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setBackgroundNonSelectionColor(style.getColorForState(
                              context, ColorType.TEXT_BACKGROUND));
        }
    }
}
 
源代码14 项目: openjdk-jdk9   文件: SynthTreeUI.java
private void configureRenderer(SynthContext context) {
    TreeCellRenderer renderer = tree.getCellRenderer();

    if (renderer instanceof DefaultTreeCellRenderer) {
        DefaultTreeCellRenderer r = (DefaultTreeCellRenderer)renderer;
        SynthStyle style = context.getStyle();

        context.setComponentState(ENABLED | SELECTED);
        Color color = r.getTextSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setTextSelectionColor(style.getColor(
                                 context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setBackgroundSelectionColor(style.getColor(
                                    context, ColorType.TEXT_BACKGROUND));
        }

        context.setComponentState(ENABLED);
        color = r.getTextNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setTextNonSelectionColor(style.getColorForState(
                                    context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setBackgroundNonSelectionColor(style.getColorForState(
                              context, ColorType.TEXT_BACKGROUND));
        }
    }
}
 
源代码15 项目: JDKSourceCode1.8   文件: SynthTreeUI.java
private void configureRenderer(SynthContext context) {
    TreeCellRenderer renderer = tree.getCellRenderer();

    if (renderer instanceof DefaultTreeCellRenderer) {
        DefaultTreeCellRenderer r = (DefaultTreeCellRenderer)renderer;
        SynthStyle style = context.getStyle();

        context.setComponentState(ENABLED | SELECTED);
        Color color = r.getTextSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setTextSelectionColor(style.getColor(
                                 context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setBackgroundSelectionColor(style.getColor(
                                    context, ColorType.TEXT_BACKGROUND));
        }

        context.setComponentState(ENABLED);
        color = r.getTextNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setTextNonSelectionColor(style.getColorForState(
                                    context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setBackgroundNonSelectionColor(style.getColorForState(
                              context, ColorType.TEXT_BACKGROUND));
        }
    }
}
 
源代码16 项目: openjdk-jdk9   文件: JTreeOperator.java
/**
 * Maps {@code JTree.getCellRenderer()} through queue
 */
public TreeCellRenderer getCellRenderer() {
    return (runMapping(new MapAction<TreeCellRenderer>("getCellRenderer") {
        @Override
        public TreeCellRenderer map() {
            return ((JTree) getSource()).getCellRenderer();
        }
    }));
}
 
源代码17 项目: aion-germany   文件: TreeTableComboBoxCellEditor.java
public Component getTableCellEditorComponent(JTable table,
		Object value, boolean isSelected, int r, int c)
{
	Component component = super.getTableCellEditorComponent(table, value, isSelected, r, c);
	//boolean rv = t.isRootVisible();
	//int offsetRow = rv ? r : r - 1;
	int offsetRow = r;
	Rectangle bounds = this.table.getCellRect(offsetRow, 0, false);
	int offset = bounds.x;
	TreeCellRenderer tcr = this.table.getTreeCellRenderer();
	System.out.println("Renderer is a : "+tcr);
	if(tcr instanceof DelegatingRenderer)
		tcr = ((DelegatingRenderer)tcr).getDelegateRenderer();
	System.out.println("After un-delegataion, renderer is a : "+tcr);
	if (tcr instanceof DefaultTreeCellRenderer)
	{
		System.out.println("Renderer is a DefaultTreeCellRenderer");
		Object node = this.table.getPathForRow(offsetRow).getLastPathComponent();
		int depth = this.table.getPathForRow(offsetRow).getPathCount();
		System.out.println("Node's depth is "+depth);
		offset += (depth - 1) * 20;
		Icon icon;
		if (this.table.getTreeTableModel().isLeaf(node))
			icon = ((DefaultTreeCellRenderer) tcr).getLeafIcon();
		else if (this.table.isExpanded(offsetRow))
			icon = ((DefaultTreeCellRenderer) tcr).getOpenIcon();
		else
			icon = ((DefaultTreeCellRenderer) tcr).getClosedIcon();
		if (icon != null)
		{
			offset += ((DefaultTreeCellRenderer) tcr).getIconTextGap()
					+ icon.getIconWidth();
		}
	}
	((PartTypeComboBox) getComponent()).offset = offset;
	((PartTypeComboBox) getComponent()).setSelectedItem(value);
	return component;
}
 
源代码18 项目: openjdk-jdk8u   文件: SynthTreeUI.java
/**
 * {@inheritDoc}
 */
@Override
protected TreeCellEditor createDefaultCellEditor() {
    TreeCellRenderer renderer = tree.getCellRenderer();
    DefaultTreeCellEditor editor;

    if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
        editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
                                         renderer);
    }
    else {
        editor = new SynthTreeCellEditor(tree, null);
    }
    return editor;
}
 
源代码19 项目: openjdk-jdk8u   文件: SynthTreeUI.java
private void configureRenderer(SynthContext context) {
    TreeCellRenderer renderer = tree.getCellRenderer();

    if (renderer instanceof DefaultTreeCellRenderer) {
        DefaultTreeCellRenderer r = (DefaultTreeCellRenderer)renderer;
        SynthStyle style = context.getStyle();

        context.setComponentState(ENABLED | SELECTED);
        Color color = r.getTextSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setTextSelectionColor(style.getColor(
                                 context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setBackgroundSelectionColor(style.getColor(
                                    context, ColorType.TEXT_BACKGROUND));
        }

        context.setComponentState(ENABLED);
        color = r.getTextNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setTextNonSelectionColor(style.getColorForState(
                                    context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setBackgroundNonSelectionColor(style.getColorForState(
                              context, ColorType.TEXT_BACKGROUND));
        }
    }
}
 
源代码20 项目: marathonv5   文件: JTreeJavaElement.java
private String getTextForNodeObject(JTree tree, Object lastPathComponent) {
    TreeCellRenderer renderer = tree.getCellRenderer();
    if (renderer == null) {
        return null;
    }
    Component c = renderer.getTreeCellRendererComponent(tree, lastPathComponent, false, false, false, 0, false);
    if (c != null && c instanceof JLabel) {
        return ((JLabel) c).getText();
    }
    return lastPathComponent.toString();
}
 
源代码21 项目: marathonv5   文件: JTreeNodeJavaElement.java
@Override
public Component getPseudoComponent() {
    return EventQueueWait.exec(new Callable<Component>() {
        @Override
        public Component call() throws Exception {
            validateRow();
            JTree tree = (JTree) parent.getComponent();
            TreeCellRenderer cellRenderer = tree.getCellRenderer();
            TreePath pathForRow = tree.getPathForRow(viewRow);
            Object lastPathComponent = pathForRow.getLastPathComponent();
            return cellRenderer.getTreeCellRendererComponent(tree, lastPathComponent, false, false, false, viewRow, false);
        }
    });
}
 
源代码22 项目: marathonv5   文件: JTreeNodeJavaElement.java
public static Component getRendererComponent(JTree tree, int row) {
    TreeCellRenderer cellRenderer = tree.getCellRenderer();
    TreePath pathForRow = tree.getPathForRow(row);
    Object lastPathComponent = pathForRow.getLastPathComponent();
    Component rendererComponent = cellRenderer.getTreeCellRendererComponent(tree, lastPathComponent, false, false, false, row,
            false);
    if (rendererComponent == null) {
        return null;
    }
    if (rendererComponent instanceof JComponent) {
        ((JComponent) rendererComponent).putClientProperty("jtree", (JTree) tree);
        ((JComponent) rendererComponent).putClientProperty("row", row);
    }
    return rendererComponent;
}
 
源代码23 项目: marathonv5   文件: RTree.java
private String getTextForNodeObject(JTree tree, Object lastPathComponent) {
    TreeCellRenderer renderer = tree.getCellRenderer();
    if (renderer == null) {
        return null;
    }
    Component c = renderer.getTreeCellRendererComponent(tree, lastPathComponent, false, false, false, 0, false);
    if (c != null && c instanceof JLabel) {
        return ((JLabel) c).getText();
    }
    return lastPathComponent.toString();
}
 
源代码24 项目: openjdk-jdk9   文件: JTreeOperator.java
/**
 * Maps {@code JTree.setCellRenderer(TreeCellRenderer)} through queue
 */
public void setCellRenderer(final TreeCellRenderer treeCellRenderer) {
    runMapping(new MapVoidAction("setCellRenderer") {
        @Override
        public void map() {
            ((JTree) getSource()).setCellRenderer(treeCellRenderer);
        }
    });
}
 
源代码25 项目: netbeans   文件: BindingCustomizer.java
private void initExpressionCombo() {
    TreeCellRenderer renderer = new TreeComboRenderer(FormUtils.getBundleString("MSG_BindingCustomizer_NullExpression")); // NOI18N
    expressionCombo = new ComboBoxWithTree(expressionModel, renderer, new Converter(expressionModel));
    expressionCombo.setSelectedItem("null"); // NOI18N

    renderer = new TreeComboRenderer(FormUtils.getBundleString("MSG_BindingCustomizer_NullDisplayExpression")); // NOI18N
    displayExpressionCombo = new ComboBoxWithTree(displayExpressionModel, renderer, new Converter(displayExpressionModel));
    displayExpressionCombo.setSelectedItem("null"); // NOI18N
}
 
源代码26 项目: netbeans   文件: DomPanel.java
/**
 * Creates a cell renderer for the DOM tree.
 * 
 * @param delegate delegating/original tree renderer.
 * @return call renderer for the DOM tree.
 */
private TreeCellRenderer createTreeCellRenderer(final TreeCellRenderer delegate) {
    Color origColor = UIManager.getColor("Tree.selectionBackground"); // NOI18N
    Color color = origColor.brighter().brighter();
    if (color.equals(Color.WHITE)) { // Issue 217127
        color = origColor.darker();
    }
    // Color used for hovering highlight
    final Color hoverColor = color;
    final boolean nimbus = "Nimbus".equals(UIManager.getLookAndFeel().getID()); // NOI18N
    final JPanel nimbusPanel = nimbus ? new JPanel(new BorderLayout()) : null;
    return new DefaultTreeCellRenderer() {
        @Override
        public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
            JComponent component;
            if (!selected && isHighlighted(value)) {
                component = (JComponent)delegate.getTreeCellRendererComponent(tree, value, true, expanded, leaf, row, hasFocus);
                if (nimbus) {
                    nimbusPanel.removeAll();
                    nimbusPanel.add(component);
                    component = nimbusPanel;
                }
                component.setBackground(hoverColor);
                component.setOpaque(true);
            } else {
                component = (JLabel)delegate.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
            }
            return component;
        }
    };
}
 
源代码27 项目: jdk8u-jdk   文件: SynthTreeUI.java
/**
 * {@inheritDoc}
 */
@Override
protected TreeCellEditor createDefaultCellEditor() {
    TreeCellRenderer renderer = tree.getCellRenderer();
    DefaultTreeCellEditor editor;

    if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
        editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
                                         renderer);
    }
    else {
        editor = new SynthTreeCellEditor(tree, null);
    }
    return editor;
}
 
源代码28 项目: netbeans   文件: DocumentViewPanel.java
/**
 * Creates a cell renderer for the tree view.
 *
 * @param delegate delegating/original tree renderer.
 * @return call renderer for the tree view.
 */
private TreeCellRenderer createTreeCellRenderer(final TreeCellRenderer delegate) {
    return new DefaultTreeCellRenderer() {
        @Override
        public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
            return delegate.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
        }
    };
}
 
源代码29 项目: jdk8u-jdk   文件: SynthTreeUI.java
private void configureRenderer(SynthContext context) {
    TreeCellRenderer renderer = tree.getCellRenderer();

    if (renderer instanceof DefaultTreeCellRenderer) {
        DefaultTreeCellRenderer r = (DefaultTreeCellRenderer)renderer;
        SynthStyle style = context.getStyle();

        context.setComponentState(ENABLED | SELECTED);
        Color color = r.getTextSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setTextSelectionColor(style.getColor(
                                 context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundSelectionColor();
        if (color == null || (color instanceof UIResource)) {
            r.setBackgroundSelectionColor(style.getColor(
                                    context, ColorType.TEXT_BACKGROUND));
        }

        context.setComponentState(ENABLED);
        color = r.getTextNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setTextNonSelectionColor(style.getColorForState(
                                    context, ColorType.TEXT_FOREGROUND));
        }
        color = r.getBackgroundNonSelectionColor();
        if (color == null || color instanceof UIResource) {
            r.setBackgroundNonSelectionColor(style.getColorForState(
                              context, ColorType.TEXT_BACKGROUND));
        }
    }
}
 
源代码30 项目: netbeans   文件: StructureTreeView.java
public StructureTreeView(TreeCellRenderer r,String lineStyle){
     super();
     tree.setCellRenderer(r);
     tree.putClientProperty("JTree.lineStyle", lineStyle); // NOI18N
     tree.setShowsRootHandles(false);
     //expandAll();
}
 
 类所在包
 同包方法