FormatDialogContent
fun <E : Enum<E>, FILTER> FormatDialogContent(rules: ImmutableList<TableFormatRule<E, FILTER>>, onRulesChange: (ImmutableList<TableFormatRule<E, FILTER>>) -> Unit, getNewRule: (id: Long) -> TableFormatRule<E, FILTER>, getTitle: @Composable (E) -> String, filters: (TableFormatRule<E, FILTER>, onApply: (TableFormatRule<E, FILTER>) -> Unit) -> List<FormatFilterData<E>>, entries: ImmutableList<E>, key: Any, strings: StringProvider, modifier: Modifier = Modifier, onDismissRequest: () -> Unit? = null, colors: FormatDialogColors = FormatDialogDefaults.colors(), settings: FormatDialogSettings = FormatDialogSettings(), scrollbarRenderer: VerticalScrollbarRenderer? = null)
Conditional-formatting UI as portable content: host it in any container (a custom dialog host, a side panel, a split pane) instead of only FormatDialog. The container owns visibility, scrim, background and elevation; this composable applies only FormatDialogColors.titleContentColor and FormatDialogColors.textContentColor from colors. The host MUST impose a bounded height (a fixed height or a fill-height container): the rule list is a vertical viewport, so an unbounded-height parent (e.g. a scrolling Column) throws at composition. key resets the in-flight edit list when it changes. Pass onDismissRequest = null (the default) to hide the close button for embedded, non-modal placements.