cvs: php-gtk-doc /stylesheets/xsl/common hierarchy.xsl
[email protected] ("James Moore") Fri, 10 Aug 2001 15:09:10 -0000
| Newsgroups | php.gtk |
|---|---|
| Message-ID | <cvsjmoore997456150@cvsserver> |
jmoore Fri Aug 10 11:09:10 2001 EDT
Modified files:
/php-gtk-doc/stylesheets/xsl/common hierarchy.xsl
Log:
We can now search a hierarchy for the correct implementation of a function for an object, this will only be used where the class the function is implemented in isnt sepcified by an extra attribute
Index: php-gtk-doc/stylesheets/xsl/common/hierarchy.xsl
diff -u php-gtk-doc/stylesheets/xsl/common/hierarchy.xsl:1.3 php-gtk-doc/stylesheets/xsl/common/hierarchy.xsl:1.4
--- php-gtk-doc/stylesheets/xsl/common/hierarchy.xsl:1.3 Fri Aug 10 06:40:51 2001
+++ php-gtk-doc/stylesheets/xsl/common/hierarchy.xsl Fri Aug 10 11:09:10 2001
@@ -2,7 +2,7 @@
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
-<!-- $Id: hierarchy.xsl,v 1.3 2001/08/10 10:40:51 jmoore Exp $ -->
+<!-- $Id: hierarchy.xsl,v 1.4 2001/08/10 15:09:10 jmoore Exp $ -->
<!-- ================== Common Hierarchy Functions ============================ -->
@@ -92,7 +92,7 @@
* [root - The root node to start searching from. Default is top node]
* Returns: the signals' id.
-->
- <xsl:template name="get.class.id.from.name">
+ <xsl:template name="get.class.id.from.name">
<xsl:param name="signalname" />
<xsl:param name="root" select="no" />
@@ -106,6 +106,32 @@
<xsl:value-of select="$signal/attribute::id" />
</xsl:template>
- <!-- ========================================================================== -->
+<!--
+ * Function: find.function.in.hierarchy
+ * Params: functionname - The functions name
+ * classentry - the current class entry we are in
+ * Returns: The function that is closest to this one in the heirarchy.
+-->
+ <xsl:template name="find.function.in.hierarchy">
+ <xsl:param name="functionname"/>
+ <xsl:param name="classentry"/>
+
+ <xsl:variable name="classhierarchy">
+ <xsl:call-template name="get.class.hierarchy.as.nodes">
+ <xsl:with-param name="classentry" select="$classentry"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="allinhierarchy">
+ <xsl:for-each select="$classhierarchy">
+ <xsl:if test="(count(.//*[funcsynopsis/funcprototype/funcdef/function=$functionname]) != 0)">
+ <xsl:copy-of select=".//*[funcsynopsis/funcprototype/funcdef/function=$functionname"/>
+ </xsl:if>
+ </xsl:template>
+ </xsl:variable>
+
+ <xsl:copy-of select="$allinhierarchy[position() = 1]"/>
+ </xsl:template>
+<!-- ========================================================================== -->
</xsl:stylesheet>