namespace Terminal.Gui;
/// Defines rendering options that affect how the tree is displayed.
public class TreeStyle
{
///
/// Symbol to use for branch nodes that can be collapsed (are currently expanded). Defaults to '-'. Set to null to
/// hide.
///
public Rune? CollapseableSymbol { get; set; } = Glyphs.Collapse;
/// Set to to highlight expand/collapse symbols in hot key color.
public bool ColorExpandSymbol { get; set; }
///
/// Symbol to use for branch nodes that can be expanded to indicate this to the user. Defaults to '+'. Set to null
/// to hide.
///
public Rune? ExpandableSymbol { get; set; } = Glyphs.Expand;
///
/// Set to to cause the selected item to be rendered with only the
/// text to be highlighted. If (the default), the entire row will
/// be highlighted.
///
public bool HighlightModelTextOnly { get; set; } = false;
/// Invert console colours used to render the expand symbol.
public bool InvertExpandSymbolColors { get; set; }
///
/// to leave the last row of the control free for overwriting (e.g. by a scrollbar) When
/// scrolling will be triggered on the second last row of the control rather than. the last.
///
///
public bool LeaveLastRow { get; set; }
///
/// to render vertical lines under expanded nodes to show which node belongs to which
/// parent. to use only whitespace.
///
///
public bool ShowBranchLines { get; set; } = true;
}