kvision / pl.treksoft.kvision.tabulator / Tabulator

Tabulator

open class Tabulator<T : Any> : Widget

Tabulator component.

Constructors

<init>

Tabulator(data: List<T>? = null, options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), dataSerializer: KSerializer<T>? = null)

Properties

data

val data: List<T>?

a list of serializable objects

dataSerializer

val dataSerializer: KSerializer<T>?

a serializer for class T

filter

var filter: ((T) -> Boolean)?

jsTabulator

var jsTabulator: Tabulator?

options

val options: Options

tabulator options

types

var types: Set<TableType>

Table types.

Inherited Properties

draggable

var draggable: Boolean?

Determines if the current widget is draggable.

eventTarget

var eventTarget: Widget?

id

var id: String?

An ID attribute of generated HTML element.

lastLanguage

var lastLanguage: String?

parent

open var parent: Container?

Parent of the current component.

popoverOptions

var popoverOptions: PopoverOptions?

role

var role: String?

A role attribute of generated HTML element.

surroundingSpan

var surroundingSpan: Boolean

title

var title: String?

A title attribute of generated HTML element.

tooltipOptions

var tooltipOptions: TooltipOptions?

visible

open var visible: Boolean

Visibility state of the current component.

vnkey

var vnkey: String?

vnode

var vnode: VNode?

Functions

afterDestroy

open fun afterDestroy(): Unit

Method called after destroying Snabbdom vnode.

afterInsert

open fun afterInsert(node: VNode): Unit

Method called after inserting Snabbdom vnode into the DOM.

applyFilter

open fun applyFilter(): Unit

Applies the current filter.

clearData

open fun clearData(): Unit?

Clears the data in the table.

clearFilter

open fun clearFilter(includeHeaderFilters: Boolean = true): Unit

Clears current filters.

clearHeaderFilter

open fun clearHeaderFilter(): Unit

Clears header filters.

clearSort

open fun clearSort(): Unit

Clears current sort.

createJsTabulator

fun createJsTabulator(): Unit

Creates internal JS Tabulator object

dataToNative

fun dataToNative(data: List<T>, dataSerializer: KSerializer<T>): dynamic

Converts a list of objects of type T to native JS array

deselectRow

open fun deselectRow(row: Int): Unit

Deselect the row given by id.

getData

open fun getData(active: Boolean): List<T>?

Returns the current data in the table.

getDataCount

open fun getDataCount(activeOnly: Boolean = false): Int

Get the number of data rows.

getHistoryRedoSize

open fun getHistoryRedoSize(): Int

Get the number of history redo actions available.

getHistoryUndoSize

open fun getHistoryUndoSize(): Int

Get the number of history undo actions available.

getHtml

open fun getHtml(activeOnly: Boolean = false): String?

Get the HTML code of the table.

getPage

open fun getPage(): Int

Returns current page number.

getPageMax

open fun getPageMax(): Int

Returns number of pages.

getPageSize

open fun getPageSize(): Int

Returns the size of a page.

getSelectedData

open fun getSelectedData(): List<T>

Returns the selected data in the table.

getSelectedRows

open fun getSelectedRows(): List<Tabulator.RowComponent>

Returns the selected rows.

getSnClass

open fun getSnClass(): List<StringBoolPair>

Returns list of CSS class names for current widget in the form of a List.

nativeToData

fun nativeToData(data: dynamic, dataSerializer: KSerializer<T>): List<T>

Converts a native JS array to the list of objects of type T

navigateDown

open fun navigateDown(): Unit

Navigate to the same cell in the row below.

navigateLeft

open fun navigateLeft(): Unit

Navigate to the cell on the left.

navigateNext

open fun navigateNext(): Unit

Navigate to the next cell.

navigatePrev

open fun navigatePrev(): Unit

Navigate to the previous cell.

navigateRight

open fun navigateRight(): Unit

Navigate to the cell on the right.

navigateUp

open fun navigateUp(): Unit

