コード例 #1
0
        /// <summary>
        /// event handler for the next button lets size customization know where to return to
        /// and changes screen to size customization
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void FlavorNextButton(object sender, RoutedEventArgs e)
        {
            SizeCustomization size  = new SizeCustomization(0, ss);
            OrderWindow       order = this.FindAncestor <OrderWindow>();

            order.Swap(size);
        }
コード例 #2
0
        /// <summary>
        /// event handler for the grits button lets SizeCustomization know it's a side and
        /// changes the screen to Size customization
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void GritsButton(object sender, RoutedEventArgs e)
        {
            MadOtarGrits      mog    = new MadOtarGrits();
            SizeCustomization custom = new SizeCustomization(7, mog);
            OrderWindow       order  = this.FindAncestor <OrderWindow>();

            if (DataContext is Order orders)
            {
                orders.Add(mog);
            }
            order.Swap(custom);
        }
コード例 #3
0
        /// <summary>
        /// event handler for the Miraak button lets SizeCustomization know it's a side and
        /// changes the screen to Size customization
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void MiraakButton(object sender, RoutedEventArgs e)
        {
            FriedMiraak       fm     = new FriedMiraak();
            SizeCustomization custom = new SizeCustomization(6, fm);
            OrderWindow       order  = this.FindAncestor <OrderWindow>();

            if (DataContext is Order orders)
            {
                orders.Add(fm);
            }
            order.Swap(custom);
        }
コード例 #4
0
        /// <summary>
        /// event handler for the fries button lets SizeCustomization know it's a side and
        /// changes the screen to Size customization
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void FriesButton(object sender, RoutedEventArgs e)
        {
            DragonbornWaffleFries dwf    = new DragonbornWaffleFries();
            SizeCustomization     custom = new SizeCustomization(5, dwf);
            OrderWindow           order  = this.FindAncestor <OrderWindow>();

            if (DataContext is Order orders)
            {
                orders.Add(dwf);
            }
            order.Swap(custom);
        }
コード例 #5
0
        /// <summary>
        /// event handler for the salad button lets SizeCustomization know it's a side and
        /// changes the screen to Size customization
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void SaladButton(object sender, RoutedEventArgs e)
        {
            VokunSalad        vs     = new VokunSalad();
            SizeCustomization custom = new SizeCustomization(8, vs);
            OrderWindow       order  = this.FindAncestor <OrderWindow>();

            if (DataContext is Order orders)
            {
                orders.Add(vs);
            }
            order.Swap(custom);
        }
コード例 #6
0
 /// <summary>
 /// event hadler for next button, changes to either flavor customization, or size customization based
 /// on the soda variables value
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void CustomDrinkNextButton(object sender, RoutedEventArgs e)
 {
     if (drinkType == 0)//if it is a Sailor Soda
     {
         FlavorCustomization flavor = new FlavorCustomization((SailorSoda)drinking);
         OrderWindow         order  = this.FindAncestor <OrderWindow>();
         order.Swap(flavor);
     }
     else//if its not a soda
     {
         SizeCustomization size  = new SizeCustomization(drinkType, drinking);
         OrderWindow       order = this.FindAncestor <OrderWindow>();
         order.Swap(size);
     }
 }
コード例 #7
0
        /// <summary>
        /// Accesses an existing list item for the order, allowing the user to change the details of that order.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ListItemSelected(object sender, SelectionChangedEventArgs e)
        {
            var orderControl = this.FindAncestor <OrderControl>();
            var selectedItem = (sender as ListBox).SelectedItem as IOrderItem;

            FrameworkElement screen = null;

            if (selectedItem != null)
            {
                switch (selectedItem.ToString())
                {
                case "Angry Chicken":
                    screen             = new AngryChickenCustomization();
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Cowpoke Chili":

                    screen             = new CowpokeChiliCustomization();
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Dakota Double Burger":

                    screen             = new DakotaDoubleBurgerCustomization();
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Pecos Pulled Pork":

                    screen             = new PecosPulledPorkCustomization();
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Trail Burger":

                    screen             = new TrailBurgerCustomization();
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Texas Triple Burger":

                    screen             = new TexasTripleBurgerCustomization();
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Small Baked Beans":
                case "Medium Baked Beans":
                case "Large Baked Beans":
                case "Small Chili Cheese Fries":
                case "Medium Chili Cheese Fries":
                case "Large Chili Cheese Fries":
                case "Small Corn Dodgers":
                case "Medium Corn Dodgers":
                case "Large Corn Dodgers":
                case "Small Pan De Campo":
                case "Medium Pan De Campo":
                case "Large Pan De Campo":

                    screen             = new SizeCustomization(DataContext);
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Small Cowboy Coffee":
                case "Small Decaf Cowboy Coffee":
                case "Medium Cowboy Coffee":
                case "Medium Decaf Cowboy Coffee":
                case "Large Cowboy Coffee":
                case "Large Decaf Cowboy Coffee":
                    screen             = new CowboyCoffeeCustomization(DataContext);
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Small Texas Sweet Tea":
                case "Small Texas Plain Tea":
                case "Medium Texas Sweet Tea":
                case "Medium Texas Plain Tea":
                case "Large Texas Sweet Tea":
                case "Large Texas Plain Tea":
                    screen             = new TexasTeaCustomization(DataContext);
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                case "Small Water":
                case "Medium Water":
                case "Large Water":
                    screen             = new WaterCustomization(DataContext);
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;

                //Jerked Soda is set as default because it has 15 cases.
                default:
                    screen             = new JerkedSodaCustomization(DataContext);
                    screen.DataContext = selectedItem;
                    orderControl?.SwapScreen(screen);
                    break;
                }
            }
        }
