C2024-003-print-sub-section
This commit is contained in:
parent
6078d30a94
commit
092ed83ca4
@ -268,7 +268,7 @@ namespace Volian.Print.Library
|
||||
// F2021-038: SHE/SHEA format - Less space after boxes
|
||||
if (didSeparateBoxChgYAdjust && childItemInfo.IsStep && childItemInfo.FormatStepData.NoYBxAdjust) yoff -= vlnPrintObject.SixLinesPerInch;
|
||||
int ln = 1; // a format flag determines whether there is a space before the note/caution.
|
||||
//if (childItemInfo.FormatStepData.OneLineBeforeTab) ln++;
|
||||
//if (childItemInfo.FormatStepData.OneLineBeforeTab) ln++;
|
||||
if (childItemInfo.MixCautionNotesDiffType()) ln += 2;
|
||||
box.YOffset = yoff + ((ln - 1) * vlnPrintObject.SixLinesPerInch);
|
||||
if (childItemInfo.FormatStepData.OneLineBeforeTab) ln++;
|
||||
@ -419,9 +419,9 @@ namespace Volian.Print.Library
|
||||
if (box != null && box.MyBox != null)
|
||||
{
|
||||
box.Height = yoff - box.YOffset; // new height, with children
|
||||
// C2017-024 Wolf Creek wanted a hold point with out text and no extra blank lines in the caution/note box
|
||||
// so if they put only a hard space in for the text, then we will print the note/caution box with only the tab text
|
||||
// B2018-077 added check for parts under the note (ex. a table off of the note text) fix for Calvert OI-27B 6.11.B and 6.12.B
|
||||
// C2017-024 Wolf Creek wanted a hold point with out text and no extra blank lines in the caution/note box
|
||||
// so if they put only a hard space in for the text, then we will print the note/caution box with only the tab text
|
||||
// B2018-077 added check for parts under the note (ex. a table off of the note text) fix for Calvert OI-27B 6.11.B and 6.12.B
|
||||
if (box.MyParent.MyItemInfo.MyContent.Text.StartsWith(@"\u160?") && box.MyParent.MyItemInfo.DisplayText.Length == 1 && box.MyParent.MyItemInfo.MyContent.ContentPartCount == 0)
|
||||
{
|
||||
box.Height -= 3 * vlnPrintObject.SixLinesPerInch;
|
||||
@ -765,8 +765,8 @@ namespace Volian.Print.Library
|
||||
int countLine = 0;
|
||||
string preSuf_Fix = (ii.FormatStepData.Prefix != null && ii.FormatStepData.Prefix != "") ? ii.FormatStepData.Prefix : null;
|
||||
if (preSuf_Fix != null) countLine++; // account for a line of prefix (if no \par)
|
||||
// if this is a proportional font, need to 'draw' the prefix/suffix. NOTE that the suffix should
|
||||
// just list the headers and the prefix can be 'empty'.
|
||||
// if this is a proportional font, need to 'draw' the prefix/suffix. NOTE that the suffix should
|
||||
// just list the headers and the prefix can be 'empty'.
|
||||
if (ii.FormatStepData.Font.FontIsProportional())
|
||||
{
|
||||
float yLocVertLine = yLocation + (lpi * 1.5F); // +(lpi / 2);
|
||||
@ -959,7 +959,7 @@ namespace Volian.Print.Library
|
||||
//if (MyItemInfo.InList(11019,11024,111026)) // RHM20150507 Table Scrunch
|
||||
// Console.WriteLine("here");
|
||||
float heightBefore = (MyGrid.Height + 4) * MyPageHelper.YMultiplier; // B2020-014 added parenthesis was calculating wrong for 7lpi Callaway FSG-7 Attachment 7
|
||||
// B2018-033 Account for bottom continue message when seeing if a scrunched table will fit
|
||||
// B2018-033 Account for bottom continue message when seeing if a scrunched table will fit
|
||||
float ySizeBtmCtnMess = GetBottomContinueMessageSize(MyItemInfo.MyDocStyle);
|
||||
// B2018-085 Ignore the bottom continue message if the Table is the last part of the step.
|
||||
if (ySizeBtmCtnMess > 0 && MyParent.MyItemInfo.IsHigh && YBottomMost == MyParent.YBottomMost) ySizeBtmCtnMess = 0;
|
||||
@ -974,7 +974,7 @@ namespace Volian.Print.Library
|
||||
MyPageHelper.TableAdjustment += (heightBefore - heightAfter);
|
||||
MyPageHelper.AdjustedTable = this; // B2020-059 - save the information of the table that is being compressed (used in RTF2PDF.cs TextAt())
|
||||
MyPageHelper.AdjustedTableYtop = yLocation; // B2020-059 save the top location of the compressed table (used in RTF2PDF.cs TextAt())
|
||||
//B2018-092 Determine if the Table is too big by checking it including either 6 LPI or 7 LPI as appropriate
|
||||
//B2018-092 Determine if the Table is too big by checking it including either 6 LPI or 7 LPI as appropriate
|
||||
if (heightAfter * MyPageHelper.YMultiplier < (yLocation - yBottomMargin - ySizeBtmCtnMess))
|
||||
{
|
||||
// B2018-081 - Removed error log message if the code was able to properly adjust the table
|
||||
@ -1122,11 +1122,11 @@ namespace Volian.Print.Library
|
||||
if (MyItemInfo.MyContent.Text.ToUpper().Contains("LINK:TR") && MyItemInfo.MyContent.ContentTransitionCount == 0)
|
||||
Console.WriteLine("Missing Transition {0}", MyItemInfo.ItemID);
|
||||
chk1.SetLocalDestination(string.Format("ItemID={0}", MyItemInfo.ItemID)); // Destination
|
||||
// B2019-052: If multiple ROs/Transitions within a step, each should have a their own link rather than all linking to same thing.
|
||||
// Note the pdf link code that was here was moved to Rtf2iTextSharp.cs in DoVisitText so that each 'chunk' could have a link.
|
||||
// The code that remained here was the code that marks the destination for each step & the code that does the pdf links for
|
||||
// enhanced steps.
|
||||
// Also, the method GetDefaultItemInfo was moved to Rtf2iTextSharp.cs also - it was only called from code that was moved.
|
||||
// B2019-052: If multiple ROs/Transitions within a step, each should have a their own link rather than all linking to same thing.
|
||||
// Note the pdf link code that was here was moved to Rtf2iTextSharp.cs in DoVisitText so that each 'chunk' could have a link.
|
||||
// The code that remained here was the code that marks the destination for each step & the code that does the pdf links for
|
||||
// enhanced steps.
|
||||
// Also, the method GetDefaultItemInfo was moved to Rtf2iTextSharp.cs also - it was only called from code that was moved.
|
||||
|
||||
StepConfig sc = new StepConfig(MyItemInfo.MyContent.Config);
|
||||
DVEnhancedDocuments dveds = MyItemInfo.MyDocVersion.DocVersionConfig.MyEnhancedDocuments;
|
||||
@ -1208,7 +1208,7 @@ namespace Volian.Print.Library
|
||||
int fontStyle = 0;
|
||||
bool underline = false;
|
||||
if (pi == null) // The header for the signoffs is missing in the current section format.
|
||||
// An Example can currently be found in Calvert OI-34
|
||||
// An Example can currently be found in Calvert OI-34
|
||||
{
|
||||
if (!MissingInitials) // Only show this once.
|
||||
{
|
||||
@ -1454,9 +1454,9 @@ namespace Volian.Print.Library
|
||||
private void ResetDocStyleAndValues(ref float yTopMargin, ref float yBottomMargin)
|
||||
{
|
||||
float _PointsPerPage = PDFPageSize.PaperSizePoints(MyItemInfo.ActiveFormat.PlantFormat.FormatData.PDFPageSize.PaperSize); // C2020-002 paper size is now set in the format files
|
||||
// if this document style has another style that is for pages other than first, we need to
|
||||
// reset the document style off of this section AND reset docstyle values used.
|
||||
// C2018-003 fixed use of getting the active section
|
||||
// if this document style has another style that is for pages other than first, we need to
|
||||
// reset the document style off of this section AND reset docstyle values used.
|
||||
// C2018-003 fixed use of getting the active section
|
||||
if (MyItemInfo.ActiveSection != null && (MyItemInfo.ActiveSection.MyDocStyle.StructureStyle.Where & E_DocStyleUse.UseOnFirstPage) > 0)
|
||||
{
|
||||
ItemInfo ii = (ItemInfo)MyItemInfo.ActiveSection;
|
||||
@ -1501,9 +1501,9 @@ namespace Volian.Print.Library
|
||||
ItemInfo itemInfo = tmp;
|
||||
if (itemInfo.IsCautionOrNotePart) itemInfo = itemInfo.ActiveParent as ItemInfo; // if caution/note get to its associated step
|
||||
itemInfo = itemInfo.ActiveParent as ItemInfo; // don't want this one in the combined tab, start at parent
|
||||
// B2018-084: continue message had bullets in it that didn't have correct font. The message should not have had bullets at
|
||||
// all - in the following line, there was an 'if' rather than a 'while' - go up parents until find the correct step type
|
||||
// don't just go up 1 level.
|
||||
// B2018-084: continue message had bullets in it that didn't have correct font. The message should not have had bullets at
|
||||
// all - in the following line, there was an 'if' rather than a 'while' - go up parents until find the correct step type
|
||||
// don't just go up 1 level.
|
||||
while (!itemInfo.IsHigh && !itemInfo.IsSequential && !itemInfo.IsSection) itemInfo = itemInfo.ActiveParent as ItemInfo;
|
||||
string prTab = "";
|
||||
string thisTab = itemInfo.MyTab.CleanText.Trim();
|
||||
@ -2082,8 +2082,8 @@ namespace Volian.Print.Library
|
||||
YTopMost = OutputOtherPageSteps(cb, YTopMost, yPageStart, yTopMargin, yBottomMargin);
|
||||
if (MyPageHelper.NotesToFootNotes != null && MyPageHelper.NotesToFootNotes.Count > 0) MyPageHelper.NotesToFootNotesYoffset = CalculateYLocation(yLocation, yTopMargin);
|
||||
MyPromsPrinter.NewPage(); // HLS (7 lpi) breakif (MyItemInfo.IsSection)
|
||||
//_MyLog.InfoFormat("NewPage 12 {0}", cb.PdfWriter.CurrentPageNumber);
|
||||
//Console.WriteLine("'b3',{0},'{1}',{2},{3},{4},{5},{6}", MyItemInfo.ItemID, MyItemInfo.ShortPath, yTopMargin, yPageStart, yLocation, YTopMost, YOffset);
|
||||
//_MyLog.InfoFormat("NewPage 12 {0}", cb.PdfWriter.CurrentPageNumber);
|
||||
//Console.WriteLine("'b3',{0},'{1}',{2},{3},{4},{5},{6}", MyItemInfo.ItemID, MyItemInfo.ShortPath, yTopMargin, yPageStart, yLocation, YTopMost, YOffset);
|
||||
ResetDocStyleAndValues(ref yTopMargin, ref yBottomMargin);
|
||||
//Console.WriteLine("'a3',{0},'{1}',{2},{3},{4},{5},{6}", MyItemInfo.ItemID, MyItemInfo.ShortPath, yTopMargin, yPageStart, yLocation, YTopMost, YOffset);
|
||||
DebugText.WriteLine("Paginate3");
|
||||
@ -2157,8 +2157,8 @@ namespace Volian.Print.Library
|
||||
{
|
||||
vlnParagraph sectContPara;
|
||||
string contMsg = (MyItemInfo.ActiveSection != null) ? MyItemInfo.ActiveSection.MyDocStyle.Continue.SectionTitle.AppendToTitle : ""; // C2018-003 fixed use of getting the active section
|
||||
// For Calvert, the xoffset will be the highest level sections xoffset (there are metasections,
|
||||
// don't use their xoffset or the continue message is indented too much)
|
||||
// For Calvert, the xoffset will be the highest level sections xoffset (there are metasections,
|
||||
// don't use their xoffset or the continue message is indented too much)
|
||||
if (MyItemInfo.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvert)
|
||||
{
|
||||
float secContinueTabXoff = (float)MyItemInfo.MyDocStyle.Layout.LeftMargin;
|
||||
@ -2177,7 +2177,7 @@ namespace Volian.Print.Library
|
||||
}
|
||||
// get to the correct section for the message, i.e. if on a section, the message should be the parent
|
||||
// section (not the activesection which is myself); if on a step, the message should be the active section
|
||||
ItemInfo sectForCont = MyItemInfo.IsSection && MyItemInfo.MyParent.IsSection ? MyItemInfo.MyParent : MyItemInfo.ActiveSection; //
|
||||
ItemInfo sectForCont = MyItemInfo.IsSection && MyItemInfo.MyParent.IsSection ? MyItemInfo.MyParent : MyItemInfo.ActiveSection;
|
||||
sectContPara = new vlnParagraph(MyParent.MyParent, cb, sectForCont, MyParent.XOffset, 0, 0, 0, MyParent.MyItemInfo.ActiveFormat, null, (contMsg == null || contMsg == "") ? " (Continued)" : contMsg, 0, false, MyPromsPrinter);
|
||||
if (sectContPara.PartsLeft.Count > 0)
|
||||
{
|
||||
@ -2281,7 +2281,7 @@ namespace Volian.Print.Library
|
||||
// is a single column section.
|
||||
//bool _skipEndMessage = MyPageHelper.MySection.SectionConfig.Section_ColumnMode == SectionConfig.SectionColumnMode.One && !MyItemInfo.ActiveFormat.MyStepSectionLayoutData.EndForSingle;
|
||||
SectionInfo si = MyItemInfo.ActiveSection as SectionInfo; // C2018-003 fixed use of getting the active section
|
||||
// B2017-201 if si is null we need to get it via the ItemID
|
||||
// B2017-201 if si is null we need to get it via the ItemID
|
||||
if (si == null)
|
||||
si = SectionInfo.Get(MyItemInfo.MyActiveSection.ItemID); // MyActiveSection does not try to resolve anything - ActiveSection is call above and will resolve and set MyActiveSection
|
||||
bool _skipEndMessage = (si == null || si.SectionConfig.Section_ColumnMode == SectionConfig.SectionColumnMode.One) && !MyItemInfo.ActiveFormat.MyStepSectionLayoutData.EndForSingle;
|
||||
@ -2668,8 +2668,8 @@ namespace Volian.Print.Library
|
||||
int istr = 0;
|
||||
int Rsidx = 0;
|
||||
MyPageHelper.TopMessageRs.Add(vpo as vlnText); // this appends a previous step designator associated with this sub-step (there may be more than one and/or might have multiple lines)
|
||||
// we are processing the step designator on the top continue message in reverse order
|
||||
// we therefore need to adjust the y location of multiple step designors attached tothe top continue message
|
||||
// we are processing the step designator on the top continue message in reverse order
|
||||
// we therefore need to adjust the y location of multiple step designors attached tothe top continue message
|
||||
if (MyPageHelper.TopMessageRs.Count > 3)
|
||||
{
|
||||
Rsidx = MyPageHelper.TopMessageRs.Count - 1;
|
||||
@ -2836,13 +2836,13 @@ namespace Volian.Print.Library
|
||||
{
|
||||
// Vogtle Alarms: Their alarms are set up differently than standard procedures - the HLS in Vogtle
|
||||
// alarms is a section in other procedures. The top continue message is shown when a break occurs:
|
||||
// A continued message will appear on the top of the page ONLY if the pagination occurs anywhere
|
||||
// • A continued message will appear on the top of the page ONLY if the pagination occurs anywhere
|
||||
// within the first level substep. If, for example, the page break occurs between substep 3 and substep
|
||||
// 4 as in example 2, no continued message will appear on the top of the page.
|
||||
// If a continued message is needed, the continued message will include the first level substep number
|
||||
// if it is a sequential substep, such as 5. (continued). If it is NOT a sequential substep, then only
|
||||
// the word (continued) will appear.
|
||||
// If a page break occurs between high level steps, such as before Causes:, then no continued message is needed.
|
||||
// • If a continued message is needed, the continued message will include the first level substep number
|
||||
// if it is a sequential substep, such as “5. (continued)”. If it is NOT a sequential substep, then only
|
||||
// the word “(continued)” will appear.
|
||||
// • If a page break occurs between high level steps, such as before “Causes:”, then no continued message is needed.
|
||||
bool doMessage = true;
|
||||
if (MyItemInfo.IsHigh) doMessage = false; // at high, don't do message
|
||||
if (MyItemInfo.MyParent.IsHigh) doMessage = false; // at first level, don't do message
|
||||
@ -2971,9 +2971,9 @@ namespace Volian.Print.Library
|
||||
float colPos = docstyle.Layout.LeftMargin + docstyle.Continue.Top.Margin ?? 0;
|
||||
if (!docstyle.Continue.Top.PlaceAtLeftMargin) //F2019-033 when true position with respect only to the left margin
|
||||
colPos += XOffsetBox; //XOffsetbox get set when the tables, figures & equations were beyond the border and needed repositioned
|
||||
// C2019-044 for BNPP, put the top continue message on the same row as the checkoff/signoff heading
|
||||
// RowOverride specifies the position of the top continue message
|
||||
// For BNPP, RowOverride is set to the same row as the checkoff header is set to in the pagelist
|
||||
// C2019-044 for BNPP, put the top continue message on the same row as the checkoff/signoff heading
|
||||
// RowOverride specifies the position of the top continue message
|
||||
// For BNPP, RowOverride is set to the same row as the checkoff header is set to in the pagelist
|
||||
if (docstyle.Continue.Top.RowOverride != null)
|
||||
{
|
||||
float adjRowPosition = (float)docstyle.Layout.TopMargin - (float)docstyle.Continue.Top.RowOverride;
|
||||
@ -3033,12 +3033,12 @@ namespace Volian.Print.Library
|
||||
}
|
||||
switch (docstyle.Continue.Bottom.Location)
|
||||
{
|
||||
case E_ContBottomLoc.EndOfText: // place continue string at end of text
|
||||
// msg_yLocation accounts for extra lines in message from docstyle; and BottomContent is the actual
|
||||
// location of the last line of text on page.
|
||||
//msg_yLocation = ((float)(MyPageHelper.BottomContent??0) - (SixLinesPerInch * MyPageHelper.YMultiplier)); // B2018-080 null reference check added
|
||||
// B2019-079 changed yLocaton - msg_yLocation to '+'. The msg_ylocation has an adjustment for adding an extra line by moving down the page, this was moving
|
||||
// the line up the page (double negative).
|
||||
case E_ContBottomLoc.EndOfText: // place continue string at end of text
|
||||
// msg_yLocation accounts for extra lines in message from docstyle; and BottomContent is the actual
|
||||
// location of the last line of text on page.
|
||||
//msg_yLocation = ((float)(MyPageHelper.BottomContent??0) - (SixLinesPerInch * MyPageHelper.YMultiplier)); // B2018-080 null reference check added
|
||||
// B2019-079 changed yLocaton - msg_yLocation to '+'. The msg_ylocation has an adjustment for adding an extra line by moving down the page, this was moving
|
||||
// the line up the page (double negative).
|
||||
msg_yLocation = yLocation + msg_yLocation - (SixLinesPerInch * MyPageHelper.YMultiplier); //B2019-021 yLocation accounts for checkoffs
|
||||
if (yBottomMargin + (docstyle.Layout.FooterLength ?? 0) > msg_yLocation)
|
||||
{ // Adjusted Continue Message Y Offset
|
||||
@ -3055,8 +3055,8 @@ namespace Volian.Print.Library
|
||||
msg_yLocation = msg_yLocation + yLocation - ((yLocation - yBottomMargin) / 2); // +SixLinesPerInch; // (need this for IP3)
|
||||
msg_yLocation = Math.Max(msg_yLocation, yBottomMargin + SixLinesPerInch);
|
||||
break;
|
||||
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
|
||||
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 = msg_yLocation + yBtmMarginForMsg + (float)docstyle.Layout.FooterLength;
|
||||
// if (MyPageHelper.YMultiplier != 1.0F) msg_yLocation = msg_yLocation / MyPageHelper.YMultiplier;
|
||||
break;
|
||||
@ -3316,9 +3316,11 @@ namespace Volian.Print.Library
|
||||
/// This gets the height of the step with it's Caution's, Notes and potentially any First Substeps
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private float GetFirstPieceSize()
|
||||
// F2024-006: Vogtle Alarms pagination - added 'includeFirstSub' to get that size of the first substep with the parent step
|
||||
// to help determine pagination
|
||||
private float GetFirstPieceSize(bool includeFirstSub = false)
|
||||
{
|
||||
vlnParagraph paraLast = GetFirstPieceLastPart();
|
||||
vlnParagraph paraLast = GetFirstPieceLastPart(includeFirstSub);
|
||||
float retval = (paraLast.YBottom) - YTopMost;
|
||||
//Console.WriteLine(MyItemInfo.DBSequence);
|
||||
return retval;
|
||||
@ -3372,10 +3374,12 @@ namespace Volian.Print.Library
|
||||
get { return _YBottomForBox; }
|
||||
set { _YBottomForBox = value; }
|
||||
}
|
||||
private vlnParagraph GetFirstPieceLastPart()
|
||||
// F2024-006: Vogtle Alarms pagination - added 'includeFirstSub' to get that size of the first substep with the parent step
|
||||
// to help determine pagination - even when PaginateOnFirstSubstep is turned on
|
||||
private vlnParagraph GetFirstPieceLastPart(bool includeFirstSub = false)
|
||||
{
|
||||
vlnParagraph para = this;
|
||||
if (!MyItemInfo.ActiveFormat.MyStepSectionLayoutData.PaginateOnFirstSubstep && ChildrenBelow != null && ChildrenBelow.Count > 0)
|
||||
if ((!MyItemInfo.ActiveFormat.MyStepSectionLayoutData.PaginateOnFirstSubstep || includeFirstSub) && ChildrenBelow != null && ChildrenBelow.Count > 0)
|
||||
{
|
||||
// If the substep has a separator (OR, AND) then return the last substep rather than the first.
|
||||
string mySep = ChildrenBelow[0].MyItemInfo.FormatStepData.Sep ?? "{Null}";
|
||||
@ -3388,14 +3392,14 @@ namespace Volian.Print.Library
|
||||
if (keepEqListTogether && !ChildrenBelow[0].MyItemInfo.IsSequential && !this.MyItemInfo.IsHigh) // Extend to the last Item.
|
||||
para = ChildrenBelow[ChildrenBelow.Count - 1].GetFirstPieceLastPart();
|
||||
else
|
||||
para = ChildrenBelow[0].GetFirstPieceLastPart();
|
||||
para = ChildrenBelow[0].GetFirstPieceLastPart(includeFirstSub);
|
||||
}
|
||||
}
|
||||
if (ChildrenRight != null && ChildrenRight.Count > 0)
|
||||
{
|
||||
foreach (vlnParagraph paraRight in ChildrenRight)
|
||||
{
|
||||
vlnParagraph paraRightLast = paraRight.GetFirstPieceLastPart();
|
||||
vlnParagraph paraRightLast = paraRight.GetFirstPieceLastPart(includeFirstSub);
|
||||
if (paraRightLast.YBottom > para.YBottom)
|
||||
para = paraRightLast;
|
||||
}
|
||||
@ -3996,10 +4000,10 @@ namespace Volian.Print.Library
|
||||
if (YOffset != 0 && MyItemInfo.FormatStepData != null &&
|
||||
MyItemInfo.MyPrevious == null && MyItemInfo.FormatStepData.ThreeBlanksAbove && (!MyItemInfo.IsNote || MyItemInfo.MyParent.Cautions == null))
|
||||
addExtraSpace = 24; // already has one blank line above, added two more
|
||||
//if (YOffset != 0 && MyItemInfo.FormatStepData != null && MyItemInfo.FormatStepData.StepLayoutData.STExtraSpace > 0)
|
||||
// addExtraSpace = (float)MyItemInfo.FormatStepData.StepLayoutData.STExtraSpace;
|
||||
// if this plant has the AlwaysUseExtraLines and there are notes/cautions above the hls, don't add in the
|
||||
// extra space:
|
||||
//if (YOffset != 0 && MyItemInfo.FormatStepData != null && MyItemInfo.FormatStepData.StepLayoutData.STExtraSpace > 0)
|
||||
// addExtraSpace = (float)MyItemInfo.FormatStepData.StepLayoutData.STExtraSpace;
|
||||
// if this plant has the AlwaysUseExtraLines and there are notes/cautions above the hls, don't add in the
|
||||
// extra space:
|
||||
if (itemInfo.IsHigh && (itemInfo.Cautions != null || itemInfo.Notes != null))
|
||||
{
|
||||
if ((itemInfo.Cautions != null && itemInfo.Cautions[0].FormatStepData.AlwaysUseExtraLines) || (itemInfo.Notes != null && itemInfo.Notes[0].FormatStepData.AlwaysUseExtraLines))
|
||||
@ -4075,7 +4079,7 @@ namespace Volian.Print.Library
|
||||
yoff = YOffset = yoff + (2 * SixLinesPerInch);
|
||||
CheckOff co = itemInfo.GetCheckOffStep();
|
||||
float yForCheckoff = yoff; //0; - default checkoff row is same as FIRST line of text
|
||||
// if dropCheckoff is true, then the checkoff is place on the same of row as the LAST line of text
|
||||
// if dropCheckoff is true, then the checkoff is place on the same of row as the LAST line of text
|
||||
bool dropCheckoff = itemInfo.ActiveFormat.PlantFormat.FormatData.ProcData.CheckOffData.DropCheckOff
|
||||
|| (co != null && co.DropCheckOff);
|
||||
if (itemInfo.MyContent.MyGrid != null)
|
||||
@ -4487,10 +4491,10 @@ namespace Volian.Print.Library
|
||||
if (MyTab != null) MyTab.YOffset = ChildrenRight[0].YOffset;
|
||||
if (PartsRight.Count > 0) PartsRight[0].YOffset = ChildrenRight[0].YOffset;
|
||||
//B2020-160 use YTopMost instead of Yoffset if there are children above.
|
||||
// Get the minimun value between the AER and RNO YtopMost.
|
||||
// example. Calvert AOP-7E/XIII/Step A5.h Unit 2 Approved set
|
||||
// Get the minimun value between the AER and RNO YtopMost.
|
||||
// example. Calvert AOP-7E/XIII/Step A5.h Unit 2 Approved set
|
||||
//B2021-027 use YOffset if there isn't any children above (AER).
|
||||
// example: Catawba Unit 1 APs; AP/1/A/5500/050; Enclosure 8 step 1
|
||||
// example: Catawba Unit 1 AP’s; AP/1/A/5500/050; Enclosure 8 step 1
|
||||
if (ChildrenAbove.Count == 0)
|
||||
YTopMost = ChildrenRight[0].ChildrenAbove[0].YOffset; //B2021-027
|
||||
else
|
||||
@ -4868,7 +4872,7 @@ namespace Volian.Print.Library
|
||||
}
|
||||
results.Add(responsStr.Substring(start, lastspace - start).Trim(" ".ToCharArray()) + "\r\n");
|
||||
start = lastspace + (spFound ? 1 : 0); // increment start based on whether a space is found, i.e. if no space keep at 'indx'
|
||||
// width either is equal to width of text after the last space, or is zero if at the maxlen of width:
|
||||
// width either is equal to width of text after the last space, or is zero if at the maxlen of width:
|
||||
width = (indx - lastspace - 1) > 0 ? indx - lastspace - 1 : 0;
|
||||
lastspace = 0;
|
||||
}
|
||||
@ -5372,7 +5376,7 @@ namespace Volian.Print.Library
|
||||
XOffset -= (XOffset - (XOffset * (float)MyItemInfo.FormatStepData.Font.CPI / 12));
|
||||
}
|
||||
XOffset -= 12; // This makes the 16bit & 32bit align very closely.
|
||||
// if outside of the page margins then center within the page margins
|
||||
// if outside of the page margins then center within the page margins
|
||||
float xOffset2 = (float)itemInfo.MyDocStyle.Layout.LeftMargin;
|
||||
float xWidth2 = (float)itemInfo.MyDocStyle.Layout.PageWidth;
|
||||
if (XOffset + Width > xOffset2 + xWidth2)
|
||||
@ -5643,8 +5647,8 @@ namespace Volian.Print.Library
|
||||
}
|
||||
// if this is a caution or note, put the change bar to the right of the text:
|
||||
//if ((paragraph.MyItemInfo.IsCaution || paragraph.MyItemInfo.IsNote) && fixedChgCol < -10) return -fixedChgCol;
|
||||
if ((fixedChgCol == 0)) // && paragraph.MyItemInfo.IsCaution || paragraph.MyItemInfo.IsNote)
|
||||
//if ((fixedChgCol==0) || paragraph.MyItemInfo.IsCaution || paragraph.MyItemInfo.IsNote)
|
||||
if ((fixedChgCol == 0))// && paragraph.MyItemInfo.IsCaution || paragraph.MyItemInfo.IsNote)
|
||||
//if ((fixedChgCol==0) || paragraph.MyItemInfo.IsCaution || paragraph.MyItemInfo.IsNote)
|
||||
{
|
||||
float rightEdge = (paragraph.XOffset + paragraph.Width + 5);
|
||||
rightEdge -= (float)paragraph.MyItemInfo.MyDocStyle.Layout.LeftMargin;
|
||||
@ -5799,19 +5803,19 @@ namespace Volian.Print.Library
|
||||
xoff = XOffset + (para.Width / 2) + (hdrWidth / 2); // XOffset has left margin included
|
||||
}
|
||||
else
|
||||
xoff = XOffset; // XOffset has left margin included
|
||||
// KEEP: This may be needed in the future to fix location of 'OR's when Separator location="0"
|
||||
// the following code would place the 'OR' at the location of the tab rather than text. This
|
||||
// is how 16bit was. However, a number of plants had been sent out with the xoffset at the xlocation
|
||||
// of text (does not match 16bit) when this was found for BGE OI3/OI-1B/6.1.B.4. Previous releases
|
||||
// went to CAT, MCG, FPL, NSP.
|
||||
//{
|
||||
// if (this.MyTab != null)
|
||||
// xoff = this.MyTab.XOffset;
|
||||
// else
|
||||
// xoff = XOffset;
|
||||
//}
|
||||
// B2018-096 AEP 082.002CD Note Box overlapping Step Box
|
||||
xoff = XOffset; // XOffset has left margin included
|
||||
// KEEP: This may be needed in the future to fix location of 'OR's when Separator location="0"
|
||||
// the following code would place the 'OR' at the location of the tab rather than text. This
|
||||
// is how 16bit was. However, a number of plants had been sent out with the xoffset at the xlocation
|
||||
// of text (does not match 16bit) when this was found for BGE OI3/OI-1B/6.1.B.4. Previous releases
|
||||
// went to CAT, MCG, FPL, NSP.
|
||||
//{
|
||||
// if (this.MyTab != null)
|
||||
// xoff = this.MyTab.XOffset;
|
||||
// else
|
||||
// xoff = XOffset;
|
||||
//}
|
||||
// B2018-096 AEP 082.002CD Note Box overlapping Step Box
|
||||
vlnHeader myHeader = new vlnHeader(this, cb, itemInfo.MyHeader.Text, itemInfo.MyHeader.CleanText.TrimStart(" ".ToCharArray()), xoff + AdjustHeader + _MyBoxLeftAdj, YOffset, itemInfo.MyHeader.MyFont);
|
||||
PartsAbove.Add(myHeader);
|
||||
//return myHeader.Height + (!MyItemInfo.MyDocStyle.SpecialStepsFoldout || (MyItemInfo.MyDocStyle.ExtraLineHeader && (MyItemInfo.IsCaution || MyItemInfo.IsNote)) ? SixLinesPerInch : 0);
|
||||
@ -6172,8 +6176,8 @@ namespace Volian.Print.Library
|
||||
}
|
||||
}
|
||||
XOffset += (itemInfo.FormatStepData.Font.CharsToTwips * adj); // indent 2 characters for background steps
|
||||
// B2018-146 Adjust the width to match the HLS Right Margin.
|
||||
//if (itemInfo.ActiveFormat.Name.StartsWith("WCN")) -- Not needed since IsBackgroundStep
|
||||
// B2018-146 Adjust the width to match the HLS Right Margin.
|
||||
//if (itemInfo.ActiveFormat.Name.StartsWith("WCN")) -- Not needed since IsBackgroundStep
|
||||
Width = this.MyHighLevelParagraph.Width + this.MyHighLevelParagraph.XOffset - this.XOffset;
|
||||
//else
|
||||
// Width -= (itemInfo.FormatStepData.Font.CharsToTwips * adj); // Adjust width by 2 characters
|
||||
@ -6248,9 +6252,9 @@ namespace Volian.Print.Library
|
||||
//Adjust Indent for Wolf Creek Background format flag
|
||||
float indentBG2 = itemInfo.IsPartOfBackgroundStep() ? itemInfo.FormatStepData.Font.CharsToTwips * 2 : 0;
|
||||
XOffset = childindent + MyParent.XOffset + indentBG2;//(itemInfo.FormatStepData.Font.CharsToTwips * 2);
|
||||
// B2016-164: Added the following 'if' so that the width is not recalculated if in the alarm format & the parent has a template
|
||||
// B2016-168: The fix for 164 broke deviation document printing. The if statement was fixed for both:
|
||||
// B2019-057 Added a check to see if there is a width override for this step element (Robinson AOP Backgrounds - paragraphs)
|
||||
// B2016-164: Added the following 'if' so that the width is not recalculated if in the alarm format & the parent has a template
|
||||
// B2016-168: The fix for 164 broke deviation document printing. The if statement was fixed for both:
|
||||
// B2019-057 Added a check to see if there is a width override for this step element (Robinson AOP Backgrounds - paragraphs)
|
||||
float wdthovrd = (itemInfo.FormatStepData.WidthOverride == null) ? 0 : (float)ToInt(itemInfo.FormatStepData.WidthOverride, maxRNO);
|
||||
if ((!itemInfo.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvertAlarm || !UseTemplateWidthOrXOff(itemInfo.MyParent)) && wdthovrd == 0)
|
||||
Width = (float)itemInfo.MyDocStyle.Layout.PageWidth - (float)itemInfo.MyDocStyle.Layout.LeftMargin - indentBG2;
|
||||
@ -6752,7 +6756,7 @@ namespace Volian.Print.Library
|
||||
else
|
||||
{
|
||||
float oldWidth = _WidthAdjustBox + (float)bx.TxtWidth - tabWidth; // add 1 to get it to wrap like 16Bit
|
||||
// B2018-096 AEP 082.002CD Note Box overlapping Step Box
|
||||
// B2018-096 AEP 082.002CD Note Box overlapping Step Box
|
||||
if (MyParent.MyItemInfo.FormatStepData != null && MyParent.MyItemInfo.FormatStepData.BoxIt) // B2018-100 not for parents that are sections // B2018-098 only adjust width if parent has Boxit turned on
|
||||
{
|
||||
Width = Math.Min(MyParent.Width + MyParent.XOffset - XOffset, oldWidth);
|
||||
@ -7269,4 +7273,3 @@ namespace Volian.Print.Library
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user