예제 #1
0
        private void b_removeWater(object sender, RoutedEventArgs e)
        {
            if (dg_waterItems.SelectedItem == null)
            {
                MessageBox.Show("Select an item from you water supplies.");
                return;
            }

            var waterToRemove = dg_waterItems.SelectedItem as Model.Water;

            App._vmData.waterList.Remove(waterToRemove);

            WaterCalculation.calculateWater();

            //SnackBarMessage
            var messageQueue = sb_deletedWaterSnackBar.MessageQueue;
            var message      = "Deleted " + waterToRemove.name + ".";

            if (!String.IsNullOrWhiteSpace(waterToRemove?.location))
            {
                message = "Deleted " + waterToRemove.name + " in Location " + waterToRemove.location + ".";
            }
            //the message queue can be called from any thread
            Task.Factory.StartNew(() => messageQueue.Enqueue(message));
        }
예제 #2
0
        public static void createAllSampleData()
        {
            createDummyPersons();
            createSampleFoodList();
            createSampleWaterList();

            FoodCalculation.calculateFood();
            WaterCalculation.calculateWater();
            PeopleCalculation.calculateNumberOfPeople();
        }
예제 #3
0
        private void b_acceptDeletePerson_OnClick(object sender, RoutedEventArgs e)
        {
            App._vmData.personList.Remove(((((sender as Button).Parent as StackPanel).Parent as StackPanel).Parent as Card).DataContext as Person);

            PeopleCalculation.calculateNumberOfPeople();
            WaterCalculation.calculateWater();
            FoodCalculation.calculateFood();

            //Just to force an updaten on VM
            App._vmData.totalCalorieConsumption = "";
        }
예제 #4
0
        private void DialogHost_AddWater_OnDialogClosing(object sender, DialogClosingEventArgs eventargs)
        {
            if (String.IsNullOrWhiteSpace(tb_newWaterTextBox.Text))
            {
                return;
            }
            var w1 = new Model.Water {
                name = tb_newWaterTextBox.Text
            };

            App._vmData.waterList.Add(w1);
            tb_newWaterTextBox.Text = "";
            WaterCalculation.calculateWater();
        }
예제 #5
0
        private void b_addPerson_Click(object sender, RoutedEventArgs e)
        {
            var p = new Person {
                firstName = "New Person"
            };

            App._vmData.personList.Add(p);

            PeopleCalculation.calculateNumberOfPeople();
            WaterCalculation.calculateWater();
            FoodCalculation.calculateFood();

            //Just to force an updaten on VM
            App._vmData.totalCalorieConsumption = "";
        }
예제 #6
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            //Load Saved Data from User (ViewModel)
            Load.LoadFromJson();

            //Language
            if (_vmData.cultureInfo != null)
            {
                Thread.CurrentThread.CurrentUICulture = _vmData.cultureInfo;
            }
            else
            {
                _vmData.cultureInfo = Thread.CurrentThread.CurrentUICulture;
            }

            //Initial Calculations based on stored values
            FoodCalculation.calculateFood();
            WaterCalculation.calculateWater();
            PeopleCalculation.calculateNumberOfPeople();

            //DEBUG: Don't send email every time.
            //RequestEmail.postEmailRequestToEmailAPI(ExpirationCalculation.calculateExpiringFoodItem());
            //ExpirationCalculation.startExpirationEmailChecker();
        }
예제 #7
0
 private void dg_waterItems_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
 {
     WaterCalculation.calculateWater();
 }