예제 #1
0
        private void CheckBoxZoneTypes_unchecked(object sender, RoutedEventArgs e)
        {
            CheckBox         chkZone = (CheckBox)sender;
            TipManifestacije tip     = ListaTipManifestacijecs.TipoviManifestacija[chkZone.Tag.ToString()];

            filterTipovi.Remove(tip);
        }
        /* ----------- POTVRDA I DODAVANJE/IZMENA TIPA MANIFESTACIJE ----------- */
        private void PotvrdiClick(object sender, RoutedEventArgs e)
        {
            if (stariTip == null)
            {
                ((MainWindow)Application.Current.Windows[0]).addTip(noviTip); //kreiranje i dodavanje u listu svih tipova
            }
            else //izmena iz liste svih tipova i manifestacija koje su tog tipa
            {
                int ind1 = ((MainWindow)Application.Current.Windows[0]).TipoviManifestacija.IndexOf(stariTip);
                ((MainWindow)Application.Current.Windows[0]).TipoviManifestacija.RemoveAt(ind1);
                ((MainWindow)Application.Current.Windows[0]).TipoviManifestacija.Insert(ind1, noviTip);

                foreach (Manifestacija m in noviTip.ListaManifestacija)
                {
                    m.Tip       = noviTip;
                    m.TipString = NoviTip.ToString();
                }
            }

            if (((Button)sender).Name.Equals("nastavak"))
            {
                noviTip = new TipManifestacije();

                this.DataContext = noviTip;

                oznTxtBox.Focus();
                Keyboard.Focus(oznTxtBox);
            }
            else
            {
                this.Close();
            }
        }
        /* ----------- KONSTRUKTOR KOJI SE KORISTI KAD SE KREIRA TIP MANIFESTACIJE IZ GLAVNOG PROZORA ----------- */
        public UnosTipa()
        {
            WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen; //centriranje prozora

            noviTip = new TipManifestacije();

            InitializeComponent();

            this.DataContext = noviTip;

            //fokus je na prvom polju za popunjavanje
            oznTxtBox.Focus();
            Keyboard.Focus(oznTxtBox);
        }
        public Manifestacija(string naziv, TipManifestacije tipManifestacije, int brojMesta, DateTime vreme, int cenaRegular, int cenaFunPit, int cenaVIP, StatusManifestacije status, string ulica, string broj, string grad, long postanskiBroj, Prodavac prodavac, int preostalaMesta)
        {
            MestoOdrzavanja mesto = new MestoOdrzavanja(ulica, broj, grad, postanskiBroj);

            this.Naziv            = naziv;
            this.TipManifestacije = tipManifestacije;
            this.BrojMesta        = brojMesta;
            this.Vreme            = vreme;
            this.CenaRegular      = cenaRegular;
            this.CenaFunPit       = cenaFunPit;
            this.CenaVIP          = cenaVIP;
            this.Status           = status;
            this.Prodavac         = prodavac;
            this.PreostalaMesta   = preostalaMesta;
        }
예제 #5
0
        private void Row_DoubleClick(object sender, MouseButtonEventArgs e)
        {
            if (trenutniPanel == pnlManif)
            {
                Manifestacija selekt = (Manifestacija)tabelaManif.SelectedItem;
                var           item   = sender as DataGridRow;

                if (item != null && item.IsSelected)
                {
                    if (ListaManifestacija.Manifestacije.ContainsKey(selekt.ID))
                    {
                        ManifestacijaWindow rsv = new ManifestacijaWindow(this, true, selekt);
                        rsv.ShowDialog();
                        return;
                    }
                }
            }
            else if (trenutniPanel == pnlTipoviManif)
            {
                TipManifestacije selekt = (TipManifestacije)tabelaTipoviManif.SelectedItem;
                var item = sender as DataGridRow;

                if (item != null && item.IsSelected)
                {
                    if (ListaTipManifestacijecs.TipoviManifestacija.ContainsKey(selekt.ID))
                    {
                        TipManifestacijeWindow rsv = new TipManifestacijeWindow(this, true, selekt);
                        rsv.ShowDialog();
                        return;
                    }
                }
            }
            else if (trenutniPanel == pnlEtikete)
            {
                Etiketa selekt = (Etiketa)tabelaEtikete.SelectedItem;
                var     item   = sender as DataGridRow;

                if (item != null && item.IsSelected)
                {
                    if (ListaEtiketa.Etikete.ContainsKey(selekt.ID))
                    {
                        EtiketaWindow rsv = new EtiketaWindow(this, true, selekt);
                        rsv.ShowDialog();
                        return;
                    }
                }
            }
        }
