Suggestion.cs 1.2 KB

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