/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(4); * dialog.Title = InstructionName; * dialog.ShowLine1("SRC", SourceValue); * dialog.ShowLine3("DST", DestinationValue); * dialog.ShowLine5("N1", CountValue); * dialog.ShowLine7("N2", MoveValue); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = SourceValue.ValueString; var oldvaluestring2 = DestinationValue.ValueString; var oldvaluestring3 = CountValue.ValueString; var oldvaluestring4 = MoveValue.ValueString; bool check1 = ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyBitRegex1 }); bool check2 = ValueParser.CheckValueString(valueStrings[2], new Regex[] { ValueParser.VerifyBitRegex2 }); bool check3 = ValueParser.CheckValueString(valueStrings[4], new Regex[] { ValueParser.VerifyWordRegex3, ValueParser.VerifyIntKHValueRegex }); bool check4 = ValueParser.CheckValueString(valueStrings[6], new Regex[] { ValueParser.VerifyWordRegex3, ValueParser.VerifyIntKHValueRegex }); if (check1 && check2 && check3 && check4) { SourceValue = ValueParser.ParseBitValue(valueStrings[0], contextDevice); DestinationValue = ValueParser.ParseBitValue(valueStrings[2], contextDevice); CountValue = ValueParser.ParseWordValue(valueStrings[4], contextDevice); MoveValue = ValueParser.ParseWordValue(valueStrings[6], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, SourceValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, DestinationValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring3, CountValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring4, MoveValue.ValueString); ValueCommentManager.UpdateComment(SourceValue, valueStrings[1]); ValueCommentManager.UpdateComment(DestinationValue, valueStrings[3]); ValueCommentManager.UpdateComment(CountValue, valueStrings[5]); ValueCommentManager.UpdateComment(MoveValue, valueStrings[7]); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(3); * dialog.Title = InstructionName; * dialog.ShowLine3("TV:", TimerValue); * dialog.ShowLine5("SV:", EndValue); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = TimerValue.ValueString; var oldvaluestring2 = EndValue.ValueString; bool check1 = ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyWordRegex4 }); bool check2 = ValueParser.CheckValueString(valueStrings[2], new Regex[] { ValueParser.VerifyWordRegex3, ValueParser.VerifyIntKHValueRegex }); if (check1 && check2) { TimerValue = ValueParser.ParseWordValue(valueStrings[0], contextDevice); EndValue = ValueParser.ParseWordValue(valueStrings[2], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, TimerValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, EndValue.ValueString); ValueCommentManager.UpdateComment(TimerValue, valueStrings[1]); ValueCommentManager.UpdateComment(EndValue, valueStrings[3]); } else if (!check1) { throw new ValueParseException("TV格式错误!"); } else if (!check2) { throw new ValueParseException("SV格式错误!"); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(2); * dialog.Title = InstructionName; * dialog.ShowLine3("CT:", CountValue); * dialog.ShowLine5("SV:", DefineValue); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = CountValue.ValueString; var oldvaluestring2 = DefineValue.ValueString; bool check1 = ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyDoubleWordRegex3 }); bool check2 = ValueParser.CheckValueString(valueStrings[2], new Regex[] { ValueParser.VerifyDoubleWordRegex1, ValueParser.VerifyIntKHValueRegex }); if (check1 && check2) { CountValue = ValueParser.ParseDoubleWordValue(valueStrings[0], contextDevice); DefineValue = ValueParser.ParseDoubleWordValue(valueStrings[2], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, CountValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, DefineValue.ValueString); ValueCommentManager.UpdateComment(CountValue, valueStrings[1]); ValueCommentManager.UpdateComment(DefineValue, valueStrings[3]); } else if (!check1) { throw new ValueParseException("计数器输入错误!"); } else if (!check2) { throw new ValueParseException("预设值输入错误!"); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(3, ElementPropertyDialog.INST_MBUS); * dialog.Title = InstructionName; * dialog.ShowLine2("COM:", COMPort); * dialog.ShowLine4("TABLE:"); * dialog.ValueString4 = Table; * dialog.ShowLine6("WR:", Message); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = COMPort.ValueString; var oldvaluestring2 = Table; var oldvaluestring3 = Message.ValueString; bool check1 = ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyWordRegex1, ValueParser.VerifyIntKHValueRegex }); bool check3 = ValueParser.CheckValueString(valueStrings[4], new Regex[] { ValueParser.VerifyWordRegex3 }); if (check1 && check3) { COMPort = ValueParser.ParseWordValue(valueStrings[0], contextDevice); Table = valueStrings[2]; Message = ValueParser.ParseWordValue(valueStrings[4], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, COMPort.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, Table); InstructionCommentManager.ModifyValue(this, oldvaluestring3, Message.ValueString); ValueCommentManager.UpdateComment(COMPort, valueStrings[1]); ValueCommentManager.UpdateComment(Message, valueStrings[5]); } else if (!check1) { throw new ValueParseException("COM格式错误!"); } else if (!check3) { throw new ValueParseException("WR格式错误!"); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * int argcount = 5; * if (Value4 == ArgumentValue.Null) * argcount = 4; * if (Value3 == ArgumentValue.Null) * argcount = 3; * if (Value2 == ArgumentValue.Null) * argcount = 2; * if (Value1 == ArgumentValue.Null) * argcount = 1; * var dialog = new ElementPropertyDialog(argcount, ElementPropertyDialog.INST_CALLM); * switch (argcount) * { * case 1: * dialog.ShowLine1("FUNC:"); * dialog.ValueString1 = FuncName; * break; * case 2: * dialog.ShowLine1("FUNC:"); * dialog.ValueString1 = FuncName; * dialog.ShowLine2(Value1.ArgumentName + ":", Value1); * break; * case 3: * dialog.ShowLine1("FUNC:"); * dialog.ValueString1 = FuncName; * dialog.ShowLine2(Value1.ArgumentName + ":", Value1); * dialog.ShowLine3(Value2.ArgumentName + ":", Value2); * break; * case 4: * dialog.ShowLine1("FUNC:"); * dialog.ValueString1 = FuncName; * dialog.ShowLine2(Value1.ArgumentName + ":", Value1); * dialog.ShowLine3(Value2.ArgumentName + ":", Value2); * dialog.ShowLine4(Value3.ArgumentName + ":", Value3); * break; * case 5: * dialog.ShowLine1("FUNC:"); * dialog.ValueString1 = FuncName; * dialog.ShowLine2(Value1.ArgumentName + ":", Value1); * dialog.ShowLine3(Value2.ArgumentName + ":", Value2); * dialog.ShowLine4(Value3.ArgumentName + ":", Value3); * dialog.ShowLine5(Value4.ArgumentName + ":", Value4); * break; * } * return dialog; * } */ public void AcceptNewValues(string _funcname, string _funccomment, ArgumentValue[] _values) { var oldvaluestring1 = FuncName; var oldvaluestring2 = Value1.ValueString; var oldvaluestring3 = Value2.ValueString; var oldvaluestring4 = Value3.ValueString; var oldvaluestring5 = Value4.ValueString; FuncName = _funcname; FuncComment = _funccomment; if (_values.Length > 0) { Value1 = _values[0]; InstructionCommentManager.ModifyValue(this, oldvaluestring2, Value1.ValueString); ValueCommentManager.UpdateComment(Value1, Value1.Comment); } else { Value1 = ArgumentValue.Null; } if (_values.Length > 1) { Value2 = _values[1]; InstructionCommentManager.ModifyValue(this, oldvaluestring3, Value2.ValueString); ValueCommentManager.UpdateComment(Value2, Value2.Comment); } else { Value2 = ArgumentValue.Null; } if (_values.Length > 2) { Value3 = _values[2]; InstructionCommentManager.ModifyValue(this, oldvaluestring4, Value3.ValueString); ValueCommentManager.UpdateComment(Value3, Value3.Comment); } else { Value3 = ArgumentValue.Null; } if (_values.Length > 3) { Value4 = _values[3]; InstructionCommentManager.ModifyValue(this, oldvaluestring5, Value4.ValueString); ValueCommentManager.UpdateComment(Value4, Value4.Comment); } else { Value4 = ArgumentValue.Null; } UpdateCommentContent(); }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(1); * dialog.Title = InstructionName; * dialog.ShowLine4("LBL",LBLIndex); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring = LBLIndex.ValueString; if (ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyIntKHValueRegex })) { LBLIndex = ValueParser.ParseWordValue(valueStrings[0], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring, LBLIndex.ValueString); ValueCommentManager.UpdateComment(LBLIndex, valueStrings[1]); } else { throw new ValueParseException("Unexpected input"); } }
public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring = Value.ValueString; if (ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyBitRegex3 })) { Value = ValueParser.ParseBitValue(valueStrings[0], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring, Value.ValueString); ValueCommentManager.UpdateComment(Value, valueStrings[1]); } else { throw new ValueParseException("Unexpected input"); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(2); * dialog.Title = InstructionName; * dialog.ShowLine3("DW1",Value1); * dialog.ShowLine5("DW2",Value2); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = Value1.ValueString; var oldvaluestring2 = Value2.ValueString; if (ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyDoubleWordRegex1, ValueParser.VerifyIntKHValueRegex }) && ValueParser.CheckValueString(valueStrings[2], new Regex[] { ValueParser.VerifyDoubleWordRegex1, ValueParser.VerifyIntKHValueRegex })) { Value1 = ValueParser.ParseDoubleWordValue(valueStrings[0], contextDevice); Value2 = ValueParser.ParseDoubleWordValue(valueStrings[2], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, Value1.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, Value2.ValueString); ValueCommentManager.UpdateComment(Value1, valueStrings[1]); ValueCommentManager.UpdateComment(Value2, valueStrings[3]); } else { throw new ValueParseException("Unexpected input"); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(2); * dialog.Title = InstructionName; * dialog.ShowLine3("In",InputValue); * dialog.ShowLine5("Out",OutputValue); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = InputValue.ValueString; var oldvaluestring2 = OutputValue.ValueString; if (ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyFloatRegex, ValueParser.VerifyFloatKValueRegex }) && ValueParser.CheckValueString(valueStrings[2], new Regex[] { ValueParser.VerifyFloatRegex })) { InputValue = ValueParser.ParseFloatValue(valueStrings[0], contextDevice); OutputValue = ValueParser.ParseFloatValue(valueStrings[2], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, InputValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, OutputValue.ValueString); ValueCommentManager.UpdateComment(InputValue, valueStrings[1]); ValueCommentManager.UpdateComment(OutputValue, valueStrings[3]); } else { throw new ValueParseException("Unexpected input"); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(3); * dialog.Title = InstructionName; * dialog.ShowLine2("COM:", COMPort); * dialog.ShowLine4("ADDR:", BaseValue); * dialog.ShowLine6("LEN:", CountValue); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = COMPort.ValueString; var oldvaluestring2 = BaseValue.ValueString; var oldvaluestring3 = CountValue.ValueString; bool check1 = ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyIntKHValueRegex }); bool check2 = ValueParser.CheckValueString(valueStrings[2], new Regex[] { ValueParser.VerifyWordRegex3 }); bool check3 = ValueParser.CheckValueString(valueStrings[4], new Regex[] { ValueParser.VerifyWordRegex3, ValueParser.VerifyIntKHValueRegex }); if (check1 && check2 && check3) { COMPort = ValueParser.ParseWordValue(valueStrings[0], contextDevice); BaseValue = ValueParser.ParseWordValue(valueStrings[2], contextDevice); CountValue = ValueParser.ParseWordValue(valueStrings[4], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, COMPort.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, BaseValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring3, CountValue.ValueString); ValueCommentManager.UpdateComment(COMPort, valueStrings[1]); ValueCommentManager.UpdateComment(BaseValue, valueStrings[3]); ValueCommentManager.UpdateComment(CountValue, valueStrings[5]); } else if (!check1) { throw new ValueParseException("COM格式错误!"); } else if (!check2) { throw new ValueParseException("ADDR格式错误!"); } else if (!check3) { throw new ValueParseException("LEN格式错误!"); } }
/* * public override IPropertyDialog PreparePropertyDialog() * { * var dialog = new ElementPropertyDialog(3); * dialog.Title = InstructionName; * dialog.ShowLine2("S",SourceValue); * dialog.ShowLine4("D",DestinationValue); * dialog.ShowLine6("N",Count); * return dialog; * } */ public override void AcceptNewValues(IList <string> valueStrings, Device contextDevice) { var oldvaluestring1 = SourceValue.ValueString; var oldvaluestring2 = DestinationValue.ValueString; var oldvaluestring3 = Count.ValueString; if (ValueParser.CheckValueString(valueStrings[0], new Regex[] { ValueParser.VerifyWordRegex1 }) && ValueParser.CheckValueString(valueStrings[2], new Regex[] { ValueParser.VerifyWordRegex2 }) && ValueParser.CheckValueString(valueStrings[4], new Regex[] { ValueParser.VerifyWordRegex3, ValueParser.VerifyIntKHValueRegex })) { SourceValue = ValueParser.ParseWordValue(valueStrings[0], contextDevice); DestinationValue = ValueParser.ParseWordValue(valueStrings[2], contextDevice); Count = ValueParser.ParseWordValue(valueStrings[4], contextDevice); InstructionCommentManager.ModifyValue(this, oldvaluestring1, SourceValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring2, DestinationValue.ValueString); InstructionCommentManager.ModifyValue(this, oldvaluestring3, Count.ValueString); ValueCommentManager.UpdateComment(SourceValue, valueStrings[1]); ValueCommentManager.UpdateComment(DestinationValue, valueStrings[3]); ValueCommentManager.UpdateComment(Count, valueStrings[5]); } else { throw new ValueParseException("Unexpected input"); } }