2
0

LineStyle.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #nullable enable
  2. using System.Text.Json.Serialization;
  3. namespace Terminal.Gui;
  4. /// <summary>Defines the style of lines for a <see cref="LineCanvas"/>.</summary>
  5. [JsonConverter (typeof (JsonStringEnumConverter<LineStyle>))]
  6. public enum LineStyle
  7. {
  8. /// <summary>No border is drawn.</summary>
  9. None,
  10. /// <summary>The border is drawn using thin line CM.Glyphs.</summary>
  11. Single,
  12. /// <summary>The border is drawn using thin line glyphs with dashed (double and triple) straight lines.</summary>
  13. Dashed,
  14. /// <summary>The border is drawn using thin line glyphs with short dashed (triple and quadruple) straight lines.</summary>
  15. Dotted,
  16. /// <summary>The border is drawn using thin double line CM.Glyphs.</summary>
  17. Double,
  18. /// <summary>The border is drawn using heavy line CM.Glyphs.</summary>
  19. Heavy,
  20. /// <summary>The border is drawn using heavy line glyphs with dashed (double and triple) straight lines.</summary>
  21. HeavyDashed,
  22. /// <summary>The border is drawn using heavy line glyphs with short dashed (triple and quadruple) straight lines.</summary>
  23. HeavyDotted,
  24. /// <summary>The border is drawn using thin line glyphs with rounded corners.</summary>
  25. Rounded,
  26. /// <summary>The border is drawn using thin line glyphs with rounded corners and dashed (double and triple) straight lines.</summary>
  27. RoundedDashed,
  28. /// <summary>
  29. /// The border is drawn using thin line glyphs with rounded corners and short dashed (triple and quadruple)
  30. /// straight lines.
  31. /// </summary>
  32. RoundedDotted
  33. // TODO: Support Ruler
  34. ///// <summary>
  35. ///// The border is drawn as a diagnostic ruler ("|123456789...").
  36. ///// </summary>
  37. //Ruler
  38. }