Class ControlDefaults
- Namespace
- SharpConsoleUI.Configuration
- Assembly
- SharpConsoleUI.dll
Centralized default values and constants for control behavior. Extracted from magic numbers scattered throughout the codebase.
public static class ControlDefaults
- Inheritance
-
ControlDefaults
- Inherited Members
Fields
AsyncCleanupTimeoutSeconds
Timeout for async window thread cleanup in seconds (default: 5)
public const int AsyncCleanupTimeoutSeconds = 5
Field Value
BrowseModeHint
Hint text shown when the editor is focused but not in editing mode
public const string BrowseModeHint = "Enter to edit"
Field Value
CalendarDayColumnWidth
Width of each day column in the calendar grid (3 chars: space + 2 digits).
public const int CalendarDayColumnWidth = 3
Field Value
CalendarDefaultDateFormat
Default date format when no culture-specific format is provided.
public const string CalendarDefaultDateFormat = "yyyy-MM-dd"
Field Value
CalendarGridColumns
Number of columns in the calendar grid (days of week).
public const int CalendarGridColumns = 7
Field Value
CalendarGridRows
Maximum number of week rows in the calendar grid.
public const int CalendarGridRows = 6
Field Value
CalendarNextMonthArrow
Arrow character for navigating to the next month.
public const string CalendarNextMonthArrow = "►"
Field Value
CalendarPortalHeight
Total height of the calendar portal in rows.
public const int CalendarPortalHeight = 10
Field Value
CalendarPortalWidth
Total width of the calendar portal in characters.
public const int CalendarPortalWidth = 28
Field Value
CalendarPrevMonthArrow
Arrow character for navigating to the previous month.
public const string CalendarPrevMonthArrow = "◄"
Field Value
ContinuousPressIntervalMs
Interval for continuous mouse button press polling in milliseconds (default: 100ms)
public const int ContinuousPressIntervalMs = 100
Field Value
DatePickerDefaultPrompt
Default prompt text for DatePicker controls.
public const string DatePickerDefaultPrompt = "Date:"
Field Value
DatePickerDropdownIndicator
Dropdown indicator character for the DatePicker calendar toggle.
public const string DatePickerDropdownIndicator = "▼"
Field Value
DefaultBlinkRateMs
Cursor blink rate for text inputs in milliseconds (default: 500ms)
public const int DefaultBlinkRateMs = 500
Field Value
DefaultBorderWidth
Default border width for controls (default: 1)
public const int DefaultBorderWidth = 1
Field Value
DefaultCanvasHeight
Default canvas height in characters (default: 20).
public const int DefaultCanvasHeight = 20
Field Value
DefaultCanvasWidth
Default canvas width in characters (default: 40).
public const int DefaultCanvasWidth = 40
Field Value
DefaultCollapsedIcon
Icon for collapsed tree nodes (default: "▶")
public const string DefaultCollapsedIcon = "▶"
Field Value
DefaultDebounceMs
Debounce delay for rapid input events in milliseconds (default: 300ms)
public const int DefaultDebounceMs = 300
Field Value
DefaultDialogHeight
Default height for dialog windows (default: 20 lines)
public const int DefaultDialogHeight = 20
Field Value
DefaultDialogWidth
Default width for dialog windows (default: 60 characters)
public const int DefaultDialogWidth = 60
Field Value
DefaultDoubleClickThresholdMs
Maximum time between clicks to register as double-click in milliseconds (default: 500ms)
public const int DefaultDoubleClickThresholdMs = 500
Field Value
DefaultEditorViewportHeight
Default viewport height for multiline editor in lines (default: 10)
public const int DefaultEditorViewportHeight = 10
Field Value
DefaultEditorWidth
Fallback width for multiline editor when effective width is unknown (default: 80)
public const int DefaultEditorWidth = 80
Field Value
DefaultEllipsisLength
Length of ellipsis when truncating text: "..." (default: 3)
public const int DefaultEllipsisLength = 3
Field Value
DefaultExpandedIcon
Icon for expanded tree nodes (default: "▼")
public const string DefaultExpandedIcon = "▼"
Field Value
DefaultFocusPrefix
Prefix shown before focused button text (default: ">")
public const string DefaultFocusPrefix = ">"
Field Value
DefaultFocusSuffix
Suffix shown after focused button text (default: "<")
public const string DefaultFocusSuffix = "<"
Field Value
DefaultIndentSize
Indentation size for nested tree nodes (default: 2 spaces)
public const int DefaultIndentSize = 2
Field Value
DefaultMinTextWidth
Minimum width for text fields (default: 3)
public const int DefaultMinTextWidth = 3
Field Value
DefaultMinimumVisibleItems
Minimum number of visible items in lists/trees before scrolling (default: 3)
public const int DefaultMinimumVisibleItems = 3
Field Value
DefaultNavigationViewCompactPaneWidth
Width of the navigation pane in Compact display mode (default: 5).
public const int DefaultNavigationViewCompactPaneWidth = 5
Field Value
DefaultNavigationViewCompactThreshold
Width threshold at or above which Auto display mode resolves to Compact (default: 50). Below this threshold, Auto resolves to Minimal.
public const int DefaultNavigationViewCompactThreshold = 50
Field Value
DefaultNavigationViewExpandedThreshold
Width threshold at or above which Auto display mode resolves to Expanded (default: 80).
public const int DefaultNavigationViewExpandedThreshold = 80
Field Value
DefaultNavigationViewPaneWidth
Default width of the NavigationView left pane in characters (default: 26).
public const int DefaultNavigationViewPaneWidth = 26
Field Value
DefaultPadding
Default padding around controls (default: 1)
public const int DefaultPadding = 1
Field Value
DefaultPageScrollMultiplier
Multiplier for page up/down scrolling (default: 5x viewport height)
public const int DefaultPageScrollMultiplier = 5
Field Value
DefaultScrollStep
Number of lines to scroll per arrow key press (default: 1)
public const int DefaultScrollStep = 1
Field Value
DefaultScrollWheelLines
Number of lines to scroll per mouse wheel tick (default: 3)
public const int DefaultScrollWheelLines = 3
Field Value
DefaultSelectionIndicator
Selection indicator prefix (default: ">")
public const string DefaultSelectionIndicator = ">"
Field Value
DefaultTabSize
Default tab size in spaces for multiline editor (default: 4)
public const int DefaultTabSize = 4
Field Value
DefaultTerminalScrollWheelLines
Number of lines to scroll per mouse wheel tick in the terminal control (default: 3)
public const int DefaultTerminalScrollWheelLines = 3
Field Value
DefaultTerminalScrollbackLines
Default number of scrollback lines retained by the terminal control (default: 1000)
public const int DefaultTerminalScrollbackLines = 1000
Field Value
DefaultTextPadding
Default padding around text content: " text " (default: 4 total, 2 each side)
public const int DefaultTextPadding = 4
Field Value
DefaultTitlePadding
Default padding for window titles: "[ title ]" (default: 5 for brackets and spaces)
public const int DefaultTitlePadding = 5
Field Value
DefaultToolbarRowHeight
Default row height for toolbar rows when no explicit height is set and all items measure as height 1 (default: 1).
public const int DefaultToolbarRowHeight = 1
Field Value
DefaultUndoLimit
Default maximum undo history depth (default: 100)
public const int DefaultUndoLimit = 100
Field Value
DefaultVisibleItems
Default number of visible items in lists/trees (default: 10)
public const int DefaultVisibleItems = 10
Field Value
DefaultWindowHeight
Default height for new windows (default: 20 lines)
public const int DefaultWindowHeight = 20
Field Value
DefaultWindowMinimumHeight
Minimum height for windows in character rows (default: 3)
public const int DefaultWindowMinimumHeight = 3
Field Value
DefaultWindowMinimumWidth
Minimum width for windows in character columns (default: 10)
public const int DefaultWindowMinimumWidth = 10
Field Value
DefaultWindowWidth
Default width for new windows (default: 40 characters)
public const int DefaultWindowWidth = 40
Field Value
DropdownClosedArrow
Arrow indicator for a closed dropdown (points down). Uses small triangle (U+25BE) which is reliably 1-column wide across terminals.
public const string DropdownClosedArrow = "▾"
Field Value
DropdownOpenArrow
Arrow indicator for an open dropdown (points up). Uses small triangle (U+25B4) which is reliably 1-column wide across terminals.
public const string DropdownOpenArrow = "▴"
Field Value
DropdownScrollDownArrow
Scroll-down indicator for dropdown portal. Uses small triangle (U+25BE) which is reliably 1-column wide across terminals.
public const string DropdownScrollDownArrow = "▾"
Field Value
DropdownScrollUpArrow
Scroll-up indicator for dropdown portal. Uses small triangle (U+25B4) which is reliably 1-column wide across terminals.
public const string DropdownScrollUpArrow = "▴"
Field Value
EditingModeHint
Hint text shown when the editor is in editing mode
public const string EditingModeHint = "Esc to stop editing"
Field Value
ErrorTransformDelayMs
Delay before transforming hung window to error state in milliseconds (default: 500ms)
public const int ErrorTransformDelayMs = 500
Field Value
ErrorWindowBorderOffset
Border offset for error window sizing (default: 4)
public const int ErrorWindowBorderOffset = 4
Field Value
ErrorWindowSpacingOffset
Spacing offset for error window sizing (default: 6)
public const int ErrorWindowSpacingOffset = 6
Field Value
GracePeriodWarningThresholdSeconds
Warning threshold during grace period in seconds (default: 3) Shows countdown when remaining time falls below this
public const int GracePeriodWarningThresholdSeconds = 3
Field Value
HorizontalSplitterKeyboardJumpSize
Number of rows moved per Shift+Arrow key press on horizontal splitter (default: 5).
public const int HorizontalSplitterKeyboardJumpSize = 5
Field Value
HorizontalSplitterMinControlHeight
Minimum height for controls adjacent to a horizontal splitter (default: 3).
public const int HorizontalSplitterMinControlHeight = 3
Field Value
LineGraphDefaultAxisFormat
Default format string for Y-axis labels (default: "F1").
public const string LineGraphDefaultAxisFormat = "F1"
Field Value
LineGraphDefaultHeight
Default height of the graph area in lines (default: 10).
public const int LineGraphDefaultHeight = 10
Field Value
LineGraphDefaultMaxDataPoints
Default maximum number of data points per series (default: 100).
public const int LineGraphDefaultMaxDataPoints = 100
Field Value
LineGraphDefaultReferenceLineChar
Default character for reference lines.
public const char LineGraphDefaultReferenceLineChar = '─'
Field Value
LineGraphDefaultReferenceLineColor
Default color for reference lines.
public static readonly Color LineGraphDefaultReferenceLineColor
Field Value
LineGraphEmptyCellColor
Color for empty braille/ASCII cells in line graphs.
public static readonly Color LineGraphEmptyCellColor
Field Value
LineGraphLegendEntryGap
Gap between legend entries in characters.
public const int LineGraphLegendEntryGap = 2
Field Value
LineGraphLegendMarkerChar
Character used for the legend color marker (horizontal line segment).
public const char LineGraphLegendMarkerChar = '━'
Field Value
LineGraphLegendMarkerWidth
Width of the legend marker including trailing space (marker char + space).
public const int LineGraphLegendMarkerWidth = 2
Field Value
LineGraphMarkerArrowLeft
Left-side marker arrow character (points right, towards graph). Uses small triangle (U+25B8) which is reliably 1-column wide.
public const string LineGraphMarkerArrowLeft = "▸"
Field Value
LineGraphMarkerArrowRight
Right-side marker arrow character (points left, towards graph). Uses small triangle (U+25C2) which is reliably 1-column wide.
public const string LineGraphMarkerArrowRight = "◂"
Field Value
LineGraphMarkerPadding
Padding between graph edge and marker arrow/label.
public const int LineGraphMarkerPadding = 1
Field Value
LineGraphMinHeight
Minimum height of the graph area in lines (default: 3).
public const int LineGraphMinHeight = 3
Field Value
LineGraphYAxisLabelPadding
Padding between Y-axis labels and the graph area (default: 1).
public const int LineGraphYAxisLabelPadding = 1
Field Value
LineNumberGutterPadding
Number of spaces after line numbers in the gutter (default: 1)
public const int LineNumberGutterPadding = 1
Field Value
MaxTabSize
Maximum allowed tab size in spaces (default: 8)
public const int MaxTabSize = 8
Field Value
MenuAimDelayMs
Delay in ms before switching top-level menu items when a submenu is open.
public const int MenuAimDelayMs = 300
Field Value
MenuDropdownItemTextPadding
Text padding inside dropdown menu items: 2 left + 2 right (default: 4).
public const int MenuDropdownItemTextPadding = 4
Field Value
MenuDropdownMaxWidth
Maximum width for a dropdown menu in characters (default: 50)
public const int MenuDropdownMaxWidth = 50
Field Value
MenuDropdownMinWidth
Minimum width for a dropdown menu in characters (default: 15)
public const int MenuDropdownMinWidth = 15
Field Value
MenuItemDropdownPadding
Extra padding for dropdown item width calculation including shortcut spacing (default: 10)
public const int MenuItemDropdownPadding = 10
Field Value
MenuItemHorizontalPadding
Horizontal padding added to each menu bar item: " text " (default: 4, 2 each side)
public const int MenuItemHorizontalPadding = 4
Field Value
MenuMaxDropdownHeight
Maximum number of items visible in a dropdown before scrolling (default: 20)
public const int MenuMaxDropdownHeight = 20
Field Value
MenuSubmenuHoverDelayMs
Delay in milliseconds before a submenu opens on hover (default: 150ms)
public const int MenuSubmenuHoverDelayMs = 150
Field Value
MenuSubmenuIndicator
Submenu indicator arrow (narrow, reliably 1-wide).
public const string MenuSubmenuIndicator = "▸"
Field Value
MenuSubmenuIndicatorWidth
Width reserved for the submenu indicator character plus spacing (default: 2).
public const int MenuSubmenuIndicatorWidth = 2
Field Value
MinCanvasSize
Minimum allowed canvas dimension in either axis (default: 1).
public const int MinCanvasSize = 1
Field Value
MinNavigationViewPaneWidth
Minimum width of the NavigationView left pane in characters (default: 10).
public const int MinNavigationViewPaneWidth = 10
Field Value
MinimumErrorWindowWidth
Minimum width for error windows (default: 50 characters)
public const int MinimumErrorWindowWidth = 50
Field Value
ModalWindowLeftOffset
Left offset for modal window positioning relative to parent (default: 5)
public const int ModalWindowLeftOffset = 5
Field Value
ModalWindowTopOffset
Top offset for modal window positioning relative to parent (default: 3)
public const int ModalWindowTopOffset = 3
Field Value
NavigationViewCollapsedIndicator
Indicator shown before collapsed header text (default: "[+]").
public const string NavigationViewCollapsedIndicator = "[+]"
Field Value
NavigationViewExpandedIndicator
Indicator shown before expanded header text (default: "[-]").
public const string NavigationViewExpandedIndicator = "[-]"
Field Value
NavigationViewHamburgerChar
Character used as the hamburger menu icon in Compact and Minimal modes.
public const char NavigationViewHamburgerChar = '≡'
Field Value
NavigationViewHamburgerClickWidth
Width of the clickable area for the hamburger icon in the content header (default: 3). Only clicks within this many characters from the left edge open the navigation portal.
public const int NavigationViewHamburgerClickWidth = 3
Field Value
NavigationViewHeaderTopMargin
Number of blank lines rendered above a header for visual spacing (default: 1). Skipped for the first header in the list.
public const int NavigationViewHeaderTopMargin = 1
Field Value
NavigationViewItemOverhead
Fixed character overhead per navigation item row (leading spaces + indicator + trailing space).
public const int NavigationViewItemOverhead = 4
Field Value
NavigationViewSelectedBgB
Blue component of the NavigationView selected item background (default: 80).
public const int NavigationViewSelectedBgB = 80
Field Value
NavigationViewSelectedBgG
Green component of the NavigationView selected item background (default: 50).
public const int NavigationViewSelectedBgG = 50
Field Value
NavigationViewSelectedBgR
Red component of the NavigationView selected item background (default: 40).
public const int NavigationViewSelectedBgR = 40
Field Value
NavigationViewSubItemExtraIndent
Extra indent (in characters) applied to sub-items under a header (default: 2).
public const int NavigationViewSubItemExtraIndent = 2
Field Value
NavigationViewTransitionDurationMs
Duration in milliseconds for navigation pane width transition animations (default: 200).
public const int NavigationViewTransitionDurationMs = 200
Field Value
NotificationDefaultTimeoutMs
Default auto-dismiss timeout for notifications in milliseconds (default: 5000)
public const int NotificationDefaultTimeoutMs = 5000
Field Value
NotificationHorizontalPadding
Horizontal padding added to notification window width beyond message length (default: 8)
public const int NotificationHorizontalPadding = 8
Field Value
NotificationVerticalPadding
Vertical padding added to notification window height beyond message line count (default: 5)
public const int NotificationVerticalPadding = 5
Field Value
RangeSliderDefaultMinRange
Default minimum range gap between low and high thumbs on a RangeSlider (default: 0.0).
public const double RangeSliderDefaultMinRange = 0
Field Value
SegmentPendingDigitTimeoutMs
Timeout in milliseconds before a pending first digit is auto-committed.
public const int SegmentPendingDigitTimeoutMs = 1500
Field Value
SliderDefaultLargeStep
Default large step increment for Page Up/Down and Shift+Arrow (default: 10.0).
public const double SliderDefaultLargeStep = 10
Field Value
SliderDefaultMaxValue
Default maximum value for slider controls (default: 100.0).
public const double SliderDefaultMaxValue = 100
Field Value
SliderDefaultMinValue
Default minimum value for slider controls (default: 0.0).
public const double SliderDefaultMinValue = 0
Field Value
SliderDefaultStep
Default step increment for slider controls (default: 1.0).
public const double SliderDefaultStep = 1
Field Value
SliderDefaultValueFormat
Default format string for the slider value label (default: "F0").
public const string SliderDefaultValueFormat = "F0"
Field Value
SliderFilledTrackChar
Character used for the filled portion of a horizontal slider track (U+2501: ━).
public const char SliderFilledTrackChar = '━'
Field Value
SliderHorizontalLeftCap
Left end-cap character for horizontal slider tracks (U+2502: │).
public const char SliderHorizontalLeftCap = '│'
Field Value
SliderHorizontalRightCap
Right end-cap character for horizontal slider tracks (U+2502: │).
public const char SliderHorizontalRightCap = '│'
Field Value
SliderLabelSpacing
Spacing in characters between the track and value/min/max labels (default: 1).
public const int SliderLabelSpacing = 1
Field Value
SliderMinStep
Minimum allowed step value to prevent zero-step sliders (default: 0.001).
public const double SliderMinStep = 0.001
Field Value
SliderMinTrackLength
Minimum track length in characters for slider controls (default: 3).
public const int SliderMinTrackLength = 3
Field Value
SliderThumbChar
Character used for the slider thumb indicator (U+25CF: ●).
public const char SliderThumbChar = '●'
Field Value
SliderThumbHitRadius
Hit radius in characters around a thumb for mouse click detection (default: 1).
public const int SliderThumbHitRadius = 1
Field Value
SliderUnfilledTrackChar
Character used for the unfilled portion of a horizontal slider track (U+2500: ─).
public const char SliderUnfilledTrackChar = '─'
Field Value
SliderVerticalBottomCap
Bottom end-cap character for vertical slider tracks (U+2500: ─).
public const char SliderVerticalBottomCap = '─'
Field Value
SliderVerticalFilledTrackChar
Character used for filled portion of a vertical slider track (U+2503: ┃).
public const char SliderVerticalFilledTrackChar = '┃'
Field Value
SliderVerticalTopCap
Top end-cap character for vertical slider tracks (U+2500: ─).
public const char SliderVerticalTopCap = '─'
Field Value
SliderVerticalTrackChar
Character used for unfilled portion of a vertical slider track (U+2502: │).
public const char SliderVerticalTrackChar = '│'
Field Value
StartMenuActiveWindowIndicator
Active window indicator in the Start menu window list. U+25C6: Black Diamond — rendered via MarkupParser for correct width handling.
public const string StartMenuActiveWindowIndicator = "◆"
Field Value
StartMenuExitIcon
Icon prefix for the exit action in the Start menu. U+23FB: Power Symbol — rendered via MarkupParser for correct width handling.
public const string StartMenuExitIcon = "⏻"
Field Value
StartMenuMaxLeftColumnWidth
Maximum width of the left column in the Start menu two-column layout (default: 35).
public const int StartMenuMaxLeftColumnWidth = 35
Field Value
StartMenuMaxRightColumnWidth
Maximum width of the right column in the Start menu two-column layout (default: 40).
public const int StartMenuMaxRightColumnWidth = 40
Field Value
StartMenuMaxVisibleWindows
Maximum number of windows visible in the Start menu window list (default: 15).
public const int StartMenuMaxVisibleWindows = 15
Field Value
StartMenuMinLeftColumnWidth
Minimum width of the left column in the Start menu two-column layout (default: 22).
public const int StartMenuMinLeftColumnWidth = 22
Field Value
StartMenuMinRightColumnWidth
Minimum width of the right column in the Start menu two-column layout (default: 20).
public const int StartMenuMinRightColumnWidth = 24
Field Value
StartMenuMinimizedWindowIndicator
Minimized window indicator in the Start menu window list. U+25C7: White Diamond — rendered via MarkupParser for correct width handling.
public const string StartMenuMinimizedWindowIndicator = "◇"
Field Value
StatusBarDefaultHeight
Default height for the status bar in rows (default: 1).
public const int StatusBarDefaultHeight = 1
Field Value
StatusBarItemSpacing
Default spacing between status bar items in characters (default: 2).
public const int StatusBarItemSpacing = 2
Field Value
StatusBarSeparatorChar
Default separator character between status bar sections (default: "|").
public const string StatusBarSeparatorChar = "|"
Field Value
StatusBarShortcutLabelSeparator
Default separator between shortcut and label text (default: ":").
public const string StatusBarShortcutLabelSeparator = ":"
Field Value
TimeAmPmSegmentWidth
Display width of the AM/PM segment in characters.
public const int TimeAmPmSegmentWidth = 2
Field Value
TimeLargeIncrementStep
Step size for large increment/decrement operations (Page Up/Down).
public const int TimeLargeIncrementStep = 10
Field Value
TimePickerDefaultPrompt
Default prompt text for TimePicker controls.
public const string TimePickerDefaultPrompt = "Time:"
Field Value
TimeSegmentWidth
Display width of a time segment (hour, minute, second) in characters.
public const int TimeSegmentWidth = 2
Field Value
ToolbarLineCharacter
Character used for toolbar separator lines (horizontal box drawing: ─).
public const char ToolbarLineCharacter = '─'
Field Value
WhitespaceSpaceChar
Character displayed for space characters when visible whitespace is enabled (middle dot U+00B7)
public const char WhitespaceSpaceChar = '·'