diff --git a/PROMS/Formats/fmtall/BGEVLall.xml b/PROMS/Formats/fmtall/BGEVLall.xml index 628864aa..06232530 100644 Binary files a/PROMS/Formats/fmtall/BGEVLall.xml and b/PROMS/Formats/fmtall/BGEVLall.xml differ diff --git a/PROMS/Volian.Print.Library/vlnParagraph.cs b/PROMS/Volian.Print.Library/vlnParagraph.cs index 13ec5e84..670727ba 100644 --- a/PROMS/Volian.Print.Library/vlnParagraph.cs +++ b/PROMS/Volian.Print.Library/vlnParagraph.cs @@ -138,9 +138,11 @@ namespace Volian.Print.Library else { // childItemInfo = 'child' and set to use a template for defining size. - if (childItemInfo.Steps == null) + // Note that the 'IsCaution1' was added for Calvert Valve lists, i.e. + // the Caution1 is a subheader & must be printed within the valve list table. + if (childItemInfo.Steps == null && !childItemInfo.IsCaution1) continue; - childItemInfo = childItemInfo.Steps[0]; + if (!childItemInfo.IsCaution1) childItemInfo = childItemInfo.Steps[0]; didComponentTableRow = true; } } @@ -2893,6 +2895,17 @@ namespace Volian.Print.Library // y direction (bottommost) across the row. if (itemInfo.IsStep && itemInfo.MyHLS != null && (itemInfo.MyHLS.FormatStepData.UseSmartTemplate || (itemInfo.MyHLS.FormatStepData.UseOldTemplate && itemInfo.MyDocStyle.ComponentList)) && (TheStepLevel(itemInfo) >= 0)) savCheckListBottomMost = yoff + Height + (itemInfo.MyHLS.FormatStepData.UseSmartTemplate ? SixLinesPerInch : 0); + + // The following was added for BGE valve lists, this format (BGEVLV) used caution1 as + // a subheader within the valve list. To print correctly, a line needs to be added to + // where the bottom of this (subheader) is located and XOffset is set to the leftmargin. + if (itemInfo.IsStep && itemInfo.MyHLS != null && !itemInfo.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvertAlarm && itemInfo.IsCaution1 && itemInfo.MyHLS.FormatStepData.UseOldTemplate && itemInfo.MyDocStyle.ComponentList) + { + savCheckListBottomMost += SixLinesPerInch; + yoff += Height; + XOffset = (float)itemInfo.MyDocStyle.Layout.LeftMargin; + } + if (itemInfo.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvertAlarm && itemInfo.IsCaution1) savCheckListBottomMost = yoff + Height; // Get Y offset for regular steps, or if section title is output or if not within row (not last column of // text) for wcn checklist, i.e. @@ -3150,7 +3163,7 @@ namespace Volian.Print.Library } YBottomMost = yoff; - if (MyItemInfo.IsHigh && MyItemInfo.MyDocStyle.LandscapePageList && MyItemInfo.MyDocStyle.ComponentList) + if ((MyItemInfo.IsHigh || MyItemInfo.IsCaution1) && MyItemInfo.MyDocStyle.LandscapePageList && MyItemInfo.MyDocStyle.ComponentList) { // put out line after step (for BGEVLV format) float macroY = YBottomMost-(0.25f * SixLinesPerInch); @@ -4419,6 +4432,16 @@ namespace Volian.Print.Library widOvrd = itemInfo.FormatStepData == null ? null : itemInfo.FormatStepData.WidthOverride == null ? null : (float?)ToInt(itemInfo.FormatStepData.WidthOverride, maxRNO); + // Calvert subheaders in valve lists - the text gets centered, so the width is the width + // of the page (also, don't do this for alarms, thus the !SpecialCaseCalvert Alarms, since + // alarms use Caution1 as the annunciator): + if (itemInfo.IsStep && itemInfo.MyHLS != null && !itemInfo.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvertAlarm && + itemInfo.MyHLS.FormatStepData.UseOldTemplate && itemInfo.MyDocStyle.ComponentList && itemInfo.IsCaution1) + { + Width = (float)itemInfo.MyDocStyle.Layout.PageWidth - (float)itemInfo.MyDocStyle.Layout.LeftMargin; + return; + } + // Calvert Alarms had a case where the Title With Text Below (type 42) did not match // any of the template items, but needed the width from the template. The previous step (of // same type) was in the template. Check for this case. The issue can be found in