private void InstallClick(object sender, RoutedEventArgs e) { InstallButton.IsEnabled = false; btnDone.IsEnabled = false; pluginList.IsEnabled = false; this.progress.Visibility = Visibility.Visible; PluginInstaller p = new PluginInstaller(); callBack done = new callBack(InstallFinished); p.InstallPlugin(pluginList.SelectedItem as IPlugin, progress, this, done); MainWindow.Instance.KernelModified = true; }
private void upgradePlugin_Click(object sender, RoutedEventArgs e) { if (pluginList.SelectedItem != null) { var plugin = pluginList.SelectedItem as IPlugin; //get our latest version so we can upgrade... var newPlugin = PluginManager.Instance.AvailablePlugins.Find(plugin, PluginManager.Instance.GetLatestVersion(plugin)); if (newPlugin != null) { if (!string.IsNullOrEmpty(newPlugin.UpgradeInfo)) { //confirm upgrade if (MessageBox.Show("This upgrade has the following information:\n\n" + newPlugin.UpgradeInfo + "\n\nDo you still wish to upgrade?", "Upgrade " + plugin.Name, MessageBoxButton.YesNo) == MessageBoxResult.No) { PopUpMsg.DisplayMessage("Upgrade Cancelled"); return; } } var p = new PluginInstaller(); var done = new CallBack(UpgradeFinished); this.IsEnabled = false; p.InstallPlugin(newPlugin, progress, this, done); KernelModified = true; } } }