If the pagebreak is occuring at a location in the AER and RNO columns, use the maximum step level to determine the proper place to break.
This commit is contained in:
parent
c99b216e51
commit
0808404bea
@ -490,6 +490,8 @@ namespace Volian.Print.Library
|
|||||||
myList, lastBreak, yPageSize - (myTopMsgSpace + SixLinesPerInch) - myBottomMsgSpace,
|
myList, lastBreak, yPageSize - (myTopMsgSpace + SixLinesPerInch) - myBottomMsgSpace,
|
||||||
myBottomMsgSpace,MyItemInfo.ActiveFormat.PlantFormat.FormatData.StepDataList[40].ContinueOnly);
|
myBottomMsgSpace,MyItemInfo.ActiveFormat.PlantFormat.FormatData.StepDataList[40].ContinueOnly);
|
||||||
//Console.WriteLine("Break at {0}", paraBreak.MyItemInfo.ShortPath);//Comment Out before release
|
//Console.WriteLine("Break at {0}", paraBreak.MyItemInfo.ShortPath);//Comment Out before release
|
||||||
|
if (lastBreak != null && lastBreak.MyItemInfo.InList(80091))
|
||||||
|
Console.WriteLine("After 80091 {0}",paraBreak.ToString());
|
||||||
if (paraBreak == null)
|
if (paraBreak == null)
|
||||||
{
|
{
|
||||||
if (DebugPagination.IsOpen) DebugPagination.WriteLine("<<< ERROR >>> Cannot find a place to break ==>,{0},'{1}','{2}',{3},{4}"
|
if (DebugPagination.IsOpen) DebugPagination.WriteLine("<<< ERROR >>> Cannot find a place to break ==>,{0},'{1}','{2}',{3},{4}"
|
||||||
@ -678,6 +680,11 @@ namespace Volian.Print.Library
|
|||||||
{
|
{
|
||||||
float spaceOnPage = yUpperLimit + yLocation;
|
float spaceOnPage = yUpperLimit + yLocation;
|
||||||
vlnParagraph myPara = myList[stepLevel][yLocation];
|
vlnParagraph myPara = myList[stepLevel][yLocation];
|
||||||
|
if (MaxBreakLevel(yLocation, myList) > stepLevel)
|
||||||
|
{
|
||||||
|
//DebugPagination.WriteLine("Adjust for Max StepLevel");
|
||||||
|
break;
|
||||||
|
}
|
||||||
if (RNOContinueOnly && !myPara.MyItemInfo.IsInRNO)
|
if (RNOContinueOnly && !myPara.MyItemInfo.IsInRNO)
|
||||||
yAddForBtmMsg = myBottomMsgSpace;
|
yAddForBtmMsg = myBottomMsgSpace;
|
||||||
else
|
else
|
||||||
@ -688,7 +695,7 @@ namespace Volian.Print.Library
|
|||||||
&& myPara.ChildrenRight[0].YSize <= fullPage && myPara.ChildrenRight[0].YSize > spaceOnPage)
|
&& myPara.ChildrenRight[0].YSize <= fullPage && myPara.ChildrenRight[0].YSize > spaceOnPage)
|
||||||
{
|
{
|
||||||
//_MyLog.WarnFormat("\r\nMyParaBreak {0},{1},{2},{3},{4}", myPara, myPara.YSize, yUpperLimit, myPara.ChildrenRight[0].YSize, spaceOnPage);
|
//_MyLog.WarnFormat("\r\nMyParaBreak {0},{1},{2},{3},{4}", myPara, myPara.YSize, yUpperLimit, myPara.ChildrenRight[0].YSize, spaceOnPage);
|
||||||
if(myPara != lastBreak)
|
if (myPara != lastBreak)
|
||||||
return myPara;
|
return myPara;
|
||||||
}
|
}
|
||||||
// The following lines were added for Comanche Peak ECA-0.1A.SProcedure Steps.S17 (Printed as Step 12)
|
// The following lines were added for Comanche Peak ECA-0.1A.SProcedure Steps.S17 (Printed as Step 12)
|
||||||
@ -698,13 +705,13 @@ namespace Volian.Print.Library
|
|||||||
&& myParent.ChildrenRight[0].YSize <= fullPage && myParent.ChildrenRight[0].YSize > spaceOnPage)
|
&& myParent.ChildrenRight[0].YSize <= fullPage && myParent.ChildrenRight[0].YSize > spaceOnPage)
|
||||||
{
|
{
|
||||||
//_MyLog.WarnFormat("\r\nMyParentBreak {0},{1},{2},{3},{4}", myParent, myParent.YSize, yUpperLimit, myParent.ChildrenRight[0].YSize, spaceOnPage);
|
//_MyLog.WarnFormat("\r\nMyParentBreak {0},{1},{2},{3},{4}", myParent, myParent.YSize, yUpperLimit, myParent.ChildrenRight[0].YSize, spaceOnPage);
|
||||||
if(myParent != lastBreak)
|
if (myParent != lastBreak)
|
||||||
return myParent;
|
return myParent;
|
||||||
}
|
}
|
||||||
// The top of this step will fit onto page (-yLocation < yWithinMargins)
|
// The top of this step will fit onto page (-yLocation < yWithinMargins)
|
||||||
float wcnChkLstBorder = myPara.MyItemInfo.MyHLS != null && myPara.MyItemInfo.MyHLS.FormatStepData.UseSmartTemplate &&
|
float wcnChkLstBorder = myPara.MyItemInfo.MyHLS != null && myPara.MyItemInfo.MyHLS.FormatStepData.UseSmartTemplate &&
|
||||||
(myPara.MyItemInfo.MyHLS.FormatStepData.Suffix ?? "") != "" ? 2*SixLinesPerInch : 0;
|
(myPara.MyItemInfo.MyHLS.FormatStepData.Suffix ?? "") != "" ? 2 * SixLinesPerInch : 0;
|
||||||
if(myPara != lastBreak)
|
if (myPara != lastBreak)
|
||||||
{
|
{
|
||||||
if ((-yLocation + yStart) >= yLowerLimit) // More than the lower limit
|
if ((-yLocation + yStart) >= yLowerLimit) // More than the lower limit
|
||||||
{
|
{
|
||||||
@ -751,7 +758,7 @@ namespace Volian.Print.Library
|
|||||||
}
|
}
|
||||||
if (myPara.MyParent.YTop == myPara.YTop) myPara = myPara.MyParent;
|
if (myPara.MyParent.YTop == myPara.YTop) myPara = myPara.MyParent;
|
||||||
int everyNLines = myPara.MyItemInfo.MyPrevious != null && myPara.MyItemInfo.FormatStepData == null ? 1 : myPara.MyItemInfo.FormatStepData.StepLayoutData.EveryNLines ?? 1;
|
int everyNLines = myPara.MyItemInfo.MyPrevious != null && myPara.MyItemInfo.FormatStepData == null ? 1 : myPara.MyItemInfo.FormatStepData.StepLayoutData.EveryNLines ?? 1;
|
||||||
if (wcnChkLstBorder -yLocation < yUpperLimit+yAddForBtmMsg || (everyNLines != 99 && (wcnChkLstBorder -yLocation == yUpperLimit+yAddForBtmMsg))) // Fix for OFN-RJ-23
|
if (wcnChkLstBorder - yLocation < yUpperLimit + yAddForBtmMsg || (everyNLines != 99 && (wcnChkLstBorder - yLocation == yUpperLimit + yAddForBtmMsg))) // Fix for OFN-RJ-23
|
||||||
//if (-yLocation < yUpperLimit) // Before
|
//if (-yLocation < yUpperLimit) // Before
|
||||||
//if (-yLocation < yWithinMargins && myList[stepLevel][yLocation].MyItemInfo.MyPrevious != null)
|
//if (-yLocation < yWithinMargins && myList[stepLevel][yLocation].MyItemInfo.MyPrevious != null)
|
||||||
{
|
{
|
||||||
@ -775,7 +782,7 @@ namespace Volian.Print.Library
|
|||||||
myPara.MyParent.YSize > (yUpperLimit + yLocation))
|
myPara.MyParent.YSize > (yUpperLimit + yLocation))
|
||||||
{
|
{
|
||||||
//McGuire Unit 1 AOPs - AP/1/A/5500/07.SEnclosure 7.S31..S1..C1
|
//McGuire Unit 1 AOPs - AP/1/A/5500/07.SEnclosure 7.S31..S1..C1
|
||||||
if ((-yLocation + yStart) >= yLowerLimit ) // Only if it is more than the lower limit
|
if ((-yLocation + yStart) >= yLowerLimit) // Only if it is more than the lower limit
|
||||||
return myPara;
|
return myPara;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -787,7 +794,15 @@ namespace Volian.Print.Library
|
|||||||
//if(minPara2 != null) DebugPagination.WriteLine("### n222222 {0}", minPara2);
|
//if(minPara2 != null) DebugPagination.WriteLine("### n222222 {0}", minPara2);
|
||||||
return minPara ?? minPara2;
|
return minPara ?? minPara2;
|
||||||
}
|
}
|
||||||
|
private static int MaxBreakLevel(float yLocation, StepLevelList myList)
|
||||||
|
{
|
||||||
|
int maxLevel = 0;
|
||||||
|
foreach (int stepLevel in myList.Keys)
|
||||||
|
foreach (float yLoc in myList[stepLevel].Keys)
|
||||||
|
if (yLocation == yLoc)
|
||||||
|
maxLevel = Math.Max(stepLevel, maxLevel);
|
||||||
|
return maxLevel;
|
||||||
|
}
|
||||||
//private void WalkStepLevel(float yTopMost)
|
//private void WalkStepLevel(float yTopMost)
|
||||||
//{
|
//{
|
||||||
// foreach (vlnParagraph child in ChildrenAbove)
|
// foreach (vlnParagraph child in ChildrenAbove)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user