namespace Terminal.Gui; /// Defines the standard set of glyphs used to draw checkboxes, lines, borders, etc... /// /// /// Access with (which is a global using alias for /// ). /// /// /// The default glyphs can be changed via the . Within a config.json /// file The Json property name is the property name prefixed with "Glyphs.". /// /// /// The JSon property can be either a decimal number or a string. The string may be one of: - A unicode char /// (e.g. "☑") - A hex value in U+ format (e.g. "U+2611") - A hex value in UTF-16 format (e.g. "\\u2611") /// /// public class GlyphDefinitions { /// File icon. Defaults to ☰ (Trigram For Heaven) public Rune File { get; set; } = (Rune)'☰'; /// Folder icon. Defaults to ꤉ (Kayah Li Digit Nine) public Rune Folder { get; set; } = (Rune)'꤉'; /// Horizontal Ellipsis - … U+2026 public Rune HorizontalEllipsis { get; set; } = (Rune)'…'; /// Vertical Four Dots - ⁞ U+205e public Rune VerticalFourDots { get; set; } = (Rune)'⁞'; #region ----------------- Single Glyphs ----------------- /// Checked indicator (e.g. for and ). public Rune CheckStateChecked { get; set; } = (Rune)'☑'; /// Not Checked indicator (e.g. for and ). public Rune CheckStateUnChecked { get; set; } = (Rune)'☐'; /// Null Checked indicator (e.g. for and ). public Rune CheckStateNone { get; set; } = (Rune)'☒'; /// Selected indicator (e.g. for and ). public Rune Selected { get; set; } = (Rune)'◉'; /// Not Selected indicator (e.g. for and ). public Rune UnSelected { get; set; } = (Rune)'○'; /// Horizontal arrow. public Rune RightArrow { get; set; } = (Rune)'►'; /// Left arrow. public Rune LeftArrow { get; set; } = (Rune)'◄'; /// Down arrow. public Rune DownArrow { get; set; } = (Rune)'▼'; /// Vertical arrow. public Rune UpArrow { get; set; } = (Rune)'▲'; /// Left default indicator (e.g. for . public Rune LeftDefaultIndicator { get; set; } = (Rune)'►'; /// Horizontal default indicator (e.g. for . public Rune RightDefaultIndicator { get; set; } = (Rune)'◄'; /// Left Bracket (e.g. for . Default is (U+005B) - [. public Rune LeftBracket { get; set; } = (Rune)'⟦'; /// Horizontal Bracket (e.g. for . Default is (U+005D) - ]. public Rune RightBracket { get; set; } = (Rune)'⟧'; /// Half block meter segment (e.g. for ). public Rune BlocksMeterSegment { get; set; } = (Rune)'▌'; /// Continuous block meter segment (e.g. for ). public Rune ContinuousMeterSegment { get; set; } = (Rune)'█'; /// Stipple pattern (e.g. for ). Default is Light Shade (U+2591) - ░. public Rune Stipple { get; set; } = (Rune)'░'; /// Diamond (e.g. for . Default is Lozenge (U+25CA) - ◊. public Rune Diamond { get; set; } = (Rune)'◊'; /// Close. Default is Heavy Ballot X (U+2718) - ✘. public Rune Close { get; set; } = (Rune)'✘'; /// Minimize. Default is Lower Horizontal Shadowed White Circle (U+274F) - ❏. public Rune Minimize { get; set; } = (Rune)'❏'; /// Maximize. Default is Upper Horizontal Shadowed White Circle (U+273D) - ✽. public Rune Maximize { get; set; } = (Rune)'✽'; /// Dot. Default is (U+2219) - ∙. public Rune Dot { get; set; } = (Rune)'∙'; /// Black Circle . Default is (U+025cf) - ●. public Rune BlackCircle { get; set; } = (Rune)'●'; // Black Circle - ● U+025cf /// Expand (e.g. for . public Rune Expand { get; set; } = (Rune)'+'; /// Expand (e.g. for . public Rune Collapse { get; set; } = (Rune)'-'; /// Identical To (U+226) public Rune IdenticalTo { get; set; } = (Rune)'≡'; /// Apple (non-BMP). Because snek. And because it's an example of a non-BMP surrogate pair. See Issue #2610. public Rune Apple { get; set; } = "🍎".ToRunes () [0]; // nonBMP /// Apple (BMP). Because snek. See Issue #2610. public Rune AppleBMP { get; set; } = (Rune)'❦'; ///// ///// A nonprintable (low surrogate) that should fail to ctor. ///// //public Rune InvalidGlyph { get; set; } = (Rune)'\ud83d'; #endregion #region ----------------- Lines ----------------- /// Box Drawings Horizontal Line - Light (U+2500) - ─ public Rune HLine { get; set; } = (Rune)'─'; /// Box Drawings Vertical Line - Light (U+2502) - │ public Rune VLine { get; set; } = (Rune)'│'; /// Box Drawings Double Horizontal (U+2550) - ═ public Rune HLineDbl { get; set; } = (Rune)'═'; /// Box Drawings Double Vertical (U+2551) - ║ public Rune VLineDbl { get; set; } = (Rune)'║'; /// Box Drawings Heavy Double Dash Horizontal (U+254D) - ╍ public Rune HLineHvDa2 { get; set; } = (Rune)'╍'; /// Box Drawings Heavy Triple Dash Vertical (U+2507) - ┇ public Rune VLineHvDa3 { get; set; } = (Rune)'┇'; /// Box Drawings Heavy Triple Dash Horizontal (U+2505) - ┅ public Rune HLineHvDa3 { get; set; } = (Rune)'┅'; /// Box Drawings Heavy Quadruple Dash Horizontal (U+2509) - ┉ public Rune HLineHvDa4 { get; set; } = (Rune)'┉'; /// Box Drawings Heavy Double Dash Vertical (U+254F) - ╏ public Rune VLineHvDa2 { get; set; } = (Rune)'╏'; /// Box Drawings Heavy Quadruple Dash Vertical (U+250B) - ┋ public Rune VLineHvDa4 { get; set; } = (Rune)'┋'; /// Box Drawings Light Double Dash Horizontal (U+254C) - ╌ public Rune HLineDa2 { get; set; } = (Rune)'╌'; /// Box Drawings Light Triple Dash Vertical (U+2506) - ┆ public Rune VLineDa3 { get; set; } = (Rune)'┆'; /// Box Drawings Light Triple Dash Horizontal (U+2504) - ┄ public Rune HLineDa3 { get; set; } = (Rune)'┄'; /// Box Drawings Light Quadruple Dash Horizontal (U+2508) - ┈ public Rune HLineDa4 { get; set; } = (Rune)'┈'; /// Box Drawings Light Double Dash Vertical (U+254E) - ╎ public Rune VLineDa2 { get; set; } = (Rune)'╎'; /// Box Drawings Light Quadruple Dash Vertical (U+250A) - ┊ public Rune VLineDa4 { get; set; } = (Rune)'┊'; /// Box Drawings Heavy Horizontal (U+2501) - ━ public Rune HLineHv { get; set; } = (Rune)'━'; /// Box Drawings Heavy Vertical (U+2503) - ┃ public Rune VLineHv { get; set; } = (Rune)'┃'; /// Box Drawings Light Left (U+2574) - ╴ public Rune HalfLeftLine { get; set; } = (Rune)'╴'; /// Box Drawings Light Vertical (U+2575) - ╵ public Rune HalfTopLine { get; set; } = (Rune)'╵'; /// Box Drawings Light Horizontal (U+2576) - ╶ public Rune HalfRightLine { get; set; } = (Rune)'╶'; /// Box Drawings Light Down (U+2577) - ╷ public Rune HalfBottomLine { get; set; } = (Rune)'╷'; /// Box Drawings Heavy Left (U+2578) - ╸ public Rune HalfLeftLineHv { get; set; } = (Rune)'╸'; /// Box Drawings Heavy Vertical (U+2579) - ╹ public Rune HalfTopLineHv { get; set; } = (Rune)'╹'; /// Box Drawings Heavy Horizontal (U+257A) - ╺ public Rune HalfRightLineHv { get; set; } = (Rune)'╺'; /// Box Drawings Light Vertical and Horizontal (U+257B) - ╻ public Rune HalfBottomLineLt { get; set; } = (Rune)'╻'; /// Box Drawings Light Horizontal and Heavy Horizontal (U+257C) - ╼ public Rune RightSideLineLtHv { get; set; } = (Rune)'╼'; /// Box Drawings Light Vertical and Heavy Horizontal (U+257D) - ╽ public Rune BottomSideLineLtHv { get; set; } = (Rune)'╽'; /// Box Drawings Heavy Left and Light Horizontal (U+257E) - ╾ public Rune LeftSideLineHvLt { get; set; } = (Rune)'╾'; /// Box Drawings Heavy Vertical and Light Horizontal (U+257F) - ╿ public Rune TopSideLineHvLt { get; set; } = (Rune)'╿'; #endregion #region ----------------- Upper Left Corners ----------------- /// Box Drawings Upper Left Corner - Light Vertical and Light Horizontal (U+250C) - ┌ public Rune ULCorner { get; set; } = (Rune)'┌'; /// Box Drawings Upper Left Corner - Double (U+2554) - ╔ public Rune ULCornerDbl { get; set; } = (Rune)'╔'; /// Box Drawings Upper Left Corner - Light Arc Down and Horizontal (U+256D) - ╭ public Rune ULCornerR { get; set; } = (Rune)'╭'; /// Box Drawings Heavy Down and Horizontal (U+250F) - ┏ public Rune ULCornerHv { get; set; } = (Rune)'┏'; /// Box Drawings Down Heavy and Horizontal Light (U+251E) - ┎ public Rune ULCornerHvLt { get; set; } = (Rune)'┎'; /// Box Drawings Down Light and Horizontal Heavy (U+250D) - ┎ public Rune ULCornerLtHv { get; set; } = (Rune)'┍'; /// Box Drawings Double Down and Single Horizontal (U+2553) - ╓ public Rune ULCornerDblSingle { get; set; } = (Rune)'╓'; /// Box Drawings Single Down and Double Horizontal (U+2552) - ╒ public Rune ULCornerSingleDbl { get; set; } = (Rune)'╒'; #endregion #region ----------------- Lower Left Corners ----------------- /// Box Drawings Lower Left Corner - Light Vertical and Light Horizontal (U+2514) - └ public Rune LLCorner { get; set; } = (Rune)'└'; /// Box Drawings Heavy Vertical and Horizontal (U+2517) - ┗ public Rune LLCornerHv { get; set; } = (Rune)'┗'; /// Box Drawings Heavy Vertical and Horizontal Light (U+2516) - ┖ public Rune LLCornerHvLt { get; set; } = (Rune)'┖'; /// Box Drawings Vertical Light and Horizontal Heavy (U+2511) - ┕ public Rune LLCornerLtHv { get; set; } = (Rune)'┕'; /// Box Drawings Double Vertical and Double Left (U+255A) - ╚ public Rune LLCornerDbl { get; set; } = (Rune)'╚'; /// Box Drawings Single Vertical and Double Left (U+2558) - ╘ public Rune LLCornerSingleDbl { get; set; } = (Rune)'╘'; /// Box Drawings Double Down and Single Left (U+2559) - ╙ public Rune LLCornerDblSingle { get; set; } = (Rune)'╙'; /// Box Drawings Upper Left Corner - Light Arc Down and Left (U+2570) - ╰ public Rune LLCornerR { get; set; } = (Rune)'╰'; #endregion #region ----------------- Upper Right Corners ----------------- /// Box Drawings Upper Horizontal Corner - Light Vertical and Light Horizontal (U+2510) - ┐ public Rune URCorner { get; set; } = (Rune)'┐'; /// Box Drawings Upper Horizontal Corner - Double Vertical and Double Horizontal (U+2557) - ╗ public Rune URCornerDbl { get; set; } = (Rune)'╗'; /// Box Drawings Upper Horizontal Corner - Light Arc Vertical and Horizontal (U+256E) - ╮ public Rune URCornerR { get; set; } = (Rune)'╮'; /// Box Drawings Heavy Down and Left (U+2513) - ┓ public Rune URCornerHv { get; set; } = (Rune)'┓'; /// Box Drawings Heavy Vertical and Left Down Light (U+2511) - ┑ public Rune URCornerHvLt { get; set; } = (Rune)'┑'; /// Box Drawings Down Light and Horizontal Heavy (U+2514) - ┒ public Rune URCornerLtHv { get; set; } = (Rune)'┒'; /// Box Drawings Double Vertical and Single Left (U+2556) - ╖ public Rune URCornerDblSingle { get; set; } = (Rune)'╖'; /// Box Drawings Single Vertical and Double Left (U+2555) - ╕ public Rune URCornerSingleDbl { get; set; } = (Rune)'╕'; #endregion #region ----------------- Lower Right Corners ----------------- /// Box Drawings Lower Right Corner - Light (U+2518) - ┘ public Rune LRCorner { get; set; } = (Rune)'┘'; /// Box Drawings Lower Right Corner - Double (U+255D) - ╝ public Rune LRCornerDbl { get; set; } = (Rune)'╝'; /// Box Drawings Lower Right Corner - Rounded (U+256F) - ╯ public Rune LRCornerR { get; set; } = (Rune)'╯'; /// Box Drawings Lower Right Corner - Heavy (U+251B) - ┛ public Rune LRCornerHv { get; set; } = (Rune)'┛'; /// Box Drawings Lower Right Corner - Double Vertical and Single Horizontal (U+255C) - ╜ public Rune LRCornerDblSingle { get; set; } = (Rune)'╜'; /// Box Drawings Lower Right Corner - Single Vertical and Double Horizontal (U+255B) - ╛ public Rune LRCornerSingleDbl { get; set; } = (Rune)'╛'; /// Box Drawings Lower Right Corner - Light Vertical and Heavy Horizontal (U+2519) - ┙ public Rune LRCornerLtHv { get; set; } = (Rune)'┙'; /// Box Drawings Lower Right Corner - Heavy Vertical and Light Horizontal (U+251A) - ┚ public Rune LRCornerHvLt { get; set; } = (Rune)'┚'; #endregion #region ----------------- Tees ----------------- /// Box Drawings Left Tee - Single Vertical and Single Horizontal (U+251C) - ├ public Rune LeftTee { get; set; } = (Rune)'├'; /// Box Drawings Left Tee - Single Vertical and Double Horizontal (U+255E) - ╞ public Rune LeftTeeDblH { get; set; } = (Rune)'╞'; /// Box Drawings Left Tee - Double Vertical and Single Horizontal (U+255F) - ╟ public Rune LeftTeeDblV { get; set; } = (Rune)'╟'; /// Box Drawings Left Tee - Double Vertical and Double Horizontal (U+2560) - ╠ public Rune LeftTeeDbl { get; set; } = (Rune)'╠'; /// Box Drawings Left Tee - Heavy Horizontal and Light Vertical (U+2523) - ┝ public Rune LeftTeeHvH { get; set; } = (Rune)'┝'; /// Box Drawings Left Tee - Light Horizontal and Heavy Vertical (U+252B) - ┠ public Rune LeftTeeHvV { get; set; } = (Rune)'┠'; /// Box Drawings Left Tee - Heavy Vertical and Heavy Horizontal (U+2527) - ┣ public Rune LeftTeeHvDblH { get; set; } = (Rune)'┣'; /// Box Drawings Right Tee - Single Vertical and Single Horizontal (U+2524) - ┤ public Rune RightTee { get; set; } = (Rune)'┤'; /// Box Drawings Right Tee - Single Vertical and Double Horizontal (U+2561) - ╡ public Rune RightTeeDblH { get; set; } = (Rune)'╡'; /// Box Drawings Right Tee - Double Vertical and Single Horizontal (U+2562) - ╢ public Rune RightTeeDblV { get; set; } = (Rune)'╢'; /// Box Drawings Right Tee - Double Vertical and Double Horizontal (U+2563) - ╣ public Rune RightTeeDbl { get; set; } = (Rune)'╣'; /// Box Drawings Right Tee - Heavy Horizontal and Light Vertical (U+2528) - ┥ public Rune RightTeeHvH { get; set; } = (Rune)'┥'; /// Box Drawings Right Tee - Light Horizontal and Heavy Vertical (U+2530) - ┨ public Rune RightTeeHvV { get; set; } = (Rune)'┨'; /// Box Drawings Right Tee - Heavy Vertical and Heavy Horizontal (U+252C) - ┫ public Rune RightTeeHvDblH { get; set; } = (Rune)'┫'; /// Box Drawings Top Tee - Single Vertical and Single Horizontal (U+252C) - ┬ public Rune TopTee { get; set; } = (Rune)'┬'; /// Box Drawings Top Tee - Single Vertical and Double Horizontal (U+2564) - ╤ public Rune TopTeeDblH { get; set; } = (Rune)'╤'; /// Box Drawings Top Tee - Double Vertical and Single Horizontal (U+2565) - ╥ public Rune TopTeeDblV { get; set; } = (Rune)'╥'; /// Box Drawings Top Tee - Double Vertical and Double Horizontal (U+2566) - ╦ public Rune TopTeeDbl { get; set; } = (Rune)'╦'; /// Box Drawings Top Tee - Heavy Horizontal and Light Vertical (U+252F) - ┯ public Rune TopTeeHvH { get; set; } = (Rune)'┯'; /// Box Drawings Top Tee - Light Horizontal and Heavy Vertical (U+2537) - ┰ public Rune TopTeeHvV { get; set; } = (Rune)'┰'; /// Box Drawings Top Tee - Heavy Vertical and Heavy Horizontal (U+2533) - ┳ public Rune TopTeeHvDblH { get; set; } = (Rune)'┳'; /// Box Drawings Bottom Tee - Single Vertical and Single Horizontal (U+2534) - ┴ public Rune BottomTee { get; set; } = (Rune)'┴'; /// Box Drawings Bottom Tee - Single Vertical and Double Horizontal (U+2567) - ╧ public Rune BottomTeeDblH { get; set; } = (Rune)'╧'; /// Box Drawings Bottom Tee - Double Vertical and Single Horizontal (U+2568) - ╨ public Rune BottomTeeDblV { get; set; } = (Rune)'╨'; /// Box Drawings Bottom Tee - Double Vertical and Double Horizontal (U+2569) - ╩ public Rune BottomTeeDbl { get; set; } = (Rune)'╩'; /// Box Drawings Bottom Tee - Heavy Horizontal and Light Vertical (U+2535) - ┷ public Rune BottomTeeHvH { get; set; } = (Rune)'┷'; /// Box Drawings Bottom Tee - Light Horizontal and Heavy Vertical (U+253D) - ┸ public Rune BottomTeeHvV { get; set; } = (Rune)'┸'; /// Box Drawings Bottom Tee - Heavy Vertical and Heavy Horizontal (U+2539) - ┻ public Rune BottomTeeHvDblH { get; set; } = (Rune)'┻'; #endregion #region ----------------- Crosses ----------------- /// Box Drawings Cross - Single Vertical and Single Horizontal (U+253C) - ┼ public Rune Cross { get; set; } = (Rune)'┼'; /// Box Drawings Cross - Single Vertical and Double Horizontal (U+256A) - ╪ public Rune CrossDblH { get; set; } = (Rune)'╪'; /// Box Drawings Cross - Double Vertical and Single Horizontal (U+256B) - ╫ public Rune CrossDblV { get; set; } = (Rune)'╫'; /// Box Drawings Cross - Double Vertical and Double Horizontal (U+256C) - ╬ public Rune CrossDbl { get; set; } = (Rune)'╬'; /// Box Drawings Cross - Heavy Horizontal and Light Vertical (U+253F) - ┿ public Rune CrossHvH { get; set; } = (Rune)'┿'; /// Box Drawings Cross - Light Horizontal and Heavy Vertical (U+2541) - ╂ public Rune CrossHvV { get; set; } = (Rune)'╂'; /// Box Drawings Cross - Heavy Vertical and Heavy Horizontal (U+254B) - ╋ public Rune CrossHv { get; set; } = (Rune)'╋'; #endregion #region ----------------- ShadowStyle ----------------- /// Shadow - Vertical Start - Left Half Block - ▌ U+0258c public Rune ShadowVerticalStart { get; set; } = (Rune)'▖'; // Half: '\u2596' ▖; /// Shadow - Vertical - Left Half Block - ▌ U+0258c public Rune ShadowVertical { get; set; } = (Rune)'▌'; /// Shadow - Horizontal Start - Upper Half Block - ▀ U+02580 public Rune ShadowHorizontalStart { get; set; } = (Rune)'▝'; // Half: ▝ U+0259d; /// Shadow - Horizontal - Upper Half Block - ▀ U+02580 public Rune ShadowHorizontal { get; set; } = (Rune)'▀'; /// Shadow - Horizontal End - Quadrant Upper Left - ▘ U+02598 public Rune ShadowHorizontalEnd { get; set; } = (Rune)'▘'; #endregion }