pub trait MenuItem<R>: Marker + View {
    // Required methods
    fn interact(&mut self) -> R;
    fn set_style<C, S, IT, P>(&mut self, style: &MenuStyle<C, S, IT, P, R>)
       where C: PixelColor,
             S: IndicatorStyle,
             IT: InputAdapterSource<R>,
             P: SelectionIndicatorController;
    fn title(&self) -> &str;
    fn details(&self) -> &str;
    fn value(&self) -> &str;
    fn draw_styled<C, S, IT, P, DIS>(
        &self,
        style: &MenuStyle<C, S, IT, P, R>,
        display: &mut DIS
    ) -> Result<(), DIS::Error>
       where C: PixelColor + From<Rgb888>,
             S: IndicatorStyle,
             IT: InputAdapterSource<R>,
             P: SelectionIndicatorController,
             DIS: DrawTarget<Color = C>;
}

Required Methods§

source

fn interact(&mut self) -> R

source

fn set_style<C, S, IT, P>(&mut self, style: &MenuStyle<C, S, IT, P, R>)

source

fn title(&self) -> &str

source

fn details(&self) -> &str

source

fn value(&self) -> &str

source

fn draw_styled<C, S, IT, P, DIS>( &self, style: &MenuStyle<C, S, IT, P, R>, display: &mut DIS ) -> Result<(), DIS::Error>
where C: PixelColor + From<Rgb888>, S: IndicatorStyle, IT: InputAdapterSource<R>, P: SelectionIndicatorController, DIS: DrawTarget<Color = C>,

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T, D, M, R> MenuItem<R> for NavigationItem<T, D, M, R>
where T: AsRef<str>, D: AsRef<str>, M: AsRef<str>, R: Copy,

source§

impl<T, D, R, S> MenuItem<R> for Select<T, D, R, S>
where T: AsRef<str>, D: AsRef<str>, S: SelectValue,