Files
Basalt2/docs/references/elements/Table.md
Robert Jelic 3504d8a3aa Docs fix
2025-09-13 12:50:01 +02:00

2.7 KiB

Table

This is the table class. It provides a sortable data grid with customizable columns, row selection, and scrolling capabilities.

Extends: VisualElement

Properties

Property Type Default Description
columns table {} List of column definitions with {name, width} properties
data table {} The table data as array of row arrays
headerColor color blue Color of the column headers
selectedColor color lightBlue Background color of selected row
gridColor color gray Color of grid lines
sortDirection string "asc" Sort direction ("asc" or "desc")
scrollOffset number 0 Current scroll position

Functions

Method Returns Description
Table.new Table Creates a new Table instance
Table:Table Table Initializes the Table instance
Table:Table Table Adds a new column to the table
Table:Table Table Adds a new row of data to the table
Table:Table Table Sorts the table data by the specified column
Table:Table boolean Handles header clicks for sorting and row selection
Table:Table boolean Handles scrolling through the table data
Table:Table - Renders the table with headers, data and scrollbar

Table.new()

Creates a new Table instance

Returns

  • Table self The newly created Table instance

Table:Table(props, basalt)

Parameters

  • props table The properties to initialize the element with
  • basalt table The basalt instance

Returns

  • Table self The initialized instance

Table:Table(name, width)

Adds a new column to the table

Parameters

  • name string The name of the column
  • width number The width of the column

Returns

  • Table self The Table instance

Table:Table(any)

Adds a new row of data to the table

Parameters

  • any The data for the new row

Returns

  • Table self The Table instance

Table:Table(columnIndex, fn)

Sorts the table data by column

Parameters

  • columnIndex number The index of the column to sort by
  • fn function ? Optional custom sorting function

Returns

  • Table self The Table instance

Table:Table(button, x, y)

Parameters

  • button number The button that was clicked
  • x number The x position of the click
  • y number The y position of the click

Returns

  • boolean handled Whether the event was handled

Table:Table(direction, x, y)

Parameters

  • direction number The scroll direction (-1 up, 1 down)
  • x number The x position of the scroll
  • y number The y position of the scroll

Returns

  • boolean handled Whether the event was handled

Table:Table()