Author: ben
Date: 2007-10-07 21:55:49 -0700 (Sun, 07 Oct 2007)
New Revision: 6752

Modified:
   openlaszlo/branches/paperpie/docs/src/xsl/js2doc2dbk.xsl
Log:
Added xsl to create listing of inherited attributes, with links to the 
reference for that attribute in the superclasses, in each reference entry.

Modified: openlaszlo/branches/paperpie/docs/src/xsl/js2doc2dbk.xsl
===================================================================
--- openlaszlo/branches/paperpie/docs/src/xsl/js2doc2dbk.xsl    2007-10-08 
03:25:40 UTC (rev 6751)
+++ openlaszlo/branches/paperpie/docs/src/xsl/js2doc2dbk.xsl    2007-10-08 
04:55:49 UTC (rev 6752)
@@ -122,6 +122,9 @@
         <refsynopsisdiv>
            <xsl:call-template name="insert-refinfo"/>
         </refsynopsisdiv>
+        <xsl:call-template name="describe-inherited-attributes">
+          <xsl:with-param name="class" select="class"></xsl:with-param>
+        </xsl:call-template>
         <xsl:call-template name="declaration-description"/>
         <xsl:apply-templates select="." mode="refentry-details"/>
         <xsl:apply-templates select="." mode="detailed-synopsis"/>
@@ -724,5 +727,41 @@
         </xsl:otherwise>
       </xsl:choose>
     </xsl:template>
+  
+    <xsl:template name="describe-inherited-attributes">
+      <xsl:param name="class"/>        
+      
+      <xsl:variable name="jsname" select="@name"/>
+      <xsl:variable name="lzxname" select="&tagname;"/>
+      
+      <xsl:variable name="extends" select="$class/@extends"/>
+      <xsl:variable name="superclass" select="(key('id',$extends) | 
key('name-lzx',$extends))[1]"/>
+      <xsl:if test="$superclass">
+        <refsect1>
+          <title>
+            <xsl:text>Attributes inherited from&nbsp;</xsl:text><xsl:value-of 
select="$superclass/@name"/>
+          </title>
+          <para>
+          <xsl:variable name="inheritedattrs" select="$superclass/class/[EMAIL 
PROTECTED]'__ivars__']/object/[EMAIL PROTECTED]'public']"></xsl:variable>       
   
+            <xsl:for-each select="$inheritedattrs">     
+                <link linkend="[EMAIL PROTECTED]"><xsl:value-of 
select="@name"/></link>
+                <xsl:text>, </xsl:text>
+            </xsl:for-each>                               
+          </para>
+        </refsect1>                  
+        <xsl:choose>
+          <xsl:when test="contains($visibility.filter, $superclass/@access)">
+            <xsl:call-template name="describe-inherited-attributes">
+              <xsl:with-param name="class" select="$superclass/class"/>
+            </xsl:call-template>
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:value-of select="($superclass/@name | $superclass/doc/[EMAIL 
PROTECTED]'lzxname']/text)[1]"/>
+            <xsl:text>&nbsp;(private)&nbsp;&raquo; </xsl:text>
+          </xsl:otherwise>
+        </xsl:choose>
+      </xsl:if>              
+    </xsl:template>  
     
+  
 </xsl:stylesheet>
\ No newline at end of file


_______________________________________________
Laszlo-checkins mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins

Reply via email to