public void OnBtActionBarClick(object sender, RoutedEventArgs e)
 {
     if (SystemChecker.GameSelected != null)
     {
         PluginDatabase.IsViewOpen = true;
         var    ViewExtension   = new SystemCheckerGameView(_PlayniteApi, _PluginUserDataPath, SystemChecker.GameSelected);
         Window windowExtension = CreateExtensionWindow(_PlayniteApi, "SystemChecker", ViewExtension);
         windowExtension.ShowDialog();
         PluginDatabase.IsViewOpen = false;
     }
     else
     {
         _PlayniteApi.Dialogs.ShowErrorMessage("No game selected for show extension view.", "SystemChecker");
     }
 }
        // To add new game menu items override GetGameMenuItems
        public override List <GameMenuItem> GetGameMenuItems(GetGameMenuItemsArgs args)
        {
            var GameMenu = args.Games.First();

            List <GameMenuItem> gameMenuItems = new List <GameMenuItem>
            {
                // Show requierements for the selected game
                new GameMenuItem {
                    MenuSection = resources.GetString("LOCSystemChecker"),
                    Description = resources.GetString("LOCSystemCheckerCheckConfig"),
                    Action      = (gameMenuItem) =>
                    {
                        PluginDatabase.IsViewOpen = true;
                        var    ViewExtension   = new SystemCheckerGameView(PlayniteApi, this.GetPluginUserDataPath(), GameMenu);
                        Window windowExtension = PlayniteUiHelper.CreateExtensionWindow(PlayniteApi, "SystemChecker", ViewExtension);
                        windowExtension.ShowDialog();
                        PluginDatabase.IsViewOpen = false;
                    }
                },

                // Delete & download requierements data for the selected game
                new GameMenuItem {
                    MenuSection = resources.GetString("LOCSystemChecker"),
                    Description = resources.GetString("LOCCommonRefreshGameData"),
                    Action      = (gameMenuItem) =>
                    {
                        var TaskIntegrationUI = Task.Run(() =>
                        {
                            PluginDatabase.Remove(GameMenu);
                            var dispatcherOp        = systemCheckerUI.AddElements();
                            dispatcherOp.Completed += (s, e) => { systemCheckerUI.RefreshElements(GameMenu); };
                        });
                    }
                }
            };

#if DEBUG
            gameMenuItems.Add(new GameMenuItem
            {
                MenuSection = resources.GetString("LOCSystemChecker"),
                Description = "Test",
                Action      = (mainMenuItem) => { }
            });
#endif

            return(gameMenuItems);
        }