Menus
Menu System
Puppet provides two distinct menu types and extensive customization options through settings and themes.
Menu Types
Wheel Menu
- Circular layout with items arranged around a center point
- Items distributed evenly in a wheel formation
- Center area for menu title
- Page indicators for multiple pages
List Menu
- Traditional vertical layout
- Scrollable list of items
- Efficient for large numbers of items
Menu Settings
Basic Configuration
name: Unique menu identifiertype: “wheel” or “list”menuHotkey: Shortcut to open the menutheme: Visual theme selectioncolorScheme: “light”, “dark”, or “system”
Layout Settings
width: Menu width (px or %)height: Menu height (px or %)maxElement: Maximum items per page
Positioning
position: Screen position or relative to cursormarginVertical: Top/bottom marginmarginHorizontal: Left/right marginmonitor: Display selection
Theme System
Themes allow complete customization of menu appearance through various properties.
Colors
backgroundColor: Background color of the menuseparatorColor: Color of dividing lines between itemsoutlineColor: Border color around the menucenterColor: Color of the central circle (wheel menu only)hoveredBackgroundColor: Background color on item hoveritemFontColor: Text color for item namesmenuFontColor: Text color for menu titledescFontColor: Text color for item descriptions
Typography
itemNameFont: Font family for item namesmenuNameFont: Font family for menu titledescriptionFont: Font family for descriptionsitemNameFontSize: Size of item namesmenuNameFontSize: Size of menu titledescFontSize: Size of descriptions
Layout Elements
separatorThickness: Width of dividing linesoutlineThickness: Width of menu bordericonSize: Size of menu item icons
Page Indicators (Wheel Menu)
pageIndicatorActiveColor: Color for current page indicatorpageIndicatorPassiveColor: Color for inactive page indicators
Item Configuration
Each menu item can be customized with:
itemName: Primary display textitemDescription: Secondary descriptive textitemRepeat: Allow repeated use without closingitemShortcut: Hotkey bindingitemIcon: Custom icon (Font Awesome or local image)itemPlugin: Associated pluginitemPluginArg: Plugin-specific parameters