pub fn fab<'a, Message, Renderer>(
icon_content: impl IntoFragment<'a>,
variant: FabVariant,
size: FabSize,
) -> Button<'a, Message, Renderer>Examples found in repository?
examples/showcase/pages/structure.rs (line 72)
61fn bottom_app_bar() -> material::Element<'static, Message> {
62 use material::widget::app_bar;
63 use material::widget::button::{self, FabSize, FabVariant};
64
65 app_bar::bottom(
66 app_bar::icon_actions([
67 ("menu", Message::MenuPressed),
68 ("search", Message::Increment),
69 ("info", Message::Increment),
70 ]),
71 Some(button::action(
72 button::fab("add", FabVariant::Primary, FabSize::Standard),
73 Message::Increment,
74 )),
75 )
76 .into()
77}
78
79fn toolbars() -> material::Element<'static, Message> {
80 use material::widget::button::{self, FabSize, FabVariant};
81 use material::widget::toolbar;
82
83 let docked = toolbar::docked(toolbar::icon_actions([
84 ("arrow_back", Message::Decrement),
85 ("arrow_forward", Message::Increment),
86 ("add", Message::Increment),
87 ("tab", Message::Increment),
88 ("star", Message::Increment),
89 ("search", Message::Increment),
90 ]));
91
92 let docked_vibrant = toolbar::docked_vibrant([
93 toolbar::vibrant_icon_action("edit", Message::Increment),
94 toolbar::selected_vibrant_icon_action("check", Message::Increment),
95 toolbar::vibrant_icon_action("delete", Message::Decrement),
96 toolbar::vibrant_icon_action("more_vert", Message::MenuPressed),
97 ]);
98
99 let floating = toolbar::floating([
100 toolbar::selected_icon_action("format_bold", Message::Increment),
101 toolbar::icon_action("format_italic", Message::Increment),
102 toolbar::icon_action("format_underlined", Message::Increment),
103 toolbar::icon_action("format_color_text", Message::Increment),
104 ]);
105
106 let floating_vibrant = toolbar::floating_with_fab(
107 toolbar::floating_vibrant(toolbar::vibrant_icon_actions([
108 ("share", Message::Increment),
109 ("add", Message::Increment),
110 ("edit", Message::Increment),
111 ])),
112 button::fab("search", FabVariant::Primary, FabSize::Standard).on_press(Message::Increment),
113 );
114
115 let vertical = toolbar::vertical_floating([
116 toolbar::icon_action("undo", Message::Decrement),
117 toolbar::icon_action("redo", Message::Increment),
118 toolbar::selected_icon_action("palette", Message::Increment),
119 ]);
120
121 page::component_stack([
122 docked.into(),
123 docked_vibrant.into(),
124 page::row([floating.into(), vertical.into()]).into(),
125 floating_vibrant.into(),
126 ])
127 .into()
128}More examples
examples/showcase/pages/controls.rs (line 58)
50fn fabs(state: &Showcase) -> material::Element<'_, Message> {
51 use material::widget::button::{self, FabSize, FabVariant};
52
53 page::stack([
54 page::row(button::enabled_actions(
55 state.enabled,
56 Message::Increment,
57 [
58 button::fab("add", FabVariant::Surface, FabSize::Small),
59 button::fab("add", FabVariant::Surface, FabSize::Standard),
60 button::fab("add", FabVariant::Surface, FabSize::Large),
61 button::fab("add", FabVariant::Primary, FabSize::Standard),
62 button::fab("add", FabVariant::Secondary, FabSize::Standard),
63 button::fab("add", FabVariant::Tertiary, FabSize::Standard),
64 ],
65 ))
66 .into(),
67 page::row(button::enabled_actions(
68 state.enabled,
69 Message::Increment,
70 [
71 button::extended_fab_with_icon("add", "Create", FabVariant::Primary),
72 button::extended_fab_with_icon("share", "Share", FabVariant::Secondary),
73 button::extended_fab_with_icon("add", "Add", FabVariant::Tertiary),
74 button::extended_fab("Reroute", FabVariant::Surface),
75 ],
76 ))
77 .into(),
78 ])
79 .into()
80}