Table of Contents

Interface ITheme

Namespace
SharpConsoleUI.Themes
Assembly
SharpConsoleUI.dll

Defines the interface for SharpConsoleUI themes that control the visual appearance of all UI elements. Implement this interface to create custom themes for the console window system.

public interface ITheme

Properties

ActiveBorderForegroundColor

Gets the foreground color for the border of active (focused) windows.

Color ActiveBorderForegroundColor { get; }

Property Value

Color

ActiveTitleForegroundColor

Gets the foreground color for the title text of active (focused) windows.

Color ActiveTitleForegroundColor { get; }

Property Value

Color

BottomBarBackgroundColor

Gets the background color for the bottom status bar of the console window system.

Color BottomBarBackgroundColor { get; }

Property Value

Color

BottomBarForegroundColor

Gets the foreground color for text displayed in the bottom status bar.

Color BottomBarForegroundColor { get; }

Property Value

Color

ButtonBackgroundColor

Gets the background color for buttons in their default (unfocused, unselected) state.

Color ButtonBackgroundColor { get; }

Property Value

Color

ButtonDisabledBackgroundColor

Gets the background color for buttons when they are disabled and cannot be interacted with.

Color ButtonDisabledBackgroundColor { get; }

Property Value

Color

ButtonDisabledForegroundColor

Gets the foreground color for button text when the button is disabled.

Color ButtonDisabledForegroundColor { get; }

Property Value

Color

ButtonFocusedBackgroundColor

Gets the background color for buttons when they have keyboard focus.

Color ButtonFocusedBackgroundColor { get; }

Property Value

Color

ButtonFocusedForegroundColor

Gets the foreground color for button text when the button has keyboard focus.

Color ButtonFocusedForegroundColor { get; }

Property Value

Color

ButtonForegroundColor

Gets the foreground color for button text in the default (unfocused, unselected) state.

Color ButtonForegroundColor { get; }

Property Value

Color

ButtonSelectedBackgroundColor

Gets the background color for buttons when they are selected or pressed.

Color ButtonSelectedBackgroundColor { get; }

Property Value

Color

ButtonSelectedForegroundColor

Gets the foreground color for button text when the button is selected or pressed.

Color ButtonSelectedForegroundColor { get; }

Property Value

Color

Description

Gets the human-readable description of the theme explaining its visual style.

string Description { get; }

Property Value

string

DesktopBackgroundChar

Gets the character used to fill the desktop background area.

char DesktopBackgroundChar { get; }

Property Value

char

DesktopBackgroundColor

Gets the background color for the desktop area behind all windows.

Color DesktopBackgroundColor { get; }

Property Value

Color

DesktopForegroundColor

Gets the foreground color for the desktop background character pattern.

Color DesktopForegroundColor { get; }

Property Value

Color

DropdownBackgroundColor

Gets the background color for dropdown control lists.

Color DropdownBackgroundColor { get; }

Property Value

Color

DropdownForegroundColor

Gets the foreground color for dropdown control list items.

Color DropdownForegroundColor { get; }

Property Value

Color

DropdownHighlightBackgroundColor

Gets the background color for highlighted/selected dropdown items.

Color DropdownHighlightBackgroundColor { get; }

Property Value

Color

DropdownHighlightForegroundColor

Gets the foreground color for highlighted/selected dropdown items.

Color DropdownHighlightForegroundColor { get; }

Property Value

Color

InactiveBorderForegroundColor

Gets the foreground color for the border of inactive (unfocused) windows.

Color InactiveBorderForegroundColor { get; }

Property Value

Color

InactiveTitleForegroundColor

Gets the foreground color for the title text of inactive (unfocused) windows.

Color InactiveTitleForegroundColor { get; }

Property Value

Color

ListHoverBackgroundColor

Gets the background color for list items when hovered by the mouse. If null, falls back to highlight color.

Color? ListHoverBackgroundColor { get; }

Property Value

Color?

ListHoverForegroundColor

Gets the foreground color for list items when hovered by the mouse. If null, falls back to highlight color.

Color? ListHoverForegroundColor { get; }

Property Value

Color?

ListUnfocusedHighlightBackgroundColor

Gets the background color for list items when highlighted but the control is unfocused.

Color ListUnfocusedHighlightBackgroundColor { get; }

Property Value

Color

ListUnfocusedHighlightForegroundColor

Gets the foreground color for list items when highlighted but the control is unfocused.

Color ListUnfocusedHighlightForegroundColor { get; }

Property Value

Color

MenuBarBackgroundColor

Gets the background color for the menu bar (top-level items). Null means inherit from container.

Color? MenuBarBackgroundColor { get; }

Property Value

Color?

MenuBarForegroundColor

Gets the foreground color for the menu bar (top-level items). Null means inherit from container.

Color? MenuBarForegroundColor { get; }

Property Value

Color?

MenuBarHighlightBackgroundColor

Gets the background color for highlighted menu bar items.

Color MenuBarHighlightBackgroundColor { get; }

Property Value

Color

MenuBarHighlightForegroundColor

Gets the foreground color for highlighted menu bar items.

Color MenuBarHighlightForegroundColor { get; }

Property Value

Color

MenuDropdownBackgroundColor

Gets the background color for menu dropdowns.

Color MenuDropdownBackgroundColor { get; }

Property Value

