Fantom

 

class

fwt::Table

sys::Obj
  fwt::Widget
    fwt::Table

@Js
@Serializable { simple=false collection=false }

Table displays grid of rows and columns.

Slots

borderSource

const Bool border := true

Draw a border around the widget. Default is true. This field cannot be changed once the widget is constructed.

colAtSource

native Int? colAt(Point pos)

Get the zero based column index at the specified coordinate relative to this widget or null if not over a valid cell.

hbarSource

@Transient
readonly ScrollBar hbar

Horizontal scroll bar.

headerVisibleSource

native Bool headerVisible

Is the header visible. Defaults to true.

isColVisibleSource

Bool isColVisible(Int col)

Return if the given column is visible. All columns are visible by default and can be toggled via setColVisible.

makeSource

new make(|This|? f := null)

Default constructor.

modelSource

TableModel model := TableModel()

Backing data model of table.

multiSource

const Bool multi := false

True to enable multi-row selection, false for single row selection. Default is false. This field cannot be changed once the widget is constructed.

onActionSource

@Transient
readonly EventListeners onAction := EventListeners()

Callback when row is double clicked or Return/Enter key is pressed.

Event id fired:

Event fields:

onPopupSource

@Transient
readonly EventListeners onPopup := EventListeners()

Callback when user invokes a right click popup action. If the callback wishes to display a popup, then set the Event.popup field with menu to open. If multiple callbacks are installed, the first one to return a nonnull popup consumes the event.

Event id fired:

Event fields:

  • Event.index: the row index, or null if this is a background popup.
  • Event.pos: the mouse position of the popup.
onSelectSource

@Transient
readonly EventListeners onSelect := EventListeners()

Callback when selected rows change.

Event id fired:

Event fields:

refreshAllSource

native Void refreshAll()

Update the entire table's contents from the model.

rowAtSource

native Int? rowAt(Point pos)

Get the zero based row index at the specified coordinate relative to this widget or null if not over a valid cell.

selectedSource

native Int[] selected

Get and set the selected row indices.

setColVisibleSource

Void setColVisible(Int col, Bool visible)

Show or hide the given column. Changing visibility of columns does not modify the indexing of TableModel, it only changes how the model is viewed. See isColVisible. This method does not automatically refresh table, call refreshAll when complete.

sortSource

native Void sort(Int? col, SortMode mode := SortMode.up)

Sort a table by the given column index. If col is null, then the table is ordered by its natural order of the table model. Sort order is determined by TableModel.sortCompare. Sorting does not modify the indexing of TableModel, it only changes how the model is viewed. Also see sortCol and sortMode. This method automatically refreshes the table.

sortColSource

Int? sortCol()

The column index by which the table is currently sorted, or null if the table is not currently sorted by a column. See sort.

sortModeSource

SortMode sortMode()

Return if the table is currently sorting up or down. See sort.

vbarSource

@Transient
readonly ScrollBar vbar

Vertical scroll bar.