Skip to main content

Module menu

Module menu 

Source
Expand description

Types for handling menus (context menu, menubar) Menu system for context menus, dropdown menus, and application menus.

This module provides a cross-platform menu abstraction modeled after the Windows API, supporting hierarchical menus with separators, icons, keyboard accelerators, and callbacks.

§Core vs Layout Types

This module uses CoreMenuCallback with usize placeholders instead of function pointers to avoid circular dependencies between azul-core and azul-layout. The actual function pointers are stored in azul-layout and converted via unsafe code with identical memory layout.

Structs§

CoreMenuCallback
Menu callback using usize placeholder for function pointer.
Menu
Represents a menu (context menu, dropdown menu, or application menu).
MenuItemVec
MenuItemVecSlice
C-compatible slice type for $struct_name. This is a non-owning view into a Vec’s data.
StringMenuItem
A menu item with a text label and optional features.

Enums§

MenuItem
Represents a single item in a menu.
MenuItemIcon
Optional icon displayed next to a menu item.
MenuItemState
Describes the interactive state of a menu item.
MenuItemVecDestructor
MenuPopupPosition
Specifies where a popup menu should appear relative to the cursor or clicked element.
OptionCoreMenuCallback
OptionMenu
OptionMenuItem
OptionMenuItemIcon

Type Aliases§

MenuItemVecDestructorType