]> granicus.if.org Git - docbook-dsssl/commitdiff
Fixed bug #1326440 where 'title' in generate.toc was not supported in FO.
authorBob Stayton <bobs@sagehill.net>
Thu, 29 Dec 2005 19:14:15 +0000 (19:14 +0000)
committerBob Stayton <bobs@sagehill.net>
Thu, 29 Dec 2005 19:14:15 +0000 (19:14 +0000)
xsl/fo/autotoc.xsl
xsl/fo/component.xsl
xsl/fo/division.xsl
xsl/fo/sections.xsl

index f229476b4d79c269ad2f46eba6b07b8668a3b7d6..df16f62ed453501b7910ee6a07453aa64c078def 100644 (file)
@@ -53,6 +53,7 @@
 
 <xsl:template name="division.toc">
   <xsl:param name="toc-context" select="."/>
+  <xsl:param name="toc.title.p" select="true()"/>
 
   <xsl:variable name="cid">
     <xsl:call-template name="object.id">
@@ -83,7 +84,9 @@
           </xsl:call-template>
         </xsl:attribute>
       </xsl:if>
-      <xsl:call-template name="table.of.contents.titlepage"/>
+      <xsl:if test="$toc.title.p">
+        <xsl:call-template name="table.of.contents.titlepage"/>
+      </xsl:if>
       <xsl:apply-templates select="$nodes" mode="toc">
         <xsl:with-param name="toc-context" select="$toc-context"/>
       </xsl:apply-templates>
@@ -93,6 +96,7 @@
 
 <xsl:template name="component.toc">
   <xsl:param name="toc-context" select="."/>
+  <xsl:param name="toc.title.p" select="true()"/>
 
   <xsl:variable name="id">
     <xsl:call-template name="object.id"/>
   <xsl:if test="$nodes">
     <fo:block id="toc...{$id}"
               xsl:use-attribute-sets="toc.margin.properties">
-      <xsl:call-template name="table.of.contents.titlepage"/>
+      <xsl:if test="$toc.title.p">
+        <xsl:call-template name="table.of.contents.titlepage"/>
+      </xsl:if>
       <xsl:apply-templates select="$nodes" mode="toc">
         <xsl:with-param name="toc-context" select="$toc-context"/>
       </xsl:apply-templates>
index b5a9b2721e466150990a0aae2635f73c4ca1ae80..fdf6ccddefb9d119dd9a9ab8c77c7db3ac3b1227 100644 (file)
@@ -39,7 +39,7 @@
   <xsl:variable name="level">
     <xsl:choose>
       <xsl:when test="ancestor::section">
-       <xsl:value-of select="count(ancestor::section)+1"/>
+        <xsl:value-of select="count(ancestor::section)+1"/>
       </xsl:when>
       <xsl:when test="ancestor::sect5">6</xsl:when>
       <xsl:when test="ancestor::sect4">5</xsl:when>
@@ -95,9 +95,9 @@
          font-size there... -->
     <xsl:choose>
       <xsl:when test="$level=2">
-       <fo:block xsl:use-attribute-sets="section.title.level2.properties">
-         <xsl:copy-of select="$title"/>
-       </fo:block>
+        <fo:block xsl:use-attribute-sets="section.title.level2.properties">
+          <xsl:copy-of select="$title"/>
+        </fo:block>
       </xsl:when>
       <xsl:when test="$level=3">
         <fo:block xsl:use-attribute-sets="section.title.level3.properties">
         </fo:block>
       </xsl:when>
       <xsl:when test="$level=6">
-       <fo:block xsl:use-attribute-sets="section.title.level6.properties">
-         <xsl:copy-of select="$title"/>
-       </fo:block>
+        <fo:block xsl:use-attribute-sets="section.title.level6.properties">
+          <xsl:copy-of select="$title"/>
+        </fo:block>
       </xsl:when>
       <xsl:otherwise>
-       <!-- not in a section: do nothing special -->
-       <xsl:copy-of select="$title"/>
+        <!-- not in a section: do nothing special -->
+        <xsl:copy-of select="$title"/>
       </xsl:otherwise>
     </xsl:choose>
   </fo:block>
 
       <xsl:variable name="toc.params">
         <xsl:call-template name="find.path.params">
-          <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
+          <xsl:with-param name="table" 
+                          select="normalize-space($generate.toc)"/>
         </xsl:call-template>
       </xsl:variable>
       <xsl:if test="contains($toc.params, 'toc')">
-        <xsl:call-template name="component.toc"/>
+        <xsl:call-template name="component.toc">
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
+        </xsl:call-template>
         <xsl:call-template name="component.toc.separator"/>
       </xsl:if>
 
         </xsl:call-template>
       </xsl:variable>
       <xsl:if test="contains($toc.params, 'toc')">
-        <xsl:call-template name="component.toc"/>
+        <xsl:call-template name="component.toc">
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
+        </xsl:call-template>
         <xsl:call-template name="component.toc.separator"/>
       </xsl:if>
       <xsl:apply-templates/>
       </xsl:variable>
 
       <xsl:if test="contains($toc.params, 'toc')">
