Exemplo n.º 1
0
        //kad prevlacimo da se stvori tackasti pravougaonik
        private void Image_MouseMove(object sender, MouseEventArgs e)
        {
            System.Windows.Point mousePos = e.GetPosition(null);
            Vector diff = startPoint - mousePos;

            //stvori transparenti pravougaonik oko nase trenutne drag pozicije
            //i hocemo da proverimo da li smo u okviru tog pravougaonika
            if (e.LeftButton == MouseButtonState.Pressed &&
                (Math.Abs(diff.X) > SystemParameters.MinimumHorizontalDragDistance ||
                 Math.Abs(diff.Y) > SystemParameters.MinimumVerticalDragDistance))
            {
                try
                {
                    Spomenik selektovana = (Spomenik)tabelaSpomenika.SelectedValue;
                    if (selektovana != null)
                    {
                        DataObject dragData = new DataObject("spomenik", selektovana);
                        //prikaz - ono sto ce drag-ovati
                        //dodragdrop - metoda koja proverava sta je to iznad cega je kursor
                        //a zatim proverava da li je validno za drag-ovanje
                        DragDrop.DoDragDrop(prikaz, dragData, DragDropEffects.Link);
                    }
                }
                catch
                {
                    return;
                }
            }
        }
Exemplo n.º 2
0
        public DodajVrstuForma()
        {
            this.DataContext = this;
            Tipovi           = MainWindow.Tipovi;
            Etikete          = MainWindow.Etikete;
            Spomenici        = MainWindow.Spomenici;
            IzabraneEtikete  = new ObservableCollection <Etiketa>();
            SlobodneEtikete  = new ObservableCollection <Etiketa>();

            foreach (Etiketa et in MainWindow.Etikete)
            {
                SlobodneEtikete.Add(et);
            }

            InitializeComponent();
            Tip.SelectedIndex = 0;
            Tip_SelectionChanged(null, null);
            //ako inicijalno bude selekotvana slika izabranog tipa

            /*
             *  Tip temp = (Tip)Tip.SelectedItem;
             *  slika = temp.Ikonica;*/


            //btnDodaj.IsEnabled = false;



            trenutniSpomenik = null;
        }
Exemplo n.º 3
0
        private void ObrisiBtn_Click(object sender, RoutedEventArgs e)
        {
            Spomenik s = (Spomenik)dgSpomenik.SelectedItem;

            if (s == null)
            {
                MessageBox.Show("Morate prvo selektovate spomenik da biste ga obrisali.");
            }
            else
            {
                Spomenici.Remove(s);
            }
        }
Exemplo n.º 4
0
        private void IzmeniBtn_Click(object sender, RoutedEventArgs e)
        {
            Spomenik s = (Spomenik)dgSpomenik.SelectedItem;

            if (s == null)
            {
                MessageBox.Show("Morate prvo selektovate spomenik da biste ga izmenili.");
            }
            else
            {
                DodajVrstuForma izmena = new DodajVrstuForma(s, mw);
                izmena.ShowDialog();
            }
        }
Exemplo n.º 5
0
        private void mapaSpomenika_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            start = e.GetPosition(null);

            Canvas map = sender as Canvas;

            Spomenik dataObject    = null;
            Point    mousePosition = e.GetPosition(mapaSpomenika);

            dataObject = ClickedVrsta1((int)mousePosition.X, (int)mousePosition.Y);

            if (dataObject != null)
            {
                DataObject data = new DataObject(FROM_CANVAS, dataObject);
                DragDrop.DoDragDrop(map, data, DragDropEffects.Move);
            }
        }
Exemplo n.º 6
0
        //kanvas (desna strana)

        //cuvanje novih kordinata spomenika pri pomeranju ikonice na kanvasu
        public void ChangeDroppedSpomenik(Spomenik spomenik)
        {
            foreach (Spomenik v in ListaSpomenika)
            {
                if (v.Oznaka == spomenik.Oznaka)
                {
                    v.X = spomenik.X;
                    v.Y = spomenik.Y;
                    break;
                }
            }
            using (Stream fs = new FileStream(korisnik + "Spomenici.xml", FileMode.Create, FileAccess.Write, FileShare.None))
            {
                XmlSerializer serializer = new XmlSerializer(typeof(ObservableCollection <Spomenik>));
                serializer.Serialize(fs, this.ListaSpomenika);
            }
        }
