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); }