using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Linq; using System.Runtime.CompilerServices; using System.Text; using System.Threading.Tasks; using System.Xml.Serialization; namespace Announcements { public class AnnouncementToast : Announcement { #region Public Enums, Properties and Fields [XmlElement(ElementName = "LingerTime")] public decimal LingerTime { get => _lingerTime; set { if (value == _lingerTime) return; _lingerTime = value; OnPropertyChanged(); } } [XmlElement(ElementName = "EnableChime")] public bool EnableChime { get => _enableChime; set { if (value == _enableChime) return; _enableChime = value; OnPropertyChanged(); } } [XmlElement(ElementName = "Chime")] public byte[] Chime { get => _chime; set { if (value == _chime) return; _chime = value; OnPropertyChanged(); } } [XmlIgnore] public string PinPointText { get => $"{_pinPoint.X}, {_pinPoint.Y}"; } [XmlElement(ElementName = "PinPoint")] public Point PinPoint { get => _pinPoint; set { if (value == _pinPoint) return; _pinPoint = value; OnPropertyChanged(); } } [XmlElement(ElementName = "EnablePin")] public bool EnablePin { get => _enablePin; set { if (value == _enablePin) return; _enablePin = value; OnPropertyChanged(); } } #endregion #region Private Delegates, Events, Enums, Properties, Indexers and Fields private decimal _lingerTime = 5000; private bool _enableChime = true; private byte[] _chime = new byte[] { }; private Point _pinPoint = new Point(0, 0); private bool _enablePin = false; #endregion } }