Java Code Examples for javax.swing.tree.TreeCellRenderer#getTreeCellRendererComponent()
The following examples show how to use
javax.swing.tree.TreeCellRenderer#getTreeCellRendererComponent() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: AnalyzeSizeToolWindowTest.java From size-analyzer with Apache License 2.0 | 6 votes |
@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"); }
Example 2
Source File: FirstRowCellEditor.java From ramus with GNU General Public License v3.0 | 6 votes |
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); }
Example 3
Source File: ResultTreeView.java From netbeans with Apache License 2.0 | 6 votes |
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); }
Example 4
Source File: GTreeDragNDropAdapter.java From ghidra with Apache License 2.0 | 5 votes |
/** 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); } }
Example 5
Source File: JTreeJavaElement.java From marathonv5 with Apache License 2.0 | 5 votes |
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(); }
Example 6
Source File: JTreeNodeJavaElement.java From marathonv5 with Apache License 2.0 | 5 votes |
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; }
Example 7
Source File: RTree.java From marathonv5 with Apache License 2.0 | 5 votes |
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(); }
Example 8
Source File: DomPanel.java From netbeans with Apache License 2.0 | 5 votes |
/** * 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; } }; }
Example 9
Source File: DocumentViewPanel.java From netbeans with Apache License 2.0 | 5 votes |
/** * 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); } }; }
Example 10
Source File: SynthTreeUI.java From jdk8u-jdk with GNU General Public License v2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 11
Source File: SynthTreeUI.java From jdk1.8-source-analysis with Apache License 2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 12
Source File: SynthTreeUI.java From openjdk-jdk9 with GNU General Public License v2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 13
Source File: SynthTreeUI.java From Bytecoder with Apache License 2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 14
Source File: SynthTreeUI.java From openjdk-jdk8u-backup with GNU General Public License v2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 15
Source File: JExtendedTree.java From netbeans with Apache License 2.0 | 4 votes |
protected void processCellTipMouseMove(MouseEvent e) { // Identify treetable row and column at cursor TreePath currentTreePath = getPathForLocation(e.getX(), e.getY()); // Return if treetable cell is the same as in previous event if (currentTreePath == lastTreePath) { return; } lastTreePath = currentTreePath; // Return if cursor isn't at any cell if (lastTreePath == null) { CellTipManager.sharedInstance().setEnabled(false); return; } Component cellRenderer; Component cellRendererPersistent; int row = getRowForPath(lastTreePath); TreeCellRenderer treeCellRenderer = getCellRenderer(); if (!(treeCellRenderer instanceof TreeCellRendererPersistent)) { return; } cellRenderer = treeCellRenderer.getTreeCellRendererComponent(JExtendedTree.this, lastTreePath.getLastPathComponent(), false, isExpanded(row), getModel().isLeaf(lastTreePath.getLastPathComponent()), row, false); cellRendererPersistent = ((TreeCellRendererPersistent) treeCellRenderer).getTreeCellRendererComponentPersistent(JExtendedTree.this, lastTreePath .getLastPathComponent(), false, isExpanded(row), getModel() .isLeaf(lastTreePath .getLastPathComponent()), row, false); // Return if celltip is not supported for the cell if (cellRenderer == null) { CellTipManager.sharedInstance().setEnabled(false); return; } Point cellStart = getPathBounds(lastTreePath).getLocation(); rendererRect = new Rectangle(cellStart.x, cellStart.y, cellRenderer.getPreferredSize().width, cellRenderer.getPreferredSize().height + 2); if (!rendererRect.contains(e.getPoint())) { CellTipManager.sharedInstance().setEnabled(false); return; } // Return if cell contents is fully visible Rectangle visibleRect = getVisibleRect(); if ((rendererRect.x >= visibleRect.x) && ((rendererRect.x + rendererRect.width) <= (visibleRect.x + visibleRect.width))) { CellTipManager.sharedInstance().setEnabled(false); return; } while (cellTip.getComponentCount() > 0) { cellTip.remove(0); } cellTip.add(cellRendererPersistent, BorderLayout.CENTER); cellTip.setPreferredSize(new Dimension(cellRendererPersistent.getPreferredSize().width + 2, getRowHeight() + 2)); CellTipManager.sharedInstance().setEnabled(true); }
Example 16
Source File: SynthTreeUI.java From openjdk-jdk8u with GNU General Public License v2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 17
Source File: SynthTreeUI.java From JDKSourceCode1.8 with MIT License | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 18
Source File: SynthTreeUI.java From jdk8u60 with GNU General Public License v2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 19
Source File: SynthTreeUI.java From TencentKona-8 with GNU General Public License v2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }
Example 20
Source File: SynthTreeUI.java From dragonwell8_jdk with GNU General Public License v2.0 | 4 votes |
private void paintRow(TreeCellRenderer renderer, DefaultTreeCellRenderer dtcr, SynthContext treeContext, SynthContext cellContext, Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, Rectangle rowBounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { // Don't paint the renderer if editing this row. boolean selected = tree.isRowSelected(row); JTree.DropLocation dropLocation = tree.getDropLocation(); boolean isDrop = dropLocation != null && dropLocation.getChildIndex() == -1 && path == dropLocation.getPath(); int state = ENABLED; if (selected || isDrop) { state |= SELECTED; } if (tree.isFocusOwner() && row == getLeadSelectionRow()) { state |= FOCUSED; } cellContext.setComponentState(state); if (dtcr != null && (dtcr.getBorderSelectionColor() instanceof UIResource)) { dtcr.setBorderSelectionColor(style.getColor( cellContext, ColorType.FOCUS)); } SynthLookAndFeel.updateSubregion(cellContext, g, rowBounds); cellContext.getPainter().paintTreeCellBackground(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); cellContext.getPainter().paintTreeCellBorder(cellContext, g, rowBounds.x, rowBounds.y, rowBounds.width, rowBounds.height); if (editingComponent != null && editingRow == row) { return; } int leadIndex; if (tree.hasFocus()) { leadIndex = getLeadSelectionRow(); } else { leadIndex = -1; } Component component = renderer.getTreeCellRendererComponent( tree, path.getLastPathComponent(), selected, isExpanded, isLeaf, row, (leadIndex == row)); rendererPane.paintComponent(g, component, tree, bounds.x, bounds.y, bounds.width, bounds.height, true); }