QuickActionColumn

Specjalna kolumna której kliknięcie umożliwia wykonanie wybranej akcji. Wyświetla ikonę trzech kropek która po kliknięciu otwiera menu z dostępnymi akcjami.

Każda akcja otrzymuje kontekst zawierający:

  • Dane wiersza

  • Stan raportu

  • Funkcję obsługi zdarzeń

  • Scope dla operacji asynchronicznych

Parameters

action

akcja wykonywana po kliknięciu

Constructors

Link copied to clipboard
constructor(action: ReportRowAction)

Properties

Link copied to clipboard
private val action: ReportRowAction
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
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
override fun createFilter(): Filter<*>

Specjalne kolumny nie obsługują filtrowania. Ta metoda rzuca wyjątek jeśli zostanie wywołana.

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 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?, reportState: ReportState, onEvent: (ReportEvent) -> Unit, modifier: Modifier)

Renderuje zawartość komórki specjalnej z pełnym kontekstem raportu. Specjalne kolumny wymagają dostępu do stanu raportu i funkcji obsługi zdarzeń.

@Composable
override fun RenderCell(item: Any?, modifier: Modifier)

Ta metoda jest nadpisywana jako final aby zapewnić, że nikt jej nie wywoła dla SpecialColumn. Zawsze powinna być używana wersja z pełnym kontekstem (ReportState i onEvent).

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.