Component (JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row) { myPanel.removeAll(); myPanel.add(myLeft.getTreeCellRendererComponent(tree, value, false, expanded, leaf, row, true), BorderLayout.WEST); myPanel.add(myRight.getTreeCellEditorComponent(tree, value, selected, expanded, leaf, row), BorderLayout.EAST); if (UIUtil.isFullRowSelectionLAF()) { myPanel.setBackground(selected ? UIUtil.getTreeSelectionBackground() : null); } else if (WideSelectionTreeUI.isWideSelection(tree)) { if (selected) { myPanel.setBackground(UIUtil.getTreeSelectionBackground()); } } else if (selected) { myPanel.setBackground(UIUtil.getTreeSelectionBackground()); } else { myPanel.setBackground(null); } if (value instanceof LoadingNode) { myPanel.setForeground(JBColor.GRAY); } else { myPanel.setForeground(RenderingUtil.getForeground(tree)); } if (WideSelectionTreeUI.isWideSelection(tree)) { myPanel.setOpaque(false); } return myPanel; }