RendererComponent (final JTable table) { RendererComponent panel = ComponentUtil.getClientProperty(table, MY_PANEL_PROPERTY); if (panel != null) { DelegateColorScheme scheme = (DelegateColorScheme)panel.getEditor().getColorsScheme(); scheme.setDelegate(EditorColorsUtil.getGlobalOrDefaultColorScheme()); return panel; } panel = createRendererComponent(myProject, myLanguage, myInheritFontFromLaF); Disposer.register(this, panel); Disposer.register(this, () -> ComponentUtil.putClientProperty(table, MY_PANEL_PROPERTY, null)); table.putClientProperty(MY_PANEL_PROPERTY, panel); return panel; }