private TreeNode CreateFloatNode <T, K> (string typeName) where K : TagNode where T : FloatTagRule <K>, new() { T rule = new T(); using (ValueRuleForm form = new ValueRuleForm(SearchRule.NumericOpStrings) { Text = "Edit " + typeName + " Tag Rule", }) { if (form.ShowDialog() == DialogResult.OK) { rule.Name = form.TagName; rule.Value = form.TagValueAsDouble; rule.Operator = form.Operator; } else { return(null); } } TreeNode node = CreateNode(rule); node.Text = rule.NodeDisplay; return(node); }
private TreeNode CreateIntegralNode <T, K>(string typeName) where K : TagNode where T : IntegralTagRule <K>, new() { var rule = new T(); using (var form = new ValueRuleForm(SearchRule.NumericOpStrings) { Text = "Edit " + typeName + " Tag Rule" }) { if (form.ShowDialog() == DialogResult.OK) { rule.Name = form.TagName; rule.Value = form.TagValueAsLong; rule.Operator = form.Operator; } else { return(null); } } var node = CreateNode(rule); node.Text = rule.NodeDisplay; return(node); }
private void EditFloatNode <T, K> (TreeNode node, T rule, string typeName) where K : TagNode where T : FloatTagRule <K> { using (ValueRuleForm form = new ValueRuleForm(SearchRule.NumericOpStrings) { Text = "Edit " + typeName + " Tag Rule", TagName = rule.Name, TagValue = rule.Value.ToString(), Operator = rule.Operator, }) { if (form.ShowDialog() == DialogResult.OK) { rule.Name = form.TagName; rule.Value = form.TagValueAsDouble; rule.Operator = form.Operator; } } node.Text = rule.NodeDisplay; }