Navigate to the same cell in the row above.

nextPage

open fun nextPage(): Unit

Navigate to the next page.

previousPage

open fun previousPage(): Unit

Navigate to the previous page.

redo

open fun redo(): Boolean

Redo the last undone user action.

redraw

open fun redraw(force: Boolean = false): Unit

Redraw the table (e.g. after a resize).

render

open fun render(): VNode

Renders current component as a Snabbdom vnode.

replaceData

open fun replaceData(data: List<T>): Unit

Silently replaces the data in a table.

scrollToRow

open fun scrollToRow(row: Int, position: RowPosition? = null, ifVisible: Boolean? = null): Unit

Scroll to the row given by id.

selectRow

open fun selectRow(row: Int): Unit

Select the row given by id.

setData

open fun setData(data: List<T>): Unit

Sets new data in a table.

setFilter

open fun setFilter(filter: (T) -> Boolean): Unit

Sets the external filter for the data.

setHeight

open fun setHeight(height: Int): Unit

Change the height of the table.

setPage

open fun setPage(page: Int): Unit

Shows given page.

setPageSize

open fun setPageSize(size: Int): Unit

Set the size of a page.

setPageToRow

open fun setPageToRow(row: Int): Unit

Shows page with a row given by id.

toggleSelectRow

open fun toggleSelectRow(row: Int): Unit

Toggle selection status of the row given by id.

undo

open fun undo(): Boolean

Undo the last user action.

Inherited Functions

addCssClass

open fun addCssClass(css: String): Widget

Adds given value to the set of CSS classes generated in html code of current component.

open fun addCssClass(css: Style): Widget

Adds given style object to the set of CSS classes generated in html code of current component.

addSurroundingCssClass

open fun addSurroundingCssClass(css: String): Widget

Adds given value to the set of CSS classes generated in html code of parent component.

open fun addSurroundingCssClass(css: Style): Widget

Adds given style object to the set of CSS classes generated in html code of parent component.

afterCreate

open fun afterCreate(node: VNode): Unit

Method called after creating Snabbdom vnode.

clearDragDropData

open fun clearDragDropData(): Unit

Clears D&D data for the current widget. It also makes it not draggable.

disablePopover

open fun disablePopover(): Widget

Disables popover for the current widget.

disableTooltip

open fun disableTooltip(): Widget

Disables tooltip for the current widget.

dispatchEvent

open fun dispatchEvent(type: String, eventInitDict: CustomEventInit): Boolean?

enablePopover

open fun enablePopover(options: PopoverOptions = PopoverOptions()): Widget

Enables popover for the current widget.

enableTooltip

open fun enableTooltip(options: TooltipOptions = TooltipOptions()): Widget

Enables tooltip for the current widget.

getElement

open fun getElement(): Node?

Returns DOM element bound to the current component.

getElementJQuery

open fun getElementJQuery(): JQuery?

Returns JQuery element bound to the current component.

getElementJQueryD

open fun getElementJQueryD(): dynamic

Returns JQuery element bound to the current component as a dynamic type.

getSnAttrs

open fun getSnAttrs(): List<StringPair>

Returns list of element attributes in the form of a List.

getSnHooks

open fun getSnHooks(): Hooks?

Returns list of hooks in the form of a Snabbdom Hooks object.

getSnOn

open fun getSnOn(): On?

Returns list of event handlers in the form of a Snabbdom On object.

hide

open fun hide(): Widget

Makes current widget invisible.

hidePopover

open fun hidePopover(): Widget

Hides popover for the current widget.

hideTooltip

open fun hideTooltip(): Widget

Hides tooltip for the current widget.

refreshOnUpdate

fun <T> refreshOnUpdate(refreshFunction: (T) -> Unit = { this.refresh() }): Widget.RefreshDelegateProvider<T>
fun <T> refreshOnUpdate(initialValue: T, refreshFunction: (T) -> Unit = { this.refresh() }): Widget.RefreshDelegateProvider<T>

