@Override protected void paintRow(Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { if (tree.isRowSelected(row)) { Color bgColor; bgColor = ((DefaultTreeCellRenderer) currentCellRenderer).getBackgroundSelectionColor(); g.setColor(bgColor); g.fillRect(clipBounds.x, bounds.y, clipBounds.width, bounds.height); } super.paintRow(g, clipBounds, insets, bounds, path, row, isExpanded, hasBeenExpanded, isLeaf); if (shouldPaintExpandControl(path, row, isExpanded, hasBeenExpanded, isLeaf)) { paintExpandControl(g, clipBounds, insets, bounds, path, row, isExpanded, hasBeenExpanded, isLeaf); } }
@Override protected void paintRow(Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) { if (tree.isRowSelected(row)) { Color bgColor; bgColor = ((DefaultTreeCellRenderer) currentCellRenderer).getBackgroundSelectionColor(); g.setColor(bgColor); g.fillRect(clipBounds.x, bounds.y, clipBounds.width, bounds.height); } super.paintRow(g, clipBounds, insets, bounds, path, row, isExpanded, hasBeenExpanded, isLeaf); if (shouldPaintExpandControl(path, row, isExpanded, hasBeenExpanded, isLeaf)) { paintExpandControl(g, clipBounds, insets, bounds, path, row, isExpanded, hasBeenExpanded, isLeaf); } }
@Override public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { renderer.setBackground(selected ? dr.getBackgroundSelectionColor() : dr.getBackgroundNonSelectionColor()); renderer.setForeground(selected ? dr.getTextSelectionColor() : dr.getTextNonSelectionColor()); renderer.setEnabled(true); Object data = ((DefaultMutableTreeNode) value).getUserObject(); if (data instanceof Item) { Item item = ((Item) data); if (((DefaultMutableTreeNode) value).getAllowsChildren()) { Component c = dr.getTreeCellRendererComponent(tree, value, leaf, expanded, leaf, row, hasFocus); return c; } else { renderer.setText(item.displayName); renderer.setSelected(item.value); } } else { Component c = dr.getTreeCellRendererComponent(tree, value, leaf, expanded, leaf, row, hasFocus); return c; } return renderer; }
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { renderer.setBackground( selected ? dr.getBackgroundSelectionColor() : dr.getBackgroundNonSelectionColor() ); renderer.setForeground( selected ? dr.getTextSelectionColor() : dr.getTextNonSelectionColor() ); renderer.setEnabled( true ); Object data = ((DefaultMutableTreeNode)value).getUserObject(); if ( data instanceof FileObject ) { FileObject fo = ((FileObject)data); renderer.setText( getFileObjectLocalizedName(fo) ); if (logic != null) { renderer.setSelected( logic.isSelected((DefaultMutableTreeNode)value)); } } else if ( data instanceof UserConfigurableRule ) { UserConfigurableRule treeRule = (UserConfigurableRule)data; renderer.setText( treeRule.getDisplayName() ); if (logic != null) { Preferences node = logic.getCurrentPrefernces(treeRule); renderer.setSelected( HintsSettings.isEnabled(manager, treeRule, node)); } } else { renderer.setText( value.toString() ); } return renderer; }
returnValue.setBackground(defaultRenderer.getBackgroundSelectionColor());
returnValue.setBackground(defaultRenderer.getBackgroundSelectionColor());
renderer.add(salaryLabel); renderer.setBorder(BorderFactory.createLineBorder(Color.BLACK)); backgroundSelectionColor = defaultRenderer.getBackgroundSelectionColor(); backgroundNonSelectionColor = defaultRenderer.getBackgroundNonSelectionColor();
Rectangle rect = getRowBounds(i); rowHeight = rect != null ? rect.height : rowHeight; g.setColor(getSelectionModel().isRowSelected(i) ? defaultRenderer.getBackgroundSelectionColor() : rowColors[i & 1]); g.fillRect(x, y, w, rowHeight); g.setColor(getSelectionModel().isRowSelected(i) ? defaultRenderer.getBackgroundSelectionColor() : rowColors[i & 1]); g.fillRect(x, y, w, rowHeight);
private void initDefaultRenderer() { // ui setup // init JTree // Set the icon for leaf nodes. defaultRenderer = new DefaultTreeCellRenderer(); if (leafComponentIcon != null) { defaultRenderer.setMinimumSize( new Dimension(leafComponentIcon.getIconWidth(), leafComponentIcon.getIconHeight())); defaultRenderer.setLeafIcon(leafComponentIcon); titleLabel.setIcon(leafComponentIcon); iconHeight = leafComponentIcon.getIconHeight(); defaultRenderer.setClosedIcon(closedIcon); defaultRenderer.setOpenIcon(openedIcon); // sets tree background defaultRenderer.setBackgroundNonSelectionColor( backgroundNonSelectionColor); defaultRenderer.setTextNonSelectionColor(textColor); defaultRenderer.setBackground(VSwingUtil.TRANSPARENT_COLOR); backgroundSelectionColor = defaultRenderer.getBackgroundSelectionColor(); } else { System.err.println("Leaf icon missing; using default."); } }
renderer.setBorderSelectionColor(renderer.getBackgroundSelectionColor()); defaults.put("Tree:TreeCell[Focused+Selected].backgroundPainter", new SelectionBackgroundPainter(renderer.getBackgroundSelectionColor()));
renderer.setBorderSelectionColor(renderer.getBackgroundSelectionColor()); defaults.put("Tree:TreeCell[Focused+Selected].backgroundPainter", new SelectionBackgroundPainter(renderer.getBackgroundSelectionColor()));
private void configureRenderer(SeaGlassContext context) { TreeCellRenderer renderer = tree.getCellRenderer(); if (renderer instanceof DefaultTreeCellRenderer) { DefaultTreeCellRenderer r = (DefaultTreeCellRenderer) renderer; SeaGlassStyle style = (SeaGlassStyle)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)); } } }