1# llimphi-widget-toolbar23Modern toolbar.
45Groups of flat icon buttons: hover with a rounded background, the **active**
6state with a selection background and an accent icon, **disabled** dimmed and
7unclickable. Between groups, a subtle vertical separator.
89The widget is render-only and `Msg`-agnostic:
1011- the **icons are drawn by the caller** through a `Fn(size, color) -> View`
12 closure (the same contract as `dock-rail::make_icon`) — the widget resolves the
13 colour from the state (active/normal/disabled);
14- the **groups are data** (`Vec<ToolbarGroup>`): the caller builds, reorders or
15 filters them — the bar is composable and configurable by construction, with no
16 config system of its own.
1718```ignore19let bar = toolbar_view(
20 vec![
21 ToolbarGroup::new(vec![
22 ToolbarItem::new(|s, c| icon_view(Icon::ChevronUp, c, 1.7), Msg::Up)
23 .with_label("up"),
24 ]),
25 ToolbarGroup::new(vec![
26 ToolbarItem::new(|s, c| icon_view(Icon::Rows, c, 1.7), Msg::View(0)).active(list),
27 ToolbarItem::new(|s, c| icon_view(Icon::Grid, c, 1.7), Msg::View(2)).active(icons),
28 ]),
29 ],
30 36.0,
31 &ToolbarPalette::from_theme(&theme),
32);
33```3435---
3637Part of **llimphi** — see [llimphi](../../README.md).
README.md
llimphi-widget-toolbar
Modern toolbar.
Groups of flat icon buttons: hover with a rounded background, the active
state with a selection background and an accent icon, disabled dimmed and
unclickable. Between groups, a subtle vertical separator.
The widget is render-only and Msg-agnostic:
the icons are drawn by the caller through a Fn(size, color) -> View
closure (the same contract as dock-rail::make_icon) — the widget resolves the
colour from the state (active/normal/disabled);
the groups are data (Vec<ToolbarGroup>): the caller builds, reorders or
filters them — the bar is composable and configurable by construction, with no
config system of its own.