TMenuOverlayController class

Centralized controller for the shared overlay-menu engine.

Tracks one active OverlayPortalController per nesting level, so opening a submenu at level N automatically closes anything deeper, and closes the whole stack once the pointer leaves every open panel.

This is the single implementation that replaces the two near-identical controllers that used to live in the dropdown (TDropdownOverlayController, level tracking via a Map<int, OverlayPortalController>) and the sidebar (TSidebarOverlayController, a hand-rolled stack of raw OverlayEntrys with its own smooth-close animation). The smooth/staggered close the sidebar had is dropped deliberately — OverlayPortal.hide() unmounts synchronously, so replicating an exit animation on top of it would mean re-introducing a bespoke OverlayEntry layer, which defeats the point of sharing this engine. If you want it back, it'd need to live as a wrapping "closing" state inside TMenuOverlayPanel itself.

Constructors

TMenuOverlayController()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

hideAll() → void
hideDeeperThan(int level) → void
scheduleHide({Duration delay = const Duration(milliseconds: 125)}) → void
setMouseInArea(bool inArea) → void
show(int level, OverlayPortalController controller) → void