public void Main(PizzakiszallitasMainForm form, CityVisual CV)
        {
            Utvonalterv  megtervezettUtvonal  = null;
            Futar        szabadFutar          = null;
            Rendeles     aktualisRendeles     = null;
            FutarAllapot aktualisFutarAllapot = FutarAllapot.varakozik;
            string       message             = "";
            int          rendelesekSzama     = 0;
            int          KovetkezoFutarIndex = 0;

            rendelesekSzama = rendelesek.RendelesekSzama();
            for (int i = 0; i < rendelesekSzama; i++)
            {
                megtervezettUtvonal = iroda.UtvonalTervezes(rendelesek, 2);
                if (megtervezettUtvonal.UtvonalAltalTartalmazottRendelesekSzama() == 0)
                {
                    break;
                }
                szabadFutar         = futarok.KovetkezoFutar(KovetkezoFutarIndex);
                KovetkezoFutarIndex = Futarok.KovetkezoIndex(KovetkezoFutarIndex, futarok.FutarokSzama());
                if (szabadFutar != null)
                {
                    aktualisFutarAllapot = szabadFutar.getFutarAllapot();
                    message = szabadFutar.GetFutarNev() + " állapota: " + aktualisFutarAllapot.ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);

                    szabadFutar.UtvonaltervetFelvesz(megtervezettUtvonal);
                    aktualisFutarAllapot = iroda.FutartIndit(szabadFutar);
                    message = szabadFutar.GetFutarNev() + " állapota: " + szabadFutar.getFutarAllapot().ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);

                    while ((aktualisRendeles = szabadFutar.getSzallitasiSorrend().KovetkezoRendeles()) != null)
                    {
                        CV.VisitCity(szabadFutar, aktualisRendeles);
                        message = "\t" + szabadFutar.GetFutarNev() + " tartózkodási helye: " + aktualisRendeles.RendelesiCim().ToString();
                        form.AppendLineToOutput(message);
                        System.Threading.Thread.Sleep(2 * 1000);
                    }
                    message = szabadFutar.GetFutarNev() + " állapota: " + szabadFutar.VisszafeleMegy().ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);

                    message = szabadFutar.GetFutarNev() + " állapota: " + szabadFutar.VisszatertFutar().ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);
                }
            }

            return;
        }
        private Futarok InitializeDelivers()
        {
            futarok = new Futarok();
            Futar futar1 = new Futar("Jurij", Color.DarkCyan);
            Futar futar2 = new Futar("Alekszej", Color.SeaGreen);
            Futar futar3 = new Futar("Szasa", Color.Orange);
            Futar futar4 = new Futar("Lena", Color.Maroon);

            futarok.UjFutarHozzaadasa(futar1);
            futarok.UjFutarHozzaadasa(futar2);
            futarok.UjFutarHozzaadasa(futar3);
            futarok.UjFutarHozzaadasa(futar4);

            return(futarok);
        }
示例#3
0
        public Futar KovetkezoFutar(int index)
        {
            Futar szabadFutar = null;

            try
            {
                szabadFutar = futarok.ElementAt(index);

                return(szabadFutar);
            }
            catch (ArgumentOutOfRangeException)
            {
                szabadFutar = KovetkezoFutar();

                return(szabadFutar);
            }
        }
示例#4
0
        public Futar KovetkezoFutar()
        {
            Futar szabadFutar = null;

            List <Futar> .Enumerator listIterator = futarok.GetEnumerator();

            while (listIterator.MoveNext())
            {
                if (listIterator.Current.getFutarAllapot() == FutarAllapot.varakozik)
                {
                    szabadFutar = listIterator.Current;
                    return(szabadFutar);
                }
            }

            return(szabadFutar);
        }
示例#5
0
        public void VisitCity(Futar aktualisFutar, Rendeles aktualisRendeles)
        {
            string KiszallitasiCim = aktualisRendeles.RendelesiCim().ToString();

            System.Drawing.Color           futarSzin         = aktualisFutar.GetJeloloSzin();
            System.Drawing.Color           eredetiEpuletSzin = System.Drawing.Color.Blue;
            System.Collections.IEnumerator elemek            = CityDrawArea.Children.GetEnumerator();
            System.Windows.Media.Color     ConvertedColor;
            UIElement elem = null;
            string    aktualisCim;

            while (elemek.MoveNext())
            {
                elem = (UIElement)elemek.Current;

                if (elem is Rectangle)
                {
                    aktualisCim = (elem as Rectangle).ToolTip.ToString();
                    if (KiszallitasiCim == aktualisCim)
                    {
                        ConvertedColor           = System.Windows.Media.Color.FromArgb(futarSzin.A, futarSzin.R, futarSzin.G, futarSzin.B);
                        (elem as Rectangle).Fill = new SolidColorBrush(ConvertedColor);
                        this.Refresh();
                        break;
                    }
                }
            }
            System.Threading.Thread.Sleep(2 * 1000);
            if (elem != null && elem is Rectangle)
            {
                ConvertedColor           = System.Windows.Media.Color.FromArgb(eredetiEpuletSzin.A, eredetiEpuletSzin.R, eredetiEpuletSzin.G, eredetiEpuletSzin.B);
                (elem as Rectangle).Fill = new SolidColorBrush(ConvertedColor);
                this.Refresh();
            }

            return;
        }
        public void InitializeDelivers(Futarok futarok)
        {
            Futar  futar = null;
            string FutarNeve;
            Color  FutarSzine;

            List <Futar> .Enumerator FutarIterator  = futarok.GetFutarIterator();
            ListViewItem             listaFutarElem = null;
            Bitmap SzinDoboz  = null;
            int    listaIndex = 0;

            while (FutarIterator.MoveNext())
            {
                futar      = FutarIterator.Current;
                FutarNeve  = futar.GetFutarNev();
                FutarSzine = futar.GetJeloloSzin();

                listaFutarElem            = new ListViewItem();
                listaFutarElem.Text       = FutarNeve;
                listaFutarElem.ImageIndex = listaIndex;
                SzinDoboz = new Bitmap(60, 60);

                for (int y = 0; y < SzinDoboz.Width; y++)
                {
                    for (int x = 0; x < SzinDoboz.Width; x++)
                    {
                        SzinDoboz.SetPixel(x, y, FutarSzine);
                    }
                }
                ilLegend.Images.Add(SzinDoboz);
                lvDelivers.Items.Add(listaFutarElem);
                listaIndex++;
            }

            return;
        }
示例#7
0
        public void UjFutarHozzaadasa(Futar UjFutar)
        {
            futarok.Add(UjFutar);

            return;
        }
示例#8
0
 //Meghivja a futar Kiszalitas metodusat, majd visszadja a visszatérési értéket
 public FutarAllapot FutartIndit(Futar futar)
 {
     return(futar.Kiszallitas());
 }