MenuGroupData class
Data class containing menu group state and configuration.
Manages the hierarchical structure of menu groups, tracking parent-child relationships, popover state, and layout properties. Used internally by the menu system to coordinate behavior across nested menus.
Constructors
-
MenuGroupData(MenuGroupData? parent, List<
MenuData> children, bool hasLeading, Offset? subMenuOffset, VoidCallback? onDismissed, Object? regionGroupId, Axis direction, EdgeInsets itemPadding, SubFocusScopeState focusScope) - Creates menu group data.
Properties
-
children
→ List<
MenuData> -
Child menu items' data.
final
- direction → Axis
-
Layout direction (horizontal or vertical).
final
- focusScope → SubFocusScopeState
-
Focus scope state for keyboard navigation.
final
- hashCode → int
-
The hash code for this object.
no setteroverride
- hasLeading → bool
-
Whether any child items have leading widgets.
final
- hasOpenOverlays → bool
-
Checks if any child menu items have open popovers.
no setter
- itemPadding → EdgeInsets
-
Padding around menu items.
final
- onDismissed → VoidCallback?
-
Callback when menu is dismissed.
final
- parent → MenuGroupData?
-
Parent menu group, null for root menus.
final
- regionGroupId → Object?
-
Region group ID for tap region management.
final
- root → MenuGroupData
-
Gets the root menu group in the hierarchy.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- subMenuOffset → Offset?
-
Offset for positioning submenus relative to parent.
final
Methods
-
closeAll(
) → void - Closes all menus in the hierarchy by bubbling up to root.
-
closeOthers(
) → void - Closes all open popovers in child menu items.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override