using System.Text.Json.Serialization; namespace Terminal.Gui.ViewBase; /// /// Used to describe the state of the mouse in relation to a () and to /// specify visual effects, /// such as highlighting a button when the mouse is over it or changing the appearance of a view when the mouse is /// pressed (). /// /// /// [JsonConverter (typeof (JsonStringEnumConverter))] [Flags] public enum MouseState { /// /// No mouse interaction with the view is occurring. /// None = 0, /// /// The mouse is in the (but not pressed). Set between the /// and events. /// In = 1, /// /// The mouse is in the and is pressed. /// Pressed = 2, /// /// The mouse is outside the and is pressed. If /// is true, /// this flag is ignored so that the view remains in the pressed state until the mouse is released. /// PressedOutside = 4 }