private void UpdateOperatorComboBox() { if (conditionComboBox.SelectedItem == null) { return; } string conditionName = conditionComboBox.SelectedItem.ToString(); IConditionDef conditionDef = RuleEngine.GetConditionManager().GetConditionDef(conditionName); if (conditionDef is AbstractAtomicConditionDef) { // Init Operators List <IOperator> operatorList = RuleEngine.GetOperatorManager().GetPossibleOperatorList(conditionDef); operatorComboBox.Items.Clear(); foreach (IOperator Operator in operatorList) { operatorComboBox.Items.Add(Operator.GetOperatorName()); } // default for operator if (operatorComboBox.Items.Count != 0) { operatorComboBox.SelectedIndex = 0; } else { operatorComboBox.SelectedIndex = -1; } } }
private List <string> GetOperatorKeywords() { if (m_operatorKeywords == null) { m_operatorKeywords = new List <string>(); // operator key words List <IOperator> operatorList = RuleEngine.GetOperatorManager().GetAllOperatorList(); foreach (IOperator iOperator in operatorList) { m_operatorKeywords.Add(iOperator.GetOperatorName()); } } return(m_operatorKeywords); }
internal ICondition GetCondition() { if (conditionComboBox.SelectedItem == null) { return(null); } AbstractConditionManager conditionManager = RuleEngine.GetConditionManager(); ICondition condition = conditionManager.CreateCondition(conditionComboBox.SelectedItem.ToString()); if (condition is AbstractAtomicCondition) { AbstractAtomicCondition atomicCondition = condition as AbstractAtomicCondition; if (operatorComboBox.SelectedItem == null) { return(null); } string operatorName = operatorComboBox.SelectedItem.ToString(); atomicCondition.Operator = RuleEngine.GetOperatorManager().GetOperator(operatorName); if (atomicCondition is NativeParameterIndexCondition) { atomicCondition.Value = "" + parameterIndexNumericUpDown.Value; } else { if (valueComboBox.Text.Trim().Equals("")) { return(null); } atomicCondition.Value = valueComboBox.Text; } return(atomicCondition); } else { return(condition); } }