using System;
using System.Text;
namespace Terminal.Gui {
///
/// Defines rendering options that affect how the tree is displayed.
///
public class TreeStyle {
///
/// 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;
///
/// 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; } = CM.Glyphs.Expand;
///
/// 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; } = CM.Glyphs.Collapse;
///
/// Set to to highlight expand/collapse symbols in hot key color.
///
public bool ColorExpandSymbol { get; set; }
///
/// Invert console colours used to render the expand symbol.
///
public bool InvertExpandSymbolColors { get; set; }
///
/// to leave the last row of the control free for overwritting (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; }
///
/// 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;
}
}