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:
@@ -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 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;
|
||||
// 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;
|
||||
}
|
||||
}
|
||||
@@ -157,10 +166,11 @@ namespace Volian.Print.Library
|
||||
bool isFirstChild = MyItemInfo.MyPrevious == null;
|
||||
bool nearTheTop = (yWithinMargins < yPageSize) && (yWithinMargins > (yPageSize - 5 * SixLinesPerInch));
|
||||
// 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)
|
||||
{
|
||||
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])
|
||||
{
|
||||
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||
@@ -168,6 +178,7 @@ namespace Volian.Print.Library
|
||||
ShowPageBreak(1,reason, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
||||
return 2; // break on this item within a step
|
||||
}
|
||||
// check for rnos:
|
||||
else if (MyPageHelper.ParaBreaks[0].CheckAlternates(this))
|
||||
{
|
||||
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||
@@ -175,6 +186,7 @@ namespace Volian.Print.Library
|
||||
ShowPageBreak(1, reason, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
||||
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)
|
||||
{
|
||||
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||
|
Reference in New Issue
Block a user