//Die onUpdateData-Funktion ermöglicht eine Aktualiseriung der angezeigten Information public override void onUpdateData() { if (frm.GetType().Name == "Kriteriumverwaltung") { Kriteriumverwaltung krit = (Kriteriumverwaltung)frm; int temp_int_proj = krit.listeProjektID.SelectedIndex; int temp_int_prod = krit.listeProduktID.SelectedIndex; List <Kriterium> kriterien = db.get(new Kriterium(-1)); // alle Kriterien krit.listeKriterium.ItemsSource = kriterien; List <Projekt> projekte = db.get(new Projekt(-1)); // alle Projekte krit.listeProjektID.ItemsSource = projekte; List <Produkt> produkte = db.get(new Produkt(-1)); // alle Produkte krit.listeProduktID.ItemsSource = produkte; krit.listeProjektID.SelectedIndex = temp_int_proj; krit.listeProduktID.SelectedIndex = temp_int_prod; onUpdateView(); return; } else if (frm.GetType().Name == "Kriteriumstrukturverwaltung") { Kriteriumstrukturverwaltung krit = (Kriteriumstrukturverwaltung)frm; List <Kriterium> kriterien = db.get(new Kriterium()); // alle Kriterien krit.details_Kriterium.ItemsSource = kriterien; if (krit.details_ID.Text != "") { Kriterium temp_objekt = new Kriterium(); temp_objekt.setKriteriumID(Int32.Parse(krit.details_ID.Text)); krit.listeWurzelKriterium.ItemsSource = temp_objekt.getRootKriterium(db); krit.listeUnterKriterium.ItemsSource = temp_objekt.getUnterKriterium(db); krit.listeOberKriterium.ItemsSource = temp_objekt.getOberKriterium(db); } onUpdateView(); return; } else if (frm.GetType().Name == "KriteriumNutzwertVerwaltung") { onUpdateView(); return; } else if (frm.GetType().Name == "KriteriumTree") { onUpdateView(); return; } throw new NotImplementedException(); }
//Kriterien die versentlich als Unterkriterien gesetzt wurden koennen hiermit wieder entfernt werden public void UnterKriterium_loeschen(Kriterium objekt) { if (frm.GetType().Name == "Kriteriumstrukturverwaltung") { if (MessageBox.Show("Sind Sie sich sicher, dass sie das ausgewählte Kriterium löschen wollen?", "Löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes) { Kriteriumstrukturverwaltung krit = (Kriteriumstrukturverwaltung)frm; if (krit.details_ID.Text != "") { Kriterium temp_objekt = new Kriterium(); temp_objekt.setKriteriumID(Int32.Parse(krit.details_ID.Text)); temp_objekt.removeUnterKriterium(objekt, db); onUpdateData(); } } return; } throw new NotImplementedException(); }
//Aufruf der Kriteriumsstrukturverwaltung public void show_kriteriumstrukturverwaltung(Kriterium objekt) { Kriteriumstrukturverwaltung frm = new Kriteriumstrukturverwaltung(db, objekt); frm.ShowDialog(); }
//Sofern ein Kriterium ausgewählt wurde, wird es mit der Funktion gelöscht, wobei nochmals eine Textbox erscheint und um eine Bestätigung bittet public override void loeschen(Model objekt) { if (objekt == null) { return; } if (frm.GetType().Name == "Kriteriumverwaltung") { Kriteriumverwaltung krit = (Kriteriumverwaltung)frm; if (MessageBox.Show("Sind Sie sich sicher, dass sie das ausgewählte Kriterium löschen wollen?", "Löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes) { Kriterium temp_objekt = (Kriterium)objekt; if (temp_objekt.getUnterKriterium(db).Count > 0) { MessageBox.Show("Sie können das Kriterium nicht löschen, solange es ein UnterKriterium besitzt. Gehen Sie in die Strukturverwaltung und löschen Sie alle UnterKriterien.", "Löschen", MessageBoxButton.OK, MessageBoxImage.Warning); } else if (temp_objekt.getOberKriterium(db).Count > 0) { MessageBox.Show("Sie können das Kriterium nicht löschen, solange es ein OberKriterium besitzt. Gehen Sie in die Strukturverwaltung des OberKriteriums und löschen Sie das Kriterium aus der UnterKriterium-Liste.", "Löschen", MessageBoxButton.OK, MessageBoxImage.Warning); } else { db.delete(objekt); krit.kriterium_aendern.IsEnabled = false; krit.kriterium_loeschen.IsEnabled = false; krit.details_Bezeichnung.IsEnabled = false; krit.details_Bezeichnung.Text = ""; krit.details_ID.Text = ""; onUpdateData(); } } return; } else if (frm.GetType().Name == "Kriteriumstrukturverwaltung") { Kriteriumstrukturverwaltung krit = (Kriteriumstrukturverwaltung)frm; if (MessageBox.Show("Sind Sie sich sicher, dass sie das ausgewählte Kriterium löschen wollen?", "Löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes) { db.delete(objekt); krit.details_Kriterium.IsEnabled = false; krit.details_Bezeichnung.IsEnabled = false; krit.listeUnterKriterium.IsEnabled = false; krit.untkrit_hinzufuegen.IsEnabled = false; krit.untkrit_loeschen.IsEnabled = false; krit.details_Bezeichnung.Text = ""; krit.details_ID.Text = ""; krit.details_ProduktID.Text = ""; krit.details_ProjektID.Text = ""; onUpdateData(); } return; } else if (frm.GetType().Name == "KriteriumNutzwertVerwaltung") { KriteriumNutzwertVerwaltung krit = (KriteriumNutzwertVerwaltung)frm; if (MessageBox.Show("Sind Sie sich sicher, dass sie das ausgewählte Nutzwert löschen wollen?", "Löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes) { db.delete(objekt); krit.Close(); } return; } throw new NotImplementedException(); }
//mit der anziegen Funktion werden die Daten der Kriterien in die dafürvorgesehenen Felder eingetragen public override void anzeigen(Model objekt) { if (objekt == null) { return; } if (frm.GetType().Name == "Kriteriumverwaltung") { Kriteriumverwaltung krit = (Kriteriumverwaltung)frm; if (objekt.GetType().Name == "Kriterium") { Kriterium temp_objekt = (Kriterium)objekt; krit.details_ID.Text = temp_objekt.getKriteriumID().ToString(); krit.details_Bezeichnung.Text = temp_objekt.getBezeichnung(); krit.kriterium_aendern.IsEnabled = true; krit.kriterium_loeschen.IsEnabled = true; krit.details_Bezeichnung.IsEnabled = true; onUpdateData(); return; } throw new NotImplementedException(); } else if (frm.GetType().Name == "Kriteriumstrukturverwaltung") { Kriteriumstrukturverwaltung krit = (Kriteriumstrukturverwaltung)frm; if (objekt.GetType().Name == "Kriterium") { Kriterium temp_objekt = (Kriterium)objekt; krit.details_ID.Text = temp_objekt.getKriteriumID().ToString(); krit.details_Bezeichnung.Text = temp_objekt.getBezeichnung(); krit.details_ProduktID.Text = "0"; // auto set krit.details_ProjektID.Text = "0"; // auto set krit.details_Kriterium.IsEnabled = true; krit.listeUnterKriterium.IsEnabled = true; krit.listeUnterKriterium.ItemsSource = temp_objekt.getUnterKriterium(db); onUpdateData(); return; } throw new NotImplementedException(); } else if (frm.GetType().Name == "KriteriumNutzwertVerwaltung") { List <Nutzwert> temp_list = db.get((Nutzwert)objekt); if (temp_list.Count > 0) { Nutzwert temp_objekt = temp_list[0]; KriteriumNutzwertVerwaltung krit = (KriteriumNutzwertVerwaltung)frm; krit.details_ProjektID.Text = temp_objekt.getProjektID().ToString(); krit.details_ProduktID.Text = temp_objekt.getProduktID().ToString(); krit.details_KriteriumID.Text = temp_objekt.getKriteriumID().ToString(); krit.details_Erfuellung.IsChecked = temp_objekt.getErfuellung(); krit.details_Gewichtung.Text = temp_objekt.getGewichtung().ToString(); krit.details_kommentar.Text = temp_objekt.getKommentar(); krit.details_beitrag_absolut.Text = temp_objekt.getBeitragAbsolut().ToString(); krit.details_Abstufung.Text = temp_objekt.getAbstufung().ToString(); onUpdateData(); return; } else { throw new NotImplementedException(); } } else if (frm.GetType().Name == "KriteriumTree") { KriteriumTree krit = (KriteriumTree)frm; Kriterium temp_objekt = (Kriterium)objekt; Kriterium root_objekt = temp_objekt.getRootKriterium(db)[0]; krit.treeview.Items.Add(getTree(root_objekt)); onUpdateData(); return; } throw new NotImplementedException(); }
public override void onUpdateView() { if (frm.GetType().Name == "Kriteriumstrukturverwaltung") { Kriteriumstrukturverwaltung krit = (Kriteriumstrukturverwaltung)frm; if (krit.details_Kriterium.SelectedItem != null) { Kriterium choosen_objekt = (Kriterium)krit.details_Kriterium.SelectedItem; Kriterium actual_objekt = new Kriterium(krit.details_ID.Text); if (choosen_objekt.getKriteriumID() != actual_objekt.getKriteriumID() && find(krit.listeUnterKriterium.ItemsSource as List <Kriterium>, choosen_objekt.getKriteriumID()) == false && actual_objekt.isOberKriterium(choosen_objekt, db) == false) { krit.untkrit_hinzufuegen.IsEnabled = true; } else { krit.untkrit_hinzufuegen.IsEnabled = false; } } else { krit.untkrit_hinzufuegen.IsEnabled = false; } if (krit.listeUnterKriterium.SelectedItem != null) { krit.untkrit_loeschen.IsEnabled = true; } else { krit.untkrit_loeschen.IsEnabled = false; } return; } else if (frm.GetType().Name == "Kriteriumverwaltung") { Kriteriumverwaltung krit = (Kriteriumverwaltung)frm; if (krit.details_ID.Text.Equals("") == false) { krit.nutzwert.IsEnabled = true; krit.Tree.IsEnabled = true; if (Int32.Parse(krit.details_ID.Text) != 0) { krit.struktur.IsEnabled = true; } else { krit.struktur.IsEnabled = false; } } else { krit.Tree.IsEnabled = false; krit.struktur.IsEnabled = false; krit.nutzwert.IsEnabled = false; } return; } else if (frm.GetType().Name == "KriteriumNutzwertVerwaltung") { KriteriumNutzwertVerwaltung krit = (KriteriumNutzwertVerwaltung)frm; if (krit.details_ProjektID.Text.Equals("0") == false && krit.details_ProduktID.Text.Equals("0") == false) { krit.loeschen.IsEnabled = true; } else { krit.loeschen.IsEnabled = false; } return; } else if (frm.GetType().Name == "KriteriumTree") { return; } throw new NotImplementedException(); }