Beispiel #1
0
        /// <summary>
        /// Takes the button selection for a menu item and updates screen to that items customization menu
        /// </summary>
        /// <param name="sender">Button</param>
        /// <param name="e">Event</param>
        public void MenuButtonPress(object sender, RoutedEventArgs e)
        {
            if (DataContext is Order orderX)
            {
                var              o = this.FindAncestor <OrderControl>();
                IOrderItem       choice;
                FrameworkElement display;
                switch ((sender as Button).Name)
                {
                case "burger":
                    display = new BriarheartBurgerCustom();
                    choice  = new BriarheartBurger();
                    break;

                case "draugr":
                    display = new DoubleDraugrCustom();
                    choice  = new DoubleDraugr();
                    break;

                case "triple":
                    display = new ThalmorTripleCustom();
                    choice  = new ThalmorTriple();
                    break;

                case "skeleton":
                    display = new SmokehousrSkeletonCustom();
                    choice  = new SmokehouseSkeleton();
                    break;

                case "omelette":
                    display = new GardenOrcOmeletteCustom();
                    choice  = new GardenOrcOmelette();
                    break;

                case "poacher":
                    display = new PhillyPoacherCustom();
                    choice  = new PhillyPoacher();
                    break;

                case "t_bone":
                    display = new NoCustom();
                    choice  = new ThugsTBone();
                    break;

                case "salad":
                    SideCustom salad = new SideCustom();
                    salad.Title.Text = "Vokun Salad Customization";
                    display          = salad;
                    choice           = new VokunSalad();
                    break;

                case "miraak":
                    SideCustom miraak = new SideCustom();
                    miraak.Title.Text = "Fried Miraak Customization";
                    display           = miraak;
                    choice            = new FriedMiraak();
                    break;

                case "grits":
                    SideCustom grits = new SideCustom();
                    grits.Title.Text = "Mad Otar Grits Customization";
                    display          = grits;
                    choice           = new MadOtarGrits();
                    break;

                case "fries":
                    SideCustom fries = new SideCustom();
                    fries.Title.Text = "DragonBorn Waffle Fries Customization";
                    display          = fries;
                    choice           = new DragonbornWaffleFries();
                    break;

                case "water":
                    display = new WarriorWaterCustom();
                    choice  = new WarriorWater();
                    break;

                case "soda":
                    display = new SailorSodaCustom();
                    choice  = new SailorSoda();
                    break;

                case "coffee":
                    display = new CandlehearthCoffeeCustom();
                    choice  = new CandlehearthCoffee();
                    break;

                case "milk":
                    display = new MarkarthMilkCustom();
                    choice  = new MarkarthMilk();
                    break;

                case "juice":
                    display = new ArentinoAppleJuiceCustom();
                    choice  = new AretinoAppleJuice();
                    break;

                case "ComboCreate":
                    display = new ComboCustom();
                    choice  = new Combo();
                    break;

                default:
                    display = new MenuSelection();
                    choice  = null;
                    break;
                }


                display.DataContext = choice;
                choice.Display      = display;
                o?.DisplayUpdate(display);
            }
        }
