/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); } }
/// <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; } } }
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; } } } }
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); } } } } }