fluidsynth/doc/fluidsettings.xsl

168 lines
5.6 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" doctype-system="about:legacy-compat"/>
<xsl:template match="/">
<html>
<head>
<style>
2017-10-01 12:26:32 +00:00
table
{
border: 3px solid black;
2017-10-01 12:26:32 +00:00
}
.first-row
2017-10-01 12:26:32 +00:00
{
border-top: 3px solid black;
2017-10-01 12:26:32 +00:00
}
th
2017-10-01 12:26:32 +00:00
{
font-weight: normal;
2017-10-01 12:26:32 +00:00
white-space: nowrap;
padding: 15px 5px 15px 5px;
border-top: 1px solid black;
border-left: 1px solid black;
border-right: 1px solid black;
}
td
{
padding: 15px 5px 15px 5px;
2017-10-01 12:26:32 +00:00
}
2017-10-01 12:26:32 +00:00
.cell-def
{
white-space: nowrap;
border-top: 1px solid black;
2017-10-01 12:26:32 +00:00
}
2017-10-02 08:40:20 +00:00
.cell-vals
{
border-top: 1px solid black;
}
.cell-desc
{
border-top: 1px solid black;
2017-10-02 08:40:20 +00:00
}
2017-10-16 15:10:28 +00:00
.audio {background-color: hsl(170, 100%, 90%);}
.midi {background-color: hsl(125, 100%, 90%);}
.player {background-color: hsl(85, 100%, 85%);}
.shell {background-color: hsl(60, 100%, 90%);}
.synth {background-color: hsl(35, 100%, 90%);}
</style>
2017-10-16 15:10:28 +00:00
<title>FluidSettings</title>
</head>
<body>
2017-10-16 15:10:28 +00:00
<h1>FluidSettings</h1>
<ul>
<!-- Select the first setting of each group and use it for building up a TOC -->
<xsl:for-each select="fluidsettings/*/*[isFirst]">
<xsl:sort select="name(..)" />
<li style="margin-bottom: 15px">
<xsl:attribute name="class">
<xsl:value-of select="name(..)" />
</xsl:attribute>
<a>
<xsl:attribute name="href"><![CDATA[#]]><xsl:value-of select="name(..)" /><![CDATA[.]]><xsl:value-of select="name" /></xsl:attribute>
<xsl:value-of select="isFirst" />
</a>
</li>
</xsl:for-each>
</ul>
<table>
<!--print each and every setting row by row in the table-->
<xsl:for-each select="fluidsettings/*/*">
2017-10-01 12:26:32 +00:00
<xsl:sort select="name(..)" />
2017-10-14 20:40:43 +00:00
<!-- <xsl:sort select="name" /> -->
<tr>
<!-- the class attribute of tr shall be the name of the settings group of the current setting -->
<xsl:attribute name="class">
<xsl:value-of select="name(..)" />
</xsl:attribute>
<td class="cell-name first-row">
<xsl:attribute name="id"><xsl:value-of select="name(..)" /><![CDATA[.]]><xsl:value-of select="name" /></xsl:attribute>
<a>
<xsl:attribute name="href"><![CDATA[#]]><xsl:value-of select="name(..)" /><![CDATA[.]]><xsl:value-of select="name" /></xsl:attribute>
<xsl:value-of select="name(..)" />.<xsl:value-of select="name" />
</a>
</td>
2017-10-01 12:26:32 +00:00
<th class="first-row">Type</th>
<td class="cell-type first-row">
2017-10-01 12:26:32 +00:00
<xsl:value-of select="type" />
</td>
</tr>
<tr>
<xsl:attribute name="class">
<xsl:value-of select="name(..)" />
</xsl:attribute>
<td></td>
<th>Default</th>
2017-10-01 12:26:32 +00:00
<td class="cell-def">
<xsl:copy-of select="def" />
</td>
</tr>
<tr>
<xsl:attribute name="class">
<xsl:value-of select="name(..)" />
</xsl:attribute>
<td></td>
<th>
<xsl:choose>
<xsl:when test="type = 'str'">
Values
</xsl:when>
<xsl:when test="type = 'bool'">
Values
</xsl:when>
<xsl:otherwise>
Min
-
Max
</xsl:otherwise>
</xsl:choose>
</th>
2017-10-01 12:26:32 +00:00
<td class="cell-vals">
<xsl:choose>
2017-10-01 12:26:32 +00:00
<xsl:when test="type = 'str'">
<xsl:value-of select="vals" />
</xsl:when>
<xsl:when test="type = 'bool'">
1, "yes", 0, "no"
</xsl:when>
<xsl:otherwise>
2017-10-01 12:26:32 +00:00
<xsl:value-of select="min" />
-
2017-10-01 12:26:32 +00:00
<xsl:value-of select="max" />
</xsl:otherwise>
</xsl:choose>
</td>
2017-10-02 08:40:20 +00:00
</tr>
2017-10-02 08:40:20 +00:00
<tr>
<xsl:attribute name="class">
<xsl:value-of select="name(..)" />
</xsl:attribute>
<td></td>
<th>Description</th>
<td class="cell-desc">
2017-10-01 12:26:32 +00:00
<xsl:copy-of select="desc" />
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>