Пример #1
0
 // Save and close
 private void button2_Click(object sender, EventArgs e)
 {
     if (Statements.Count < 1)
     {
         MessageBox.Show("Missing IF and THEN statements");
     }
     else if (Statements.Count < 2)
     {
         MessageBox.Show("Missing THEN statement");
     }
     else
     {
         string rule_string = "";
         foreach (If_Then_Statement ITS in Statements)
         {
             rule_string = rule_string + "~" +
                           ITS.condition_bin + "|" +
                           ITS.condition_comparison + "|" +
                           ITS.condition_value + "|" +
                           ITS.action_comparison + "|" +
                           ITS.action_bin + "|" +
                           ITS.action_value;
         }
         if (Edit_Mode)
         {
             _parent.Add_Rule("IF_THEN", reference_box.Text, rule_string.Substring(1), "", "", Edit_Comment + comment_box.Text, Edit_Index);
             _parent.delete_rule(Edit_Index + 1);
             _parent.Set_Rule_Selection(Edit_Index);
             this.Close();
             this.Dispose();
         }
         else
         {
             _parent.Add_Rule("IF_THEN", reference_box.Text, rule_string.Substring(1), "", "", Edit_Comment + comment_box.Text);
             this.Close();
             this.Dispose();
         }
         //Success
     }
 }
Пример #2
0
        // Add loop button
        private void button20_Click(object sender, EventArgs e)
        {
            string CHECK_VALUE = checkBox1.Checked ? bin_value_box.Text : loop_static_box.Text;
            string COMP        = checkBox1.Checked ? condition_direction.Text : "";
            string BIN_NO      = checkBox1.Checked ? bin_box.Text : "";

            if (_EDIT_INDEX >= 0) // If EDIT
            {
                if ((checkBox1.Checked && bin_box.Text.Length > 0 && bin_value_box.Text.Length > 0) || (checkBox2.Checked && loop_static_box.Text.Length > 0))
                {
                    _parent.Add_Rule("LOOP_CONDITION_START", _EDIT_RULE[1], CHECK_VALUE, COMP, BIN_NO, "", _EDIT_INDEX);
                    _parent.delete_rule(_EDIT_INDEX + 1);
                    _parent.Set_Rule_Selection(_EDIT_INDEX);
                    this.Close();
                    this.Dispose();
                }
            }
            else
            {
                Random rnd          = new Random();
                string ID_Generated = rnd.Next(1000000, 9999999).ToString();


                //_parent.Add_Rule(ACTION, SEARCH_VALUE, DIMENSION, VALUE, OPTIONAL_VALUE, COMMENT, index);
                //                   ACTION           LOOP_ID   CHECK_VALUE  COMP      BIN#          ""       ""

                if ((checkBox1.Checked && bin_box.Text.Length > 0 && bin_value_box.Text.Length > 0) || (checkBox2.Checked && loop_static_box.Text.Length > 0))
                {
                    _parent.Add_Rule("LOOP_CONDITION_START", ID_Generated, CHECK_VALUE, COMP, BIN_NO, "");
                    _parent.Add_Rule("LOOP_CONDITION_END", ID_Generated, "", "", "", "");
                    this.Close();
                    this.Dispose();
                }
                else
                {
                    MessageBox.Show("Error in rule format");
                }
            }
        }