Color

MenuDropdownForegroundColor

Gets the foreground color for menu dropdown items.

Color MenuDropdownForegroundColor { get; }

Property Value

Color

MenuDropdownHighlightBackgroundColor

Gets the background color for highlighted menu dropdown items.

Color MenuDropdownHighlightBackgroundColor { get; }

Property Value

Color

MenuDropdownHighlightForegroundColor

Gets the foreground color for highlighted menu dropdown items.

Color MenuDropdownHighlightForegroundColor { get; }

Property Value

Color

ModalBackgroundColor

Gets the background color for modal dialog windows.

Color ModalBackgroundColor { get; }

Property Value

Color

ModalBorderForegroundColor

Gets the foreground color for the border of modal dialog windows.

Color ModalBorderForegroundColor { get; }

Property Value

Color

ModalFlashColor

Gets the background color used when flashing modal windows to draw user attention.

Color ModalFlashColor { get; }

Property Value

Color

ModalTitleForegroundColor

Gets the foreground color for the title text of modal dialog windows.

Color ModalTitleForegroundColor { get; }

Property Value

Color

Name

Gets the unique name of the theme used for identification and selection.

string Name { get; }

Property Value

string

NotificationDangerWindowBackgroundColor

Gets the background color for danger/error notification windows.

Color NotificationDangerWindowBackgroundColor { get; }

Property Value

Color

NotificationInfoWindowBackgroundColor

Gets the background color for informational notification windows.

Color NotificationInfoWindowBackgroundColor { get; }

Property Value

Color

NotificationSuccessWindowBackgroundColor

Gets the background color for success notification windows.

Color NotificationSuccessWindowBackgroundColor { get; }

Property Value

Color

NotificationWarningWindowBackgroundColor

Gets the background color for warning notification windows.

Color NotificationWarningWindowBackgroundColor { get; }

Property Value

Color

NotificationWindowBackgroundColor

Gets the background color for generic notification windows without a specific type.

Color NotificationWindowBackgroundColor { get; }

Property Value

Color

ProgressBarFilledColor

Gets the color for the filled portion of progress bars.

Color ProgressBarFilledColor { get; }

Property Value

Color

ProgressBarPercentageColor

Gets the color for the percentage text display on progress bars.

Color ProgressBarPercentageColor { get; }

Property Value

Color

ProgressBarUnfilledColor

Gets the color for the unfilled portion of progress bars.

Color ProgressBarUnfilledColor { get; }

Property Value

Color

PromptInputBackgroundColor

Gets the background color for prompt input fields in their default state.

Color PromptInputBackgroundColor { get; }

Property Value

Color

PromptInputFocusedBackgroundColor

Gets the background color for prompt input fields when they have keyboard focus.

Color PromptInputFocusedBackgroundColor { get; }

Property Value

Color

PromptInputFocusedForegroundColor

Gets the foreground color for text in prompt input fields when focused.

Color PromptInputFocusedForegroundColor { get; }

Property Value

Color

PromptInputForegroundColor

Gets the foreground color for text in prompt input fields in their default state.

Color PromptInputForegroundColor { get; }

Property Value

Color

SeparatorForegroundColor

Gets the foreground color for separator controls. Null means transparent (inherit from container).

Color? SeparatorForegroundColor { get; }

Property Value

Color?

ShowModalShadow

Gets a value indicating whether modal windows should display a drop shadow effect.

bool ShowModalShadow { get; }

Property Value

bool

TableBackgroundColor

Gets the background color for table controls.

Color TableBackgroundColor { get; }

Property Value

Color

TableBorderColor

Gets the border color for table controls. Null means falls back to active window border color.

Color? TableBorderColor { get; }

Property Value

Color?

TableForegroundColor

Gets the foreground color for table controls.

Color TableForegroundColor { get; }

Property Value

Color

TableHeaderBackgroundColor

Gets the background color for table headers.

Color TableHeaderBackgroundColor { get; }

Property Value

Color

TableHeaderForegroundColor

Gets the foreground color for table headers.

Color TableHeaderForegroundColor { get; }

Property Value

Color

TextEditFocusedNotEditing

Gets the background color for text edit controls when focused but not in editing mode.

Color TextEditFocusedNotEditing { get; }

Property Value

Color

ToolbarBackgroundColor

Gets the background color for toolbar controls. Null means transparent (inherit from container).

Color? ToolbarBackgroundColor { get; }

Property Value

Color?

ToolbarForegroundColor

Gets the foreground color for toolbar controls. Null means transparent (inherit from container).

Color? ToolbarForegroundColor { get; }

Property Value

Color?

TopBarBackgroundColor

Gets the background color for the top application bar of the console window system.

Color TopBarBackgroundColor { get; }

Property Value

Color

TopBarForegroundColor

Gets the foreground color for text displayed in the top application bar.

Color TopBarForegroundColor { get; }

Property Value

Color

UseDoubleLineBorderForModal

Gets a value indicating whether modal windows should use double-line border characters.

bool UseDoubleLineBorderForModal { get; }

Property Value

bool

WindowBackgroundColor

Gets the default background color for standard window content areas.

Color WindowBackgroundColor { get; }

Property Value

Color

WindowForegroundColor

Gets the default foreground color for text in standard window content areas.

Color WindowForegroundColor { get; }

Property Value

Color