diff --git a/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs b/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs index 2b7f9454..44ac5196 100644 --- a/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs +++ b/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs @@ -78,6 +78,25 @@ namespace Volian.Print.Library get { return _BottomMessageA; } set { _BottomMessageA = value; } } + private Dictionary> _NotesToFootNotesHLS = new Dictionary>(); + public Dictionary> NotesToFootNotesHLS + { + get { return _NotesToFootNotesHLS; } + set { _NotesToFootNotesHLS = value; } + } + private List _NotesToFootNotes = new List(); + public List NotesToFootNotes + { + get { return _NotesToFootNotes; } + set { _NotesToFootNotes = value; } + } + private float _NotesToFootNotesYoffset = 0; + + public float NotesToFootNotesYoffset + { + get { return _NotesToFootNotesYoffset; } + set { _NotesToFootNotesYoffset = value; } + } Dictionary _MyParagraphs = new Dictionary(); public Dictionary MyParagraphs { @@ -611,6 +630,17 @@ namespace Volian.Print.Library BottomMessageA.ToPdf(cb, 0, ref tmp, ref tmp); BottomMessageA = null; // Only output it once. } + if (NotesToFootNotes != null) + { + float myYOff = NotesToFootNotesYoffset; + foreach (vlnText ntfn in NotesToFootNotes) + { + ntfn.YOffset = myYOff; + myYOff -= ntfn.Height; + ntfn.ToPdf(cb, 0, ref tmp, ref tmp); + } + NotesToFootNotes = null; + } } public void DrawBottomMessage(PdfContentByte cb) { @@ -937,6 +967,9 @@ namespace Volian.Print.Library E_NumberingSequence numseq = MySection.MyDocStyle.NumberingSequence??0; switch (numseq) { + case E_NumberingSequence.GroupedByPagination: + key = ((int)E_NumberingSequence.WithSteps).ToString(); + break; case E_NumberingSequence.WithSteps: // Number with 'originalstepsection' ProcedureInfo pc = MySection.MyProcedure; int sectid = 0; @@ -1517,6 +1550,40 @@ namespace Volian.Print.Library DidHLSText = true; plstr = plstr.Replace(token, HLSText); break; + case "{VALTYPE}": + ItemInfo firstHigh = section.Steps[0]; + int typ = (int)firstHigh.MyContent.Type - 20000; + switch (typ) + { + case 2: + plstr = plstr.Replace(token, "VALVE"); + break; + case 9: + plstr = plstr.Replace(token, "SWITCH"); + break; + case 3: + plstr = plstr.Replace(token, "BREAKER"); + break; + } + break; + case "{STARTUP}": + ItemInfo firstHighs = section.Steps[0]; + int typs = (int)firstHighs.MyContent.Type - 20000; + switch (typs) + { + case 2: + // the following test for OI-3A came from 16bit code: + if (section.MyProcedure.MyContent.Number.ToUpper().Equals("OI-3A")) + plstr = plstr.Replace(token, " SDC/"); + else + plstr = plstr.Replace(token, "STARTUP/"); + break; + case 9: + case 3: + plstr = plstr.Replace(token, ""); + break; + } + break; case "{PROCDES}": ProcDescrList pdl = section.ActiveFormat.PlantFormat.FormatData.PrintData.ProcDescrList; if (pdl != null && pdl.Count > 0)