[UI DSL] Add groupedTextListCellRenderer util

This makes it possible to use the new listCellRenderer with separators from Java code easily.

GitOrigin-RevId: d2320826c28cdd766b992d6262f05caaa561a21c
This commit is contained in:
Louis Vignier
2024-09-13 16:50:25 +00:00
committed by intellij-monorepo-bot
parent 556f99ad92
commit 9a8ea2afa5
2 changed files with 15 additions and 0 deletions
@@ -9492,6 +9492,7 @@ f:com.intellij.ui.dsl.gridLayout.VerticalGaps$Companion
- f:subGridBuilder(I,com.intellij.ui.dsl.gridLayout.HorizontalAlign,com.intellij.ui.dsl.gridLayout.VerticalAlign,Z,Z,com.intellij.ui.dsl.gridLayout.UnscaledGaps,com.intellij.ui.dsl.gridLayout.UnscaledGaps):com.intellij.ui.dsl.gridLayout.builders.RowsGridBuilder
- bs:subGridBuilder$default(com.intellij.ui.dsl.gridLayout.builders.RowsGridBuilder,I,com.intellij.ui.dsl.gridLayout.HorizontalAlign,com.intellij.ui.dsl.gridLayout.VerticalAlign,Z,Z,com.intellij.ui.dsl.gridLayout.UnscaledGaps,com.intellij.ui.dsl.gridLayout.UnscaledGaps,I,java.lang.Object):com.intellij.ui.dsl.gridLayout.builders.RowsGridBuilder
f:com.intellij.ui.dsl.listCellRenderer.BuilderKt
- sf:groupedTextListCellRenderer(kotlin.jvm.functions.Function1,kotlin.jvm.functions.Function1):javax.swing.ListCellRenderer
- sf:listCellRenderer(kotlin.jvm.functions.Function1):javax.swing.ListCellRenderer
- sf:textListCellRenderer(kotlin.jvm.functions.Function1):javax.swing.ListCellRenderer
*f:com.intellij.ui.dsl.listCellRenderer.LcrIconInitParams
@@ -33,3 +33,17 @@ fun <T> textListCellRenderer(textExtractor: (T) -> @Nls String?): ListCellRender
text(textExtractor(value) ?: "")
}
}
/**
* A version of [textListCellRenderer] with separator support
*/
fun <T> groupedTextListCellRenderer(textExtractor: (T) -> @Nls String?, separatorExtractor: (T) -> String?): ListCellRenderer<T> {
return listCellRenderer {
text(textExtractor(value) ?: "")
separatorExtractor(value)?.let {
separator {
text = it
}
}
}
}