SourceCode/PROMS/fmtxml/AppendPlantSpecific.cs
John f41b211187 added NSP specific, removed IdentWid’s
removed IdentWid’s, added TabBullet
setup DocStyle to inherit from the section’s default, not Base, added Plant specific for PageStyles (pagelist)
2012-06-18 20:21:26 +00:00

352 lines
16 KiB
C#

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)
{
// 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("<svg xmlns=\"http://www.w3.org/2000/svg\"><g id=\"B9\">\r\n" +
"<rect x=\"4\" y=\"-3\" width=\"352.5\" height=\"120\" fill=\"none\" stroke=\"black\" stroke-width=\"1.2\" />\r\n" +
"<line x1=\"4\" y1=\"21\" x2=\"355.5\" y2=\"21\" stroke-width=\"1.2\" />\r\n" +
"<line x1=\"4\" y1=\"45\" x2=\"355.5\" y2=\"45\" stroke-width=\"1.2\" />\r\n" +
"<line x1=\"4\" y1=\"69\" x2=\"355.5\" y2=\"69\" stroke-width=\"1.2\" />\r\n" +
"<line x1=\"4\" y1=\"93\" x2=\"355.5\" y2=\"93\" stroke-width=\"1.2\" />\r\n" +
"<line x1=\"263\" y1=\"-3\" x2=\"263\" y2=\"118\" stroke-width=\"1.2\" />\r\n" +
"</g></svg>");
myDoc.DocumentElement.AppendChild(myDoc.ImportNode(xd.DocumentElement.ChildNodes[0], true));
}
}
}