B2017-228: SAMG Supplemental information facing page pagination bug, break was on sub-step AND after preferred page break, should only be On sub-step
B2017-229: SAMG Supplement information facing page pagination bug, do facing page if in 7 lines per inch when on first step of section F2017-067: Adjusted pagelength to allow for Bottom Continue Message location on 7lpi print
This commit is contained in:
parent
ded2f4b5ba
commit
f31edfe1c5
Binary file not shown.
@ -116,6 +116,15 @@ namespace Volian.Print.Library
|
|||||||
if (MyItemInfo.MyParent.IsHigh && MyItemInfo.IsNote && (MyItemInfo.MyParent.Cautions == null || MyItemInfo.MyParent.Cautions.Count == 0) && MyItemInfo.MyPrevious == null) return 1;
|
if (MyItemInfo.MyParent.IsHigh && MyItemInfo.IsNote && (MyItemInfo.MyParent.Cautions == null || MyItemInfo.MyParent.Cautions.Count == 0) && MyItemInfo.MyPrevious == null) return 1;
|
||||||
// if this is a substep that has a preferredpage break, and it has caution/note that is where the page break had to go
|
// if this is a substep that has a preferredpage break, and it has caution/note that is where the page break had to go
|
||||||
if (MyItemInfo.IsSubStep && ChildrenAbove != null && ChildrenAbove.Count > 0) return 0;
|
if (MyItemInfo.IsSubStep && ChildrenAbove != null && ChildrenAbove.Count > 0) return 0;
|
||||||
|
// B2017-228: The following flags a break within the step. Before returning a '2' (flags break within step), clear it out of the
|
||||||
|
// ParaBreaks. Without the 'RemoveAt', a page break will occur after this step also.
|
||||||
|
string reason = "Unknown";
|
||||||
|
if (MyPageHelper.ParaBreaks != null && MyPageHelper.ParaBreaks.Count > 0 && this == MyPageHelper.ParaBreaks[0])
|
||||||
|
{
|
||||||
|
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||||
|
reason = AddReason("Partial Step - Case 1");
|
||||||
|
ShowPageBreak(1, reason, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
||||||
|
}
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -157,10 +166,11 @@ namespace Volian.Print.Library
|
|||||||
bool isFirstChild = MyItemInfo.MyPrevious == null;
|
bool isFirstChild = MyItemInfo.MyPrevious == null;
|
||||||
bool nearTheTop = (yWithinMargins < yPageSize) && (yWithinMargins > (yPageSize - 5 * SixLinesPerInch));
|
bool nearTheTop = (yWithinMargins < yPageSize) && (yWithinMargins > (yPageSize - 5 * SixLinesPerInch));
|
||||||
// if step is breaking over a number of pages, determine if the current step is the
|
// if step is breaking over a number of pages, determine if the current step is the
|
||||||
// location of a pagebreak.
|
// location of a pagebreak. ParaBreaks contains the paragraphs that break within a step.
|
||||||
if (MyPageHelper.ParaBreaks.Count > 0)
|
if (MyPageHelper.ParaBreaks.Count > 0)
|
||||||
{
|
{
|
||||||
string reason = "Unknown";
|
string reason = "Unknown";
|
||||||
|
// if on current step and it is also the substep that will cause a pagebreak, i.e. the top substep in pagebreaks[[0]:
|
||||||
if (this == MyPageHelper.ParaBreaks[0])
|
if (this == MyPageHelper.ParaBreaks[0])
|
||||||
{
|
{
|
||||||
MyPageHelper.ParaBreaks.RemoveAt(0);
|
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||||
@ -168,6 +178,7 @@ namespace Volian.Print.Library
|
|||||||
ShowPageBreak(1,reason, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
ShowPageBreak(1,reason, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
||||||
return 2; // break on this item within a step
|
return 2; // break on this item within a step
|
||||||
}
|
}
|
||||||
|
// check for rnos:
|
||||||
else if (MyPageHelper.ParaBreaks[0].CheckAlternates(this))
|
else if (MyPageHelper.ParaBreaks[0].CheckAlternates(this))
|
||||||
{
|
{
|
||||||
MyPageHelper.ParaBreaks.RemoveAt(0);
|
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||||
@ -175,6 +186,7 @@ namespace Volian.Print.Library
|
|||||||
ShowPageBreak(1, reason, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
ShowPageBreak(1, reason, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
||||||
return 2; // break on this item within a step
|
return 2; // break on this item within a step
|
||||||
}
|
}
|
||||||
|
// PageBreakOnStep flags break for cautions/notes/HLS in backgrounds & deviations.
|
||||||
else if (!MyPageHelper.ParaBreaks[0].PageBreakOnStep && this.YTopMost > MyPageHelper.ParaBreaks[0].YTopMost)
|
else if (!MyPageHelper.ParaBreaks[0].PageBreakOnStep && this.YTopMost > MyPageHelper.ParaBreaks[0].YTopMost)
|
||||||
{
|
{
|
||||||
MyPageHelper.ParaBreaks.RemoveAt(0);
|
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||||
|
@ -1964,7 +1964,7 @@ namespace Volian.Print.Library
|
|||||||
else MyPromsPrinter.NeedSupInfoBreak = true;
|
else MyPromsPrinter.NeedSupInfoBreak = true;
|
||||||
supInfoSect.StepSectPageBreaks.Add(MyItemInfo.ItemID);
|
supInfoSect.StepSectPageBreaks.Add(MyItemInfo.ItemID);
|
||||||
}
|
}
|
||||||
if (!firstHighLevelStep)
|
if (!firstHighLevelStep || (MyPromsPrinter.SupInfoPrintType == E_SupInfoPrintType.Merge && !MyPageHelper.CreatingSupInfoPage)) // B2017-229: Added supinfo print check to run facing page logic
|
||||||
{
|
{
|
||||||
YTopMost = OutputOtherPageSteps(cb, YTopMost, yPageStart, yTopMargin, yBottomMargin);
|
YTopMost = OutputOtherPageSteps(cb, YTopMost, yPageStart, yTopMargin, yBottomMargin);
|
||||||
if (MyPageHelper.NotesToFootNotes != null && MyPageHelper.NotesToFootNotes.Count > 0) MyPageHelper.NotesToFootNotesYoffset = CalculateYLocation(yLocation, yTopMargin);
|
if (MyPageHelper.NotesToFootNotes != null && MyPageHelper.NotesToFootNotes.Count > 0) MyPageHelper.NotesToFootNotesYoffset = CalculateYLocation(yLocation, yTopMargin);
|
||||||
@ -2793,6 +2793,7 @@ namespace Volian.Print.Library
|
|||||||
case E_ContBottomLoc.BottomOfPage: // place continue message at bottom of page
|
case E_ContBottomLoc.BottomOfPage: // place continue message at bottom of page
|
||||||
//msg_yLocation = yBottomMargin + 2 * SixLinesPerInch + (float)docstyle.Layout.FooterLength; // 2 lines above bottom margin
|
//msg_yLocation = yBottomMargin + 2 * SixLinesPerInch + (float)docstyle.Layout.FooterLength; // 2 lines above bottom margin
|
||||||
msg_yLocation = msg_yLocation + yBtmMarginForMsg + (float)docstyle.Layout.FooterLength;
|
msg_yLocation = msg_yLocation + yBtmMarginForMsg + (float)docstyle.Layout.FooterLength;
|
||||||
|
// if (MyPageHelper.YMultiplier != 1.0F) msg_yLocation = msg_yLocation / MyPageHelper.YMultiplier;
|
||||||
break;
|
break;
|
||||||
case E_ContBottomLoc.BelowBottom1:
|
case E_ContBottomLoc.BelowBottom1:
|
||||||
msg_yLocation = msg_yLocation + yBtmMarginForMsg;
|
msg_yLocation = msg_yLocation + yBtmMarginForMsg;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user