Class StartMenuOptions
- Namespace
- SharpConsoleUI.Configuration
- Assembly
- SharpConsoleUI.dll
Configuration options for Start menu appearance and behavior. Use object initializer syntax to set only the properties you need. Property changes raise OptionsChanged so the Start menu can react at runtime.
public class StartMenuOptions
- Inheritance
-
StartMenuOptions
- Inherited Members
- Extension Methods
Properties
AppName
Application name shown in the Start menu header. Defaults to "SharpConsoleUI".
public string? AppName { get; set; }
Property Value
AppVersion
Application version shown in the Start menu header. Defaults to library version.
public string? AppVersion { get; set; }
Property Value
BackgroundColor
Background color. Null resolves from theme MenuDropdownBackgroundColor.
public Color? BackgroundColor { get; set; }
Property Value
BackgroundGradient
Optional gradient background for the Start menu window.
public GradientBackground? BackgroundGradient { get; set; }
Property Value
BottomBarItems
Custom controls added to the bottom bar between exit button and info text. Mutate the list directly; call RaiseOptionsChanged() after bulk changes.
public List<IWindowControl> BottomBarItems { get; }
Property Value
Categories
Custom categories for the Start menu sidebar. Mutate the list directly; call RaiseOptionsChanged() after bulk changes.
public List<StartMenuCategory> Categories { get; }
Property Value
ForegroundColor
Foreground color. Null resolves from theme MenuDropdownForegroundColor.
public Color? ForegroundColor { get; set; }
Property Value
HeaderIcon
Icon displayed next to the app name in the header. Defaults to "☰" (U+2630).
public string HeaderIcon { get; set; }
Property Value
HighlightBackgroundColor
Highlight background color. Null resolves from theme MenuDropdownHighlightBackgroundColor.
public Color? HighlightBackgroundColor { get; set; }
Property Value
HighlightForegroundColor
Highlight foreground color. Null resolves from theme MenuDropdownHighlightForegroundColor.
public Color? HighlightForegroundColor { get; set; }
Property Value
InfoStripItems
Info-strip items displayed in the bottom bar (right side). Mutate the list directly; call RaiseOptionsChanged() after bulk changes.
public List<string> InfoStripItems { get; }
Property Value
Layout
Layout mode: SingleColumn (compact) or TwoColumn (with window list).
public StartMenuLayout Layout { get; set; }
Property Value
ShowIcons
Whether to show Unicode icons next to headers and exit.
public bool ShowIcons { get; set; }
Property Value
ShowSystemCategory
Show built-in System category (themes, settings, about, performance).
public bool ShowSystemCategory { get; set; }
Property Value
ShowWindowList
Show Windows list (right column in TwoColumn, submenu in SingleColumn).
public bool ShowWindowList { get; set; }
Property Value
SidebarStyle
Sidebar display style: IconRail, IconLabel, or TextLabel.
public StartMenuSidebarStyle SidebarStyle { get; set; }
Property Value
Methods
RaiseOptionsChanged()
Raises the OptionsChanged event. Call after bulk-mutating Categories, InfoStripItems, or BottomBarItems.
public void RaiseOptionsChanged()
Events
OptionsChanged
Raised when any property value changes.
public event EventHandler? OptionsChanged