public IfElseLogic MakeDeepCopy() { String copyString = this.Serialize(); IfElseLogic ret = Deserialize(copyString); return(ret); }
public void Setup(Logic l) { _data = (IfElseLogic)l; if (_data.display != null && _data.display != this) { _data.display.Close(); } _data.display = this; richTextBoxVariables.Text = "Variables:\n"; foreach (object[] oarr in _data.variables) { richTextBoxVariables.Text += oarr[0] + " " + oarr[1].ToString() + "\n"; } richTextBoxVariables.Text += "\nVariables From Parent:\n"; if (_data.parent != null) { Dictionary <String, Object[]> forDisplay = _data.parent.GetVariables(); foreach (String s in forDisplay.Keys) { richTextBoxVariables.Text += forDisplay[s][0] + "\t\t" + forDisplay[s][1].ToString() + "\n"; } } EnchantmentUtilities.FillComboboxWithVariableNames(comboBoxVariables, _data); comboBoxConditions.DataSource = EnchantmentUtilities.getCalculableTypes(); comboBoxResults.DataSource = EnchantmentUtilities.getTriggerableTypes(checkBoxPremades.Checked); EnchantmentUtilities.FillComboboxWithNames(comboBoxCurrentConditions, _data.conditions); EnchantmentUtilities.FillComboboxWithNames(comboBoxIfResults, _data.ifResults); EnchantmentUtilities.FillComboboxWithNames(comboBoxElseResults, _data.elseResults); comboBoxCurrentConditions.Text = ""; comboBoxElseResults.Text = ""; comboBoxIfResults.Text = ""; comboBoxCurrentConditions.SelectedIndex = comboBoxCurrentConditions.Items.Count - 1; comboBoxElseResults.SelectedIndex = comboBoxElseResults.Items.Count - 1; comboBoxIfResults.SelectedIndex = comboBoxIfResults.Items.Count - 1; textBoxLogicName.TextChanged -= textBoxLogicName_TextChanged; textBoxLogicName.Text = _data.name; textBoxLogicName.TextChanged += textBoxLogicName_TextChanged; }