SliceUsageCellRendererBase (Object value) { if (!(value instanceof DefaultMutableTreeNode)) return rootRenderer; Object userObject = ((DefaultMutableTreeNode)value).getUserObject(); if (!(userObject instanceof SliceNode)) return rootRenderer; SliceLanguageSupportProvider provider = ((SliceNode)userObject).getProvider(); if (provider == null) return rootRenderer; SliceUsageCellRendererBase renderer = providersToRenderers.get(provider); if (renderer == null) { renderer = provider.getRenderer(); renderer.setOpaque(false); providersToRenderers.put(provider, renderer); } return renderer; }