Documentation ¶
Index ¶
- type Column
- type DeleteFn
- type KeyMap
- type Model
- func (m *Model) Blur()
- func (m Model) Columns() []Column
- func (m Model) Cursor() int
- func (m *Model) Focus()
- func (m Model) Focused() bool
- func (m *Model) FromValues(value, separator string)
- func (m *Model) GotoBottom()
- func (m *Model) GotoTop()
- func (m Model) Height() int
- func (m *Model) Mark()
- func (m *Model) MoveDown(n int)
- func (m *Model) MoveUp(n int)
- func (m Model) Rows() []Row
- func (m Model) SelectedRow() Row
- func (m *Model) SetColumns(c []Column)
- func (m *Model) SetCursor(n int)
- func (m *Model) SetHeight(h int)
- func (m *Model) SetRows(r []Row)
- func (m *Model) SetStyles(s Styles)
- func (m *Model) SetWidth(w int)
- func (m Model) Update(msg tea.Msg) (Model, tea.Cmd)
- func (m *Model) UpdateViewport()
- func (m Model) View() string
- func (m Model) Width() int
- type Option
- func WithColumns(cols []Column) Option
- func WithDeleteFn(d DeleteFn) Option
- func WithFocused(f bool) Option
- func WithHeight(h int) Option
- func WithKeyMap(km KeyMap) Option
- func WithRefreshFn(r RefreshFn) Option
- func WithRows(rows []Row) Option
- func WithStyleFunc(f StyleFunc) Option
- func WithStyles(s Styles) Option
- func WithWidth(w int) Option
- type RefreshFn
- type Row
- type StyleFunc
- type Styles
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type KeyMap ¶
type KeyMap struct { LineUp key.Binding LineDown key.Binding PageUp key.Binding PageDown key.Binding GotoTop key.Binding GotoBottom key.Binding Mark key.Binding Execute key.Binding Expand key.Binding }
KeyMap defines keybindings. It satisfies to the help.KeyMap interface, which is used to render the menu.
func DefaultKeyMap ¶
func DefaultKeyMap() KeyMap
DefaultKeyMap returns a default set of keybindings.
type Model ¶
type Model struct { KeyMap KeyMap // contains filtered or unexported fields }
Model defines a state for the table widget.
func (*Model) Focus ¶
func (m *Model) Focus()
Focus focuses the table, allowing the user to move around the rows and interact.
func (*Model) FromValues ¶
FromValues create the table rows from a simple string. It uses `\n` by default for getting all the rows and the given separator for the fields on each row.
func (*Model) GotoBottom ¶
func (m *Model) GotoBottom()
GotoBottom moves the selection to the last row.
func (*Model) Mark ¶
func (m *Model) Mark()
Mark the current cursor position to indicate that the underlying document will be deleted.
func (*Model) MoveDown ¶
MoveDown moves the selection down by any number of rows. It can not go below the last row.
func (*Model) MoveUp ¶
MoveUp moves the selection up by any number of rows. It can not go above the first row.
func (Model) SelectedRow ¶
SelectedRow returns the selected row. You can cast it to your own implementation.
func (*Model) SetColumns ¶
SetColumns sets a new columns state.
func (*Model) UpdateViewport ¶
func (m *Model) UpdateViewport()
UpdateViewport updates the list content based on the previously defined columns and rows.
type Option ¶
type Option func(*Model)
Option is used to set options in New. For example:
table := New(WithColumns([]Column{{Title: "ID", Width: 10}}))
func WithColumns ¶
WithColumns sets the table columns (headers).
func WithRefreshFn ¶
WithRefreshFn sets the refresh callback.
func WithStyleFunc ¶
WithStyleFunc sets the table style func which can determine a cell style per column, row, and selected state.
type RefreshFn ¶
type RefreshFn func() []Row
RefreshFn is a function that refreshes the available rows.
type StyleFunc ¶
StyleFunc is a function that can be used to customize the style of a table cell based on the row and column index.
type Styles ¶
type Styles struct { Header lipgloss.Style Cell lipgloss.Style Selected lipgloss.Style Marked lipgloss.Style }
Styles contains style definitions for this list component. By default, these values are generated by DefaultStyles.
func DefaultStyles ¶
func DefaultStyles() Styles
DefaultStyles returns a set of default style definitions for this table.