icon.rs

 1use strum::IntoEnumIterator;
 2use ui::prelude::*;
 3use ui::{Icon, IconElement};
 4
 5use crate::story::Story;
 6
 7#[derive(Element, Default)]
 8pub struct IconStory {}
 9
10impl IconStory {
11    fn render<V: 'static>(&mut self, _: &mut V, cx: &mut ViewContext<V>) -> impl IntoElement<V> {
12        let icons = Icon::iter();
13
14        Story::container(cx)
15            .child(Story::title_for::<_, IconElement>(cx))
16            .child(Story::label(cx, "All Icons"))
17            .child(div().flex().gap_3().children(icons.map(IconElement::new)))
18    }
19}