using System.ComponentModel; namespace CyberX8_Core { public class SignalTowerItem : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; public void InvokePropertyChanged(string propertyName) { if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } private string _name; public string Name { get { return _name; } set { _name = value; InvokePropertyChanged("Name"); } } private bool _isRed; public bool IsRed { get { return _isRed; } set { _isRed = value; if (value) IsRedBlinking = false; InvokePropertyChanged("IsRed"); } } private bool _isRedBlinking; public bool IsRedBlinking { get { return _isRedBlinking; } set { _isRedBlinking = value; if (value) IsRed = false; InvokePropertyChanged("IsRedBlinking"); } } private bool _isGreen; public bool IsGreen { get { return _isGreen; } set { _isGreen = value; if (value) IsGreenBlinking = false; InvokePropertyChanged("IsGreen"); } } private bool _isGreenBlinking; public bool IsGreenBlinking { get { return _isGreenBlinking; } set { _isGreenBlinking = value; if (value) IsGreen = false; InvokePropertyChanged("IsGreenBlinking"); } } private bool _isBlue; public bool IsBlue { get { return _isBlue; } set { _isBlue = value; if (value) IsBlueBlinking = false; InvokePropertyChanged("IsBlue"); } } private bool _isBlueBlinking; public bool IsBlueBlinking { get { return _isBlueBlinking; } set { _isBlueBlinking = value; if (value) IsBlue = false; InvokePropertyChanged("IsBlueBlinking"); } } private bool _isYellow; public bool IsYellow { get { return _isYellow; } set { _isYellow = value; if (value) IsYellowBlinking = false; InvokePropertyChanged("IsYellow"); } } private bool _isYellowBlinking; public bool IsYellowBlinking { get { return _isYellowBlinking; } set { _isYellowBlinking = value; if (value) IsYellow = false; InvokePropertyChanged("IsYellowBlinking"); } } private bool _isBuzzer; public bool IsBuzzer { get { return _isBuzzer; } set { _isBuzzer = value; if (value) IsBuzzerBlinking = false; InvokePropertyChanged("IsBuzzer"); } } private bool _isBuzzerBlinking; public bool IsBuzzerBlinking { get { return _isBuzzerBlinking; } set { _isBuzzerBlinking = value; if (value) IsBuzzer = false; InvokePropertyChanged("IsBuzzerBlinking"); } } } }