/// <summary> /// Event handler for Candlehearth Coffee selection /// </summary> /// <param name="sender">control exectuting event</param> /// <param name="e">data for event</param> void CandlehearthCoffee(object sender, RoutedEventArgs e) { drink = new DrinkOptions(); containerBorder.Child = drink; CandlehearthCoffee cc = new CandlehearthCoffee(); drink.DataContext = cc; drink.OrderList = OrderList; drink.drink.Text = "Candlehearth Coffee"; drink.ice.Visibility = Visibility.Visible; drink.cream.Visibility = Visibility.Visible; drink.decaf.Visibility = Visibility.Visible; }
/// <summary> /// sets new object as DataContext of the customization screen /// binds form controls to object properties /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void CustomizeCandlehearthCoffee(object sender, RoutedEventArgs e) { CandlehearthCoffee c = new CandlehearthCoffee(); var customizeScreen = new CustomizeCandlehearthCoffee(); //set DataContext customizeScreen.DataContext = c; //databinding customizeScreen.iceCheckBox.IsChecked = c.Ice; customizeScreen.decafCheckBox.IsChecked = c.Decaf; customizeScreen.creamCheckBox.IsChecked = c.RoomForCream; //size //switch screen selectionBorder.Child = customizeScreen; }
/// <summary> /// Event handler that goes to the candlehearth coffee special instructions /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void GoToCandlehearthInstructions(object sender, RoutedEventArgs e) { CandlehearthCoffee cc = new CandlehearthCoffee(); mainGrid.Children.RemoveAt(1); mainGrid.Children.Add(candlehearthCoffee); candlehearthCoffee.DataContext = cc; if (drinkMenu.FromCombo) { combo.Drink = cc; } else { ((Order)this.DataContext).Add(cc); } }
/// <summary> /// navigates to the candlehearth coffee cutomizations /// </summary> /// <param name="sender">button being sent</param> /// <param name="e">button pressed</param> private void CandlehearthCoffe_Click(object sender, RoutedEventArgs e) { var cc = new CandlehearthCoffee(); Candlehearth_Coffee Coffee = new Candlehearth_Coffee(ancestor); // this.NavigationService.Navigate(Coffee); Coffee.DataContext = cc; currentSelection?.Invoke(this, new CustomizationSelector() { orderItem = cc }); window.newOrder.Add(cc); ancestor.SwitchScreen(Screen.custCandlehearth, cc); }
/// <summary> /// Click event for candlehearthCoffeeButton. Opens candlehearth coffee customization screen when button is clicked. /// </summary> /// <param name="sender">Reference to the object that raised the event.</param> /// <param name="e">Contains the event data.</param> void OpenCandlehearthCoffeeCustomization(object sender, RoutedEventArgs e) { if (((Combo)this.DataContext).Drink is CandlehearthCoffee oldcc) { var ccCustomization = new CandlehearthCoffeeCustomization(currentOrder, true, (Combo)this.DataContext); ccCustomization.DataContext = oldcc; fullComponentBorder.Child = ccCustomization; } else { var ccCustomization = new CandlehearthCoffeeCustomization(currentOrder, true, (Combo)this.DataContext); CandlehearthCoffee cc = new CandlehearthCoffee(); ((Combo)this.DataContext).Drink = cc; ccCustomization.DataContext = cc; fullComponentBorder.Child = ccCustomization; } }
void AddCandlehearthCoffee(object sender, RoutedEventArgs e) { if (IsCombo) { c.Drink = new CandlehearthCoffee(); CustomizeComboMeal custom = new CustomizeComboMeal(c); OrderComponent orderComponent = this.FindAncestor <OrderComponent>(); orderComponent.Swap(custom); } if (DataContext is Order order) { CandlehearthCoffee c = new CandlehearthCoffee(); order.Add(c); CustomizeCandlehearthCoffee custom = new CustomizeCandlehearthCoffee(c, false); OrderComponent orderComponent = this.FindAncestor <OrderComponent>(); orderComponent.Swap(custom); } }
/// <summary> /// Click event to set up screen and send information to populate special instructions menu /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void MenuButtonClick(object sender, RoutedEventArgs e) { if (sender is Button button) { if (button == button0) { SailorSoda ss = new SailorSoda(); this.DataContext = ss; order.Add(ss); } if (button == button1) { MarkarthMilk mm = new MarkarthMilk(); this.DataContext = mm; order.Add(mm); } if (button == button2) { AretinoAppleJuice aj = new AretinoAppleJuice(); this.DataContext = aj; order.Add(aj); } if (button == button3) { CandlehearthCoffee cc = new CandlehearthCoffee(); this.DataContext = cc; order.Add(cc); } if (button == button4) { WarriorWater ww = new WarriorWater(); this.DataContext = ww; order.Add(ww); } customizeWindow.Child = new ItemCustomization(button.Content.ToString()); } }
/// <summary> /// Button event for vokun salad /// </summary> /// <param name="sender">object that sent event we are handling</param> /// <param name="e">parameters of event</param> private void SelectCoffee(object sender, RoutedEventArgs e) { if (DataContext is Order order) { CandlehearthCoffee coffee = new CandlehearthCoffee(); if (isCombo) { combo.Drink = coffee; comboCount++; AJButton.Visibility = Visibility.Collapsed; MilkButton.Visibility = Visibility.Collapsed; SodaButton.Visibility = Visibility.Collapsed; WaterButton.Visibility = Visibility.Collapsed; FinalizeCombo(); } else { order.Add(coffee); } SendToScreenSwitcher(new CoffeeCustomization(this, coffee)); } }
/// <summary> /// event handler that switches screens between home screen and item customization /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void onSwitchScreen(object sender, RoutedEventArgs e) { //if (DataContext is Order newOrder) //{ var buttons = (Button)sender; switch (buttons.ToString()) { case "System.Windows.Controls.Button: Briarheart Burger": BriarheartBurger newbb = new BriarheartBurger(); Ancestor.newOrder.Add(newbb); Ancestor.SwitchScreen(Screen.custBriarheartBurger, newbb); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Double Draugr": DoubleDraugr newdd = new DoubleDraugr(); Ancestor.newOrder.Add(newdd); Ancestor.SwitchScreen(Screen.custDoubleDraugr, newdd); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Garden Orc Omelette": GardenOrcOmelette newgoc = new GardenOrcOmelette(); Ancestor.newOrder.Add(newgoc); Ancestor.SwitchScreen(Screen.custGardenOrcOmelette, newgoc); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Philly Poacher": PhillyPoacher newpp = new PhillyPoacher(); Ancestor.newOrder.Add(newpp); Ancestor.SwitchScreen(Screen.custPhillyPoacher, newpp); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Smokehouse Skeleton": SmokehouseSkeleton newss = new SmokehouseSkeleton(); Ancestor.newOrder.Add(newss); Ancestor.SwitchScreen(Screen.custSmokehouseSkeleton, newss); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Thalmor Triple": ThalmorTriple newtt = new ThalmorTriple(); Ancestor.newOrder.Add(newtt); Ancestor.SwitchScreen(Screen.custThalmorTriple, newtt); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Dragonborn Waffle Fries": DragonbornWaffleFries newdwf = new DragonbornWaffleFries(); Ancestor.newOrder.Add(newdwf); Ancestor.SwitchScreen(Screen.custDragonbornWaffleFries, newdwf); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Fried Miraak": FriedMiraak newfm = new FriedMiraak(); Ancestor.newOrder.Add(newfm); Ancestor.SwitchScreen(Screen.custFriedMiraak, newfm); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Mad Otar Grits": MadOtarGrits newmog = new MadOtarGrits(); Ancestor.newOrder.Add(newmog); Ancestor.SwitchScreen(Screen.custMadOtarGrits, newmog); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Vokun Salad": VokunSalad newvs = new VokunSalad(); Ancestor.newOrder.Add(newvs); Ancestor.SwitchScreen(Screen.custVokunSalad, newvs); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Aretino Apple Juice": AretinoAppleJuice newaa = new AretinoAppleJuice(); Ancestor.newOrder.Add(newaa); Ancestor.SwitchScreen(Screen.custAretinoAppleJuice, newaa); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Candlehearth Coffee": CandlehearthCoffee newcc = new CandlehearthCoffee(); Ancestor.newOrder.Add(newcc); Ancestor.SwitchScreen(Screen.custCandlehearthCoffee, newcc); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Markarth Milk": MarkarthMilk newmm = new MarkarthMilk(); Ancestor.newOrder.Add(newmm); Ancestor.SwitchScreen(Screen.custMarkarthMilk, newmm); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Sailor Soda": SailorSoda newsoda = new SailorSoda(); Ancestor.newOrder.Add(newsoda); Ancestor.SwitchScreen(Screen.custSailorSoda, newsoda); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Warrior Water": WarriorWater newww = new WarriorWater(); Ancestor.newOrder.Add(newww); Ancestor.SwitchScreen(Screen.custWarriorWater, newww); DisplayCurrentOrder(); break; case "System.Windows.Controls.Button: Complete Order": Ancestor.SwitchScreen(Screen.completeOrder); break; } DisplayCurrentOrder(); //} }
public CandlehearthMenu(MenuComponent ancestor, CandlehearthCoffee item) { InitializeComponent(); Ancestor = ancestor; this.DataContext = item; }
/// <summary> /// Handles candlehearth coffee button click event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void candlehearthCoffee_Click(object sender, RoutedEventArgs e) { CandlehearthCoffee c = new CandlehearthCoffee(parent, this, order); parent.containerBorder.Child = c; }
/// <summary> /// Candlehearth Coffee click event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void CandlehearthCoffeeClick(object sender, RoutedEventArgs e) { CandlehearthCoffee coffee = new CandlehearthCoffee(); o.pageDisplay.Child = new CustomCandlehearthCoffee(o, coffee); }
// 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> /// 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); } }
/// <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; } }