//private void LoadPizzaPage() //{ // var currentMainPage = (Application.Current.MainPage as MasterDetailPage); // currentMainPage.Detail = new NavigationPage(new PizzaPage()); // Application.Current.MainPage = currentMainPage; //} private void LoadPreviousDrinkSelections(DrinkCategory categoryDisplayed) { //Get drink Order items and load to current screen category. //Will load to DrinkDisplayDictionary with key of categoryDisplayed. var currentOrder = OrderManager.Instance.OrderInProgress; foreach (var orderItem in currentOrder.OrderItems) { if (orderItem is Drink) { var drinkAlreadyOnTempOrder = (Drink)orderItem; //Save items to Dictionary that is on the current order. var drinkKey = Tuple.Create <DrinkType, DrinkSize>(drinkAlreadyOnTempOrder.DrinkType, drinkAlreadyOnTempOrder.DrinkSize); if (DrinksOnTempOrderDictionary.ContainsKey(drinkKey)) { DrinksOnTempOrderDictionary[drinkKey] = drinkAlreadyOnTempOrder; } else { DrinksOnTempOrderDictionary.Add(drinkKey, drinkAlreadyOnTempOrder); } //if drink on current order is in category displayed, then we'll want //to show what the order already has. if (drinkAlreadyOnTempOrder.DrinkCategory == categoryDisplayed) { if (!DrinkDisplayDictionary.ContainsKey(categoryDisplayed)) { LoadDrinkCategoryForDisplay(categoryDisplayed); } //Populate current drink items displayed with item count of //drinks already on the order. var drinksDisplayed = DrinkDisplayDictionary[categoryDisplayed]; foreach (var drinkDisplayItem in drinksDisplayed) { foreach (var drink in drinkDisplayItem.RowDrinks) { if (drink.DrinkType == drinkAlreadyOnTempOrder.DrinkType && drink.DrinkSize == drinkAlreadyOnTempOrder.DrinkSize) { drink.ItemCount = drinkAlreadyOnTempOrder.ItemCount; } } //if (saveDrinkTypeToScrollTo == drinkDisplayItem.Drink.DrinkType) //{ // drinkDisplayIndexToScrollTo = drinkDisplayItem.DrinkDisplayItemIndex; //} } } } } }
private void LoadDrinkCategoryForDisplay(DrinkCategory newDrinkCategory) { List <DrinkDisplayRow> rows = new List <DrinkDisplayRow>(); try { if (DrinkDisplayDictionary.ContainsKey(newDrinkCategory)) { rows = DrinkDisplayDictionary[newDrinkCategory]; } else { List <Drink> drinksForDisplay = MenuDrinks.GetDrinksList(newDrinkCategory); if (newDrinkCategory == DrinkCategory.DraftBeer) { var pints = new List <Drink>(); var pitchers = new List <Drink>(); foreach (var drink in drinksForDisplay) { if (drink.DrinkSize == DrinkSize.Pint) { pints.Add(drink); } else { pitchers.Add(drink); } } rows = GetDrinkDisplayRows(pints); rows.AddRange(GetDrinkDisplayRows(pitchers)); } else { rows = GetDrinkDisplayRows(drinksForDisplay); } DrinkDisplayDictionary.Add(newDrinkCategory, rows); } if (newDrinkCategory == DrinkCategory.DraftBeer) { DrinksGroups = new ObservableCollection <DrinksGroup>(ConvertBeerRowsToGroups(rows)); } else { DrinkDisplayItems = new ObservableCollection <DrinkDisplayRow>(rows); } } catch (Exception ex) { var error = ex.InnerException; throw; } }