Trait TableExt

pub unsafe trait TableExt: GroupExt {
Show 61 methods // Required methods fn clear(&mut self); fn set_table_frame(&mut self, frame: FrameType); fn table_frame(&self) -> FrameType; fn set_rows(&mut self, val: i32); fn rows(&self) -> i32; fn set_cols(&mut self, val: i32); fn cols(&self) -> i32; fn visible_cells(&self) -> (i32, i32, i32, i32) ; fn try_visible_cells(&self) -> Option<(i32, i32, i32, i32)> ; fn is_interactive_resize(&self) -> bool; fn row_resize(&self) -> bool; fn set_row_resize(&mut self, flag: bool); fn col_resize(&self) -> bool; fn set_col_resize(&mut self, flag: bool); fn col_resize_min(&self) -> i32; fn set_col_resize_min(&mut self, val: i32); fn row_resize_min(&self) -> i32; fn set_row_resize_min(&mut self, val: i32); fn row_header(&self) -> bool; fn set_row_header(&mut self, flag: bool); fn col_header(&self) -> bool; fn set_col_header(&mut self, flag: bool); fn set_col_header_height(&mut self, height: i32); fn col_header_height(&self) -> i32; fn set_row_header_width(&mut self, width: i32); fn row_header_width(&self) -> i32; fn set_row_header_color(&mut self, val: Color); fn row_header_color(&self) -> Color; fn set_col_header_color(&mut self, val: Color); fn col_header_color(&self) -> Color; fn set_row_height(&mut self, row: i32, height: i32); fn row_height(&self, row: i32) -> i32; fn set_col_width(&mut self, col: i32, width: i32); fn col_width(&self, col: i32) -> i32; fn set_row_height_all(&mut self, height: i32); fn set_col_width_all(&mut self, width: i32); fn set_row_position(&mut self, row: i32); fn set_col_position(&mut self, col: i32); fn row_position(&self) -> i32; fn col_position(&self) -> i32; fn set_top_row(&mut self, row: i32); fn top_row(&self) -> i32; fn is_selected(&self, r: i32, c: i32) -> bool; fn get_selection(&self) -> (i32, i32, i32, i32) ; fn try_get_selection(&self) -> Option<(i32, i32, i32, i32)> ; fn set_selection( &mut self, row_top: i32, col_left: i32, row_bot: i32, col_right: i32, ); fn unset_selection(&mut self); fn move_cursor_with_shift_select( &mut self, r: i32, c: i32, shiftselect: bool, ) -> Result<(), FltkError> ; fn move_cursor(&mut self, r: i32, c: i32) -> Result<(), FltkError> ; fn scrollbar_size(&self) -> i32; fn set_scrollbar_size(&mut self, new_size: i32); fn set_tab_cell_nav(&mut self, val: bool); fn tab_cell_nav(&self) -> bool; fn draw_cell<F>(&mut self, cb: F) where F: FnMut(&mut Self, TableContext, i32, i32, i32, i32, i32, i32) + 'static; fn callback_col(&self) -> i32; fn callback_row(&self) -> i32; fn callback_context(&self) -> TableContext; fn scrollbar(&self) -> Scrollbar; fn hscrollbar(&self) -> Scrollbar; fn find_cell( &self, ctx: TableContext, row: i32, col: i32, ) -> Option<(i32, i32, i32, i32)> ; fn cursor2rowcol(&self) -> Option<(TableContext, i32, i32, TableResizeFlag)> ;
}
Available on crate feature dep_fltk only.
Expand description

Defines the methods implemented by table types. More details can be found in the wiki.

§Safety

fltk-rs traits depend on some FLTK internal code

§Warning

fltk-rs traits are non-exhaustive, to avoid future breakage if you try to implement them manually, use the Deref and DerefMut pattern or the widget_extends! macro

Required Methods§

fn clear(&mut self)

Clears the table

fn set_table_frame(&mut self, frame: FrameType)

Sets the table frame

fn table_frame(&self) -> FrameType

Gets the table frame

fn set_rows(&mut self, val: i32)

Sets the number of rows

fn rows(&self) -> i32

Gets the number of rows

fn set_cols(&mut self, val: i32)

Sets the number of columns

fn cols(&self) -> i32

Gets the number of columns

fn visible_cells(&self) -> (i32, i32, i32, i32)

The range of row and column numbers for all visible and partially visible cells in the table. Returns (row_top, col_left, row_bot, col_right)

fn try_visible_cells(&self) -> Option<(i32, i32, i32, i32)>

The range of row and column numbers for all visible and partially visible cells in the table. Returns (row_top, col_left, row_bot, col_right)

fn is_interactive_resize(&self) -> bool

Returns whether the resize is interactive