Beispiel #2
0
        // Edit item click event handler
        private void EditItemClick(object sender, SelectionChangedEventArgs e)
        {
            if (OrderList.SelectedItem == null)
            {
                return;
            }

            DependencyObject parent = this;

            do
            {
                parent = LogicalTreeHelper.GetParent(parent);
            } while (!(parent is MainWindow || parent is null));

            if (parent is MainWindow menu)
            {
                string itemString = OrderList.SelectedItem.ToString();

                if (itemString.Contains("Briarheart Burger"))
                {
                    BriarheartBurger item = e.AddedItems[0] as BriarheartBurger;
                    if (DataContext is Order order)
                    {
                        var screen = new BriarheartBurgerCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Double Draugr"))
                {
                    DoubleDraugr item = e.AddedItems[0] as DoubleDraugr;
                    if (DataContext is Order order)
                    {
                        var screen = new DoubleDraugrCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Thalmor Triple"))
                {
                    ThalmorTriple item = e.AddedItems[0] as ThalmorTriple;
                    if (DataContext is Order order)
                    {
                        var screen = new ThalmorTripleCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Garden Orc Omelette"))
                {
                    GardenOrcOmelette item = e.AddedItems[0] as GardenOrcOmelette;
                    if (DataContext is Order order)
                    {
                        var screen = new GardenOrcOmeletteCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Philly Poacher"))
                {
                    PhillyPoacher item = e.AddedItems[0] as PhillyPoacher;
                    if (DataContext is Order order)
                    {
                        var screen = new PhillyPoacherCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Smokehouse Skeleton"))
                {
                    SmokehouseSkeleton item = e.AddedItems[0] as SmokehouseSkeleton;
                    if (DataContext is Order order)
                    {
                        var screen = new SmokehouseSkeletonCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Thugs T-Bone"))
                {
                    ThugsTBone item = e.AddedItems[0] as ThugsTBone;
                    if (DataContext is Order order)
                    {
                        var screen = new ThugsTBoneCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Dragonborn Waffle Fries"))
                {
                    DragonbornWaffleFries item = e.AddedItems[0] as DragonbornWaffleFries;
                    if (DataContext is Order order)
                    {
                        var screen = new DragonbornWaffleFriesCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Fried Miraak"))
                {
                    FriedMiraak item = e.AddedItems[0] as FriedMiraak;
                    if (DataContext is Order order)
                    {
                        var screen = new FriedMiraakCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Mad Otar Grits"))
                {
                    MadOtarGrits item = e.AddedItems[0] as MadOtarGrits;
                    if (DataContext is Order order)
                    {
                        var screen = new MadOtarGritsCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Vokun Salad"))
                {
                    VokunSalad item = e.AddedItems[0] as VokunSalad;
                    if (DataContext is Order order)
                    {
                        var screen = new VokunSaladCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Arentino Apple Juice"))
                {
                    ArentinoAppleJuice item = e.AddedItems[0] as ArentinoAppleJuice;
                    if (DataContext is Order order)
                    {
                        var screen = new ArentinoAppleJuiceCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Candlehearth Coffee"))
                {
                    CandlehearthCoffee item = e.AddedItems[0] as CandlehearthCoffee;
                    if (DataContext is Order order)
                    {
                        var screen = new CandlehearthCoffeeCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Markarth Milk"))
                {
                    MarkarthMilk item = e.AddedItems[0] as MarkarthMilk;
                    if (DataContext is Order order)
                    {
                        var screen = new MarkarthMilkCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Sailor Soda"))
                {
                    SailorSoda item = e.AddedItems[0] as SailorSoda;
                    if (DataContext is Order order)
                    {
                        var screen = new SailorSodaCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }

                if (itemString.Contains("Warrior Water"))
                {
                    WarriorWater item = e.AddedItems[0] as WarriorWater;
                    if (DataContext is Order order)
                    {
                        var screen = new WarriorWaterCustom();
                        screen.DataContext       = item;
                        menu.displayBorder.Child = screen;
                    }
                }
            }
        }
        /// <summary>
        /// Order item method to add to the list and change price
        /// </summary>
        /// <param name="sender">order button</param>
        /// <param name="e">event handler when button pressed</param>
        void OrderTheItem(object sender, RoutedEventArgs e)
        {
            switch (StringGetter)
            {
            case "aretinoAppleJuice":
                AretinoAppleJuice drink = new AretinoAppleJuice();
                if (this.ice.IsChecked == true)
                {
                    drink.Ice = true;
                }
                if (this.sizer.Text == "Small")
                {
                    drink.Size = BleakwindBuffet.Data.Enums.Size.Small;
                }
                if (this.sizer.Text == "Medium")
                {
                    drink.Size = BleakwindBuffet.Data.Enums.Size.Medium;
                }
                if (this.sizer.Text == "Large")
                {
                    drink.Size = BleakwindBuffet.Data.Enums.Size.Large;
                }

                if (modifier == true)
                {
                    ((AretinoAppleJuice)Item).Size = drink.Size;
                    ((AretinoAppleJuice)Item).Ice  = drink.Ice;
                }

                (Application.Current.MainWindow as MainWindow).curOrder.Add(drink);

                return;

            case "candleHearthCoffee":
                CandlehearthCoffee coffee = new CandlehearthCoffee();
                if (this.ice.IsChecked == true)
                {
                    coffee.Ice = true;
                }
                if (this.cream.IsChecked == true)
                {
                    coffee.RoomForCream = true;
                }
                if (this.decaf.IsChecked == true)
                {
                    coffee.Decaf = true;
                }
                if (this.sizer.Text == "Small")
                {
                    coffee.Size = BleakwindBuffet.Data.Enums.Size.Small;
                }
                if (this.sizer.Text == "Medium")
                {
                    coffee.Size = BleakwindBuffet.Data.Enums.Size.Medium;
                }
                if (this.sizer.Text == "Large")
                {
                    coffee.Size = BleakwindBuffet.Data.Enums.Size.Large;
                }
                if (modifier == true)
                {
                    foreach (IOrderItem item in (Application.Current.MainWindow as MainWindow).curOrder.Orders)
                    {
                        if (item.GetType().IsAssignableFrom(coffee.GetType()))
                        {
                            (((CandlehearthCoffee)item).Size)         = coffee.Size;
                            (((CandlehearthCoffee)item).Ice)          = coffee.Ice;
                            (((CandlehearthCoffee)item).Decaf)        = coffee.Decaf;
                            (((CandlehearthCoffee)item).RoomForCream) = coffee.RoomForCream;
                        }
                    }
                }
                else
                {
                    if (Combo.IsChecked == true && (Application.Current.MainWindow as MainWindow).Combo.Drink == null)
                    {
                        (Application.Current.MainWindow as MainWindow).Combo.Drink = coffee;
                    }

                    else
                    {
                        (Application.Current.MainWindow as MainWindow).curOrder.Add(coffee);
                    }
                }
                return;

            case "markarthMilk":
                MarkarthMilk milk = new MarkarthMilk();
                if (this.ice.IsChecked == true)
                {
                    milk.Ice = true;
                }
                if (this.sizer.Text == "Small")
                {
                    milk.Size = BleakwindBuffet.Data.Enums.Size.Small;
                }
                if (this.sizer.Text == "Medium")
                {
                    milk.Size = BleakwindBuffet.Data.Enums.Size.Medium;
                }
                if (this.sizer.Text == "Large")
                {
                    milk.Size = BleakwindBuffet.Data.Enums.Size.Large;
                }
                if (modifier == true)
                {
                    foreach (IOrderItem item in (Application.Current.MainWindow as MainWindow).curOrder)
                    {
                        if (item.GetType().IsAssignableFrom(milk.GetType()))
                        {
                            ((CandlehearthCoffee)item).Size = milk.Size;
                            ((CandlehearthCoffee)item).Ice  = milk.Ice;
                        }
                    }
                }
                else
                {
                    if (Combo.IsChecked == true && (Application.Current.MainWindow as MainWindow).Combo.Drink == null)
                    {
                        (Application.Current.MainWindow as MainWindow).Combo.Drink = milk;
                    }

                    (Application.Current.MainWindow as MainWindow).curOrder.Add(milk);
                }
                return;

            case "sailorSoda":
                SailorSoda soda = new SailorSoda();
                if (this.ice.IsChecked == false)
                {
                    soda.Ice = false;
                }
                if (this.blackberry.IsChecked == true)
                {
                    soda.Flavor = SodaFlavor.Blackberry;
                }
                if (this.cherry.IsChecked == true)
                {
                    soda.Flavor = SodaFlavor.Cherry;
                }
                if (this.lemon.IsChecked == true)
                {
                    soda.Flavor = SodaFlavor.Lemon;
                }
                if (this.watermelon.IsChecked == true)
                {
                    soda.Flavor = SodaFlavor.Watermelon;
                }
                if (this.grapefruit.IsChecked == true)
                {
                    soda.Flavor = SodaFlavor.Grapefruit;
                }
                if (this.peach.IsChecked == true)
                {
                    soda.Flavor = SodaFlavor.Peach;
                }
                if (this.sizer.Text == "Small")
                {
                    soda.Size = BleakwindBuffet.Data.Enums.Size.Small;
                }
                if (this.sizer.Text == "Medium")
                {
                    soda.Size = BleakwindBuffet.Data.Enums.Size.Medium;
                }
                if (this.sizer.Text == "Large")
                {
                    soda.Size = BleakwindBuffet.Data.Enums.Size.Large;
                }
                if (Combo.IsChecked == true && (Application.Current.MainWindow as MainWindow).Combo.Drink == null)
                {
                    (Application.Current.MainWindow as MainWindow).Combo.Drink = soda;
                }

                else
                {
                    (Application.Current.MainWindow as MainWindow).curOrder.Add(soda);
                }

                return;

            case "warriorWater":
                WarriorWater water = new WarriorWater();
                if (this.ice.IsChecked == false)
                {
                    water.Ice = false;
                }

                if (this.sizer.Text == "Small")
                {
                    water.Size = BleakwindBuffet.Data.Enums.Size.Small;
                }
                if (this.sizer.Text == "Medium")
                {
                    water.Size = BleakwindBuffet.Data.Enums.Size.Medium;
                }
                if (this.sizer.Text == "Large")
                {
                    water.Size = BleakwindBuffet.Data.Enums.Size.Large;
                }
                if (Combo.IsChecked == true && (Application.Current.MainWindow as MainWindow).Combo.Drink == null)
                {
                    (Application.Current.MainWindow as MainWindow).Combo.Drink = water;
                }

                else
                {
                    (Application.Current.MainWindow as MainWindow).curOrder.Add(water);
                }

                return;
            }
        }