void (@NotNull JTable table, Object value, boolean selected, boolean hasFocus, int row, int column) { setBorder(null); if (!(value instanceof PluginDownloader downloader)) return; String pluginName = downloader.getPluginName(); append(pluginName, SimpleTextAttributes.REGULAR_ATTRIBUTES); IdeaPluginDescriptor installedPlugin = PluginManagerCore.getPlugin(downloader.getId()); String oldPluginName = installedPlugin != null ? installedPlugin.getName() : null; if (oldPluginName != null && !Comparing.strEqual(pluginName, oldPluginName)) { append(" - " + oldPluginName, SimpleTextAttributes.REGULAR_ATTRIBUTES); } String installedVersion = installedPlugin != null ? installedPlugin.getVersion() : null; String availableVersion = downloader.getPluginVersion(); String version = installedVersion != null && availableVersion != null ? StringUtil.join(new String[]{installedVersion, UIUtil.rightArrow(), availableVersion}, "") : StringUtil.defaultIfEmpty(installedVersion, availableVersion); if (StringUtil.isNotEmpty(version)) { append(" " + version, SimpleTextAttributes.GRAYED_SMALL_ATTRIBUTES); } }