Exemplo n.º 7
0
 private void TabelaSpomenika_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     if (tabelaSpomenika.SelectedValue is Spomenik)
     {
         Spomenik s = (Spomenik)tabelaSpomenika.SelectedValue;
         if (!s.Ikonica.Equals(""))
         {
             prikaz.Source = new BitmapImage(new Uri(s.Ikonica));
         }
         else
         {
             prikaz.Source = new BitmapImage(new Uri(s.Tip.Ikonica));
         }
     }
     else
     {
         prikaz.Source = null;
     }
 }
Exemplo n.º 8
0
        //Drag and drop
        //leva strana
        private void StackPanel_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)   //sa panela na kanvas
        {
            start = e.GetPosition(null);

            StackPanel panel      = sender as StackPanel;
            Spomenik   dataObject = null;

            foreach (Spomenik spomenik in Spomenici)
            {
                if ((string)panel.Tag == spomenik.Oznaka)       //provera u panelu u tagu da li je kliknuti spomenik jedna spomeniku iz foreaca
                {
                    dataObject = spomenik;
                    break;
                }
            }

            DataObject data = new DataObject(FROM_SIDEBAR, dataObject);

            DragDrop.DoDragDrop(panel, data, DragDropEffects.Move);
        }
Exemplo n.º 9
0
        private void ObrisiSaMape_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                Spomenik selektovano = (Spomenik)tabelaSpomenika.SelectedItem;
                if (selektovano != null)
                {
                    bool postoji = mapa.Children.Cast <Image>()
                                   .Any(x => x.Tag != null && x.Tag.ToString() == selektovano.Oznaka);
                    if (postoji)
                    {
                        Image img = null;
                        foreach (Image i in mapa.Children)
                        {
                            if (i.Tag.Equals(selektovano.Oznaka))
                            {
                                img = i;
                            }
                        }
                        mapa.Children.Remove(img);
                        int idx = 0;
                        foreach (Spomenik s in MapaLista)
                        {
                            if (selektovano.Oznaka.Equals(s.Oznaka))
                            {
                                break;
                            }
                            idx++;
                        }
                        Spomenici[idx].X = -1;
                        Spomenici[idx].Y = -1;


                        MapaLista = Spomenici;
                    }
                }
            } catch
            {
                return;
            }
        }
        //DataObject dragData = new DataObject();
        private void ListView_MouseMove(object sender, MouseEventArgs e)
        {
            Point  mousePos = e.GetPosition(null);
            Vector diff     = startPoint - mousePos;

            if (e.LeftButton == MouseButtonState.Pressed &&
                (Math.Abs(diff.X) > SystemParameters.MinimumHorizontalDragDistance ||
                 Math.Abs(diff.Y) > SystemParameters.MinimumVerticalDragDistance))
            {
                // Get the dragged ListViewItem
                listaSpomenika = sender as ListView;


                listViewItem = FindAncestor <ListViewItem>((DependencyObject)e.OriginalSource);
                //if (listViewItem.Equals(null)) { return; }
                // Find the data behind the ListViewItem
                Spomenik spomenik = new Spomenik();
                try
                {
                    spomenik = (Spomenik)listaSpomenika.ItemContainerGenerator.
                               ItemFromContainer(listViewItem);
                }
                catch
                {
                    // MessageBox.Show("Pogrešan element za prevlačenje na mapu!", "Upozorenje", MessageBoxButton.OK, MessageBoxImage.Error);
                }



                // Initialize the drag & drop operation
                DataObject dragData = new DataObject("nekiFormat", spomenik);
                try
                {
                    DragDrop.DoDragDrop(listViewItem, dragData, DragDropEffects.Move);
                }
                catch
                {
                    //MessageBox.Show("Došlo je do greške", "Greška", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }
Exemplo n.º 11
0
        //kad se otpusti dugme da se prikaze na mapi..valjda?
        private void Mapa_Drop(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent("spomenik"))
            {
                Spomenik s = e.Data.GetData("spomenik") as Spomenik;

                bool result = mapa.Children.Cast <Image>()
                              .Any(x => x.Tag != null && x.Tag.ToString() == s.Oznaka);
                //  bool preklapanje = false;
                System.Windows.Point d0 = e.GetPosition(mapa);
                foreach (Spomenik r0 in Spomenici)
                {
                    if (s.Oznaka != r0.Oznaka)
                    {
                        if (r0.X != -1 && r0.Y != -1)
                        {
                            if (Math.Abs(r0.X - d0.X) <= 30 && Math.Abs(r0.Y - d0.Y) <= 30)
                            {
                                System.Windows.MessageBox.Show("Ne mogu da se preklapaju", "Preklapanje");


                                return;
                            }
                        }
                    }
                }
                if (result == false)
                {
                    Image img = new Image();
                    if (!s.Ikonica.Equals(""))
                    {
                        img.Source = new BitmapImage(new Uri(s.Ikonica));
                    }
                    else
                    {
                        img.Source = new BitmapImage(new Uri(s.Tip.Ikonica));
                    }

                    img.Width  = 50;
                    img.Height = 50;
                    img.Tag    = s.Oznaka;
                    var positionX = e.GetPosition(mapa).X;
                    var positionY = e.GetPosition(mapa).Y;

                    s.X = positionX;
                    s.Y = positionY;

                    ObservableCollection <Spomenik> spomeniciList = Spomenici;
                    int idx = 0;
                    foreach (Spomenik spo in spomeniciList)
                    {
                        if (spo.Oznaka.Equals(s.Oznaka))
                        {
                            break;
                        }
                        idx++;
                    }
                    spomeniciList[idx] = s;
                    mapa.Children.Add(img);
                    Canvas.SetLeft(img, positionX - 20);
                    Canvas.SetTop(img, positionY - 20);
                }
                else
                {
                    System.Windows.MessageBox.Show("Ovaj spomenik vec postoji na mapi.", "Dodavanje");
                }
            }
        }
Exemplo n.º 12
0
        private void btnZasticenObjekatCreate_Click(object sender, EventArgs e)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Zasticen zastitaSpomenik = new Zasticen();
                zastitaSpomenik.Opis            = "Bali-begova džamija u Tvrđavi predstavlja jedan od najvažnijih spomenika u Nišu podignutih za vreme vladavine Turaka.";
                zastitaSpomenik.NovcanaNaknada  = 7000;
                zastitaSpomenik.Institucija     = "Gradski zavod za zaštitu kulturne svojine";
                zastitaSpomenik.DatumStavljanja = new DateTime(2004, 12, 7);


                Zasticen zastitaSkulptura = new Zasticen();
                zastitaSkulptura.Opis            = "Skulptura pauna u parku Čair, jedinstvena po svojoj strukturi, s obzirom na to da je nastala oblikovanjem žbunastih biljaka";
                zastitaSkulptura.NovcanaNaknada  = 12000;
                zastitaSkulptura.Institucija     = "Niški kulturni centar";
                zastitaSkulptura.DatumStavljanja = new DateTime(2019, 7, 14);

                Zasticen zastitaDrvo = new Zasticen();
                zastitaDrvo.Opis            = "Breza, stara preko šezdeset godina, predstavlja jedan u nizu značajnih prirodnih spomenika u Nišu";
                zastitaDrvo.NovcanaNaknada  = 9000;
                zastitaDrvo.Institucija     = "Zavod za zaštitu životne sredine";
                zastitaDrvo.DatumStavljanja = new DateTime(2014, 4, 5);

                String nazivParka = "Tvrđava";
                String Opstina    = "Crveni krst";

                Park parkTvrdjava = s.Query <Park>()
                                    .Where(p => p.Naziv == nazivParka && p.Opstina == Opstina)
                                    .Single();

                nazivParka = "Park Čair";
                Opstina    = "Medijana";

                Park parkCair = s.Query <Park>()
                                .Where(p => p.Naziv == nazivParka && p.Opstina == Opstina)
                                .Single();

                IQuery qSpomenik  = s.CreateQuery("select max(o.RedniBroj) from Objekat o where o.Park.Id = " + parkTvrdjava.Id);
                IQuery qSkulptura = s.CreateQuery("select max(o.RedniBroj) from Objekat o where o.Park.Id = " + parkCair.Id);

                int rBrSpomenik  = qSpomenik.UniqueResult <int>() + 1;
                int rBrSkulptura = qSkulptura.UniqueResult <int>() + 1;

                int rBrDrvo = rBrSkulptura + 1;

                Spomenik spomenik = new Spomenik();
                spomenik.RedniBroj = rBrSpomenik;
                spomenik.Park      = parkTvrdjava;
                spomenik.Zasticen  = zastitaSpomenik;

                Skulptura skulptura = new Skulptura();
                skulptura.RedniBroj = rBrSkulptura;
                skulptura.Park      = parkCair;
                skulptura.Zasticen  = zastitaSkulptura;

                Drvo drvo = new Drvo();
                drvo.RedniBroj          = rBrDrvo;
                drvo.Park               = parkCair;
                drvo.Zasticen           = zastitaDrvo;
                drvo.DatumSadnje        = new DateTime(1953, 3, 12);
                drvo.ObimDebla          = 2.22f;
                drvo.VisinaKrosnje      = 18;
                drvo.PovrsinaPokrivanja = 8.2f;
                drvo.Vrsta              = "Breza";

                parkTvrdjava.Objekti.Add(spomenik);
                parkCair.Objekti.Add(skulptura);
                parkCair.Objekti.Add(drvo);

                s.Update(parkTvrdjava);
                s.Update(parkCair);

                s.Flush();
                s.Close();

                MessageBox.Show("Uspešno kreirani zaštićeni objekti.");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
 private Rect GetRect(Spomenik element)
 {
     return(new Rect(new Point(element.X, element.Y), new Size(55, 55)));
 }
        private void canvasImage_Drop(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent("nekiFormat"))
            {
                Point cursorLocation = e.GetPosition(this);
                item = (Spomenik)e.Data.GetData("nekiFormat");

                Uri         imageUri    = new Uri(item.Ikonica, UriKind.RelativeOrAbsolute);
                BitmapImage bitmapImage = new BitmapImage(imageUri);
                Image       image       = new Image();
                image.Source = bitmapImage;
                Image image2 = new Image();
                image2.Source = bitmapImage;
                TextBlock textBlock = new TextBlock();
                textBlock.Tag = item.Naziv;
                textBlock.Inlines.Add(image);
                TextBlock tb = new TextBlock();

                tb.Inlines.Add(image2);
                tb.Inlines.Add("  " + item.Naziv);
                tb.Height = 50;

                bool razliciti = false;

                if (Elementi.Count == 0)
                {
                    razliciti = true;
                }
                else
                {
                    Rect elemRect = new Rect(new Point(cursorLocation.X - 230, cursorLocation.Y - 140), new Size(55, 55));
                    foreach (Spomenik sp_1 in Elementi)
                    {
                        Rect elemRect_sp_1 = GetRect(sp_1);

                        if (elemRect_sp_1.IntersectsWith(elemRect))
                        {
                            razliciti = false;
                            break;
                        }
                        else
                        {
                            razliciti = true;
                        }
                    }
                }
                if (razliciti)
                {
                    foreach (Spomenik t1b in Elementi)
                    {
                        if (Elementi.Contains(item))
                        {
                            return;
                        }
                    }
                    canvas_map.Children.Add(textBlock);
                    textBlock.ToolTip = tb;
                    Canvas.SetLeft(textBlock, cursorLocation.X - 230);
                    Canvas.SetTop(textBlock, cursorLocation.Y - 140);
                    item.X = cursorLocation.X - 230;
                    item.Y = cursorLocation.Y - 140;
                    Elementi.Add(item);
                    // listaSpomenika.Items.Remove(item);
                    listaSpomenika.Items.Refresh();
                }
                else
                {
                    foreach (Spomenik t1b in Elementi)
                    {
                        if (Elementi.Contains(item))
                        {
                            return;
                        }
                    }
                    canvas_map.Children.Add(textBlock);
                    textBlock.ToolTip = tb;
                    Canvas.SetLeft(textBlock, cursorLocation.X - 290);
                    Canvas.SetTop(textBlock, cursorLocation.Y - 200);
                    item.X = cursorLocation.X - 290;
                    item.Y = cursorLocation.Y - 200;
                    Elementi.Add(item);
                    listaSpomenika.Items.Refresh();
                }
            }
        }
Exemplo n.º 15
0
        private void btnGetObjekat_Click(object sender, EventArgs e)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                String NazivParka = "Tvrđava";     // ili "Dečiji park u naselju Stevan Sinđelić" ili "Park Čair"
                String Opstina    = "Crveni krst"; // ili "Crveni krst" ili "Medijana"

                List <Objekat> objekti = s.Query <Objekat>()
                                         .Where(o => o.Park.Naziv == NazivParka && o.Park.Opstina == Opstina)
                                         .OrderBy(o => o.RedniBroj)
                                         .ToList();

                String rez = "Objekti u parku " + NazivParka + ", u opštini " + Opstina + "\n\n\n";

                foreach (Objekat o in objekti)
                {
                    rez += o.RedniBroj + ": ";
                    if (o.GetType() == typeof(Klupa))
                    {
                        rez += "Klupa";
                    }
                    else if (o.GetType() == typeof(Fontana))
                    {
                        rez += "Fontana";
                    }
                    else if (o.GetType() == typeof(Svetiljka))
                    {
                        rez += "Svetiljka";
                    }
                    else if (o.GetType() == typeof(Igraliste))
                    {
                        Igraliste i = o as Igraliste;
                        rez += "Igralište " + (i.BrojIgracaka == null ? "" : "sa " + i.BrojIgracaka + " igračaka ")
                               + "za decu od " + i.StarostDeceOd + " do " + i.StarostDeceDo + " godina";
                    }
                    else if (o.GetType() == typeof(Spomenik))
                    {
                        Spomenik sp        = o as Spomenik;
                        Zasticen spZastita = sp.Zasticen;
                        rez += "Spomenik, zaštićen datuma " + spZastita.DatumStavljanja.ToShortDateString()
                               + " od strane institucije \"" + spZastita.Institucija
                               + "\", uz opis: \"" + spZastita.Opis
                               + "\". Godišnja novčana naknada za potrebe zaštite ovog spomenika iznosi "
                               + spZastita.NovcanaNaknada + " dinara.";
                    }
                    else if (o.GetType() == typeof(Skulptura))
                    {
                        Skulptura sk        = o as Skulptura;
                        Zasticen  skZastita = sk.Zasticen;
                        rez += "Skulptura, zaštićena datuma " + skZastita.DatumStavljanja.ToShortDateString()
                               + " od strane institucije \"" + skZastita.Institucija
                               + "\", uz opis: \"" + skZastita.Opis
                               + "\". Godišnja novčana naknada za potrebe zaštite ove skulpture iznosi "
                               + skZastita.NovcanaNaknada + " dinara.";
                    }
                    else if (o.GetType() == typeof(Drvo))
                    {
                        Drvo     d        = o as Drvo;
                        Zasticen dZastita = d.Zasticen;

                        rez += "Drvo, vrste " + d.Vrsta
                               + (d.ObimDebla == null ? "" : ", obima debla " + d.ObimDebla + " metara")
                               + (d.PovrsinaPokrivanja == null ? "" : ", površine pokrivanja " + d.PovrsinaPokrivanja + " metara")
                               + (d.VisinaKrosnje == null ? "" : ", visine krošnje " + d.VisinaKrosnje + " metara")
                               + (d.DatumSadnje == null ? "" : " , posađeno datuma " + d.DatumSadnje.Value.ToShortDateString()) + ".";
                        if (dZastita != null)
                        {
                            rez += " Drvo je zaštićeno datuma " + dZastita.DatumStavljanja.ToShortDateString()
                                   + " od strane institucije \"" + dZastita.Institucija
                                   + "\", uz opis: \"" + dZastita.Opis
                                   + "\". Godišnja novčana naknada za potrebe zaštite ovog drveta iznosi "
                                   + dZastita.NovcanaNaknada + " dinara.";
                        }
                    }
                    rez += "\n\n";
                }

                MessageBox.Show(rez);
                s.Close();
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }
Exemplo n.º 16
0
        private void BtnDodaj_Click(object sender, RoutedEventArgs e)
        {
            //validacija
            bool vOznaka = false;

            if (Oznaka.Text == "")
            {
                vOznaka           = false;
                Oznaka.Background = Brushes.PaleVioletRed;
                System.Windows.MessageBox.Show("Morate uneti oznaku za vrstu!");
                return;
            }
            else
            {
                vOznaka = true;
            }
            bool vIme = false;

            if (Ime.Text == "")
            {
                vIme           = false;
                Ime.Background = Brushes.PaleVioletRed;
                System.Windows.MessageBox.Show("Morate uneti ime za vrstu!");
                return;
            }
            else
            {
                vIme = true;
            }



            /*bool iznos = false;
             * if(Prihod.Text == "")
             * {
             *  iznos = false;
             *  Prihod.Background = Brushes.Coral;
             *  System.Windows.MessageBox.Show("Morate uneti prihod");
             *  return;
             * }
             * else
             * {
             *  foreach (char c in Prihod.Text)
             *  {
             *      if (c != '0' || c != '1' || c != '2' || c != '3' || c != '4' || c != '5' || c != '6' || c != '7' || c != '8' || c != '9' || c != ',' || c != '.')
             *      {
             *          System.Windows.MessageBox.Show("Ne smete unositi slova, iskljucivo brojeve");
             *          return;
             *      }
             *  }
             *  iznos = true;
             * }
             *
             *
             * int p = Int32.Parse(Prihod.Text);
             * if(p <= 0)
             * {
             *  System.Windows.MessageBox.Show("Prihod mora biti veci od nule!");
             *  return;
             * }*/

            bool staniste;
            bool ekoloski;
            bool naselje;

            if (StanisteDA.IsChecked == true)
            {
                staniste = true;
            }
            else
            {
                staniste = false;
            }

            if (UgrozenDA.IsChecked == true)
            {
                ekoloski = true;
            }
            else
            {
                ekoloski = false;
            }

            if (NaseljenoDA.IsChecked == true)
            {
                naselje = true;
            }
            else
            {
                naselje = false;
            }

            if (trenutniSpomenik == null)
            {
                Spomenik s = new Spomenik
                {
                    Ime              = Ime.Text,
                    Oznaka           = Oznaka.Text,
                    Opis             = Opis.Text,
                    Tip              = (Tip)Tip.SelectedItem,
                    Etikete          = IzabraneEtikete,
                    Prihod           = Prihod.Text,
                    Datum            = Datum.ToString(),
                    TuristickiStatus = Turizam.SelectedIndex,
                    Klima            = Klima.SelectedIndex,
                    EkoloskiUgrozen  = ekoloski,
                    Naseljen         = naselje,
                    UgrozeneVrste    = staniste,
                    //Ikonica = Slika,
                    Ikonica = img.Source.ToString(),
                };

                foreach (Spomenik sp in MainWindow.Spomenici)
                {
                    if (sp.Oznaka.Equals(Oznaka.Text))
                    {
                        System.Windows.MessageBox.Show("Vec postoji spomenik sa ovom oznakom");
                        return;
                    }
                }

                //dodajemo u listu tipova sve vrste koje su bile u njemu
                Tip t = (Tip)Tip.SelectedItem;

                //t.Vrste.Add(s);
                MainWindow.Spomenici.Add(s);
            }
            //ako je izmena u pitanju
            else
            {
                foreach (Spomenik sp in MainWindow.Spomenici)
                {
                    if (sp.Oznaka.Equals(Oznaka.Text) && !(sp.Oznaka.Equals(trenutniSpomenik.Oznaka)))
                    {
                        System.Windows.MessageBox.Show("Vec postoji spomenik sa ovom oznakom");
                        return;
                    }
                }


                trenutniSpomenik.Ime              = Ime.Text;
                trenutniSpomenik.Ikonica          = Slika;
                trenutniSpomenik.Oznaka           = Oznaka.Text;
                trenutniSpomenik.Opis             = Opis.Text;
                trenutniSpomenik.TuristickiStatus = Turizam.SelectedIndex;
                trenutniSpomenik.Prihod           = Prihod.Text;
                trenutniSpomenik.EkoloskiUgrozen  = ekoloski;
                trenutniSpomenik.UgrozeneVrste    = staniste;
                trenutniSpomenik.Naseljen         = naselje;
                trenutniSpomenik.Datum            = Datum.ToString();
                trenutniSpomenik.Etikete          = IzabraneEtikete;
                //trenutniSpomenik.Tip.Vrste.Remove(trenutniSpomenik);
                trenutniSpomenik.Tip = (Tip)Tip.SelectedItem;
                //trenutniSpomenik.Tip.Vrste.Add(trenutniSpomenik);
            }

            this.Close();
        }
