public ReadOnlyModListingVM(IModListingGetter listing, string dataFolder) { _listing = listing; var path = Path.Combine(dataFolder, listing.ModKey.FileName); var exists = File.Exists(path); _Exists = Observable.Defer(() => Noggog.ObservableExt.WatchFile(path) .Select(_ => { var ret = File.Exists(path); return(ret); })) .ToGuiProperty(this, nameof(Exists), initialValue: exists); }
public FileSyncedLoadOrderListingVM(FileSyncedLoadOrderVM loadOrder, IModListingGetter listing) { ModKey = listing.ModKey; Enabled = listing.Enabled; GhostSuffix = listing.GhostSuffix; var path = Path.Combine(loadOrder.DataFolderPath, listing.ModKey.FileName); var exists = File.Exists(path); _Exists = Observable.Defer(() => Noggog.ObservableExt.WatchFile(path) .Select(_ => { var ret = File.Exists(path); return(ret); })) .ToGuiProperty(this, nameof(Exists), initialValue: exists); _Ghosted = this.WhenAnyValue(x => x.GhostSuffix) .Select(x => !x.IsNullOrWhitespace()) .ToGuiProperty(this, nameof(Ghosted)); }
public override string ToString() { return(IModListingGetter.ToString(this)); }
public string Convert <TMod>(IModListingGetter <TMod> getter) where TMod : class, IModGetter { return(IModListingGetter <TMod> .ToString(getter)); }
public string Convert(IModListingGetter getter) { return(IModListingGetter.ToString(getter)); }