Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        private void OnFavoriteAreaClicked(GameMenuItem gameMenuItem)
        {
            Debug.Assert(gameDescriptorsMap.ContainsKey(gameMenuItem));
            var gameDescriptor = gameDescriptorsMap[gameMenuItem];

            registry.ChangeGameFavoriteStatus(gameDescriptor);
            BuildDynamicItems(clean: false);
        }
Ejemplo n.º 3
0
 public bool IsGameMenuItemFavorited(GameMenuItem gameMenuItem)
 {
     Debug.Assert(gameDescriptorsMap.ContainsKey(gameMenuItem));
     return(registry.GetGameAddedToFavorites(gameDescriptorsMap[gameMenuItem]));
 }