Table

Table view.

Modulerequire("gui")
TypeClass
InheritsView

The Table does not store any data itself, to display data in Table, users have to provide a TableModel.

How data are renderered depends on the type of column. It is also possible to create a custom renderer for arbitrary data.

Class methods

create()

Create a new Table.

Return

Table

Methods

setModel(model)

Set model as table's data source.

Parameters

getModel()

Return table's model.

Return

TableModel

addColumn(title)

Add a new column with title, which shows readonly text.

Parameters

addColumnWithOptions(title, options)

Add a new column with title and options.

Parameters

getColumnCount()

Return the number of columns.

Return

Integer

setColumnsVisible(visible)

Set whether the columns header is visible.

On macOS adding column after hiding the header will result in missing columns in the header even after making the header visible again.

It is recommended to never show the header again after hiding the header, for consistent behaviors between platforms.

Parameters

isColumnsVisible()

Return whether the columns header is visible.

Return

Boolean

setRowHeight(height)

Set the height of each row.

It is not recommended to change row height unless you are drawing all cells yourself, as the default text cells may not show decently under large or small height.

On Linux, due to platform implementations, this method has to be called before adding columns. It does not have any effect when columns have already been added.

Parameters

getRowHeight()

Return the height of each row.

Return

Number

setHasBorder(has)

Set whether the view has border.

Parameters

hasBorder()

Return whether the view has border.

Return

Boolean

enableMultipleSelection(enable)

Set whether it is allowed to select more than one row at a time.

Parameters

isMultipleSelectionEnabled()

Return whether it is allowed to select more than one row at a time.

Return

Boolean

selectRow(row)

Select a row.

Parameters

getSelectedRow()

Return the index of selected row.

For table that allows multiple selections, this will return the index of first selected row. When no row is selected, -1 will be returned.

Return

Integer

selectRows(rows)

Select multiple rows.

Parameters

getSelectedRows()

Return selected rows' indexes.

Return

Array

Events

onSelectionChange(self)

Emitted when the table's selection has changed.

Parameters

Preventable

No.

onRowActivate(self, row)

Emitted when the user double-clicks a row.

Parameters

Preventable

No.

onToggleCheckbox(self, column, row)

Emitted when the user clicks a cell to toggle checkbox.

Parameters

Preventable

No.