using System.ComponentModel; namespace Daybreak.Models; public sealed class ExecutablePath : INotifyPropertyChanged { public event PropertyChangedEventHandler? PropertyChanged; public string Path { get; set { field = value; this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(this.Path))); } } = string.Empty; public bool Validating { get; set { field = value; this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(this.Validating))); } } public bool NeedsUpdate { get; set { field = value; this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(this.NeedsUpdate))); } } public bool Valid { get; set { field = value; this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(this.Valid))); } } public string? UpdateProgress { get; set { field = value; this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(this.UpdateProgress))); } } public bool Locked { get; set { field = value; this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(this.Locked))); } } }