// ${File.SolutionName} / ${File.ProjectName} / ${File.FileName} // CREATED AT ${File.CreatedYear} / ${File.CreatedMonth} / ${File.CreatedDay} using System.Collections.ObjectModel; using System.ComponentModel; using System.Runtime.CompilerServices; namespace TransTool; public class TFile: INotifyPropertyChanged { private string FileName; private string FileNameShort; private DateTime LastModified; private DateTime Created; public ObservableCollection Keys; public TFile(string fileName, string fileNameShort) { FileName = fileName; FileNameShort = fileNameShort; Keys = new(); } public event PropertyChangedEventHandler? PropertyChanged; protected virtual void OnPropertyChanged([CallerMemberName] string? propertyName = null) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } protected bool SetField(ref T field, T value, [CallerMemberName] string? propertyName = null) { if (EqualityComparer.Default.Equals(field, value)) return false; field = value; OnPropertyChanged(propertyName); return true; } }