removeCssClass

open fun removeCssClass(css: String): Widget

Removes given value from the set of CSS classes generated in html code of current component.

open fun removeCssClass(css: Style): Widget

Removes given style object from the set of CSS classes generated in html code of current component.

removeEventListeners

open fun removeEventListeners(): Widget

Removes all event listeners from current widget.

removeSurroundingCssClass

open fun removeSurroundingCssClass(css: String): Widget

Removes given value from the set of CSS classes generated in html code of parent component.

open fun removeSurroundingCssClass(css: Style): Widget

Removes given style object from the set of CSS classes generated in html code of parent component.

render

open fun render(elementName: String): VNode
open fun render(elementName: String, children: Array<dynamic>): VNode

Renders current component as a Snabbdom vnode.

setContextMenu

open fun setContextMenu(contextMenu: ContextMenu): Widget

Sets context menu for the current widget.

setDragDropData

open fun setDragDropData(format: String, data: String): Unit

Sets D&D data for the current widget. It also makes it draggable.

setDropTarget

open fun setDropTarget(format: String, callback: (DragEvent) -> Unit): Unit
open fun setDropTarget(formats: Set<String>? = null, callback: (DragEvent) -> Unit): Unit

Sets the current widget as a D&D drop target.

setDropTargetData

open fun setDropTargetData(format: String, callback: (String?) -> Unit): Unit

Sets the current widget as a D&D drop target with helper callback accepting String data.

setEventListener

open fun <T : Widget> setEventListener(block: SnOn<T>.() -> Unit): Widget

Sets an event listener for current widget, keeping the actual type of component.

open fun setEventListener(block: SnOn<Widget>.() -> Unit): Widget

Sets an event listener for current widget.

show

open fun show(): Widget

Makes current widget visible.

showPopover

open fun showPopover(): Widget

Shows popover for the current widget.

showTooltip

open fun showTooltip(): Widget

Shows tooltip for the current widget.

singleRender

fun <T> singleRender(block: () -> T): T

toggleVisible

open fun toggleVisible(): Widget

Toggles visibility of current widget.

translate

fun translate(text: String?): String?

Companion Object Functions

create

fun <T : Any> create(data: List<T>? = null, options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), init: (Tabulator<T>.() -> Unit)? = null): Tabulator<T>

A helper function to create a Tabulator object with correct serializer.

fun <T : Any, S : Any, A> create(store: ReduxStore<S, A>, dataFactory: (S) -> List<T>, options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), init: (Tabulator<T>.() -> Unit)? = null): Tabulator<T>

A helper function to create a Tabulator object with correct serializer and general redux store.

fun <T : Any, A> create(store: ReduxStore<List<T>, A>, options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), init: (Tabulator<T>.() -> Unit)? = null): Tabulator<T>

A helper function to create a Tabulator object with correct serializer and dedicated redux store.

tabulator

fun <T : Any> Container.tabulator(data: List<T>? = null, options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), init: (Tabulator<T>.() -> Unit)? = null): Tabulator<T>

DSL builder extension function.

fun <T : Any, S : Any, A> Container.tabulator(store: ReduxStore<S, A>, dataFactory: (S) -> List<T>, options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), init: (Tabulator<T>.() -> Unit)? = null): Tabulator<T>

DSL builder extension function for general redux store.

fun <T : Any, A> Container.tabulator(store: ReduxStore<List<T>, A>, options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), init: (Tabulator<T>.() -> Unit)? = null): Tabulator<T>

DSL builder extension function for dedicated redux store (backed with a list).

fun <T : Any> Container.tabulator(options: Options = Options(), types: Set<TableType> = setOf(), classes: Set<String> = setOf(), init: (Tabulator<T>.() -> Unit)? = null): Tabulator<T>

DSL builder extension function for dynamic data (send within options parameter).

Extension Functions

createInstance

fun <T> Any?.createInstance(vararg args: dynamic): T

Helper function for creating JavaScript objects from dynamic constructors.