public async Task LoadAsync() { var lookup = await _packLookupService.GetPackLookupAsync(); Packs.Clear(); foreach (var item in lookup) { Packs.Add(item); } }
public async void Reload() { Packs.Clear(); foreach (var pack in await _shaderPackService.LoadAllAsync()) { if (pack.IsEnabled) { _enabledPack = pack; } Packs.Add(pack); } }
public static void Load() { string currentPackName = CurrentPack == null ? null : CurrentPack.Name; Packs.Clear(); var defaultDirs = new DirectoryInfo(DefaultSmileysFolder).EnumerateDirectories(); var customDirs = new DirectoryInfo(CustomSmileysFolder).EnumerateDirectories(); foreach (var dir in defaultDirs.Concat(customDirs)) { var doc = XDocument.Load(Path.Combine(dir.FullName, ManifestFileName)); bool isDefault = bool.Parse(doc.Root.Attribute(IsDefaultAttributeName).Value); var pack = new SmileyPack(dir.Name, isDefault); foreach (var elem in doc.Root.Elements(SmileyElementName)) { string fileName = elem.Attribute(FileNameAttributeName).Value; string[] shortcuts = elem.Attribute(ShortcutsAttributeName).Value .Split(SmileyShortcutsSeparator); var smiley = new Smiley(); smiley.FileName = fileName; smiley.Image = GetImage(Path.Combine(GetPath(pack), fileName)); foreach (string s in shortcuts) { smiley.Shortcuts.Add(s); } pack.Smileys.Add(smiley); } Packs.Add(pack); } if (currentPackName == null) { CurrentPack = Packs.First(); } else { SetCurrentPack(currentPackName); } }