[edit]
XSLT to create GTK# Widgets from a Glade XML File
<xsl:stylesheet
xmlns:a="http://glade.gnome.org/glade-2.0.dtd"
exclude-result-prefixes="a"
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<!--
Author: Nick Granado
Email: heatxsink@gmail.com
WWW: http://www.heatxsink.com
-->
<xsl:template match="/glade-interface">
<xsl:text>
#region Glade Widgets
</xsl:text>
<xsl:for-each select="/glade-interface//widget[@id]">
<xsl:variable name="gtk" select="substring( @class, 1, 3 )" />
<xsl:variable name="gtkClass" select="substring-after( @class, $gtk )" />
[Widget] <xsl:value-of select="concat($gtk,'.',$gtkClass)"/>
<!--<xsl:text>.</xsl:text>
<xsl:value-of select="substring( @class, 0, 2)"/>
substring( @class , 0, 2);-->
<xsl:text> </xsl:text>
<xsl:value-of select="@id"/>;<!--<xsl:text>#13;#10;</xsl:text>-->
</xsl:for-each>
<xsl:text>
#endregion Glade Widgets
</xsl:text>
<!--
<signal name="activate"
handler="on_saveAsMenuItem_activate"
last_modification_time="Tue, 28 Dec 2004 22:31:32 GMT"/>
-->
<xsl:text>
#region XSLT Generated Signal Events
</xsl:text>
<xsl:for-each select="//widget//signal">
<xsl:text>
protected void </xsl:text>
<xsl:value-of select="@handler"/>
<xsl:text>(object o, EventArgs args)
{
}
</xsl:text>
</xsl:for-each>
<xsl:text>
#endregion XSLT Generated Signal Events
</xsl:text>
</xsl:template>
</xsl:stylesheet>