/// <summary>Upgrades to version 1.</summary> /// <remarks> /// Converts: /// <Series> /// <X> /// <TableName>HarvestReport</TableName> /// <FieldName>Maize.Population</FieldName> /// </X> /// <Y> /// <TableName>HarvestReport</TableName> /// <FieldName>GrainWt</FieldName> /// </Y> /// </Series> /// to: /// <Series> /// <TableName>HarvestReport</TableName> /// <XFieldName>Maize.Population</XFieldName> /// <YFieldName>GrainWt</YFieldName> /// </Series> /// </remarks> /// <param name="node">The node to upgrade.</param> /// <param name="fileName">The name of the .apsimx file</param> private static void UpgradeToVersion1(XmlNode node, string fileName) { foreach (XmlNode seriesNode in XmlUtilities.FindAllRecursivelyByType(node, "Series")) { XmlUtilities.Rename(seriesNode, "Title", "Name"); XmlUtilities.Move(seriesNode, "X/TableName", seriesNode, "TableName"); XmlUtilities.Move(seriesNode, "X/FieldName", seriesNode, "XFieldName"); XmlUtilities.Move(seriesNode, "Y/FieldName", seriesNode, "YFieldName"); XmlUtilities.Move(seriesNode, "X2/FieldName", seriesNode, "X2FieldName"); XmlUtilities.Move(seriesNode, "Y2/FieldName", seriesNode, "Y2FieldName"); bool showRegression = XmlUtilities.Value(seriesNode.ParentNode, "ShowRegressionLine") == "true"; if (showRegression) { seriesNode.AppendChild(seriesNode.OwnerDocument.CreateElement("Regression")); } string seriesType = XmlUtilities.Value(seriesNode, "Type"); if (seriesType == "Line") { XmlUtilities.SetValue(seriesNode, "Type", "Scatter"); } XmlUtilities.DeleteValue(seriesNode, "X"); XmlUtilities.DeleteValue(seriesNode, "Y"); } }