private void AddonListView_OnMouseUp(object sender, MouseButtonEventArgs e) { if (e.ChangedButton != MouseButton.Left) { return; } if (!(AddonListView.SelectedItem is AddonEntry entry)) { return; } if (entry.Addon is RichPresenceAddon) { MessageBox.Show("This addon shows your character information in your discord profile.", "Addon information", MessageBoxButton.OK, MessageBoxImage.Information); return; } if (entry.Addon is GenericAddon genericAddon) { var addonSetup = new GenericAddonSetup(genericAddon); addonSetup.ShowDialog(); if (addonSetup.Result != null) { var addonList = Settings.GetAddonList(); addonList = addonList.Where(x => { if (x.Addon is RichPresenceAddon) { return(true); } if (x.Addon is HooksAddon) { return(true); } return(x.Addon is GenericAddon thisGenericAddon && thisGenericAddon.Path != genericAddon.Path); }).ToList(); addonList.Add(new AddonEntry() { IsEnabled = entry.IsEnabled, Addon = addonSetup.Result }); AddonListView.ItemsSource = addonList; Settings.SetAddonList(addonList); } } }
// All of the list handling is very dirty - but i guess it works private void AddAddon_OnClick(object sender, RoutedEventArgs e) { var addonSetup = new GenericAddonSetup(); addonSetup.ShowDialog(); if (addonSetup.Result != null) { var addonList = Settings.GetAddonList(); addonList.Add(new AddonEntry() { IsEnabled = true, Addon = addonSetup.Result }); AddonListView.ItemsSource = addonList; Settings.SetAddonList(addonList); } }
private void AddonListView_OnMouseUp(object sender, MouseButtonEventArgs e) { if (e.ChangedButton != MouseButton.Left) { return; } if (AddonListView.SelectedItem is AddonEntry entry && entry.Addon is GenericAddon genericAddon) { var addonSetup = new GenericAddonSetup(genericAddon); addonSetup.ShowDialog(); if (addonSetup.Result != null) { var addonList = Settings.GetAddonList(); addonList = addonList.Where(x => { if (x.Addon is RichPresenceAddon) { return(true); } return(x.Addon is GenericAddon thisGenericAddon && thisGenericAddon.Path != genericAddon.Path); }).ToList(); addonList.Add(new AddonEntry() { IsEnabled = entry.IsEnabled, Addon = addonSetup.Result }); AddonListView.ItemsSource = addonList; Settings.SetAddonList(addonList); } } }