コード例 #8
0
        public void OnAddOrderItemButtonClicked(object sender, RoutedEventArgs e)
        {
            var orderControl = this.FindAncestor <OrderControl>();

            if (DataContext is Order order)
            {
                if (sender is Button button)
                {
                    IOrderItem       item;
                    FrameworkElement screen = null;
                    switch (button.Tag)
                    {
                    //cases for entrees
                    case "CowpokeChili":

                        item               = new CowpokeChili();
                        screen             = new CowpokeChiliCustomization();
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "AngryChicken":

                        item               = new AngryChicken();
                        screen             = new AngryChickenCustomization();
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "DakotaDoubleBurger":

                        item               = new DakotaDoubleBurger();
                        screen             = new DakotaDoubleBurgerCustomization();
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "PecosPulledPork":

                        item               = new PecosPulledPork();
                        screen             = new PecosPulledPorkCustomization();
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "TrailBurger":

                        item               = new TrailBurger();
                        screen             = new TrailBurgerCustomization();
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "TexasTripleBurger":

                        item               = new TexasTripleBurger();
                        screen             = new TexasTripleBurgerCustomization();
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    // No screenswap is needed as the Ribs have no special instructions
                    case "RustlersRibs":

                        item = new RustlersRibs();
                        order.Add(item);
                        break;


                    // Separator for Sides

                    case "BakedBeans":
                        item               = new BakedBeans();
                        screen             = new SizeCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "ChiliCheeseFries":
                        item               = new ChiliCheeseFries();
                        screen             = new SizeCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "CornDodgers":
                        item               = new CornDodgers();
                        screen             = new SizeCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "PanDeCampo":
                        item               = new PanDeCampo();
                        screen             = new SizeCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    // And finally drinks

                    case "Water":
                        item               = new Water();
                        screen             = new WaterCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "JerkedSoda":
                        item               = new JerkedSoda();
                        screen             = new JerkedSodaCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "CowboyCoffee":
                        item               = new CowboyCoffee();
                        screen             = new CowboyCoffeeCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;

                    case "TexasTea":
                        item               = new TexasTea();
                        screen             = new TexasTeaCustomization(DataContext);
                        screen.DataContext = item;
                        order.Add(item);
                        orderControl?.SwapScreen(screen);
                        break;
                    }
                }
            }
        }
コード例 #9
0
 void EditItem(object sender, RoutedEventArgs e)
 {
     if (DataContext is Order order)
     {
         if (sender is Button button)
         {
             if (button.DataContext is IOrderItem item)
             {
                 if (item is BriarheartBurger bb)
                 {
                     BurgerCustomization bc        = new BurgerCustomization(bb, 0);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is DoubleDraugr dd)
                 {
                     BurgerCustomization bc        = new BurgerCustomization(dd, 1);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is ThalmorTriple tt)
                 {
                     BurgerCustomization bc        = new BurgerCustomization(tt, 2);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is GardenOrcOmelette goo)
                 {
                     OmeletteCustomization bc        = new OmeletteCustomization(goo);
                     OrderWindow           orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is PhillyPoacher pp)
                 {
                     PoacherCustomization bc        = new PoacherCustomization(pp);
                     OrderWindow          orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is SmokehouseSkeleton shs)
                 {
                     SkeletonCustomization bc        = new SkeletonCustomization(shs);
                     OrderWindow           orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is ThugsT_Bone ttb)
                 {
                     TBoneCustomization bc        = new TBoneCustomization(ttb);
                     OrderWindow        orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is DragonbornWaffleFries dwf)
                 {
                     SizeCustomization bc        = new SizeCustomization(5, dwf);
                     OrderWindow       orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is FriedMiraak fm)
                 {
                     SizeCustomization bc        = new SizeCustomization(6, fm);
                     OrderWindow       orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is MadOtarGrits mog)
                 {
                     SizeCustomization bc        = new SizeCustomization(7, mog);
                     OrderWindow       orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is VokunSalad vs)
                 {
                     SizeCustomization bc        = new SizeCustomization(8, vs);
                     OrderWindow       orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is AretinoAppleJuice aj)
                 {
                     DrinkCustomizations bc        = new DrinkCustomizations(aj, 3);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is CandlehearthCoffee chc)
                 {
                     DrinkCustomizations bc        = new DrinkCustomizations(chc, 1);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is MarkarthMilk mm)
                 {
                     DrinkCustomizations bc        = new DrinkCustomizations(mm, 4);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is SailorSoda ss)
                 {
                     DrinkCustomizations bc        = new DrinkCustomizations(ss, 0);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
                 if (item is WarriorWater ww)
                 {
                     DrinkCustomizations bc        = new DrinkCustomizations(ww, 2);
                     OrderWindow         orderList = this.FindAncestor <OrderWindow>();
                     orderList.Swap(bc);
                 }
             }
         }
     }
 }