This commit is contained in:
Kathy Ruffing 2012-11-08 17:01:33 +00:00
parent b80375164e
commit 3795a3063d
2 changed files with 34 additions and 2 deletions

View File

@ -58,6 +58,8 @@ public struct DocStyle
// 1 - included with steps
// 2 - within sections ie. document styles
// 3 - within each accessory document
public short IndexOtherThanFirstPage; // reference document style for remaining pages (not first), if
// one exists.
public bool IsStepSection; // using oldtonew, determine whether is step
// section or word doc section (new to 32-bit)
public bool UseCheckOffs; // This was originally in fmt. Load fmt to get
@ -1063,6 +1065,10 @@ namespace fmtxml
// Inherit fonts.
DoDSFontInherit(ref dcstyles);
// Do UseOnFirstPage/UseOnAllbutFirstPage index additions. This was added for 32bit support
// of the document style 'StructureStyle Where = "UseOnFirstPage" or "UseOnAllButFirstPage"
DoUseOnPagesAttribute(ref dcstyles);
// do Plant specific adjustments
AddPlantSpecific(fname, ref dcstyles);
@ -1104,6 +1110,24 @@ namespace fmtxml
}
}
private void DoUseOnPagesAttribute(ref DocStyles docstyles)
{
int indxFirst = -1;
int indxAllButFirst = -1;
for (int i = 0; i < docstyles.DcStyles.Length; i++)
{
if ((docstyles.DcStyles[i].DocStructStyle.DocStyleUse & E_DocStyleUse.UseOnFirstPage) == E_DocStyleUse.UseOnFirstPage)
indxFirst = docstyles.DcStyles[i].Index;
if ((docstyles.DcStyles[i].DocStructStyle.DocStyleUse & E_DocStyleUse.UseOnAllButFirstPage) == E_DocStyleUse.UseOnAllButFirstPage)
indxAllButFirst = docstyles.DcStyles[i].Index;
}
if (indxFirst != -1 && indxAllButFirst != -1)
{
docstyles.DcStyles[indxFirst].IndexOtherThanFirstPage = (short)indxAllButFirst;
}
}
private DocStyle AddDocStyles(string fname)
{
DocStyle dc = new DocStyle();

View File

@ -16,8 +16,9 @@
<DocStyle>
<xsl:apply-templates select="Name"/>
<xsl:apply-templates select="Index"/>
<xsl:apply-templates select="numberingsequence"/>
<xsl:apply-templates select="IsStepSection"/>
<xsl:apply-templates select="numberingsequence"/>
<xsl:apply-templates select="IndexOtherThanFirstPage"/>
<xsl:apply-templates select="IsStepSection"/>
<xsl:apply-templates select="UseCheckOffs"/>
<xsl:apply-templates select ="UseColSByLevel"/>
<xsl:apply-templates select="oldtonew"/>
@ -31,6 +32,13 @@
<xsl:template match="numberingsequence">
<xsl:attribute name="NumberingSequence"><xsl:value-of select="."/></xsl:attribute>
</xsl:template>
<xsl:template match="IndexOtherThanFirstPage">
<xsl:if test=".!=0">
<xsl:attribute name="IndexOtherThanFirstPage">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="IsStepSection">
<xsl:attribute name="IsStepSection"><xsl:value-of select="."/>
</xsl:attribute>