Add new macro settings to allow for a different checkoff macro when a step element is in single column mode

Logic to support the new macro settings which allows for a different checkoff macro and position when a step element is in single column mode
This commit is contained in:
2014-05-27 16:51:23 +00:00
parent 691f99e291
commit 6d0a14c364
2 changed files with 37 additions and 1 deletions

View File

@@ -2551,7 +2551,18 @@ namespace Volian.Print.Library
string tabText = mytab == null ? null : mytab.Text.Trim(" .".ToCharArray());
int tablen = (tabText == null) ? 0 : (tabText.Length <= 2) ? 0 : tabText.Length - 2;
if (myMacro.LocWithXOff ?? false) x = mytab == null ? XOffset : ((float)mytab.XOffset + (tablen * (float)mytab.MyFont.CharsToTwips));
PartsLeft.Add(new vlnMacro(x, y, myMacro.MacroDef));
if (MyItemInfo.MyActiveSection.ColumnMode == 0 && myMacro.SingleColMacroDef != null && myMacro.SingleColMacroDef.Length > 0)
{
float macroXOffset = myMacro.MacroXOffSet ?? 0;
float widthAdj = myMacro.SingleColWidthAdjust ?? 0; // set as negative number in format
float rightTextEdge = (itemInfo.IsHigh)? XOffset + Width + mytab.XOffset:this.MyHighLevelParagraph.XOffset + this.MyHighLevelParagraph.Width;
x = (macroXOffset > 0) ? macroXOffset : rightTextEdge;
if (rightTextEdge > x)
Width += widthAdj;
PartsRight.Add(new vlnMacro(x, y, myMacro.SingleColMacroDef));
}
else
PartsLeft.Add(new vlnMacro(x, y, myMacro.MacroDef));
}
}
}