m3e_menu library
Material 3 Expressive (M3E) Menus.
Implements expressive popup menus, segmented groups, cascading submenus
with the Magic Triangle safe navigation algorithm, spring physics motion
powered by motor, and 1:1 drop-in compatibility with Flutter's MenuAnchor.
Classes
- M3ECheckboxMenuButton
- A Material 3 Expressive checkable menu item button.
-
M3ECheckedPopupMenuItem<
T> - A checkable item in a Material 3 Expressive popup menu.
- M3EMagicTriangle
- Implements the "Magic Triangle" geometric hit-testing algorithm for cascading submenus.
- M3EMenuAnchor
- A Material 3 Expressive menu anchor widget.
- M3EMenuController
- A controller used to manage the state of an M3EMenuAnchor or submenu.
- M3EMenuGroup
- A visually distinct segmented group within an M3E Menu.
- M3EMenuGroupLabel
- A standardized header label for an M3EMenuGroup.
- M3EMenuItemButton
- A Material 3 Expressive menu item button.
- M3EMenuItemStyle
- Visual styling configuration for an M3EMenuItemButton or selectable menu item.
- M3EMenuStyle
- Visual styling configuration for an M3EMenuAnchor or popup menu container.
- M3EMenuTokens
- Design tokens for Material 3 Expressive Menus.
- M3EMotion
- Spring animation configuration for Material 3 Expressive components.
-
M3EPopupMenuButton<
T> - A Material 3 Expressive popup menu button.
-
M3EPopupMenuButtonState<
T> - The State for an M3EPopupMenuButton.
- M3EPopupMenuDivider
- A horizontal divider in a Material 3 Expressive popup menu.
-
M3EPopupMenuEntry<
T> - A base class for entries in a Material 3 Expressive popup menu.
-
M3EPopupMenuItem<
T> - A single selectable item in a Material 3 Expressive popup menu.
-
M3ERadioMenuButton<
T> - A Material 3 Expressive radio menu item button.
- A Material 3 Expressive submenu button that opens a cascading menu.
- MenuGroupShapes
- Represents the active and inactive shapes for a segmented menu group.
- MenuItemShapes
- Represents the unselected and selected shapes for a menu item.
Enums
- M3EMenuAnimationStyle
- The reveal animation used when a menu popup opens and closes.
- M3EMenuColorSchemeVariant
- The color scheme variant for a Material 3 Expressive menu.
- M3EMenuPosition
- Where a popup menu is placed relative to its anchor.
Typedefs
- M3EMenuAnchorChildBuilder = Widget Function(BuildContext context, M3EMenuController controller, Widget? child)
- Signature for the builder callback used by M3EMenuAnchor.
- M3EPopupMenuCanceled = void Function()
- Signature for the callback invoked when a popup menu is dismissed without a selection.
-
M3EPopupMenuItemBuilder<
T> = List< M3EPopupMenuEntry< Function(BuildContext context)T> > -
Signature for the builder callback used by
M3EPopupMenuButton.itemBuilder. -
M3EPopupMenuItemSelected<
T> = void Function(T value) - Signature for the callback invoked when a popup menu value is selected.