MultiRowColumn

class MultiRowColumn(val wrappedColumn: ReportColumn, val maxVisibleItems: Int = 3) : ReportColumn

Wrapper kolumny pozwalający na wyświetlanie list elementów w jednej komórce. Każdy element listy jest renderowany przez oryginalną kolumnę, a elementy są oddzielone separatorami. Automatycznie zmienia kontekst filtra kolumny na listowy

Parameters

wrappedColumn

Oryginalna kolumna używana do renderowania pojedynczych elementów

maxVisibleItems

Maksymalna liczba widocznych elementów w komórce (domyślnie 3)

Constructors

Link copied to clipboard
constructor(wrappedColumn: ReportColumn, maxVisibleItems: Int = 3)

Properties

Link copied to clipboard
val filter: Filter<*>?

Leniwa inicjalizacja filtra dla kolumny. Filtr jest tworzony tylko jeśli kolumna obsługuje filtrowanie.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
private val maxVisibleItems: Int
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
fun ReportColumn.asList(maxVisibleItems: Int = 3): MultiRowColumn

Przekształca dowolną kolumnę w kolumnę wyświetlającą listę wartości.

Link copied to clipboard
open override fun createFilter(): Filter<*>

Tworzy instancję filtra odpowiedniego dla typu danych tej kolumny. Musi być zaimplementowana przez klasy potomne.

Link copied to clipboard

Tworzy filtr i odpowiadające mu dane filtra. Używane przy inicjalizacji filtrów w tabeli.

Link copied to clipboard
protected open override fun createFilterData(filter: Filter<*>): FilterData

Tworzy domyślne dane filtra dla danego filtra. Może być nadpisana przez klasy potomne dla zmiany domyślnego działania.

Link copied to clipboard
@Composable
open override fun RenderCell(item: Any?, modifier: Modifier)

Renderuje zawartość komórki dla danego elementu danych. Musi być zaimplementowana przez klasy potomne.

Link copied to clipboard
@Composable
private fun <T : FilterData> RenderFilter(onEvent: (ReportEvent) -> Unit, columnKey: String, filter: Filter<T>, data: FilterData)

Funkcja renderująca filtr - zmienia * w T dla typu generycznego. Wymagana aby zadowolić kompilator przy obsłudze typów generycznych.

Link copied to clipboard
@Composable
fun RenderHeader(onEvent: (ReportEvent) -> Unit, columnKey: String, reportState: ReportState, modifier: Modifier = Modifier)

Renderuje nagłówek kolumny z obsługą menu filtrowania. Automatycznie wyświetla ikone aktywnego filtra i obsługuje kliknięcia w nagłówek.