private void Tree_Drop(object sender, DragEventArgs e) { if (e.Data.GetDataPresent("manifestacijaDrag")) { Manifestacija man = e.Data.GetData("manifestacijaDrag") as Manifestacija; if (man.Tacka.X != -1) { ManifestacijeNaMapi.Remove(man); man.Tacka = new Point(-1, -1); //man.Tip.ListaManifestacija.Add(man); } isDragging = false; } }
/* ----------- BRISANJE IZABRANOG TIPA/MANIFESTACIJE/ETIKETE ----------- */ private void BrisanjeClick(object sender, RoutedEventArgs e) { //ako odlucim da lokalizujem message box-ove v /*Xceed.Wpf.Toolkit.MessageBox mbox = new Xceed.Wpf.Toolkit.MessageBox(); * mbox.OkButtonContent = "U redu"; * mbox.Caption = "Mapa manifestacija"; * mbox.Text = "Morate označiti manifestaciju koju želite da obrišete."; * mbox.ShowDialog(); */ if (tabovi.IsVisible == false) //za sada ne moze da se brise ako nije u tabelarnom prikazu { MessageBox.Show("Brisanje tipa manifestacije/manifestacije/etikete je omogućeno samo iz tabelarnog prikaza.", "Mapa manifestacija", MessageBoxButton.OK, MessageBoxImage.Asterisk); } else if (tabela.SelectedItem == null && tabovi.SelectedIndex == 0) //tab za manifestacije { MessageBox.Show("Morate označiti manifestaciju u tabelarnom prikazu koju želite da obrišete.", "Mapa manifestacija", MessageBoxButton.OK, MessageBoxImage.Asterisk); } else if (tabelaTip.SelectedItem == null && tabovi.SelectedIndex == 1) //tab za tipove manifestacija { MessageBox.Show("Morate označiti tip manifestacije u tabelarnom prikazu koji želite da obrišete.", "Mapa manifestacija", MessageBoxButton.OK, MessageBoxImage.Asterisk); } else if (tabelaEtiketa.SelectedItem == null && tabovi.SelectedIndex == 2) //tab za etikete { MessageBox.Show("Morate označiti etiketu u tabelarnom prikazu koju želite da obrišete.", "Mapa manifestacija", MessageBoxButton.OK, MessageBoxImage.Asterisk); } else if (tabela.SelectedItem is Manifestacija && tabovi.SelectedIndex == 0) //tab za manifestacije { Manifestacija selectedMan = (Manifestacija)tabela.SelectedItem; TipManifestacije selectedManTip = ((Manifestacija)tabela.SelectedItem).Tip; Manifestacije.Remove(selectedMan); //brise se iz liste manifestacija ManifestacijeNaMapi.Remove(selectedMan); selectedManTip.ListaManifestacija.Remove(selectedMan); //brise se iz tipa kome pripada } else if (tabelaTip.SelectedItem is TipManifestacije && tabovi.SelectedIndex == 1) //tab za tipove { MessageBoxResult dialogResult = MessageBox.Show("Brisanjem tipa manifestacije brišu se i sve manifestacija tog tipa. Da li ste sigurni da želite da nastavite sa brisanjem?", "Mapa manifestacija", MessageBoxButton.YesNo); if (dialogResult == MessageBoxResult.Yes) { TipManifestacije selectedTip = (TipManifestacije)tabelaTip.SelectedItem; foreach (Manifestacija m in selectedTip.ListaManifestacija) //brisu se manifestacije koje pripadaju tipu { Manifestacije.Remove(m); ManifestacijeNaMapi.Remove(m); } TipoviManifestacija.Remove(selectedTip); //brise se iz liste tipova } else if (dialogResult == MessageBoxResult.No) { //do nothing for now } } else if (tabelaEtiketa.SelectedItem is Etiketa && tabovi.SelectedIndex == 2) //tab za etikete { Etiketa selectedEt = (Etiketa)tabelaEtiketa.SelectedItem; foreach (Manifestacija m in Manifestacije) //brise se etiketa iz svih manifestacija kojim pripada { m.ListaEtiketa.Remove(selectedEt); } Etikete.Remove(selectedEt); //brise se iz liste etiketa } }