-        <xsl:call-template name="component.toc"/>
+        <xsl:call-template name="component.toc">
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
+        </xsl:call-template>
         <xsl:call-template name="component.toc.separator"/>
       </xsl:if>
       <xsl:apply-templates/>
       </xsl:variable>
 
       <xsl:if test="contains($toc.params, 'toc')">
-        <xsl:call-template name="component.toc"/>
+        <xsl:call-template name="component.toc">
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
+        </xsl:call-template>
         <xsl:call-template name="component.toc.separator"/>
       </xsl:if>
       <xsl:apply-templates/>
index 5811aaa9f815625f9681fcd588099035422f8308..9b462cc34e362313137a6638ebe661660b420161 100644 (file)
                           select="$lot-master-reference"/>
         </xsl:call-template>
 
-        <xsl:call-template name="division.toc"/>
+        <xsl:call-template name="division.toc">
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
+        </xsl:call-template>
       </fo:flow>
     </fo:page-sequence>
   </xsl:if>
 
         <xsl:call-template name="division.toc">
           <xsl:with-param name="toc-context" select="$part"/>
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
         </xsl:call-template>
+
       </fo:flow>
     </fo:page-sequence>
   </xsl:if>
index 551fd7e1111073160ebbad95eb33793f6c9a115d..4abe2464076e6daecc3ec85cf9b78d5c2a50c212 100644 (file)
   </xsl:variable>
 
   <xsl:if test="contains($toc.params, 'toc')
-                and (count(ancestor::section)+1) &lt;= $generate.section.toc.level">
+                and (count(ancestor::section)+1) &lt;= 
+               $generate.section.toc.level">
     <xsl:call-template name="section.toc">
-      <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/>
+      <xsl:with-param name="toc.title.p" 
+                      select="contains($toc.params, 'title')"/>
     </xsl:call-template>
    <xsl:call-template name="section.toc.separator"/>
   </xsl:if>
       </xsl:variable>
 
       <xsl:if test="contains($toc.params, 'toc')
-                    and (count(ancestor::section)+1) &lt;= $generate.section.toc.level">
-        <xsl:call-template name="section.toc"/>
+                    and (count(ancestor::section)+1) &lt;= 
+                   $generate.section.toc.level">
+        <xsl:call-template name="section.toc">
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
+        </xsl:call-template>
         <xsl:call-template name="section.toc.separator"/>
       </xsl:if>
 
 
     <xsl:if test="contains($toc.params, 'toc')
                   and $generate.section.toc.level &gt;= 1">
-      <xsl:call-template name="section.toc"/>
+      <xsl:call-template name="section.toc">
+        <xsl:with-param name="toc.title.p" 
+                        select="contains($toc.params, 'title')"/>
+      </xsl:call-template>
       <xsl:call-template name="section.toc.separator"/>
     </xsl:if>
 
 
       <xsl:if test="contains($toc.params, 'toc')
                     and $generate.section.toc.level &gt;= 1">
-        <xsl:call-template name="section.toc"/>
+        <xsl:call-template name="section.toc">
+          <xsl:with-param name="toc.title.p" 
+                          select="contains($toc.params, 'title')"/>
+        </xsl:call-template>
         <xsl:call-template name="section.toc.separator"/>
       </xsl:if>
 
 
     <xsl:if test="contains($toc.params, 'toc')
                    and $generate.section.toc.level &gt;= 2">
-      <xsl:call-template name="section.toc"/>
+      <xsl:call-template name="section.toc">
+        <xsl:with-param name="toc.title.p" 
+                        select="contains($toc.params, 'title')"/>
+      </xsl:call-template>
       <xsl:call-template name="section.toc.separator"/>
     </xsl:if>
 
 
     <xsl:if test="contains($toc.params, 'toc')
                   and $generate.section.toc.level &gt;= 3">
-      <xsl:call-template name="section.toc"/>
+      <xsl:call-template name="section.toc">
+        <xsl:with-param name="toc.title.p" 
+                        select="contains($toc.params, 'title')"/>
+      </xsl:call-template>
       <xsl:call-template name="section.toc.separator"/>
     </xsl:if>
 
 
     <xsl:if test="contains($toc.params, 'toc')
                   and $generate.section.toc.level &gt;= 4">
-      <xsl:call-template name="section.toc"/>
+      <xsl:call-template name="section.toc">
+        <xsl:with-param name="toc.title.p" 
+                        select="contains($toc.params, 'title')"/>
+      </xsl:call-template>
       <xsl:call-template name="section.toc.separator"/>
     </xsl:if>
 
 
     <xsl:if test="contains($toc.params, 'toc')
                   and $generate.section.toc.level &gt;= 5">
-      <xsl:call-template name="section.toc"/>
+      <xsl:call-template name="section.toc">
+        <xsl:with-param name="toc.title.p" 
+                        select="contains($toc.params, 'title')"/>
+      </xsl:call-template>
       <xsl:call-template name="section.toc.separator"/>
     </xsl:if>