using System.ComponentModel; using System.Runtime.CompilerServices; using JetBrains.Annotations; namespace JD.Timeline.View.SnipeView { /// /// Represents an Example File with it's sniping label for a specific move /// public class SnipeInfo : INotifyPropertyChanged { public string MoveName { get; set; } public string FileNameOnly { get; set; } private SnipeLabel _snipeLabel; public SnipeLabel SnipeLabel { get { return _snipeLabel; } set { _snipeLabel = value; OnPropertyChanged(); } } public SnipeInfo(string moveName, string fileNameOnly, SnipeLabel snipeLabel) { MoveName = moveName; FileNameOnly = fileNameOnly; SnipeLabel = snipeLabel; } public event PropertyChangedEventHandler PropertyChanged; [NotifyPropertyChangedInvocator] protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null) { var handler = PropertyChanged; if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName)); } } }