private void LineSeriesSettings_SeriesEnabledStateChangedEvent(object sender, EventArgs e) { var newSetting = LineSeriesSettings.GetEnumValue(); foreach (var playerTab in playerTabDict.Select(kvp => kvp.Value)) { playerTab.SetEnabledLineSeries(newSetting); } }
private void Current_Exit(object sender, System.Windows.ExitEventArgs e) { Console.WriteLine("Saving settings"); Settings.Default.HighlightDPS = HighlightDPS; Settings.Default.BackgroundImagePath = BackgroundImagePath == null ? string.Empty : BackgroundImagePath; Settings.Default.EnabledLineSeries = LineSeriesSettings.GetEnumValue().ToString(); Settings.Default.DetailedDamageVisibleColumns = DetailedDamageVisibleSettings.GetEnum().ToString(); Settings.Default.HiddenDamageTypes = DamageTypesSettings.GetHiddenTrackersEnum().ToString(); Settings.Default.SplitDamageTypes = DamageTypesSettings.GetSeparatedTrackersEnum(false).ToString(); Settings.Default.ShortenDPSReadout = ShortenDPSReadout; Settings.Default.OpenGraphForSelf = OpenGraphForSelfAutomatically; Settings.Default.AnonymizePlayers = AnonymizePlayers; SettingsVM.SaveSettings(); Settings.Default.Save(); Console.WriteLine("Settings saved"); }
private void synchronizeTabState() { lock (tabManipulationLock) { if (selfPlayerTab == null && CurrentDamageParser.SelfPlayer != null) { selfPlayerTab = new GraphPlayerTabVM(this, DetailedDamageVisibleSettings, CurrentDamageParser.SelfPlayer); AllTabs.Insert(1, selfPlayerTab); playerTabDict.Add(CurrentDamageParser.SelfPlayer, selfPlayerTab); selfPlayerTab.SetEnabledLineSeries(LineSeriesSettings.GetEnumValue()); if (OpenGraphForSelfAutomatically) { SelectedTab = selfPlayerTab; } } foreach (var player in CurrentDamageParser.Players) //add { if (DamageParser.IsBlacklistedUsername(player.Name)) { continue; //skip blacklisted } if (!playerTabDict.ContainsKey(player)) { var newTab = new GraphPlayerTabVM(this, DetailedDamageVisibleSettings, player); AllTabs.Add(newTab); playerTabDict.Add(player, newTab); newTab.SetEnabledLineSeries(LineSeriesSettings.GetEnumValue()); } } List <GraphPlayerTabVM> toRemove = new List <GraphPlayerTabVM>(); //remove foreach (var tab in AllTabs.Where(t => t is GraphPlayerTabVM).Cast <GraphPlayerTabVM>()) { if (!CurrentDamageParser.DoesPlayerIdExist(tab.Player.ID)) { toRemove.Add(tab); } } foreach (var rem in toRemove) { AllTabs.Remove(rem); playerTabDict.Remove(rem.Player); } } }