private void btnOk_Click(object sender, EventArgs e)
        {
            WeightedIngredient wIngredient;
            Ingredient         ingredient;

            int weight;

            try
            {
                weight = int.Parse(tbWeight.Text);
            }
            catch
            {
                MessageBox.Show("Data is incorrect! Try again!");
                return;
            }

            if ((ingredient = (Ingredient)cbIngredients.SelectedItem) == null)
            {
                MessageBox.Show("Please choose ingredient type");
                return;
            }

            wIngredient = new WeightedIngredient(ingredient, weight);

            del.Invoke(wIngredient);
            Close();
        }
Beispiel #2
0
        private List <Recipe> DeserializeRecipes(Dictionary <string,
                                                             WeightedIngredient> prevDict, IEnumerator <string> lines)
        {
            string ln;
            var    recipes = new List <Recipe>();

            while (lines.MoveNext() && ((ln = lines.Current) != ""))
            {
                int i1 = ln.IndexOf('{') + 1;
                int i2 = ln.IndexOf('}') - i1;

                string[] args = ln.Substring(i1, i2).Split(',');

                var stWIngs = args[1].Substring(1, args[1].Length - 2).Split(';');

                var wIngs = new WeightedIngredient[stWIngs.Length];

                for (int i = 0; i < stWIngs.Length; i++)
                {
                    wIngs[i] = prevDict[stWIngs[i]];
                }

                var rec = new Recipe(args[0], wIngs, int.Parse(args[2]), int.Parse(args[3]), args[4]);


                recipes.Add(rec);
            }

            return(recipes);
        }
Beispiel #3
0
        private List <WeightedIngredient> DeserializeWeightedIngredients(Dictionary <string,
                                                                                     Ingredient> prevDict, out Dictionary <string, WeightedIngredient> dict, IEnumerator <string> lines)
        {
            string ln, link;
            var    wIngredients = new List <WeightedIngredient>();

            dict = new Dictionary <string, WeightedIngredient>();

            while (lines.MoveNext() && ((ln = lines.Current) != ""))
            {
                int i1 = ln.IndexOf('{') + 1;
                int i2 = ln.IndexOf('}') - i1;

                string[] args = ln.Substring(i1, i2).Split(',');

                var wIng = new WeightedIngredient(prevDict[args[0]], float.Parse(args[1]));

                link = ln.Substring(0, ln.IndexOf('='));

                dict.Add(link, wIng);
                wIngredients.Add(wIng);
            }

            return(wIngredients);
        }
Beispiel #4
0
        public void EditWIngredient(WeightedIngredient wIngredient)
        {
            var cur = (WeightedIngredient)wIngsGrid.CurrentRow.Cells[0].Value;

            cur.ingredient       = wIngredient.ingredient;
            cur.weight           = wIngredient.weight;
            cur.weightedOrgParts = wIngredient.weightedOrgParts;

            SetUpGrid(wIngsGrid, data.wIngredientsList.ToArray());
        }
Beispiel #5
0
 public void AddWIngredient(WeightedIngredient wIngredient)
 {
     data.wIngredientsList.Add(wIngredient);
     SetUpGrid(wIngsGrid, data.wIngredientsList.ToArray());
 }
        private void SetUp(WeightedIngredient wIng)
        {
            tbWeight.Text = wIng.weight.ToString();

            cbIngredients.SelectedItem = wIng.ingredient;
        }
 public AddWIngredientForm(Del del, WeightedIngredient choosedWIng)
 {
     InitializeComponent();
     this.del = del;
     SetUp(choosedWIng);
 }