Exemplo n.º 17
0
        private void mapaSpomenika_Drop(object sender, DragEventArgs e)
        {
            Point dropPosition = e.GetPosition(mapaSpomenika);

            if (ClickedVrsta1((int)dropPosition.X, (int)dropPosition.Y) != null)
            {
                return;
            }

            if (e.Data.GetDataPresent(FROM_SIDEBAR))    //sa panela na kanvas
            {
                Spomenik spomenik = e.Data.GetData(FROM_SIDEBAR) as Spomenik;

                Spomenici.Remove(spomenik); //uklanjam iz spomenik koje nisu na kanvasu spomenika
                spomenik.X = (int)dropPosition.X - OFFSET;
                spomenik.Y = (int)dropPosition.Y - OFFSET;

                this.ChangeDroppedSpomenik(spomenik); //pozivam serijalizaciju zbog koordinata

                DroppedSpomenici.Add(spomenik);       //dodajem u spomenike na kanvasu spomenika

                Canvas canvas = this.mapaSpomenika;

                Image VrstaIkonica = new Image
                {
                    Width  = ICON_SIZE,
                    Height = ICON_SIZE,
                    Uid    = spomenik.Oznaka,
                    Source = new BitmapImage(new Uri(spomenik.Slika, UriKind.Absolute))
                };


                VrstaIkonica.ToolTip = spomenik.Oznaka + "\n" + spomenik.Ime;



                canvas.Children.Add(VrstaIkonica);

                Canvas.SetLeft(VrstaIkonica, spomenik.X);
                Canvas.SetTop(VrstaIkonica, spomenik.Y);

                return;
            }

            if (e.Data.GetDataPresent(FROM_CANVAS)) //sa kanvasa na kanvas
            {
                Spomenik spomenik = e.Data.GetData(FROM_CANVAS) as Spomenik;

                DroppedSpomenici.Remove(spomenik);
                spomenik.X = (int)dropPosition.X - OFFSET;
                spomenik.Y = (int)dropPosition.Y - OFFSET;

                this.ChangeDroppedSpomenik(spomenik);
                DroppedSpomenici.Add(spomenik);

                Canvas canvas = this.mapaSpomenika;

                UIElement remove = null;
                foreach (UIElement elem in canvas.Children)
                {
                    if (elem.Uid == spomenik.Oznaka)
                    {
                        remove = elem;
                        break;
                    }
                }
                canvas.Children.Remove(remove);

                Image VrstaIkonica = new Image
                {
                    Width  = ICON_SIZE,
                    Height = ICON_SIZE,
                    Uid    = spomenik.Oznaka,
                    Source = new BitmapImage(new Uri(spomenik.Slika, UriKind.Absolute)),
                };


                VrstaIkonica.ToolTip = spomenik.Oznaka + "\n" + spomenik.Ime;


                canvas.Children.Add(VrstaIkonica);

                Canvas.SetLeft(VrstaIkonica, spomenik.X);
                Canvas.SetTop(VrstaIkonica, spomenik.Y);

                return;
            }
        }