예제 #6
0
        public TipManifestacijeWindow(Window parent, bool edit, TipManifestacije sel)
        {
            InitializeComponent();
            this.DataContext = this;

            ParentWindow = parent;
            this.Owner   = parent;
            Editing      = edit;
            Selektovan   = sel;

            if (Editing)
            {
                Title = "Change type of event";
                popuniPolja();
                txtID.IsEnabled = false;
            }
        }
        /* ----------- KONSTRUKTOR KOJI SE KORISTI KOD IZMENE TIPA MANIFESTACIJE ----------- */
        public UnosTipa(TipManifestacije stariT)
        {
            WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen; //centriranje prozora

            stariTip       = stariT;
            stariTipOznaka = stariT.Oznaka;
            noviTip        = new TipManifestacije(stariTip);

            InitializeComponent();

            this.DataContext = noviTip;

            nastavak.Visibility = Visibility.Collapsed;

            //fokus je na prvom polju za popunjavanje
            oznTxtBox.Focus();
            Keyboard.Focus(oznTxtBox);
        }
예제 #8
0
        /* METODA ZA PRETRAŽIVANJE TABELE TIPOVA MANIFESTACIJA */
        private void searchTipoviTextEntered(object sender, RoutedEventArgs e)
        {
            string          filter = searchTipoviTxt.Text;
            ICollectionView cv     = CollectionViewSource.GetDefaultView(tabelaTip.ItemsSource);

            if (filter == "")
            {
                cv.Filter = null;
            }
            else
            {
                cv.Filter = o =>
                {
                    TipManifestacije t = o as TipManifestacije;
                    return(t.Naziv.ToLower().Contains(filter.ToLower()) || t.Opis.ToLower().Contains(filter.ToLower()) || t.Oznaka.ToLower().Contains(filter.ToLower()));
                };
            }
        }
예제 #9
0
        /* ----------- IZMENA IZABRANOG TIPA/MANIFESTACIJE/ETIKETE ----------- */
        private void IzmenaClick(object sender, RoutedEventArgs e)
        {
            if (tabovi.IsVisible == false) //za sada ne moze da se brise ako nije u tabelarnom prikazu
            {
                MessageBox.Show("Izmena tipa manifestacije/manifestacije/etikete je omogućena 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 izmenite.", "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 izmenite.", "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 izmenite.", "Mapa manifestacija", MessageBoxButton.OK, MessageBoxImage.Asterisk);
            }
            else if (tabelaEtiketa.SelectedItem is Etiketa && tabovi.SelectedIndex == 2)
            {
                Etiketa selectedEt = (Etiketa)tabelaEtiketa.SelectedItem;

                UnosEtikete unosE = new UnosEtikete(selectedEt); //poziva se konstruktor sa starom etiketom kod izmene
                unosE.ShowDialog();
            }
            else if (tabelaTip.SelectedItem is TipManifestacije && tabovi.SelectedIndex == 1)
            {
                TipManifestacije selectedTip = (TipManifestacije)tabelaTip.SelectedItem;

                UnosTipa unosT = new UnosTipa(selectedTip); //poziva se konstruktor sa starim tipom kod izmene
                unosT.ShowDialog();
            }
            else if (tabela.SelectedItem is Manifestacija && tabovi.SelectedIndex == 0)
            {
                Manifestacija selectedMan = (Manifestacija)tabela.SelectedItem;

                UnosManifestacija unosM = new UnosManifestacija(selectedMan); //poziva se konstruktor sa starom manifestacijom kod izmene
                unosM.ShowDialog();
            }
        }
