Struct conrod::List [] [src]

pub struct List<F> {
    // some fields omitted
}

A helper widget, useful for instantiating a sequence of widgets in a vertical list.

The List widget simplifies this process by:

  • Generating NodeIndexs.
  • Simplifying the positioning and sizing of items.
  • Optimised widget instantiation by only instantiating visible items. This is very useful for lists containing many items, i.e. a FileNavigator over a directory with thousands of files.

Methods

impl<F> List<F>
[src]

fn new(num_items: u32, item_height: Scalar) -> Self where F: FnMut(Item)

Create a List context to be built upon.

fn item(self, f: F) -> Self where F: FnMut(Item)

A function used to instantiate each item in the list.

Each Item passed via the closure argument can be used to set, position and size a single widget. Note that when using an Item to set a widget within the list, the Item will override any positioning or sizing that was previously specified for the widget.

fn scrollbar_next_to(self) -> Self where F: FnMut(Item)

Specifies that the List should be scrollable and should provide a Scrollbar to the right of the items.

fn scrollbar_on_top(self) -> Self where F: FnMut(Item)

Specifies that the List should be scrollable and should provide a Scrollbar that hovers above the right edge of the items and automatically hides when the user is not scrolling.

fn scrollbar_width(self, w: Scalar) -> Self

The width of the Scrollbar.

fn scrollbar_color(self, color: Color) -> Self

The color of the Scrollbar.

Trait Implementations

impl<F> Widget for List<F> where F: FnMut(Item)
[src]

type State = State

State to be stored within the Uis widget cache. Read more

type Style = Style

Every widget is required to have its own associated Style type. This type is intended to contain high-level styling information for the widget that can be optionally specified by a user of the widget. Read more

fn common(&self) -> &CommonBuilder

Return a reference to a CommonBuilder struct owned by the Widget. This method allows us to do a blanket impl of Positionable and Sizeable for T: Widget. Read more

fn common_mut(&mut self) -> &mut CommonBuilder

Return a mutable reference to a CommonBuilder struct owned by the Widget. This method allows us to do a blanket impl of Positionable and Sizeable for T: Widget. Read more

fn init_state(&self) -> State

Return the initial State of the Widget. Read more

fn style(&self) -> Style

Return the styling of the widget. Read more

fn update(self, args: UpdateArgs<Self>)

Update our Widget's unique Widget::State via the State wrapper type (the state field within the UpdateArgs). Read more

fn default_x_position(&self, ui: &Ui) -> Position

The default Position for the widget along the x axis. Read more

fn default_y_position(&self, ui: &Ui) -> Position

The default Position for the widget along the y axis. Read more

fn default_x_dimension(&self, ui: &Ui) -> Dimension

The default width for the Widget. Read more

fn default_y_dimension(&self, ui: &Ui) -> Dimension

The default height of the widget. Read more

fn drag_area(&self, _dim: Dimensions, _style: &Self::Style, _theme: &Theme) -> Option<Rect>

If the widget is draggable, implement this method and return the position and dimensions of the draggable space. The position should be relative to the center of the widget. Read more

fn kid_area(&self, args: KidAreaArgs<Self>) -> KidArea

The area on which child widgets will be placed when using the Place Position methods.

fn parent<I: Into<Index>>(self, parent_idx: I) -> Self

Set the parent widget for this Widget by passing the WidgetId of the parent. Read more

fn no_parent(self) -> Self

Specify that this widget has no parent widgets.

fn place_on_kid_area(self, b: bool) -> Self

Set whether or not the Widget should be placed on the kid_area. Read more

fn graphics_for<I: Into<Index>>(self, idx: I) -> Self

Indicates that the Widget is used as a non-interactive graphical element for some other widget. Read more

fn floating(self, is_floating: bool) -> Self

Set whether or not the widget is floating (the default is false). A typical example of a floating widget would be a pop-up or alert window. Read more

fn crop_kids(self) -> Self

Indicates that all widgets who are children of this widget should be cropped to the kid_area of this widget. Read more

fn scroll_kids(self) -> Self

Makes the widget's KidArea scrollable. Read more

fn scroll_kids_vertically(self) -> Self

Makes the widget's KidArea scrollable. Read more

fn scroll_kids_horizontally(self) -> Self

Set whether or not the widget's KidArea is scrollable (the default is false). Read more

fn and<F>(self, build: F) -> Self where F: FnOnce(Self) -> Self

A builder method that "lifts" the Widget through the given build function. Read more

fn and_mut<F>(self, mutate: F) -> Self where F: FnOnce(&mut Self)

A builder method that mutates the Widget with the given mutate function. Read more

fn and_if<F>(self, cond: bool, build: F) -> Self where F: FnOnce(Self) -> Self

A method that conditionally builds the Widget with the given build function. Read more

fn and_then<T, F>(self, maybe: Option<T>, build: F) -> Self where F: FnOnce(Self, T) -> Self

A method that optionally builds the the Widget with the given build function. Read more

fn set<'a, 'b, I>(self, idx: I, ui_cell: &'a mut UiCell<'b>) where I: Into<Index>

Note: There should be no need to override this method. Read more