Suggestion.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. namespace Terminal.Gui {
  2. /// <summary>
  3. /// A replacement suggestion made by <see cref="IAutocomplete"/>
  4. /// </summary>
  5. public class Suggestion {
  6. /// <summary>
  7. /// The number of characters to remove at the current cursor position
  8. /// before adding the <see cref="Replacement"/>
  9. /// </summary>
  10. public int Remove { get; }
  11. /// <summary>
  12. /// The user visible description for the <see cref="Replacement"/>. Typically
  13. /// this would be the same as <see cref="Replacement"/> but may vary in advanced
  14. /// use cases (e.g. Title= "ctor", Replacement = "MyClass()\n{\n}")
  15. /// </summary>
  16. public string Title { get; }
  17. /// <summary>
  18. /// The replacement text that will be added
  19. /// </summary>
  20. public string Replacement { get; }
  21. /// <summary>
  22. /// Creates a new instance of the <see cref="Suggestion"/> class.
  23. /// </summary>
  24. /// <param name="remove"></param>
  25. /// <param name="replacement"></param>
  26. /// <param name="title">User visible title for the suggestion or null if the same
  27. /// as <paramref name="replacement"/>.</param>
  28. public Suggestion (int remove, string replacement, string title = null)
  29. {
  30. Remove = remove;
  31. Replacement = replacement;
  32. Title = title ?? replacement;
  33. }
  34. }
  35. }