public static void LoadFromElement(XmlElement e, Data.DynamicEquation value, bool isClip) { var e_name = e["Name"] as XmlElement; var e_x = e["Code"] as XmlElement; if (e_name != null) { LoadFromElement(e_name, value.Name, isClip); } if (e_x != null) { LoadFromElement(e_x, value.Code, isClip); } }
public static XmlElement SaveToElement(XmlDocument doc, string element_name, Data.DynamicEquation value, bool isClip) { var e = doc.CreateElement(element_name); var name = SaveToElement(doc, "Name", value.Name, isClip); if (name != null) { e.AppendChild(name); } var code = SaveToElement(doc, "Code", value.Code, isClip); if (code != null) { e.AppendChild(code); } return(e.ChildNodes.Count > 0 ? e : null); }
public static Data.DynamicEquation Select(string paramName, string id, Data.DynamicEquation currentSelected, bool hasDefault, bool showInvalid) { var nextSelected = currentSelected; var v = Core.Dynamic.Equations.Values.Select((_, i) => Tuple.Create(_, i)).Where(_ => _.Item1 == currentSelected).FirstOrDefault(); string selectedID = ""; if (hasDefault) { selectedID = "Default###Dynamic"; } if (v != null) { selectedID = v.Item1.Name.Value + "###DynamicEquation" + v.Item2.ToString(); } if (Manager.NativeManager.BeginCombo(paramName + "###Dynamic" + id, selectedID, swig.ComboFlags.None)) { if (hasDefault) { bool is_selected = v == null; var name = "Default###Dynamic"; if (Manager.NativeManager.Selectable(name, is_selected, swig.SelectableFlags.None)) { nextSelected = null; } if (is_selected) { Manager.NativeManager.SetItemDefaultFocus(); } } for (int i = 0; i < Core.Dynamic.Equations.Values.Count; i++) { if (!showInvalid && !Core.Dynamic.Equations.Values[i].IsValid) { continue; } bool is_selected = (Core.Dynamic.Equations.Values[i] == currentSelected); string name = string.Empty; if (Core.Dynamic.Equations.Values[i].Name.Value == string.Empty) { name = "(Noname)" + "###DynamicEquation" + i.ToString(); } else { name = Core.Dynamic.Equations.Values[i].Name.Value + "###DynamicEquation" + i.ToString(); } if (Manager.NativeManager.Selectable(name, is_selected, swig.SelectableFlags.None)) { nextSelected = Core.Dynamic.Equations.Values[i]; } if (is_selected) { Manager.NativeManager.SetItemDefaultFocus(); } } Manager.NativeManager.EndCombo(); } return(nextSelected); }