fn row_resize(&self) -> bool

Returns whether a row is resizable

fn set_row_resize(&mut self, flag: bool)

Sets a row to be resizable

fn col_resize(&self) -> bool

Returns whether a column is resizable

fn set_col_resize(&mut self, flag: bool)

Sets a column to be resizable

fn col_resize_min(&self) -> i32

Returns the current column minimum resize value.

fn set_col_resize_min(&mut self, val: i32)

Sets the current column minimum resize value.

fn row_resize_min(&self) -> i32

Returns the current row minimum resize value.

fn set_row_resize_min(&mut self, val: i32)

Sets the current row minimum resize value.

fn row_header(&self) -> bool

Returns if row headers are enabled or not

fn set_row_header(&mut self, flag: bool)

Sets whether a row headers are enabled or not

fn col_header(&self) -> bool

Returns if column headers are enabled or not

fn set_col_header(&mut self, flag: bool)

Sets whether a column headers are enabled or not

fn set_col_header_height(&mut self, height: i32)

Sets the column header height

fn col_header_height(&self) -> i32

Gets the column header height

fn set_row_header_width(&mut self, width: i32)

Sets the row header width

fn row_header_width(&self) -> i32

Gets the row header width

fn set_row_header_color(&mut self, val: Color)

Sets the row header color

fn row_header_color(&self) -> Color

Gets the row header color

fn set_col_header_color(&mut self, val: Color)

Sets the column header color

fn col_header_color(&self) -> Color

Gets the row header color

fn set_row_height(&mut self, row: i32, height: i32)

Sets the row’s height

fn row_height(&self, row: i32) -> i32

Gets the row’s height

fn set_col_width(&mut self, col: i32, width: i32)

Sets the column’s width

fn col_width(&self, col: i32) -> i32

Gets the column’s width

fn set_row_height_all(&mut self, height: i32)

Sets all rows height

fn set_col_width_all(&mut self, width: i32)

Sets all column’s width

fn set_row_position(&mut self, row: i32)

Sets the row’s position

fn set_col_position(&mut self, col: i32)

Sets the column’s position

fn row_position(&self) -> i32

Gets the row’s position

fn col_position(&self) -> i32

Gets the column’s position

fn set_top_row(&mut self, row: i32)

Sets the top row

fn top_row(&self) -> i32

Gets the top row

fn is_selected(&self, r: i32, c: i32) -> bool

Returns whether a cell is selected

fn get_selection(&self) -> (i32, i32, i32, i32)

Gets the selection. Returns (row_top, col_left, row_bot, col_right). Returns -1 if no selection.

fn try_get_selection(&self) -> Option<(i32, i32, i32, i32)>

Tries to get the selection. Returns an Option((row_top, col_left, row_bot, col_right))

fn set_selection( &mut self, row_top: i32, col_left: i32, row_bot: i32, col_right: i32, )

Sets the selection

fn unset_selection(&mut self)

Unset selection

fn move_cursor_with_shift_select( &mut self, r: i32, c: i32, shiftselect: bool, ) -> Result<(), FltkError>

Moves the cursor with shift select

§Errors

Errors on failure to move the cursor

fn move_cursor(&mut self, r: i32, c: i32) -> Result<(), FltkError>

Moves the cursor

§Errors

Errors on failure to move the cursor

fn scrollbar_size(&self) -> i32

Returns the scrollbar size

fn set_scrollbar_size(&mut self, new_size: i32)

Sets the scrollbar size

fn set_tab_cell_nav(&mut self, val: bool)

Sets whether tab key cell navigation is enabled

fn tab_cell_nav(&self) -> bool

Returns whether tab key cell navigation is enabled

fn draw_cell<F>(&mut self, cb: F)
where F: FnMut(&mut Self, TableContext, i32, i32, i32, i32, i32, i32) + 'static,

Override draw_cell. callback args: &mut self, TableContext, Row: i32, Column: i32, X: i32, Y: i32, Width: i32 and Height: i32. takes the widget as a closure argument

fn callback_col(&self) -> i32

Get the callback column, should be called from within a callback

fn callback_row(&self) -> i32

Get the callback row, should be called from within a callback

fn callback_context(&self) -> TableContext

Get the callback context, should be called from within a callback

fn scrollbar(&self) -> Scrollbar

Returns the table’s vertical scrollbar

fn hscrollbar(&self) -> Scrollbar

Returns the table’s horizontal scrollbar

fn find_cell( &self, ctx: TableContext, row: i32, col: i32, ) -> Option<(i32, i32, i32, i32)>

Find a cell’s coords and size by row and column

fn cursor2rowcol(&self) -> Option<(TableContext, i32, i32, TableResizeFlag)>

Get the cursor to row/col

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§