[][src]Trait conrod_core::widget::list_select::Mode

pub trait Mode {
    type Selection;
    fn click_selection<F, D, S>(
        &self,
        _: Click,
        i: usize,
        num_items: usize,
        _: &State,
        is_selected: F,
        _: &mut PendingEvents<Self::Selection, D, S>
    )
    where
        F: Fn(usize) -> bool
;
fn key_selection<F, D, S>(
        &self,
        _: KeyPress,
        i: usize,
        num_items: usize,
        _: &State,
        is_selected: F,
        _: &mut PendingEvents<Self::Selection, D, S>
    )
    where
        F: Fn(usize) -> bool,
        D: Direction
; }
[]

Allows the ListSelect to be generic over Single and Multiple selection modes.

Also allows for defining other custom selection modes.

Associated Types

type Selection[]

The data associated with the Modes Event::Selection.

Required methods

fn click_selection<F, D, S>(
    &self,
    _: Click,
    i: usize,
    num_items: usize,
    _: &State,
    is_selected: F,
    _: &mut PendingEvents<Self::Selection, D, S>
) where
    F: Fn(usize) -> bool
[]

Update the PendingEvents in accordance with the given Click event.

fn key_selection<F, D, S>(
    &self,
    _: KeyPress,
    i: usize,
    num_items: usize,
    _: &State,
    is_selected: F,
    _: &mut PendingEvents<Self::Selection, D, S>
) where
    F: Fn(usize) -> bool,
    D: Direction
[]

Update the PendingEvents in accordance with the given KeyPress event.

Implementors

impl Mode for Multiple[src][+]

type Selection = Selection

impl Mode for Single[src][+]

type Selection = usize