Compare commits

..

4 Commits

Author SHA1 Message Date
be00724818 Merge pull request 'Development' (#97) from Development into master
Merging B2023-088 from development into master.  No testing required since formats are under development.
2023-08-22 10:52:09 -04:00
47c7af2918 Merge pull request 'VogtleWork' (#96) from VogtleWork into Development
Reviewed the code changes for the pagination logic.
Changes are isolated for Alarm Point procedures and controlled by a format flag and is used in the Vogtle Units 3 & 4 Alarm format.
Changes look good.
2023-08-22 10:48:29 -04:00
d0b22aca17 B2023-088: Vogtle 3 & 4 Alarm pagination. Improved pagination for alarms: various alarms were not keeping bullet items together; Caution/Notes not always paginating as best as could be, should start at top of page if this keeps a lot of sub-step together. Put the code changes for pagination.cs & vlnParagraph.cs within a format flag ‘AlarmPagination’ 2023-08-22 09:05:05 -04:00
707136d2fc B2023-088: Vogtle Alarm pagination issues 2023-08-22 08:46:07 -04:00
4 changed files with 32 additions and 7 deletions

Binary file not shown.

View File

@ -4303,6 +4303,15 @@ namespace VEPROMS.CSLA.Library
return LazyLoad(ref _PaginateOnLowerStepLevel, "@PaginateOnLowerStepLevel");
}
}
// B2023-088: alarm format pagination
private LazyLoad<bool> _AlarmPagination;
public bool AlarmPagination
{
get
{
return LazyLoad(ref _AlarmPagination, "@AlarmPagination");
}
}
private LazyLoad<bool> _CustomSpacing;
public bool CustomSpacing
{

View File

@ -1565,7 +1565,7 @@ namespace Volian.Print.Library
float yAddForBtmMsg = 0;
// useful for debugging pagination issues, lastbreak gets the paragraph at the top of the previous page, shows all
// of the locations within 'range' on the next page.
//if (lastBreak != null && lastBreak.MyItemInfo.InList(72481))
//if (lastBreak != null && lastBreak.MyItemInfo.InList(72481))
//{
// int range = 120;
// Console.WriteLine("lastBreak = {0}, {1}", yUpperLimit, lastBreak);
@ -1720,7 +1720,11 @@ namespace Volian.Print.Library
{
vlnParagraph rnoChild = myPara.HasSecondRNOThatWillFit(yStart, yLowerLimit, yUpperLimit, myList, stepLevel, yTop); // Only if it is more than the lower limit
if (rnoChild != null)
{
// B2023-088: don't return the 'rnochild' if this is a caution or note in an alarm format
if (myPara.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.StepSectionData.StepSectionLayoutData.AlarmPagination && minPara2 != null && minPara2.MyItemInfo.IsCautionOrNotePart) return minPara2;
return rnoChild;
}
}
// B2019-103, B2019-114 Break at a step if the step will fit on a page by itself and it will
// not fit in the current page

View File

@ -7088,13 +7088,25 @@ namespace Volian.Print.Library
{
// B2020-116: change from checking for type 20001 to looking for a non-high sequential since some
// step types were sequential but not 20001
if (!paraLoc.MyParagraph.MyItemInfo.IsHigh && paraLoc.MyParagraph.MyItemInfo.IsSequential)
bool keepBullettedTogether = paraLoc.MyParagraph.MyItemInfo.IsSubStep;
if (!paraLoc.MyParagraph.MyItemInfo.IsHigh)
{
if (DontBreakHere(paraLoc))
//if (paraLoc.MyParagraph.MyItemInfo.MyPrevious == null) // First substep
level = 0;
else
level = 1;
bool AlarmPagination = paraLoc.MyParagraph.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.StepSectionData.StepSectionLayoutData.AlarmPagination;
if (paraLoc.MyParagraph.MyItemInfo.IsSequential)
{
if (DontBreakHere(paraLoc))
//if (paraLoc.MyParagraph.MyItemInfo.MyPrevious == null) // First substep
level = 0;
else
level = AlarmPagination?3:1; // B2023-088 make it easier to break on a sequential for alarms
}
else if (AlarmPagination && paraLoc.MyParagraph.MyItemInfo.IsSubStep)
{
// make it harder to break on first caution or note & within a list if doing Alarm Pagination:
vlnParagraph myPara = paraLoc.MyParagraph;
if ((myPara.MyItemInfo.IsCaution || myPara.MyItemInfo.IsNote) && myPara.MyItemInfo.MyPrevious == null) level = 1;
else if (myPara.MyItemInfo.MyPrevious != null || myPara.MyItemInfo.NextItem != null) level = 2;
}
}
}
// For B2015-014, some migrated data for background documents had the TitleWithTextBelow with associated paragraphs