You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
148 lines
4.5 KiB
148 lines
4.5 KiB
<?xml version="1.0" ?>
|
|
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
<xsl:output method="xml" encoding="UTF-8" indent="yes" />
|
|
<xsl:param name="which" />
|
|
|
|
<xsl:template match="/">
|
|
<xsl:apply-templates select="/doxygen/compounddef[@kind!='file' and @kind!='dir']" />
|
|
|
|
<section id="{$which}-Functions">
|
|
<title>Functions</title>
|
|
<para />
|
|
<variablelist>
|
|
<xsl:apply-templates select="/doxygen/compounddef[@kind='file']/sectiondef/memberdef" />
|
|
</variablelist>
|
|
</section>
|
|
|
|
</xsl:template>
|
|
|
|
<xsl:template match="parameteritem">
|
|
<varlistentry>
|
|
<term>
|
|
<xsl:apply-templates select="parameternamelist/parametername"/>
|
|
</term>
|
|
<listitem>
|
|
<simpara><xsl:apply-templates select="parameterdescription"/></simpara>
|
|
</listitem>
|
|
</varlistentry>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="parameterlist">
|
|
<xsl:if test="parameteritem">
|
|
<variablelist>
|
|
<xsl:apply-templates select="parameteritem" />
|
|
</variablelist>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="ref">
|
|
<link linkend="{$which}-{@refid}"><xsl:value-of select="." /></link>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="simplesect[@kind='return']">
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term>Returns:</term>
|
|
<listitem>
|
|
<simpara><xsl:apply-templates /></simpara>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="simplesect[@kind='see']">
|
|
See also: <xsl:apply-templates />
|
|
</xsl:template>
|
|
|
|
<xsl:template match="simplesect[@kind='since']">
|
|
Since: <xsl:apply-templates />
|
|
</xsl:template>
|
|
|
|
<xsl:template match="simplesect[@kind='note']">
|
|
<emphasis>Note: <xsl:apply-templates /></emphasis>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="sp">
|
|
<xsl:text> </xsl:text>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="programlisting">
|
|
<programlisting><xsl:apply-templates /></programlisting>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="itemizedlist">
|
|
<itemizedlist><xsl:apply-templates select="listitem" /></itemizedlist>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="listitem">
|
|
<listitem><simpara><xsl:apply-templates /></simpara></listitem>
|
|
</xsl:template>
|
|
|
|
<!-- stops cross-references in the section titles -->
|
|
<xsl:template match="briefdescription">
|
|
<xsl:value-of select="." />
|
|
</xsl:template>
|
|
|
|
<!-- this opens a para for each detaileddescription/para. I could not find a
|
|
way to extract the right text for the description from the
|
|
source otherwise. Downside: we can't use para for return value, "see
|
|
also", etc. because they're already inside a para. So they're lists.
|
|
|
|
It also means we don't control the order of when something is added to
|
|
the output, it matches the input file
|
|
-->
|
|
<xsl:template match="detaileddescription/para">
|
|
<para><xsl:apply-templates /></para>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="detaileddescription">
|
|
<xsl:apply-templates select="para" />
|
|
</xsl:template>
|
|
|
|
<!-- methods -->
|
|
<xsl:template match="memberdef" >
|
|
<xsl:if test="@kind = 'function' and @static = 'no' and @prot = 'public' or
|
|
@kind !='function' and normalize-space(briefdescription) != ''">
|
|
<varlistentry id="{$which}-{@id}">
|
|
<term>
|
|
<xsl:value-of select="name"/>
|
|
<xsl:if test="normalize-space(briefdescription) != ''">
|
|
- <xsl:apply-templates select="briefdescription" />
|
|
</xsl:if>
|
|
</term>
|
|
<listitem>
|
|
<synopsis>
|
|
<xsl:apply-templates select="definition"/><xsl:apply-templates select="argsstring"/>
|
|
</synopsis>
|
|
<xsl:apply-templates select="detaileddescription" />
|
|
</listitem>
|
|
</varlistentry>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<!-- classes -->
|
|
<xsl:template match="compounddef" >
|
|
<section id="{$which}-{@id}">
|
|
<title>
|
|
<xsl:value-of select="compoundname" />
|
|
<xsl:if test="normalize-space(briefdescription) != ''">
|
|
- <xsl:apply-templates select="briefdescription" />
|
|
</xsl:if>
|
|
</title>
|
|
<xsl:choose>
|
|
<xsl:when test="normalize-space(detaileddescription) != ''">
|
|
<xsl:apply-templates select="detaileddescription" />
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<para />
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
<xsl:if test="sectiondef/memberdef[@kind='function' and @static='no']">
|
|
<variablelist>
|
|
<xsl:apply-templates select="sectiondef/memberdef" />
|
|
</variablelist>
|
|
</xsl:if>
|
|
</section>
|
|
</xsl:template>
|
|
</xsl:stylesheet>
|