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