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; case "WCN2": AddWCN2Fmt(ref fmtdata); break; case "WCNCKL": AddWCNCKLFmt(ref fmtdata); break; case "NSP": AddNSPFMT(ref fmtdata); break; } } private void AddWCNCKLFmt(ref FormatData fmtdata) { fmtdata.BoxData[3].End = 518; fmtdata.BoxData[4].End = 518; fmtdata.StepData[30].StepLayoutData.AlignWithParentTab = "True"; fmtdata.StepData[2].StepPrintData.Justify = "Center"; fmtdata.StepData[9].StepPrintData.Justify = "Center"; } 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"; // The RGE formats tabs for HLS were printing one character over to the left in 32 bit, except for // immediate (index = 3). Adjust format tab data to make it match 16bit. fmtdata.StepData[2].TabData.Ident = " {numeric} "; fmtdata.StepData[2].TabData.IdentEdit = " {numeric} "; fmtdata.StepData[2].TabData.RNOIdentEdit=""; fmtdata.StepData[2].TabData.RNOIdent=""; //fmtdata.StepData[2].TabData.IdentEditWid=""; //fmtdata.StepData[2].TabData.IdentWid="18"; //fmtdata.StepData[2].TabData.RNOIdentEditWid="18"; //fmtdata.StepData[2].TabData.RNOIdentWid = "18"; fmtdata.StepData[9].TabData.IdentEdit="*{numeric} "; fmtdata.StepData[9].TabData.Ident="*{numeric} "; fmtdata.StepData[9].TabData.RNOIdentEdit="* "; fmtdata.StepData[9].TabData.RNOIdent = "* "; } private void AddWCN2Fmt(ref FormatData fmtdata) { // the WCN2 tab for continuous HLS type had only 1 space after the period ('.'). The other // tabs had two spaces. This tab type also uses the C0 macro to draw the lines above/below // the number. Because it only had 1 space, the tab and lines were not matching the // 16bit output. A space is added here to make the continuous HLS type match the number // of spaces as other HLS tabs, and to make the printed output match that of 16bit. fmtdata.StepData[9].TabData.Ident = fmtdata.StepData[9].TabData.Ident + " "; fmtdata.StepData[9].TabData.IdentEdit = fmtdata.StepData[9].TabData.IdentEdit + " "; fmtdata.StepData[9].TabData.RNOIdent = fmtdata.StepData[9].TabData.RNOIdent + " "; fmtdata.StepData[9].TabData.RNOIdentEdit = fmtdata.StepData[9].TabData.RNOIdentEdit + " "; } private void AddNSPFMT(ref FormatData fmtdata) { // Script Caution (original 16-bit font) fmtdata.StepData[6].Font.FontFamily = "Prestige Elite Tall"; fmtdata.StepData[6].Font.FontSize = "10"; fmtdata.StepData[6].Font.FontStyle = "Italics"; fmtdata.StepData[6].TabData.Font.FontFamily = "VolianScript"; fmtdata.StepData[6].TabData.Font.FontSize = "32"; fmtdata.StepData[6].TabData.Font.FontStyle = "None"; fmtdata.StepData[6].TabData.Bullet.Separate = "True"; fmtdata.StepData[6].TabData.Bullet.Font = new VE_Font(); fmtdata.StepData[6].TabData.Bullet.Font.FontFamily = "Prestige Elite Tall"; fmtdata.StepData[6].TabData.Bullet.Font.FontSize = "10"; fmtdata.StepData[6].TabData.Bullet.Font.FontStyle = "None"; // Note (original 16-bit font) fmtdata.StepData[7].Font.FontFamily = "Prestige Elite Tall"; fmtdata.StepData[7].Font.FontSize = "10"; fmtdata.StepData[7].Font.FontStyle = "Italics"; fmtdata.StepData[7].TabData.Font.FontFamily = "Prestige Elite Tall"; fmtdata.StepData[7].TabData.Font.FontSize = "10"; fmtdata.StepData[7].TabData.Font.FontStyle = "None"; fmtdata.StepData[7].TabData.Bullet.Separate = "True"; fmtdata.StepData[7].TabData.Bullet.Font = new VE_Font(); fmtdata.StepData[7].TabData.Bullet.Font.FontFamily = "Prestige Elite Tall"; fmtdata.StepData[7].TabData.Bullet.Font.FontSize = "10"; fmtdata.StepData[7].TabData.Bullet.Font.FontStyle = "None"; //// Cautions use Arial Font for Tab (instead of Script) and //// any bullets following the tab are at a different point size //fmtdata.StepData[6].Font.FontFamily = "Arial"; //fmtdata.StepData[6].Font.FontSize = "10"; //fmtdata.StepData[6].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[6].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[6].TabData.Font.FontSize = "14"; //fmtdata.StepData[6].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[6].TabData.Bullet.Separate = "True"; //fmtdata.StepData[6].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[6].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[6].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[6].TabData.Bullet.Font.FontStyle = "Bold"; ////fmtdata.StepData[20] = fmtdata.StepData[6]; ////fmtdata.StepData[20].Type = "Caution1"; ////fmtdata.StepData[20].ParentType = "Caution"; //fmtdata.StepData[20].Font.FontFamily = "Arial"; //fmtdata.StepData[20].Font.FontSize = "10"; //fmtdata.StepData[20].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[20].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[20].TabData.Font.FontSize = "14"; //fmtdata.StepData[20].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[20].TabData.Bullet.Separate = "True"; //fmtdata.StepData[20].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[20].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[20].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[20].TabData.Bullet.Font.FontStyle = "Bold"; ////fmtdata.StepData[21] = fmtdata.StepData[6]; ////fmtdata.StepData[21].Type = "Caution2"; ////fmtdata.StepData[21].ParentType = "Caution"; //fmtdata.StepData[21].Font.FontFamily = "Arial"; //fmtdata.StepData[21].Font.FontSize = "10"; //fmtdata.StepData[21].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[21].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[21].TabData.Font.FontSize = "14"; //fmtdata.StepData[21].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[21].TabData.Bullet.Separate = "True"; //fmtdata.StepData[21].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[21].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[21].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[21].TabData.Bullet.Font.FontStyle = "Bold"; ////fmtdata.StepData[27] = fmtdata.StepData[6]; ////fmtdata.StepData[27].Type = "Caution3"; ////fmtdata.StepData[27].ParentType = "Caution"; //fmtdata.StepData[27].Font.FontFamily = "Arial"; //fmtdata.StepData[27].Font.FontSize = "10"; //fmtdata.StepData[27].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[27].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[27].TabData.Font.FontSize = "14"; //fmtdata.StepData[27].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[27].TabData.Bullet.Separate = "True"; //fmtdata.StepData[27].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[27].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[27].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[27].TabData.Bullet.Font.FontStyle = "Bold"; ////fmtdata.StepData[29] = fmtdata.StepData[6]; ////fmtdata.StepData[29].Type = "Caution4"; ////fmtdata.StepData[29].ParentType = "Caution"; //fmtdata.StepData[29].Font.FontFamily = "Arial"; //fmtdata.StepData[29].Font.FontSize = "10"; //fmtdata.StepData[29].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[29].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[29].TabData.Font.FontSize = "14"; //fmtdata.StepData[29].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[29].TabData.Bullet.Separate = "True"; //fmtdata.StepData[29].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[29].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[29].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[29].TabData.Bullet.Font.FontStyle = "Bold"; //// Notes used Arial font and any bullets following the tab are at //// a different point size //fmtdata.StepData[7].Font.FontFamily = "Arial"; //fmtdata.StepData[7].Font.FontSize = "10"; //fmtdata.StepData[7].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[7].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[7].TabData.Font.FontSize = "10"; //fmtdata.StepData[7].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[7].TabData.Bullet.Separate = "True"; //fmtdata.StepData[7].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[7].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[7].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[7].TabData.Bullet.Font.FontStyle = "Bold"; //fmtdata.StepData[7].TabData.Ident = "Note "; //fmtdata.StepData[7].TabData.RNOIdent = "Note "; ////fmtdata.StepData[7].TabData.IdentWid = "65.4"; ////fmtdata.StepData[22] = fmtdata.StepData[7]; ////fmtdata.StepData[22].Type = "Note1"; ////fmtdata.StepData[22].ParentType = "Note"; //fmtdata.StepData[22].Font.FontFamily = "Arial"; //fmtdata.StepData[22].Font.FontSize = "10"; //fmtdata.StepData[22].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[22].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[22].TabData.Font.FontSize = "10"; //fmtdata.StepData[22].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[22].TabData.Bullet.Separate = "True"; //fmtdata.StepData[22].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[22].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[22].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[22].TabData.Bullet.Font.FontStyle = "Bold"; //fmtdata.StepData[22].TabData.Ident = "Note "; //fmtdata.StepData[22].TabData.RNOIdent = "Note "; ////fmtdata.StepData[22].TabData.IdentWid = "65.4"; ////fmtdata.StepData[23] = fmtdata.StepData[7]; ////fmtdata.StepData[23].Type = "Note2"; ////fmtdata.StepData[23].ParentType = "Note"; //fmtdata.StepData[23].Font.FontFamily = "Arial"; //fmtdata.StepData[23].Font.FontSize = "10"; //fmtdata.StepData[23].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[23].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[23].TabData.Font.FontSize = "10"; //fmtdata.StepData[23].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[23].TabData.Bullet.Separate = "True"; //fmtdata.StepData[23].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[23].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[23].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[23].TabData.Bullet.Font.FontStyle = "Bold"; //fmtdata.StepData[23].TabData.Ident = "Note "; //fmtdata.StepData[23].TabData.RNOIdent = "Note "; ////fmtdata.StepData[23].TabData.IdentWid = "65.4"; ////fmtdata.StepData[26] = fmtdata.StepData[7]; ////fmtdata.StepData[26].Type = "Note3"; ////fmtdata.StepData[26].ParentType = "Note"; //fmtdata.StepData[26].Font.FontFamily = "Arial"; //fmtdata.StepData[26].Font.FontSize = "10"; //fmtdata.StepData[26].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[26].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[26].TabData.Font.FontSize = "10"; //fmtdata.StepData[26].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[26].TabData.Bullet.Separate = "True"; //fmtdata.StepData[26].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[26].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[26].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[26].TabData.Bullet.Font.FontStyle = "Bold"; //fmtdata.StepData[26].TabData.Ident = "Note "; //fmtdata.StepData[26].TabData.RNOIdent = "Note "; ////fmtdata.StepData[26].TabData.IdentWid = "65.4"; ////fmtdata.StepData[28] = fmtdata.StepData[7]; ////fmtdata.StepData[28].Type = "Note4"; ////fmtdata.StepData[28].ParentType = "Note"; //fmtdata.StepData[28].Font.FontFamily = "Arial"; //fmtdata.StepData[28].Font.FontSize = "10"; //fmtdata.StepData[28].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[28].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[28].TabData.Font.FontSize = "10"; //fmtdata.StepData[28].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[28].TabData.Bullet.Separate = "True"; //fmtdata.StepData[28].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[28].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[28].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[28].TabData.Bullet.Font.FontStyle = "Bold"; //fmtdata.StepData[28].TabData.Ident = "Note "; //fmtdata.StepData[28].TabData.RNOIdent = "Note "; ////fmtdata.StepData[28].TabData.IdentWid = "65.4"; ////fmtdata.StepData[32] = fmtdata.StepData[7]; ////fmtdata.StepData[32].Type = "Note5"; ////fmtdata.StepData[32].ParentType = "Note"; //fmtdata.StepData[32].Font.FontFamily = "Arial"; //fmtdata.StepData[32].Font.FontSize = "10"; //fmtdata.StepData[32].Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[32].TabData.Font.FontFamily = "Arial"; //fmtdata.StepData[32].TabData.Font.FontSize = "10"; //fmtdata.StepData[32].TabData.Font.FontStyle = "Italics, Bold"; //fmtdata.StepData[32].TabData.Bullet.Separate = "True"; //fmtdata.StepData[32].TabData.Bullet.Font = new VE_Font(); //fmtdata.StepData[32].TabData.Bullet.Font.FontFamily = "Arial"; //fmtdata.StepData[32].TabData.Bullet.Font.FontSize = "10"; //fmtdata.StepData[32].TabData.Bullet.Font.FontStyle = "Bold"; //fmtdata.StepData[32].TabData.Ident = "Note "; //fmtdata.StepData[32].TabData.RNOIdent = "Note "; ////fmtdata.StepData[32].TabData.IdentWid = "65.4"; } } public partial class FmtToXml { public void AddPlantSpecific(string genFileName, ref PageStyles pgstyles) { //string genName = genFileName.Substring(genFileName.LastIndexOf('\\') + 1); //genName = genName.Substring(0, genName.IndexOf('.')); //switch (genName.ToUpper()) switch (genFileName.ToUpper()) { case "NSP.PAG": AddNSPPage(ref pgstyles); break; } } // NSP_ALL private void AddNSPPage(ref PageStyles pgstyles) { // Procedure Steps pgstyles.PgStyles[0].Items[1].Col = -16; // {HEADER1} pgstyles.PgStyles[0].Items[2].Col = 249; // {PROCTITLE} made positioning consistant - will not match 16-bit pgstyles.PgStyles[0].Items[5].Col = -16; // {BOX2} // Figure Included in Page Count pgstyles.PgStyles[1].Items[1].Col = -16; // {HEADER1} pgstyles.PgStyles[1].Items[3].Col = 453; // {REV} made positioning consistant - will not match 16-bit pgstyles.PgStyles[1].Items[4].Col = 24; // {EOPNUM} made positioning consistant - will not match 16-bit pgstyles.PgStyles[1].Items[5].Col = -16; // {BOX1} // Cover Sheet 2004 With no Retention pgstyles.PgStyles[3].Items[1].Col = -16; // {HEADER1} pgstyles.PgStyles[3].Items[3].Col = 453; // {REV} made positioning consistant - will not match 16-bit pgstyles.PgStyles[3].Items[4].Col = 24; // {EOPNUM} made positioning consistant - will not match 16-bit // Purpose And Entry Conditions with Header Box pgstyles.PgStyles[6].Items[1].Col = -16; // {HEADER1} pgstyles.PgStyles[6].Items[3].Col = 453; // {REV} made positioning consistant - will not match 16-bit pgstyles.PgStyles[6].Items[4].Col = 24; // {EOPNUM} made positioning consistant - will not match 16-bit // Two Column Auto Action Pages pgstyles.PgStyles[7].Items[1].Col = 505; // {REV} made positioning consistant - will not match 16-bit pgstyles.PgStyles[7].Items[2].Col = 505; // {EOPNUM} made positioning consistant - will not match 16-bit pgstyles.PgStyles[7].Items[4].Col = -16; // {BOX2} // Auto Continuous Action Summary pgstyles.PgStyles[8].Items[1].Col = -16; // {HEADER1} pgstyles.PgStyles[8].Items[5].Col = -16; // {BOX4} } } 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)); } } }