/// <summary> /// FilterSet speichern /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void saveFilterSet_Click(object sender, RoutedEventArgs e) { // Prüfe ob für das Statistiken/Listen-Modul if (this.useForListModule && string.IsNullOrEmpty(tbName.Text)) { MessageBoxEnhanced.Error(IniParser.GetSetting("FORMLETTER", "noSetNameSpecified")); return; } // Keine leeren Filtersets zulassen if (!(listBox1.Items.Count > 0)) { return; } // Lese Filter aus Filter-Liste foreach (var subitem in listBox1.Items) { currentFilterSet.addFilter(subitem as FilterModel); } // Wenn nicht für Listen-Modul, lege FilterSet im Speicher ab if (!this.useForListModule) { allFilterSets.Add(currentFilterSet); } // Für das Listen/Statistiken-Modul wird das FilterSet direkt in die Datenbank gespeichert if (this.useForListModule) { string name = tbName.Text; try { int filterSetID = FilterSet.Add(name, currentFilterSet.linkingType); // Bearbeite alle Filter zu jedem Set foreach (var filter in currentFilterSet.filterList) { string table = filter.group.ToString(); string type = filter.criterion.ToString(); string operation = filter.operation.ToString(); string value = filter.value; int filterID = Filter.Add(filterSetID, table, type, operation, value); } } catch { } } listBox1.IsEnabled = false; listBox2.IsEnabled = true; btDeleteSetButton.IsEnabled = true; refreshListBoxWithAllFilterSets(); currentFilterSet = null; clearForm(); tbName.Clear(); deactivateForm(); }
/// <summary> /// alle Felder und Listen zurücksetzen /// </summary> public void resetEverything() { this.clearForm(); listBox2.Items.Clear(); allFilterSets = new List <FilterSetModel>(); currentFilterSet = null; listBox1.IsEnabled = false; btDeleteButton.IsEnabled = false; saveFilterSet.IsEnabled = false; tbName.Clear(); }
/// <summary> /// Auswahl in FilterSet-Liste geändert /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void listBox2_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (listBox2.Items.Count > 0) { FilterSetModel selectedFilterSet = listBox2.SelectedItem as FilterSetModel; if (selectedFilterSet != null) { lbLinking.Content = selectedFilterSet.linkingType; clearForm(); deactivateForm(); foreach (var filter in selectedFilterSet.filterList) { listBox1.Items.Add(filter); } } } }
/// <summary> /// UND-Verknüpftes FilterSet initalisieren /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void addFilterSetAND(object sender, RoutedEventArgs e) { if (this.useForListModule) { if (string.IsNullOrEmpty(tbName.Text)) { MessageBoxEnhanced.Error(IniParser.GetSetting("FILTER", "errorFilter")); return; } } currentFilterSet = new FilterSetModel(IniParser.GetSetting("FILTER", "defaultAndString")); if (this.useForListModule) { currentFilterSet.name = tbName.Text; } clearForm(); activateForm(); lbLinking.Content = IniParser.GetSetting("FILTER", "defaultAndString"); }
/// <summary> /// FilterSet aus FilterSet-Liste rechts löschen /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void deleteFromFilterSetList_Click(object sender, RoutedEventArgs e) { FilterSetModel filterSet = listBox2.SelectedItem as FilterSetModel; if (filterSet != null) { listBox2.Items.Remove(listBox2.SelectedItem); this.allFilterSets.Remove(filterSet); if (listBox2.Items.Count == 0) { listBox2.IsEnabled = false; btDeleteSetButton.IsEnabled = false; } listBox1.IsEnabled = false; refreshListBoxWithAllFilterSets(); currentFilterSet = null; clearForm(); tbName.Clear(); deactivateForm(); } }