I am a little confused.. What do you mean by default templates?
Say the xsl stylesheet has processed the parent table, and we have
column-width=70mm
column-width=110mm
column-width=70mm
now two rows down and one column into this table, I have an another table.
Is there a way to tell that iteration that it only has 110mm to assign to
the newest table width? (ie- pass 110 as blockwidth to process-col-width)
----- Original Message -----
From: "J.Pietschmann" <j3322ptm(_at_)yahoo(_dot_)de>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Thursday, March 06, 2003 2:47 PM
Subject: Re: [xsl] Finding a fo:table-cells parent column's width for nested
table
JD Daniels wrote:
I have changed it so that the template that figures out the width uses a
param i pass it, but how can I figure out if the table is inside a table
cell, and pass it the value of the parent table cells parent
fo:table-column
width?
Use something like
<xsl:if test="ancestor::table">
Better yet, always pass the current block width down through all
templates matching block level elements, and pass the page width
in the top level template.
I mean
<xsl:template match="table|tbody">
<xsl:param name="blockwidth"/>
<fo:table>
...
<xsl:call-template name="process-col-width">
...
<xsl:with-param name="parentblockwidth"
select="$blockwidth"/>
...
<fo:table-body>
<xsl:apply-templates>
<xsl:with-param name="blockwidth"
select="$blockwidth"/>
</xsl:apply-templates>
</fo:table-body>
Watch out for default templates, they will ruin it.
J.Pietschmann
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list