using System; using System.Windows.Forms; using System.Xml.Serialization; using SpringCombos.Properties; namespace SpringCombos { [Serializable, XmlRoot(ElementName = "MouseCombo")] public class MouseCombo : Combo { #region Public Enums, Properties and Fields [XmlElement(ElementName = "MouseButton")] public MouseButtons Button { get; set; } [XmlElement(ElementName = "Clicks")] public int Clicks { get; set; } [XmlElement(ElementName = "X")] public double X { get; set; } [XmlElement(ElementName = "Y")] public double Y { get; set; } [XmlElement(ElementName = "Delta")] public int Delta { get; set; } [XmlElement(ElementName = "ComboAction")] public ComboAction ComboAction { get; set; } #endregion #region Constructors, Destructors and Finalizers [UsedImplicitly] public MouseCombo() { } private MouseCombo(MouseButtons button, int clicks, int x, int y, int delta) { Button = button; Clicks = clicks; X = x; Y = y; Delta = delta; } public MouseCombo(MouseEventArgs args, ComboAction comboAction) : this(args.Button, args.Clicks, args.X, args.Y, args.Delta) => ComboAction = comboAction; #endregion } }