The Pagination Logic was improved to more properly paginate the alarm procedures for Calvert.
This commit is contained in:
parent
e8a905af49
commit
793f4c58df
@ -487,7 +487,7 @@ namespace Volian.Print.Library
|
||||
ySpaceOnCurPage -= myBottomMsgSpace;
|
||||
vlnParagraph lastBreak = paraBreak;
|
||||
paraBreak = FindPageBreak(yStart, ySpaceOnCurPage-accountForCalvertAlarmConditionResponseFooter, yLowerLimit,
|
||||
myList, paraBreak, yPageSize - (myTopMsgSpace + SixLinesPerInch) - myBottomMsgSpace,
|
||||
myList, lastBreak, yPageSize - (myTopMsgSpace + SixLinesPerInch) - myBottomMsgSpace,
|
||||
myBottomMsgSpace,MyItemInfo.ActiveFormat.PlantFormat.FormatData.StepDataList[40].ContinueOnly);
|
||||
//Console.WriteLine("Break at {0}", paraBreak.MyItemInfo.ShortPath);//Comment Out before release
|
||||
if (paraBreak == null)
|
||||
@ -500,8 +500,9 @@ namespace Volian.Print.Library
|
||||
}
|
||||
if (MyItemInfo.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvertAlarm) // only do the following for Calvert Alarms
|
||||
{
|
||||
//if (lastBreak != null && lastBreak.MyItemInfo.InList(42656,42923)) Console.WriteLine("here");
|
||||
// Or Step whose parent fits on a page should break at the parent step
|
||||
//if (MyItemInfo.InList(40308)) Console.WriteLine("here");
|
||||
//if (MyItemInfo.InList(119826)) Console.WriteLine("here");
|
||||
//if (paraBreak.MyItemInfo.InList(40339))
|
||||
float ySpaceOnNextPage = yPageSize - (myTopMsgSpace + SixLinesPerInch) - myBottomMsgSpace;
|
||||
if (paraBreak.MyItemInfo.IsOr && paraBreak.MyParent.YSize < ySpaceOnNextPage)
|
||||
@ -525,20 +526,24 @@ namespace Volian.Print.Library
|
||||
}
|
||||
}
|
||||
// if first condition/response and the parent has caution, notes or warnings then move the break to the caution, note or warning
|
||||
if (!paraBreak.MyItemInfo.IsCautionPart && !paraBreak.MyItemInfo.IsNotePart && paraBreak.ParentHasCalvertMacro && paraBreak.MyParent.HasCalvertMacro && paraBreak.MyItemInfo.MyPrevious == null && paraBreak.MyParent.ChildrenAbove.Count > 0)
|
||||
if (!paraBreak.MyItemInfo.IsCautionPart && !paraBreak.MyItemInfo.IsNotePart && paraBreak.ParentHasCalvertMacro && paraBreak.MyParent.HasCalvertMacro && paraBreak.MyItemInfo.MyPrevious == null)
|
||||
{
|
||||
paraBreak = paraBreak.MyParent.ChildrenAbove[0];
|
||||
if (paraBreak.MyParent.ChildrenAbove.Count > 0)
|
||||
paraBreak = paraBreak.MyParent.ChildrenAbove[0];
|
||||
else
|
||||
paraBreak = paraBreak.MyParent;
|
||||
}
|
||||
// If the lastbreak was part of a condition response and the location is part of a condition response account for the size of the footer.
|
||||
else if (!paraBreak.MyItemInfo.IsCautionPart && !paraBreak.MyItemInfo.IsNotePart && paraBreak.ParentHasCalvertMacro && accountForCalvertAlarmConditionResponseFooter == 0)
|
||||
{
|
||||
paraBreak = FindPageBreak(yStart, ySpaceOnCurPage - vlnPrintObject.SixLinesPerInch * 4, yLowerLimit, myList, paraBreak, yPageSize - (myTopMsgSpace + SixLinesPerInch) - myBottomMsgSpace,
|
||||
paraBreak = FindPageBreak(yStart, ySpaceOnCurPage - vlnPrintObject.SixLinesPerInch * 4, yLowerLimit, myList, lastBreak, yPageSize - (myTopMsgSpace + SixLinesPerInch) - myBottomMsgSpace,
|
||||
myBottomMsgSpace, MyItemInfo.ActiveFormat.PlantFormat.FormatData.StepDataList[40].ContinueOnly);
|
||||
if (paraBreak.MyItemInfo.MyPrevious == null && paraBreak.MyParent.ChildrenAbove.Count > 0)
|
||||
{
|
||||
paraBreak = paraBreak.MyParent.ChildrenAbove[0];
|
||||
if (paraBreak.MyItemInfo.MyPrevious == null)
|
||||
if(paraBreak.MyParent.ChildrenAbove.Count > 0)
|
||||
paraBreak = paraBreak.MyParent.ChildrenAbove[0];
|
||||
else
|
||||
paraBreak = paraBreak.MyParent;
|
||||
//_MyLog.WarnFormat("Keep notes and cautions with CR text {0},'{1}','{2}','{3}'", paraBreak.MyItemInfo.ItemID, paraBreak.MyItemInfo.ShortPath, paraBreak.MyItemInfo.MyProcedure.DisplayNumber, paraBreak.MyParent.MyParent.MyItemInfo.DisplayText);
|
||||
}
|
||||
}
|
||||
if (!paraBreak.MyItemInfo.IsCautionPart && !paraBreak.MyItemInfo.IsNotePart && paraBreak.ParentHasCalvertMacro)
|
||||
{
|
||||
@ -561,6 +566,8 @@ namespace Volian.Print.Library
|
||||
accountForCalvertAlarmConditionResponseFooter = 5 * SixLinesPerInch;
|
||||
else
|
||||
accountForCalvertAlarmConditionResponseFooter = 0;
|
||||
//if (lastBreak != null && paraBreak.MyItemInfo.Ordinal == 1 && !paraBreak.MyItemInfo.IsCautionOrNotePart)
|
||||
//_MyLog.WarnFormat("'Strange Break',{0},'{1}','{2}','{3}',{4}", paraBreak.MyItemInfo.ItemID, paraBreak.MyItemInfo.ShortPath, paraBreak.MyItemInfo.MyProcedure.DisplayNumber, paraBreak.MyItemInfo.MyHLS.DisplayText,lastBreak.MyItemInfo.ItemID);
|
||||
}
|
||||
if (lastBreak == paraBreak)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user