Trait BrowserExt

pub unsafe trait BrowserExt: WidgetExt {
Show 48 methods // Required methods fn remove(&mut self, line: i32); fn add(&mut self, item: &str); fn add_with_data<T>(&mut self, item: &str, data: T) where T: Clone + 'static; fn insert(&mut self, line: i32, item: &str); fn insert_with_data<T>(&mut self, line: i32, item: &str, data: T) where T: Clone + 'static; fn move_item(&mut self, to: i32, from: i32); fn swap(&mut self, a: i32, b: i32); fn clear(&mut self); fn size(&self) -> i32; fn select(&mut self, line: i32); fn deselect(&mut self, line: i32); fn selected(&self, line: i32) -> bool; fn text(&self, line: i32) -> Option<String> ; fn selected_text(&self) -> Option<String> ; fn set_text(&mut self, line: i32, txt: &str); fn load<P>(&mut self, path: P) -> Result<(), FltkError> where P: AsRef<Path>; fn text_size(&self) -> i32; fn set_text_size(&mut self, sz: i32); fn set_icon<Img>(&mut self, line: i32, image: Option<Img>) where Img: ImageExt; fn icon(&self, line: i32) -> Option<Box<dyn ImageExt>> ; fn remove_icon(&mut self, line: i32); fn top_line(&mut self, line: i32); fn bottom_line(&mut self, line: i32); fn middle_line(&mut self, line: i32); fn format_char(&self) -> char; fn set_format_char(&mut self, c: char); fn column_char(&self) -> char; fn set_column_char(&mut self, c: char); fn column_widths(&self) -> Vec<i32> ; fn set_column_widths(&mut self, arr: &[i32]); fn displayed(&self, line: i32) -> bool; fn make_visible(&mut self, line: i32); fn position(&self) -> i32; fn set_position(&mut self, pos: i32); fn hposition(&self) -> i32; fn set_hposition(&mut self, pos: i32); fn has_scrollbar(&self) -> BrowserScrollbar; fn set_has_scrollbar(&mut self, mode: BrowserScrollbar); fn scrollbar_size(&self) -> i32; fn set_scrollbar_size(&mut self, new_size: i32); fn sort(&mut self); fn scrollbar(&self) -> Scrollbar; fn hscrollbar(&self) -> Scrollbar; fn value(&self) -> i32; fn set_data<T>(&mut self, line: i32, data: T) where T: Clone + 'static; unsafe fn data<T>(&self, line: i32) -> Option<T> where T: Clone + 'static; fn hide_line(&mut self, line: i32); fn selected_items(&self) -> Vec<i32> ;
}
Available on crate feature dep_fltk only.
Expand description

Defines the methods implemented by all browser types More info 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 remove(&mut self, line: i32)

Removes the specified line. Lines start at 1

fn add(&mut self, item: &str)

Adds an item

fn add_with_data<T>(&mut self, item: &str, data: T)
where T: Clone + 'static,

Adds an item with associated data

fn insert(&mut self, line: i32, item: &str)

Inserts an item at an index. Lines start at 1

fn insert_with_data<T>(&mut self, line: i32, item: &str, data: T)
where T: Clone + 'static,

Inserts an item at an index with associated data. Lines start at 1

fn move_item(&mut self, to: i32, from: i32)

Moves an item. Lines start at 1

fn swap(&mut self, a: i32, b: i32)

Swaps 2 items. Lines start at 1

fn clear(&mut self)

Clears the browser widget

fn size(&self) -> i32

Returns the number of items

fn select(&mut self, line: i32)

Select an item at the specified line. Lines start at 1

fn deselect(&mut self, line: i32)

Select an item at the specified line. Lines start at 1

fn selected(&self, line: i32) -> bool

Returns whether the item is selected Lines start at 1

fn text(&self, line: i32) -> Option<String>

Returns the text of the item at line. Lines start at 1

fn selected_text(&self) -> Option<String>

Returns the text of the selected item. Lines start at 1

fn set_text(&mut self, line: i32, txt: &str)

Sets the text of the selected item. Lines start at 1

fn load<P>(&mut self, path: P) -> Result<(), FltkError>
where P: AsRef<Path>,

Load a file

§Errors

Errors on non-existent paths

fn text_size(&self) -> i32

Return the text size

fn set_text_size(&mut self, sz: i32)

Sets the text size. Lines start at 1

fn set_icon<Img>(&mut self, line: i32, image: Option<Img>)
where Img: ImageExt,

Sets the icon for browser elements. Lines start at 1

fn icon(&self, line: i32) -> Option<Box<dyn ImageExt>>

Returns the icon of a browser element. Lines start at 1

fn remove_icon(&mut self, line: i32)

Removes the icon of a browser element. Lines start at 1

fn top_line(&mut self, line: i32)

Scrolls the browser so the top item in the browser is showing the specified line. Lines start at 1

fn bottom_line(&mut self, line: i32)

Scrolls the browser so the bottom item in the browser is showing the specified line. Lines start at 1

fn middle_line(&mut self, line: i32)

Scrolls the browser so the middle item in the browser is showing the specified line. Lines start at 1

fn format_char(&self) -> char

Gets the current format code prefix character, which by default is ‘@’. More info here

fn set_format_char(&mut self, c: char)

Sets the current format code prefix character to \p c. The default prefix is ‘@’. c should be ascii

fn column_char(&self) -> char

Gets the current column separator character. The default is ‘\t’

fn set_column_char(&mut self, c: char)

Sets the column separator to c. This will only have an effect if you also use set_column_widths(). c should be ascii

fn column_widths(&self) -> Vec<i32>

Gets the current column width array

fn set_column_widths(&mut self, arr: &[i32])

Sets the current column width array

fn displayed(&self, line: i32) -> bool

Returns whether a certain line is displayed

fn make_visible(&mut self, line: i32)

Makes a specified line visible

fn position(&self) -> i32

Gets the vertical scroll position of the list as a pixel position

fn set_position(&mut self, pos: i32)

Sets the vertical scroll position of the list as a pixel position

fn hposition(&self) -> i32

Gets the horizontal scroll position of the list as a pixel position

fn set_hposition(&mut self, pos: i32)

Sets the horizontal scroll position of the list as a pixel position

fn has_scrollbar(&self) -> BrowserScrollbar

Returns the type of scrollbar associated with the browser

fn set_has_scrollbar(&mut self, mode: BrowserScrollbar)

Sets the type of scrollbar associated with the browser

fn scrollbar_size(&self) -> i32

Gets the scrollbar size

fn set_scrollbar_size(&mut self, new_size: i32)

Sets the scrollbar size

fn sort(&mut self)

Sorts the items of the browser

fn scrollbar(&self) -> Scrollbar

Returns the vertical scrollbar

fn hscrollbar(&self) -> Scrollbar

Returns the horizontal scrollbar

fn value(&self) -> i32

Returns the selected line, returns 0 if no line is selected

fn set_data<T>(&mut self, line: i32, data: T)
where T: Clone + 'static,

Set the data associated with the line

unsafe fn data<T>(&self, line: i32) -> Option<T>
where T: Clone + 'static,

Get the data associated with the line

§Safety

Type correctness is insured by the developer

fn hide_line(&mut self, line: i32)

Hides a the specified line

fn selected_items(&self) -> Vec<i32>

Gets the selected items

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§