private IEnumerable <GameMenuItem> AddGameMenuItems(ToolStripItemCollection itemsCollection, IEnumerable <GameDescriptor> gameDescriptors, bool insertToTop = false) { foreach (var gameDescriptor in gameDescriptors) { var libraryBrandColor = registry.GetGameLibraryBrandColor(gameDescriptor); var addedToFavorites = registry.GetGameAddedToFavorites(gameDescriptor); var gameItem = new GameMenuItem( libraryBrandColor, addedToFavorites, gameDescriptor.Name, null, (obj, args) => OnGameMenuItemClicked(gameDescriptor)); gameDescriptorsMap.Add(gameItem, gameDescriptor); if (insertToTop) { itemsCollection.Insert(0, gameItem); } else { itemsCollection.Add(gameItem); } yield return(gameItem); } }
private void OnFavoriteAreaClicked(GameMenuItem gameMenuItem) { Debug.Assert(gameDescriptorsMap.ContainsKey(gameMenuItem)); var gameDescriptor = gameDescriptorsMap[gameMenuItem]; registry.ChangeGameFavoriteStatus(gameDescriptor); BuildDynamicItems(clean: false); }
public bool IsGameMenuItemFavorited(GameMenuItem gameMenuItem) { Debug.Assert(gameDescriptorsMap.ContainsKey(gameMenuItem)); return(registry.GetGameAddedToFavorites(gameDescriptorsMap[gameMenuItem])); }