private void MashStepListView_KeyDown(object sender, KeyEventArgs e) { if (Key.Delete == e.Key) { foreach (Domain.MashProfileStep listViewItem in ((ListView)sender).SelectedItems) { MashProfileList.Remove(listViewItem); break; } } }
private void PopulateGUI(Recepie aRecepie) { Grist.Clear(); foreach (GristPart g in aRecepie.Fermentables) { Grist.Add(g); } BoilHops.Clear(); foreach (HopAddition h in aRecepie.BoilHops) { BoilHops.Add(h); } MashProfileList.Clear(); foreach (Domain.MashProfileStep mps in aRecepie.MashProfile) { MashProfileList.Add(mps); } OtherIngredientsList.Clear(); foreach (OtherIngredient o in aRecepie.OtherIngredients) { OtherIngredientsList.Add(o); } Volumes.FinalBatchVolume = aRecepie.BatchVolume; BatchSizeVolumeTextBox.Text = Volumes.FinalBatchVolume.ToString(); Volumes.PreBoilTapOff = aRecepie.PreBoilTapOffVolume; PreBoilVolumeTextBox.Text = Volumes.PreBoilTapOff.ToString(); TopUpMashWater = aRecepie.TopUpMashWater; TopUpMashWaterVolumeTextBox.Text = TopUpMashWater.ToString(); OriginalGravity = aRecepie.OriginalGravity; ExpectedOriginalGravityTextBox.Text = OriginalGravity.ToString(); BoilTime = aRecepie.BoilTime; BoilTimeTextBox.Text = BoilTime.ToString(); NameTextBox.Text = aRecepie.Name; recalculateGrainBill(); recalculateIbu(); updateGuiText(); }
private void MenuItem_FileSave(object sender, RoutedEventArgs e) { var r = new Recepie(); r.Fermentables = Grist.ToList(); r.BoilHops = BoilHops.ToList(); r.MashProfile = MashProfileList.ToList(); r.OtherIngredients = OtherIngredientsList.ToList(); r.Name = NameTextBox.Text; r.BatchVolume = Volumes.FinalBatchVolume; r.PreBoilTapOffVolume = Volumes.PreBoilTapOff; r.TopUpMashWater = 0; r.OriginalGravity = OriginalGravity; r.BoilTime = BoilTime; // Create OpenFileDialog Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog(); // Set filter for file extension and default file extension dlg.DefaultExt = ".gsrx"; dlg.Filter = "Grainfather recipe files (*.gsrx)|*.gsrx"; dlg.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); dlg.FileName = NameTextBox.Text; // Display OpenFileDialog by calling ShowDialog method Nullable <bool> result = dlg.ShowDialog(); if (result != true) { return; } XmlSerializer serializer = new XmlSerializer(typeof(Recepie)); FileStream saveStream = new FileStream(dlg.FileName, FileMode.OpenOrCreate, FileAccess.Write); serializer.Serialize(saveStream, r); saveStream.Close(); }
private void AddMashStepButton_Click(object sender, RoutedEventArgs e) { double temp; if (!double.TryParse(MashStepTempTextBox.Text, out temp)) { return; } int stepTime; if (!int.TryParse(MashStepTimeTextBox.Text, out stepTime)) { return; } int heatOverTime = 0; if (MashProfileList.Count > 0) { if (!int.TryParse(MashHeatOverTimeTextBox.Text, out heatOverTime)) { return; } } var mps = new Domain.MashProfileStep(); mps.Temperature = temp; mps.StepTime = stepTime; mps.HeatOverTime = heatOverTime; MashProfileList.Add(mps); var ol = MashProfileList.OrderBy(x => x.Temperature).ToList(); MashProfileList.Clear(); foreach (Domain.MashProfileStep ms in ol) { MashProfileList.Add(ms); } AddMashStepButton.Content = "Add"; }
private void MashStepListView_MouseDoubleClick(object sender, MouseButtonEventArgs e) { if (MashStepListView.SelectedIndex < 0 || MashStepListView.SelectedIndex >= MashProfileList.Count) { return; } MashStepTempTextBox.Text = MashProfileList.ToArray()[MashStepListView.SelectedIndex].Temperature.ToString(); MashStepTimeTextBox.Text = MashProfileList.ToArray()[MashStepListView.SelectedIndex].StepTime.ToString(); if (MashStepListView.SelectedIndex == 0) { MashHeatOverTimeTextBox.Text = "0"; } else { MashHeatOverTimeTextBox.Text = MashProfileList.ToArray()[MashStepListView.SelectedIndex].HeatOverTime.ToString(); } MashProfileList.Remove((Domain.MashProfileStep)MashStepListView.SelectedItem); AddMashStepButton.Content = "Update"; }