From 9ad3e1fdab9da5b3ccc863bd4ce5964727e40953 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Wed, 3 Jul 2019 18:40:49 +0200 Subject: [PATCH] Combobox renderer is back to SimpleListCellRenderer GitOrigin-RevId: ca568884c4bc3bd4b29528e8f9c7900080cfcd25 --- .../credential-store/src/PasswordSafeConfigurable.kt | 2 +- .../platform-impl/src/com/intellij/ui/layout/Cell.kt | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/platform/credential-store/src/PasswordSafeConfigurable.kt b/platform/credential-store/src/PasswordSafeConfigurable.kt index 3227e4ff3bbc..2b28f78574bf 100644 --- a/platform/credential-store/src/PasswordSafeConfigurable.kt +++ b/platform/credential-store/src/PasswordSafeConfigurable.kt @@ -227,7 +227,7 @@ internal class PasswordSafeConfigurableUi(private val mySettings: PasswordSafeSe { getSelectedPgpKey() ?: pgpListModel.items.firstOrNull() }, { mySettings.state.pgpKeyId = if (usePgpKey.isSelected) it?.keyId else null }, growPolicy = GrowPolicy.MEDIUM_TEXT, - renderer = listCellRenderer { value, _, _ -> append("${value.userId} (${value.keyId})") } + renderer = listCellRenderer { value, _, _ -> setText("${value.userId} (${value.keyId})") } ) .enableIf(usePgpKey.selected) .component diff --git a/platform/platform-impl/src/com/intellij/ui/layout/Cell.kt b/platform/platform-impl/src/com/intellij/ui/layout/Cell.kt index 740bfe75c8ea..c9e422f29422 100644 --- a/platform/platform-impl/src/com/intellij/ui/layout/Cell.kt +++ b/platform/platform-impl/src/com/intellij/ui/layout/Cell.kt @@ -221,8 +221,8 @@ abstract class Cell { fun comboBox(model: ComboBoxModel, modelBinding: PropertyBinding, - growPolicy: GrowPolicy?, - renderer: ListCellRenderer?): CellBuilder> { + growPolicy: GrowPolicy? = null, + renderer: ListCellRenderer? = null): CellBuilder> { val component = ComboBox(model) if (renderer != null) { component.renderer = renderer @@ -376,9 +376,9 @@ abstract class Cell { } -fun listCellRenderer(renderer: ColoredListCellRenderer.(value: T, index: Int, isSelected: Boolean) -> Unit): ColoredListCellRenderer { - return object : ColoredListCellRenderer() { - override fun customizeCellRenderer(list: JList, value: T?, index: Int, selected: Boolean, hasFocus: Boolean) { +fun listCellRenderer(renderer: SimpleListCellRenderer.(value: T, index: Int, isSelected: Boolean) -> Unit): SimpleListCellRenderer { + return object : SimpleListCellRenderer() { + override fun customize(list: JList, value: T?, index: Int, selected: Boolean, hasFocus: Boolean) { if (value != null) { renderer(this, value, index, selected) }