Struct conrod::widget::list::List[][src]

pub struct List<D, S> {
    pub common: CommonBuilder,
    pub style: Style,
    pub item_instantiation: ItemInstantiation,
    // 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 widget::Ids.
  • 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.

Fields

Common widget building params for the List.

Unique styling for the List.

Whether all or only visible items should be instantiated.

Methods

impl<D> List<D, Dynamic> where
    D: Direction
[src]

Begin building a new List.

impl List<Left, Dynamic>
[src]

Begin building a new List flowing from right to left.

impl List<Right, Dynamic>
[src]

Begin building a new List flowing from left to right.

impl List<Up, Dynamic>
[src]

Begin building a new List flowing from bottom to top.

impl List<Down, Dynamic>
[src]

Begin building a new List flowing from top to bottom.

impl<D, S> List<D, S> where
    D: Direction,
    S: ItemSize
[src]

Begin building a new List given some direction and item size.

Specify a fixed item size, where size is a Scalar in the direction that the List is flowing. When a List is constructed with this method, all items will have a fixed, equal length.

impl<D> List<D, Fixed> where
    D: Direction
[src]

Indicates that an Item should be instantiated for every element in the list, regardless of whether or not the Item would be visible.

This is the default (and only) behaviour for Lists with dynamic item sizes. This is because a List cannot know the total length of its combined items in advanced when each item is dynamically sized and their size is not given until they are set.

Note: This may cause significantly heavier CPU load for lists containing many items (100+). We only recommend using this when absolutely necessary as large lists may cause unnecessary bloating within the widget graph, and in turn result in greater traversal times.

Indicates that only Items that are visible should be instantiated. This ensures that we avoid bloating the widget graph with unnecessary nodes and in turn keep traversal times to a minimum.

This is the default behaviour for Lists with fixed item sizes.

impl<D, S> List<D, S> where
    D: Direction,
    S: ItemSize
[src]

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

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.

The width of the Scrollbar.

The color of the Scrollbar.

Trait Implementations

impl<D: Clone, S: Clone> Clone for List<D, S>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<D, S> Widget for List<D, S> where
    D: Direction,
    S: ItemSize
[src]

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

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

The type of event yielded by the widget, returned via the Widget::set function. Read more

Return the initial State of the Widget. Read more

Return the styling of the widget. Read more

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

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

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

The default width for the Widget. Read more

The default height of the widget. Read more

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

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

Returns either of the following: Read more

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

Specify that this widget has no parent widgets.

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

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

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

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

Makes the widget's KidArea scrollable. Read more

Makes the widget's KidArea scrollable. Read more

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

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

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

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

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

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

Auto Trait Implementations

impl<D, S> Send for List<D, S> where
    D: Send,
    S: Send

impl<D, S> Sync for List<D, S> where
    D: Sync,
    S: Sync