using Foundation; using System.Collections.Generic; namespace Cauldron.Macos.SourceWriter; public class LanguageFormatCommand : NSObject { #region Computed Properties /// Gets or sets the title that will appear in the Formatting Menu. /// The title. public string Title { get; set; } = ""; /// /// Gets or sets the prefix that will be added to the start of the line (if no Postfix /// has been defines), or that will be inserted to the start of the current selected text in the /// document editor. /// /// The prefix. public string Prefix { get; set; } = ""; /// /// Gets or sets the postfix that will added to the end of the selected text in the document /// editor. If empty (""), the Prefix will be inserted at the start of the line that the /// cursor is on. /// /// The postfix. public string Postfix { get; set; } = ""; /// /// Gets or sets the sub commands that will be displayed /// under this item in the Formatting Menu. /// /// The sub commands. public List SubCommands { get; set; } = new List(); #endregion #region Constructors /// /// Initializes a new instance of the class. /// public LanguageFormatCommand() { } /// /// Initializes a new instance of the class. /// /// The title for the menu item. public LanguageFormatCommand(string title) { this.Title = title; } /// /// Initializes a new instance of the class. /// /// The title for the menu item. /// The prefix to insert. public LanguageFormatCommand(string title, string prefix) { this.Title = title; this.Prefix = prefix; } /// /// Initializes a new instance of the class. /// /// The title for the menu item. /// The prefix to insert. /// The postfix to insert. public LanguageFormatCommand(string title, string prefix, string postfix) { this.Title = title; this.Prefix = prefix; this.Postfix = postfix; } #endregion }