| <!-- The following is content that used to be in the EGL XSL directives | |
| now found in khronos-man.xsl. It is OpenCL formatting stuff done by | |
| Miller & Mattson and is being ignored for the moment. --> | |
| <!-- Set this param to a placeholder for the base URL of the | |
| external specification document. Include the beginning of the | |
| 'namedest' function as well. See the script pageNumberLookup.rb | |
| to see how this placeholder gets replaced by the actual spec | |
| URL and target page number. This placeholder can be any string, | |
| and only needs to match the same placeholder string in | |
| pageNumberLookup.rb. --> | |
| <!-- This isn't used by EGL at present --> | |
| <xsl:param name="SpecBaseUrl">http://www.khronos.org/registry/egl/specs/eglTBD.pdf#namedest=</xsl:param> | |
| <!-- The following template creates the link for the Specification section --> | |
| <!-- This isn't used by EGL at present --> | |
| <xsl:template match="olink"> | |
| <xsl:text disable-output-escaping="yes"><a href="</xsl:text> | |
| <xsl:value-of select="$SpecBaseUrl" /> | |
| <xsl:value-of select="@uri" /> | |
| <xsl:text disable-output-escaping="yes">" target="OpenCL Spec"></xsl:text> | |
| <xsl:value-of select="." /> | |
| <xsl:text disable-output-escaping="yes"></a></xsl:text> | |
| </xsl:template> | |
| <!-- The following enables use of ulink for regular URLs on the pages--> | |
| <!-- This isn't used by EGL at present --> | |
| <xsl:template match="ulink"> | |
| <xsl:text disable-output-escaping="yes"><a href="</xsl:text> | |
| <xsl:value-of select="@url" /> | |
| <xsl:text disable-output-escaping="yes">"></xsl:text> | |
| <xsl:value-of select="." /> | |
| <xsl:text disable-output-escaping="yes"></a></xsl:text> | |
| </xsl:template> | |
| <!-- The templates gentext-refname and refnamediv are inserted here so | |
| we can have the refname displayed as the H1 header on the page --> | |
| <xsl:template name="gentext-refname"> | |
| <xsl:param name="key" select="local-name(.)"/> | |
| <xsl:param name="lang"> | |
| <xsl:call-template name="l10n.language"/> | |
| </xsl:param> | |
| <xsl:value-of select="refname"/> | |
| </xsl:template> | |
| <xsl:template match="refnamediv"> | |
| <div class="{name(.)}"> | |
| <xsl:call-template name="anchor"/> | |
| <xsl:choose> | |
| <xsl:when test="preceding-sibling::refnamediv"> | |
| <!-- no title on secondary refnamedivs! --> | |
| </xsl:when> | |
| <xsl:when test="$refentry.generate.name != 0"> | |
| <h1> | |
| <xsl:call-template name="gentext-refname"> | |
| <xsl:with-param name="key" select="'RefName'"/> | |
| </xsl:call-template> | |
| </h1> | |
| </xsl:when> | |
| <xsl:when test="$refentry.generate.title != 0"> | |
| <h2> | |
| <xsl:choose> | |
| <xsl:when test="../refmeta/refentrytitle"> | |
| <xsl:apply-templates select="../refmeta/refentrytitle"/> | |
| </xsl:when> | |
| <xsl:otherwise> | |
| <xsl:apply-templates select="refname[1]"/> | |
| </xsl:otherwise> | |
| </xsl:choose> | |
| </h2> | |
| </xsl:when> | |
| </xsl:choose> | |
| <p> | |
| <xsl:apply-templates/> | |
| </p> | |
| </div> | |
| </xsl:template> | |
| <!-- The templates refname and refpurpose are inserted here so that we can | |
| modify the layout of these values on the HTML page --> | |
| <xsl:template match="refname" /> | |
| <xsl:template match="refpurpose"> | |
| <xsl:apply-templates/> | |
| </xsl:template> | |
| <!-- The Link template allows us to embed links in the <funcprototype>, | |
| even though this is not valid DocBook markup --> | |
| <xsl:template match="link" mode="ansi-tabular"> | |
| <xsl:apply-templates select="."/> | |
| </xsl:template> | |
| <!-- This is somewhat redundant with the following template --> | |
| <xsl:template match="funcdef/replaceable"> | |
| <xsl:call-template name="inline.italicseq"/> | |
| </xsl:template> | |
| <!-- The following template enables the <replaceable> tag inside | |
| <funcdef>, <paramdef>, and <function> to generate <em> in the HTML output --> | |
| <xsl:template match="funcdef/replaceable" mode="ansi-tabular"> | |
| <xsl:call-template name="inline.italicseq"/> | |
| </xsl:template> | |
| <xsl:template match="paramdef/replaceable" mode="ansi-tabular"> | |
| <xsl:call-template name="inline.italicseq"/> | |
| </xsl:template> | |
| <xsl:template match="function/replaceable" mode="ansi-nontabular"> | |
| <xsl:call-template name="inline.italicseq"/> | |
| </xsl:template> | |
| <xsl:template match="refname/replaceable" mode="kr-nontabular"> | |
| <xsl:call-template name="inline.italicseq"/> | |
| </xsl:template> | |
| <!-- The templates funcprototype and paramdef are here so we can modify | |
| the layout of the synopsis so that it is not broken into so many | |
| columns in the table, control indenting, and more. --> | |
| <!-- funcprototype: ansi, tabular --> | |
| <xsl:template match="funcprototype" mode="ansi-tabular"> | |
| <table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"> | |
| <xsl:if test="following-sibling::funcprototype"> | |
| <xsl:attribute name="style">padding-bottom: 1em</xsl:attribute> | |
| </xsl:if> | |
| <tr valign="bottom"> | |
| <td> | |
| <xsl:apply-templates select="funcdef" mode="ansi-tabular"/> | |
| <xsl:apply-templates select="(void|varargs|paramdef)[1]" mode="ansi-tabular"/> | |
| </td> | |
| </tr> | |
| <xsl:for-each select="(void|varargs|paramdef)[position() > 1]"> | |
| <tr valign="top"> | |
| <td> </td> | |
| <xsl:apply-templates select="." mode="ansi-tabular"/> | |
| </tr> | |
| </xsl:for-each> | |
| </table> | |
| </xsl:template> | |
| <xsl:template match="paramdef" mode="ansi-tabular"> | |
| <xsl:choose> | |
| <xsl:when test="type and funcparams"> | |
| <td> | |
| <xsl:apply-templates select="type" mode="kr-tabular-funcsynopsis-mode"/> | |
| <xsl:text> </xsl:text> | |
| </td> | |
| <td> | |
| <xsl:apply-templates select="type/following-sibling::node()" mode="kr-tabular-funcsynopsis-mode"/> | |
| </td> | |
| </xsl:when> | |
| <xsl:otherwise> | |
| <td> | |
| <xsl:apply-templates select="parameter/preceding-sibling::node()[not(self::parameter)]" mode="ansi-tabular"/> | |
| <xsl:text> </xsl:text> | |
| <xsl:apply-templates select="parameter" mode="ansi-tabular"/> | |
| <xsl:apply-templates select="parameter/following-sibling::node()[not(self::parameter)]" mode="ansi-tabular"/> | |
| <xsl:choose> | |
| <xsl:when test="following-sibling::*"> | |
| <xsl:text>, </xsl:text> | |
| </xsl:when> | |
| <xsl:otherwise> | |
| <code>)</code> | |
| <!-- OpenCL functions do not end with a semi-colon. | |
| <xsl:text>;</xsl:text> --> | |
| </xsl:otherwise> | |
| </xsl:choose> | |
| </td> | |
| </xsl:otherwise> | |
| </xsl:choose> | |
| </xsl:template> | |