Exemplo n.º 18
0
        private void btnGetParkInfo_Click(object sender, EventArgs e)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                string nazivParka   = "Tvrđava";
                string nazivOpstine = "Crveni krst";

                Park p = s.Query <Park>()
                         .Where(x => x.Naziv == nazivParka && x.Opstina == nazivOpstine)
                         .FirstOrDefault();

                String ispis = "Park " + p.Naziv + " u opštini " + p.Opstina + ":\n\n";
                ispis += "Radnici koji trenutno rade u tom parku:\n";

                List <RadiU> radiU = p.Radnici.Where(x => x.DatumDo == null).ToList();

                foreach (RadiU stavka in radiU)
                {
                    ispis += stavka.Radnik.BrRadneKnjizice + " " + stavka.Radnik.Ime + " ("
                             + stavka.Radnik.ImeRoditelja + ") " + stavka.Radnik.Prezime
                             + " počeo sa radom " + stavka.DatumOd.ToShortDateString() + "\n";
                }

                ispis += "\nŠef parka je ";
                JeSef trenutniSef = p.Sefovi.Where(x => x.DatumDo == null).FirstOrDefault();
                ispis += trenutniSef.Radnik.Ime + " (" + trenutniSef.Radnik.ImeRoditelja + ") "
                         + trenutniSef.Radnik.Prezime + " " + trenutniSef.Radnik.BrRadneKnjizice + "\n\n";

                ispis += "Objekti koji se nalaze u parku:\n";
                List <Objekat> objektiSorted = p.Objekti.OrderBy(x => x.RedniBroj).ToList();

                foreach (Objekat o in objektiSorted)
                {
                    ispis += o.RedniBroj + ": ";
                    if (o.GetType() == typeof(Klupa))
                    {
                        ispis += "Klupa";
                    }
                    else if (o.GetType() == typeof(Fontana))
                    {
                        ispis += "Fontana";
                    }
                    else if (o.GetType() == typeof(Svetiljka))
                    {
                        ispis += "Svetiljka";
                    }
                    else if (o.GetType() == typeof(Igraliste))
                    {
                        Igraliste i = o as Igraliste;
                        ispis += "Igralište " + (i.BrojIgracaka == null ? "" : "sa " + i.BrojIgracaka + " igračaka ")
                                 + "za decu od " + i.StarostDeceOd + " do " + i.StarostDeceDo + " godina";
                    }
                    else if (o.GetType() == typeof(Spomenik))
                    {
                        Spomenik sp        = o as Spomenik;
                        Zasticen spZastita = sp.Zasticen;
                        ispis += "Spomenik, zaštićen datuma " + spZastita.DatumStavljanja.ToShortDateString()
                                 + " od strane institucije \"" + spZastita.Institucija
                                 + "\", uz opis: \"" + spZastita.Opis
                                 + "\". Godišnja novčana naknada za potrebe zaštite ovog spomenika iznosi "
                                 + spZastita.NovcanaNaknada + " dinara.";
                    }
                    else if (o.GetType() == typeof(Skulptura))
                    {
                        Skulptura sk        = o as Skulptura;
                        Zasticen  skZastita = sk.Zasticen;
                        ispis += "Skulptura, zaštićena datuma " + skZastita.DatumStavljanja.ToShortDateString()
                                 + " od strane institucije \"" + skZastita.Institucija
                                 + "\", uz opis: \"" + skZastita.Opis
                                 + "\". Godišnja novčana naknada za potrebe zaštite ove skulpture iznosi "
                                 + skZastita.NovcanaNaknada + " dinara.";
                    }
                    else if (o.GetType() == typeof(Drvo))
                    {
                        Drvo     d        = o as Drvo;
                        Zasticen dZastita = d.Zasticen;

                        ispis += "Drvo, vrste " + d.Vrsta
                                 + (d.ObimDebla == null ? "" : ", obima debla " + d.ObimDebla + " metara")
                                 + (d.PovrsinaPokrivanja == null ? "" : ", površine pokrivanja " + d.PovrsinaPokrivanja + " metara")
                                 + (d.VisinaKrosnje == null ? "" : ", visine krošnje " + d.VisinaKrosnje + " metara")
                                 + (d.DatumSadnje == null ? "" : " , posađeno datuma " + d.DatumSadnje.Value.ToShortDateString()) + ".";
                        if (dZastita != null)
                        {
                            ispis += " Drvo je zaštićeno datuma " + dZastita.DatumStavljanja.ToShortDateString()
                                     + " od strane institucije \"" + dZastita.Institucija
                                     + "\", uz opis: \"" + dZastita.Opis
                                     + "\". Godišnja novčana naknada za potrebe zaštite ovog drveta iznosi "
                                     + dZastita.NovcanaNaknada + " dinara.";
                        }
                    }
                    ispis += "\n";
                }

                s.Close();
                MessageBox.Show(ispis);
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }
Exemplo n.º 19
0
        public DodajVrstuForma(Spomenik s, MainWindow mwi)
        {
            this.DataContext = this;
            Tipovi           = MainWindow.Tipovi;
            Etikete          = MainWindow.Etikete;
            Spomenici        = MainWindow.Spomenici;
            SlobodneEtikete  = new ObservableCollection <Etiketa>();

            IzabraneEtikete = s.Etikete;


            foreach (Etiketa et in MainWindow.Etikete)
            {
                SlobodneEtikete.Add(et);
            }


            foreach (Etiketa et in s.Etikete)
            {
                SlobodneEtikete.Remove(et);
            }

            trenutniSpomenik = s;
            InitializeComponent();

            Oznaka.Text           = s.Oznaka;
            Ime.Text              = s.Ime;
            Opis.Text             = s.Opis;
            Turizam.SelectedIndex = s.TuristickiStatus;
            if (s.UgrozeneVrste == true)
            {
                StanisteDA.IsChecked = true;
            }
            else if (s.UgrozeneVrste == false)
            {
                StanisteNE.IsChecked = true;
            }

            if (s.Naseljen == true)
            {
                NaseljenoDA.IsChecked = true;
            }
            else if (s.Naseljen == false)
            {
                NaseljenoNE.IsChecked = true;
            }

            if (s.EkoloskiUgrozen == true)
            {
                UgrozenDA.IsChecked = true;
            }
            else if (s.EkoloskiUgrozen == false)
            {
                UgrozenNE.IsChecked = true;
            }

            Prihod.Text         = s.Prihod;
            Klima.SelectedIndex = s.TuristickiStatus;
            Datum.SelectedDate  = DateTime.Parse(s.Datum);
            //Slika = s.Ikonica;
            img.Source       = new BitmapImage(new Uri(s.Ikonica));
            Tip.SelectedItem = s.Tip;
            mw = mwi;
        }
Exemplo n.º 20
0
 public SpomenikView(Spomenik s) : base(s)
 {
     TipObjekta = "Spomenik";
     Detalji    = "Pod zaštitom države.";
 }