public void SetTreeJewelViewModels(IEnumerable <InventoryItemViewModel> treeJewels) { _treeJewelViewModels = treeJewels .Where(j => j.Socket.HasValue) .ToDictionary(j => j.Socket !.Value); foreach (var treeJewelViewModel in _treeJewelViewModels.Values) { treeJewelViewModel.IsEnabled = _skilledNodes.Any(n => n.Id == treeJewelViewModel.Socket); } }
private void AddLibrary(UILibraryViewModel library) { // Don't add itself as a library or if already referenced if (library == Asset || factories.Any(l => l.Category == library.Url)) { return; } var asset = library.Asset; var list = asset.PublicUIElements.Select(x => new UIElementFromLibrary(ServiceProvider, library, x.Key)).OrderBy(x => x.Name); factories.AddRange(list); if (!library.IsEditable) { return; } var node = NodeContainer.GetOrCreateNode(asset)[nameof(UILibraryAsset.PublicUIElements)].Target; node.ItemChanged += LibraryContentChanged; }