Create a new tree with the given node as its root, and using the given backend for I/O.
Create a new tree with the given node as its root. Use the default backend, if any is present.
Bind a key stroke or button to given input action. Multiple key strokes are allowed to match given action.
Bind a key stroke or button to given input action, replacing any previously bound inputs.
Remove any inputs bound to given input action.
List actions in the tree, remove finished actions while iterating.
Intersect the given rectangle against current scissor area.
Find a layer for the given input stroke.
Fetch tree events (e.g. actions)
Start scissors mode.
Queue an action to perform while iterating the tree.
Returns true if this branch requested a resize or is pending a resize.
Restore defaults for given actions.
Tree actions queued to execute during next draw.
Actions that have just triggered.
Access to core input and output facilities.
Input strokes bound to emit given action signals.
Current breadcrumbs. These are assigned to any node that is resized or drawn at the time.
Current node drawing depth.
Actions that are currently held down.
Currently focused node.
Padding box of the currently focused node. Only available after the node has been drawn.
Focus direction data.
Top-most hovered node in the tree.
True if the current tree branch is marked as disabled (doesn't take input).
Check if keyboard input was handled; updated after rendering has completed.
Root node of the tree.
Current rectangle drawing is limited to.
Deepest hovered scrollable node.
Global data for the layout tree.