예제 #10
0
 public void dodajTipManifestacije(TipManifestacije tm)
 {
     TipoviManifestacija.Add(tm);
 }
예제 #11
0
        private void Load()
        {
            bool           nadjeno  = true;
            StreamReader   sr       = null;
            OpenFileDialog openFile = null;
            string         line;

            while (nadjeno)
            {
                openFile        = new OpenFileDialog();
                openFile.Title  = "Open Text File";
                openFile.Filter = "TXT files|*.txt";
                if (openFile.ShowDialog() == true)
                {
                    try
                    {
                        sr = new StreamReader(openFile.FileName);
                    }
                    catch (SecurityException ex)
                    {
                        MessageBox.Show($"Security error.\n\nError message: {ex.Message}\n\n" +
                                        $"Details:\n\n{ex.StackTrace}");
                    }
                }
                else
                {
                    System.Environment.Exit(1);
                }


                string line1 = File.ReadLines(openFile.FileName).First();
                if (!(line1.Equals("MAP-EVENTS")))
                {
                    MessageBoxResult result = MessageBox.Show("Not Supported File");
                }
                else
                {
                    nadjeno = false;
                }
            }

            sr.ReadLine();
            int i = 0;

            ListaEtiketa.Etikete = new Dictionary <string, Etiketa>();
            ListaTipManifestacijecs.TipoviManifestacija = new Dictionary <string, TipManifestacije>();
            ListaManifestacija.Manifestacije            = new Dictionary <string, Manifestacija>();
            while ((line = sr.ReadLine()) != null)
            {
                if (line == "")
                {
                    i++;
                    if (sr.ReadLine() != null && i < 3)
                    {
                        line = sr.ReadLine();
                    }
                }
                if (i == 0)
                {
                    string[] et    = line.Split('|');
                    Color    color = (Color)ColorConverter.ConvertFromString(et[2]);
                    Etiketa  novaE = new Etiketa(et[0], color, et[1], new SolidColorBrush(color));
                    ListaEtiketa.Etikete.Add(et[0], novaE);
                }
                else if (i == 1)
                {
                    string[]    et    = line.Split('|');
                    ImageSource slika = null;
                    slika = new BitmapImage(new Uri(et[3]));
                    TipManifestacije tipM = new TipManifestacije(et[0], et[1], et[2], slika);
                    ListaTipManifestacijecs.TipoviManifestacija.Add(et[0], tipM);
                }
                else
                {
                    bool          a = true;
                    Manifestacija m = null;
                    //line = sr.ReadLine();
                    while (a)
                    {
                        if (line == null)
                        {
                            ListaManifestacija.Manifestacije.Add(m.ID, m);
                            return;
                        }
                        string[] manif = line.Split('|');

                        ImageSource slika = null;
                        slika = new BitmapImage(new Uri(manif[10]));
                        TipManifestacije tipM  = ListaTipManifestacijecs.TipoviManifestacija[manif[11]];
                        string[]         koord = manif[15].Split(',');
                        Point            tacka = new Point(Double.Parse(koord[0]), Double.Parse(koord[1]));
                        m = new Manifestacija(manif[0], manif[1], manif[2], manif[3], manif[4], Boolean.Parse(manif[5]), Boolean.Parse(manif[6]), Boolean.Parse(manif[7]), int.Parse(manif[8]), manif[9], slika,
                                              tipM, tacka);
                        m.Etikete = new List <Etiketa>();
                        while ((line = sr.ReadLine()) != null)
                        {
                            if ((line.StartsWith(manif[0] + "#E")))
                            {
                                string[] l1  = line.Split('|');
                                Etiketa  et1 = ListaEtiketa.Etikete[l1[1]];
                                m.Etikete.Add(et1);
                            }
                            else
                            {
                                ListaManifestacija.Manifestacije.Add(m.ID, m);
                                break;
                            }
                        }
                    }
                }
            }
        }
