B2018-103: Incorrect pagination for sub-steps that have sub-steps when Supplemental Information is used.
This commit is contained in:
parent
23ddfe0cbd
commit
5438908754
@ -105,7 +105,18 @@ namespace Volian.Print.Library
|
|||||||
if ((MyItemInfo.IsCaution || MyItemInfo.IsNote) && MyItemInfo.MyParent.IsSubStep)
|
if ((MyItemInfo.IsCaution || MyItemInfo.IsNote) && MyItemInfo.MyParent.IsSubStep)
|
||||||
{
|
{
|
||||||
StepConfig scs = MyItemInfo.MyParent.MyConfig as StepConfig;
|
StepConfig scs = MyItemInfo.MyParent.MyConfig as StepConfig;
|
||||||
if (MyItemInfo.MyPrevious == null && scs.Step_PreferredPagebreak) return 2;
|
if (MyItemInfo.MyPrevious == null && scs.Step_PreferredPagebreak)
|
||||||
|
{
|
||||||
|
// B2018-103: 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.
|
||||||
|
if (MyPageHelper.ParaBreaks != null && MyPageHelper.ParaBreaks.Count > 0 && this == MyPageHelper.ParaBreaks[0])
|
||||||
|
{
|
||||||
|
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||||
|
string reason1 = AddReason("Partial Step - Case 5");
|
||||||
|
ShowPageBreak(1, reason1, "Yes", YSize, yPageSize, yWithinMargins, ManualPageBreak);
|
||||||
|
}
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Now see if there is a preferred page break on this step.
|
// Now see if there is a preferred page break on this step.
|
||||||
StepConfig sci = MyItemInfo.MyConfig as StepConfig;
|
StepConfig sci = MyItemInfo.MyConfig as StepConfig;
|
||||||
@ -189,8 +200,13 @@ 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)
|
// The following else ifs are reached if something previously went wrong in pagination & this code tries to account for it.
|
||||||
|
///////////////////
|
||||||
|
// PageBreakOnStep flags break for cautions/notes/HLS in backgrounds & deviations. Don't check for that case.
|
||||||
|
// If you are in this code debugging, consider looking at ToPdf to see why the 'pagebreak above' (MyPageHelper.ParaBreaks[0])
|
||||||
|
// the current step (this) has not caused a page break in the pdf prior to reaching this code. (RHM & KBR)
|
||||||
|
else if (!MyPageHelper.ParaBreaks[0].PageBreakOnStep && this.YTopMost > MyPageHelper.ParaBreaks[0].YTopMost) // current step is further down on page than MyPageHelper.ParaBreaks[0]
|
||||||
{
|
{
|
||||||
MyPageHelper.ParaBreaks.RemoveAt(0);
|
MyPageHelper.ParaBreaks.RemoveAt(0);
|
||||||
reason = AddReason("Partial Step - Case 3");
|
reason = AddReason("Partial Step - Case 3");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user