using System; using System.Collections.Generic; using System.Text; using System.Xml; namespace fmtxml { public partial class FmtFileToXml { public void AddPlantSpecific(string genFileName, ref FormatData fmtdata) { string genName = genFileName.Substring(genFileName.LastIndexOf('\\') + 1); genName = genName.Substring(0, genName.IndexOf('.')); switch (genName.ToUpper()) { case "TP": AddTPFmt(ref fmtdata); break; case "RGE": case "RGESAM1": case "RGESAM2": case "RGESMPE": AddRGEFmt(ref fmtdata); break; } } private void AddTPFmt(ref FormatData fmtdata) { // When a plant does not have the TextSubFollowsTextStyle, the 16bit code was adding two characters // before the tab if the parent of this step is a Caution or Note. But the two characters was related // to the spaces on the parents tab. The code was very hard to follow. This format variable was // introduced to allow setting of the number of spaces before the tab. fmtdata.StepData[1].CautionOrNoteSubstepIndent = "2"; } private void AddRGEFmt(ref FormatData fmtdata) { // The RGE formats had a PrintPosAdjust in 16 bit on the High, Immediate, LossocAC & continuous step // types with a value of -1 (move back one character). However, on the printed output, it printed // as about a 1/4 of a character. This value will be set in the 32bit format file to a -2.4 in // these step types. fmtdata.StepData[2].StepPrintData.PosAdjust = "-2.4"; fmtdata.StepData[3].StepPrintData.PosAdjust = "-2.4"; fmtdata.StepData[9].StepPrintData.PosAdjust = "-2.4"; fmtdata.StepData[18].StepPrintData.PosAdjust = "-2.4"; } } public partial class RtfToSvg { public void AppendPlantSpecific(string genFileName, XmlDocument myDoc) { string genName = genFileName.Substring(genFileName.LastIndexOf('\\') + 1); genName = genName.Substring(0, genName.IndexOf('.')); switch (genName.ToUpper()) { case "WCN2": AddWCN2(myDoc); break; case "WCN1": AddWCN2(myDoc); // same cover page box as wcn2 break; } } private void AddWCN2(XmlDocument myDoc) { XmlDocument xd = new XmlDocument(); // include the svg level so that the xmlns can be set to be the same as the generated document. xd.LoadXml("\r\n" + "\r\n" + "\r\n" + "\r\n" + "\r\n" + "\r\n" + "\r\n" + ""); myDoc.DocumentElement.AppendChild(myDoc.ImportNode(xd.DocumentElement.ChildNodes[0], true)); } } }