예제 #12
0
        /* ----------- 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
            }
        }
예제 #13
0
 public void addTip(TipManifestacije t)
 {
     TipoviManifestacija.Add(t);
 }
예제 #14
0
        private void Dodaj_Click(object sender, RoutedEventArgs e)
        {
            TipManifestacije tip = null;

            foreach (TipManifestacije tm in ListaTipManifestacijecs.TipoviManifestacija.Values)
            {
                if (tm.Ime.Equals(Tip))
                {
                    tip = tm;
                }
            }

            if (Editing == true)
            {
                ListaManifestacija.Manifestacije[Selektovan.ID].Tip = tip;
                ListaManifestacija.Manifestacije[Selektovan.ID].Ime = Ime;
                ListaManifestacija.Manifestacije[Selektovan.ID].StatusSluzenjaAlkohola = StatusSluzenjaAlkohola;
                ListaManifestacija.Manifestacije[Selektovan.ID].KategorijaCene         = KategorijaCene;
                ListaManifestacija.Manifestacije[Selektovan.ID].Hendikepirani          = Hendikepirani;
                ListaManifestacija.Manifestacije[Selektovan.ID].Pusenje          = Pusenje;
                ListaManifestacija.Manifestacije[Selektovan.ID].Napolju          = Napolju;
                ListaManifestacija.Manifestacije[Selektovan.ID].OcekivanaPublika = OcekivanaPublika;
                ListaManifestacija.Manifestacije[Selektovan.ID].Opis             = Opis;
                ListaManifestacija.Manifestacije[Selektovan.ID].Datum            = Datum;
                ListaManifestacija.Manifestacije[Selektovan.ID].Ikonica          = IkonicaP;
                ListaManifestacija.Manifestacije[Selektovan.ID].Etikete          = null;
                ListaManifestacija.Manifestacije[Selektovan.ID].Etikete          = new List <Etiketa>();
                foreach (Etiketa etiketa in this.IzabraneEtikete)
                {
                    ListaManifestacija.Manifestacije[Selektovan.ID].Etikete.Add(etiketa);
                }
            }
            else
            {
                if (IkonicaP == null)
                {
                    string idTipa = "";
                    foreach (KeyValuePair <string, TipManifestacije> pair in ListaTipManifestacijecs.TipoviManifestacija)
                    {
                        if (pair.Value.Ime.Equals(Tip))
                        {
                            idTipa = pair.Key;
                            break;
                        }
                    }
                    IkonicaP = ListaTipManifestacijecs.TipoviManifestacija[idTipa].Ikonica;
                }

                if (Opis == null)
                {
                    Opis = "";
                }


                Manifestacija novaManifestacija = new Manifestacija(ID, Ime, Opis, StatusSluzenjaAlkohola, KategorijaCene, Hendikepirani, Pusenje, Napolju, OcekivanaPublika, Datum, IkonicaP, tip, new Point());
                novaManifestacija.Etikete = new List <Etiketa>();
                if (this.IzabraneEtikete != null)
                {
                    if (this.IzabraneEtikete.Count != 0)
                    {
                        foreach (Etiketa etiketa in this.IzabraneEtikete)
                        {
                            novaManifestacija.Etikete.Add(etiketa);
                        }
                    }
                }

                ListaManifestacija.Manifestacije.Add(ID, novaManifestacija);
            }



            //Refresh liste u parent prozoru
            if (ParWindow is MainWindow)
            {
                MainWindow pw = (MainWindow)Owner;
                pw.setManifestacijeItems();
            }
            else if (ParWindow is ViewWindow)
            {
                ViewWindow parentWindow = (ViewWindow)Owner;
                parentWindow.dodajManifestaciju(new Manifestacija(ID, Ime, Opis, StatusSluzenjaAlkohola, KategorijaCene, Hendikepirani, Pusenje, Napolju, OcekivanaPublika, Datum, IkonicaP, tip, new Point()));
                MainWindow main = parentWindow.ParentWindow;
                main.setManifestacijeItems();
            }

            Selektovan      = null;
            IzabraneEtikete = null;

            if (((Button)sender).Name.Equals("AddMore"))
            {
                Selektovan         = new Manifestacija();
                Selektovan.Etikete = new List <Etiketa>();

                popuniPolja();
                NapuniEtikete();
            }
            else
            {
                Close();
            }
        }