private void buttonAddExpression_Click(object sender, EventArgs e) { if ((textBoxCondition.Text != "") && (textBoxValue.Text != "")) { if (true)//(CheckAssingment(textBoxAssignment.Text, (string)comboBoxType.SelectedItem)) { int rowId = dataGridViewExpression.Rows.Add(); // Grab the new row! DataGridViewRow row = dataGridViewExpression.Rows[rowId]; // Add the data row.Cells[0].Value = textBoxCondition.Text.ToUpper(); row.Cells[1].Value = textBoxValue.Text; dataGridViewExpression.Rows[rowId].Selected = true; //string str = (string)comboBoxField.SelectedItem; string str = (string)listBox1.SelectedItem; bool found = false; if (!str.StartsWith("->")) { //listBox1.SelectedItem = "->" + str; for (int i = 0; i < listBox1.Items.Count; i++) { if ((string)listBox1.Items[i] == str) { listBox1.Items[i] = "->" + str; break; } } } foreach (DisplayObjectDynamicProperty displayobjectdynamicproperty in objDisplayObjectDynamicPropertys.list) { if (displayobjectdynamicproperty.ObjectType == ConvertListbox2DynamicGraphicalProperty(str)) { found = true; DisplayObjectDynamicPropertyCondition _condition = new DisplayObjectDynamicPropertyCondition(); _condition.If = textBoxCondition.Text.ToUpper(); _condition.Then = textBoxValue.Text; displayobjectdynamicproperty.ConditionList.Add(_condition); break; } } if (!found) { DisplayObjectDynamicProperty displayobjectdynamicproperty = new DisplayObjectDynamicProperty(); displayobjectdynamicproperty.ObjectType = ConvertListbox2DynamicGraphicalProperty(str); displayobjectdynamicproperty.ReturnType = ConvertListbox2returnType(str); DisplayObjectDynamicPropertyCondition _condition = new DisplayObjectDynamicPropertyCondition(); _condition.If = textBoxCondition.Text.ToUpper(); _condition.Then = textBoxValue.Text; displayobjectdynamicproperty.ConditionList.Add(_condition); objDisplayObjectDynamicPropertys.list.Add(displayobjectdynamicproperty); } } else { MessageBox.Show("Value " + textBoxAssignment.Text + " is not valid " + (string)comboBoxType.SelectedItem + " type"); } } }
public void loadDrawExpressionCollection(byte[] _compiledexp) { int size = 0; int size1 = 0; //drawexpressionCollection = new DrawExpressionCollection(this); DrawExpressionCollectionCode drawexpressioncollectioncode = new DrawExpressionCollectionCode(); drawexpressioncollectioncode = (DrawExpressionCollectionCode)RawDeserialize(_compiledexp, 0, typeof(DrawExpressionCollectionCode)); size = Marshal.SizeOf(drawexpressioncollectioncode); if (drawexpressioncollectioncode.IsValid == 1) { for (int i = 0; i < drawexpressioncollectioncode.NoOfDynamicProperties; i++) { ExpressionCode expressioncode = new ExpressionCode(); expressioncode = (ExpressionCode)RawDeserialize(_compiledexp, size, typeof(ExpressionCode)); size += Marshal.SizeOf(expressioncode); DisplayObjectDynamicProperty displayobjectdynamicproperty = new DisplayObjectDynamicProperty(); displayobjectdynamicproperty.ObjectType = (enumDynamicGraphicalProperty)expressioncode.Property; displayobjectdynamicproperty.Type = (VarType)expressioncode.ReturnType; //displayobjectdynamicproperty.IsValid = 1; displayobjectdynamicproperty.IsColor = Convert.ToBoolean(expressioncode.IsColor); displayobjectdynamicproperty.IsString = Convert.ToBoolean(expressioncode.IsString); for (int j = 0; j < expressioncode.NoOfConditions; j++) { ConditionCode conditioncode = new ConditionCode(); //conditioncode.StrValue = new STRINGOBJ(); conditioncode = (ConditionCode)RawDeserialize(_compiledexp, size, typeof(ConditionCode)); size += Marshal.SizeOf(conditioncode); DisplayObjectDynamicPropertyCondition displayobjectdynamicpropertycondition = new DisplayObjectDynamicPropertyCondition(); displayobjectdynamicpropertycondition.IsValid = true; displayobjectdynamicpropertycondition.m_Value = conditioncode.Value; //unsafe { displayobjectdynamicpropertycondition.ToCopySTRINGOBJ(conditioncode.StrValue); //for (int k = 0; k < 16; k++) //{ // displayobjectdynamicpropertycondition.m_StrValue.Val[k] = conditioncode.Val[k]; //} } size1 = 0; { OPERATION _operation = new OPERATION(); _operation = (OPERATION)RawDeserialize(_compiledexp, size, typeof(OPERATION)); size1 = Marshal.SizeOf(_operation); size += Marshal.SizeOf(_operation); while (size1 < _operation.Size1) { TICInstruction instruction = new TICInstruction(); instruction.Operator = (OPERATOR)RawDeserialize(_compiledexp, size, typeof(OPERATOR)); size += Marshal.SizeOf(instruction.Operator); size1 += Marshal.SizeOf(instruction.Operator); for (int k = 0; k < instruction.Operator.NoOfArg; k++) { OPERAND operand = new OPERAND(); operand = (OPERAND)RawDeserialize(_compiledexp, size, typeof(OPERAND)); size += Marshal.SizeOf(operand); size1 += Marshal.SizeOf(operand); instruction.OperandList.Add(operand); } displayobjectdynamicpropertycondition.SimpleOperation.instructionlist.Add(instruction); } } displayobjectdynamicproperty.ConditionList.Add(displayobjectdynamicpropertycondition); } drawexpressionCollection.objDisplayObjectDynamicPropertys.list.Add(displayobjectdynamicproperty); } } }