diff --git a/PROMS/Volian.Print.Library/vlnParagraph.cs b/PROMS/Volian.Print.Library/vlnParagraph.cs index f3da7023..e9f40c6f 100644 --- a/PROMS/Volian.Print.Library/vlnParagraph.cs +++ b/PROMS/Volian.Print.Library/vlnParagraph.cs @@ -1069,7 +1069,14 @@ namespace Volian.Print.Library MyPageHelper.AlarmYoffStart = alrmY - SixLinesPerInch; yPageStart -= (4 * SixLinesPerInch); } - + // For Calvert Alarms, if there is no box & this is top of page, if previous step + // had box (macro), adjust up page. The constructor (vlnParagraph), inserted these + // lines after the box so that the following text did not print right next to box. + if (MyItemInfo.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvertAlarm) + { + if (MyItemInfo.MyPrevious != null && MyItemInfo.MyPrevious.TemplateIndex > 0 && MyItemInfo.ActiveFormat.PlantFormat.FormatData.Templates[MyItemInfo.MyPrevious.TemplateIndex].hmacro > 0) + yPageStart += (3 * SixLinesPerInch); + } // Now check if this is a template type step & if so, add the HLS's prefix/suffix to it. if (MyItemInfo.MyHLS != null && MyItemInfo.MyHLS.FormatStepData.UseSmartTemplate) { @@ -1902,6 +1909,16 @@ namespace Volian.Print.Library } if (adjustAgain) AdjustXOffsetForTab(itemInfo, maxRNO, formatInfo, mytab, xMetaAdj); + + // For Calvert Alarms: if within the CONDITION/RESPONSE table, indent by 1 character. + // Sequential substeps are ok because of the tab string, but items without a tab & other step + // types were writing over the CONDITION/RESPONSE vertical table line. This code uses + // 7.2 for the character size to match 16bit output. + if (itemInfo.IsStep && !itemInfo.IsSequential && !itemInfo.IsCaution && !itemInfo.IsNote && MyParent.HasCalvertMacro) + { + XOffset += 7.2f; + if (mytab != null) mytab.XOffset += 7.2f; + } if ((itemInfo.IsCaution || itemInfo.IsNote) && (itemInfo.MyDocStyle.StructureStyle.Style & E_DocStructStyle.DoubleBoxHLS) == E_DocStructStyle.DoubleBoxHLS) { if (itemInfo.IsInRNO)