private void ContextMenu_EditClicked(object sender, RoutedEventArgs e) { SuiBot_Core.Storage.ChatFilters.FilterType filterType = SuiBot_Core.Storage.ChatFilters.FilterType.Purge; var selectedTab = (TabItem)TabControl_FiltersSelect.SelectedItem; switch (selectedTab.Header) { case ("Timeout Filters"): filterType = SuiBot_Core.Storage.ChatFilters.FilterType.Timeout; break; case ("Ban Filters"): filterType = SuiBot_Core.Storage.ChatFilters.FilterType.Ban; break; default: filterType = SuiBot_Core.Storage.ChatFilters.FilterType.Purge; break; } SuiBot_Core.Storage.ChatFilter editedFilter = null; switch (filterType) { case (SuiBot_Core.Storage.ChatFilters.FilterType.Purge): if (ListView_PurgeFilters.SelectedItem == null) { return; } editedFilter = (SuiBot_Core.Storage.ChatFilter)ListView_PurgeFilters.SelectedItem; break; case (SuiBot_Core.Storage.ChatFilters.FilterType.Timeout): if (ListView_TimeoutFilters.SelectedItem == null) { return; } editedFilter = (SuiBot_Core.Storage.ChatFilter)ListView_TimeoutFilters.SelectedItem; break; case (SuiBot_Core.Storage.ChatFilters.FilterType.Ban): if (ListView_BanFilters.SelectedItem == null) { return; } editedFilter = (SuiBot_Core.Storage.ChatFilter)ListView_BanFilters.SelectedItem; break; } Dialogs.AddEditFilterDialog aefd = new Dialogs.AddEditFilterDialog(filterType, editedFilter); var result = aefd.ShowDialog(); if (result != null && result == true) { editedFilter = aefd.ReturnedFilter; ListView_PurgeFilters.Items.Refresh(); ListView_TimeoutFilters.Items.Refresh(); ListView_BanFilters.Items.Refresh(); } }
public AddEditFilterDialog(SuiBot_Core.Storage.ChatFilters.FilterType filterType, SuiBot_Core.Storage.ChatFilter editedFilter = null) { InitializeComponent(); if (editedFilter != null) { ReturnedFilter = new SuiBot_Core.Storage.ChatFilter(editedFilter); switch (filterType) { case (SuiBot_Core.Storage.ChatFilters.FilterType.Purge): this.Title = "Edit Purge filter"; this.TB_Duration.IsEnabled = false; this.ReturnedFilter.Duration = 1; break; case (SuiBot_Core.Storage.ChatFilters.FilterType.Timeout): this.Title = "Edit Timeout filter"; this.TB_Duration.IsEnabled = true; break; case (SuiBot_Core.Storage.ChatFilters.FilterType.Ban): this.Title = "Edit Ban filter"; this.TB_Duration.IsEnabled = false; this.ReturnedFilter.Duration = 1; break; } } else { ReturnedFilter = new SuiBot_Core.Storage.ChatFilter(); switch (filterType) { case (SuiBot_Core.Storage.ChatFilters.FilterType.Purge): this.Title = "Add Purge filter"; this.TB_Duration.IsEnabled = false; this.ReturnedFilter.Duration = 1; break; case (SuiBot_Core.Storage.ChatFilters.FilterType.Timeout): this.Title = "Add Timeout filter"; this.TB_Duration.IsEnabled = true; break; case (SuiBot_Core.Storage.ChatFilters.FilterType.Ban): this.Title = "Add Ban filter"; this.TB_Duration.IsEnabled = false; this.ReturnedFilter.Duration = 1; break; } } this.DataContext = ReturnedFilter; this.regexInstance = new Regex(ReturnedFilter.Syntax); this.OnFilterChanged(null, null); }