Example #1
0
 private void SetControlVisibility()
 {
     this.operatorComboBox.Visible            = false;
     this.parameterIndexNumericUpDown.Visible = false;
     this.valueComboBox.Visible          = false;
     this.buttonValueInputHelper.Visible = false;
     if (conditionComboBox.SelectedItem != null)
     {
         string        conditionName = conditionComboBox.SelectedItem.ToString();
         IConditionDef conditionDef  =
             RuleEngine.GetConditionManager().GetConditionDef(conditionName);
         if (conditionDef is AbstractAtomicConditionDef)
         {
             if (conditionDef == NativeSignatureConditionDef.GetInstance())
             {
                 this.operatorComboBox.Visible       = true;
                 this.valueComboBox.Visible          = true;
                 this.buttonValueInputHelper.Visible = true;
             }
             else if (conditionDef == NativeParameterIndexConditionDef.GetInstance())
             {
                 this.operatorComboBox.Visible            = true;
                 this.parameterIndexNumericUpDown.Visible = true;
             }
             else
             {
                 this.operatorComboBox.Visible = true;
                 this.valueComboBox.Visible    = true;
             }
             return;
         }
     }
     // Composite Condition or Empty Condition
     this.Width = conditionComboBox.Width;
 }
Example #2
0
        private void UpdateValuePart()
        {
            if (conditionComboBox.SelectedItem == null)
            {
                return;
            }
            string        conditionName = conditionComboBox.SelectedItem.ToString();
            IConditionDef conditionDef  =
                RuleEngine.GetConditionManager().GetConditionDef(conditionName);

            if (conditionDef is AbstractAtomicConditionDef)
            {
                AbstractAtomicConditionDef atomicConditionDef =
                    conditionDef as AbstractAtomicConditionDef;
                if (atomicConditionDef == NativeParameterIndexConditionDef.GetInstance())
                {
                    valueComboBox.Visible = false;
                    parameterIndexNumericUpDown.Visible = true;
                }
                else
                {
                    parameterIndexNumericUpDown.Visible = false;
                    valueComboBox.Visible = true;
                    valueComboBox.Text    = "";
                    valueComboBox.Items.Clear();
                    // Disable valueComboBox? If yes, we need the ValueInputHelper.
                    if (atomicConditionDef == NativeSignatureConditionDef.GetInstance())
                    {
                        valueComboBox.Enabled = false;
                    }
                    else
                    {
                        valueComboBox.Enabled = true;
                    }
                    List <string> list = atomicConditionDef.GetMostPossibleValues();
                    if (list != null)
                    {
                        foreach (string stringValue in list)
                        {
                            valueComboBox.Items.Add(stringValue);
                        }
                        if (valueComboBox.Items.Count != 0)
                        {
                            valueComboBox.SelectedIndex = 0;
                        }
                    }
                }
            }
        }