libjava/ChangeLog:
[official-gcc.git] / libjava / classpath / tools / resource / gnu / classpath / tools / gjdoc / doctranslets / html / html_common.xsl
blob4e648d27281ec70cfd78d997cd6758ea2afd6f36
1 <?xml version="1.0" encoding="utf-8"?>
3 <!-- html_common.xsl
4 Copyright (C) 2003 Free Software Foundation, Inc.
6 This file is part of GNU Classpath.
8 GNU Classpath is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
11 any later version.
13 GNU Classpath is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with GNU Classpath; see the file COPYING. If not, write to the
20 Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21 02111-1307 USA.
22 -->
24 <!-- Common templates for HTML generation.
25 -->
27 <xsl:stylesheet version="1.0"
28 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
29 xmlns:gjdoc="http://www.gnu.org/software/cp-tools/gjdocxml"
30 xmlns:html="http://www.w3.org/TR/REC-html40"
31 xmlns="http://www.w3.org/TR/REC-html40">
33 <xsl:include href="../gjdoc_common.xsl"/>
35 <!-- HTML head directives to be included in all generated HTML files. -->
37 <xsl:template name="include_common">
38 <script src="{concat($gjdoc.pathtoroot, 'gjdoc.js')}" type="text/javascript"><xsl:comment>this comment required for konqueror 3.2.2</xsl:comment>
39 </script>
40 <xsl:choose>
41 <xsl:when test="$gjdoc.option.stylesheetfile">
42 <link rel="stylesheet" type="text/css"
43 href="{concat($gjdoc.pathtoroot, 'user.css')}"/>
44 </xsl:when>
45 <xsl:otherwise>
46 <link rel="stylesheet" type="text/css"
47 href="{concat($gjdoc.pathtoroot, 'gjdochtml.css')}" title="GNU Clean"/>
48 <link rel="stylesheet" type="text/css"
49 href="{concat($gjdoc.pathtoroot, 'gjdochtml-clean.css')}" title="GNU Clean"/>
50 <link rel="alternate stylesheet" type="text/css"
51 href="{concat($gjdoc.pathtoroot, 'gjdochtml.css')}" title="Santa Clara"/>
52 <link rel="alternate stylesheet" type="text/css"
53 href="{concat($gjdoc.pathtoroot, 'gjdochtml-sclara.css')}" title="Santa Clara"/>
54 <link rel="alternate stylesheet" type="text/css"
55 href="{concat($gjdoc.pathtoroot, 'gjdochtml.css')}" title="Fixed Fruit"/>
56 <link rel="alternate stylesheet" type="text/css"
57 href="{concat($gjdoc.pathtoroot, 'gjdochtml-fixed.css')}" title="Fixed Fruit"/>
58 </xsl:otherwise>
59 </xsl:choose>
60 </xsl:template>
62 <xsl:template name="output_copyright_footer">
63 <xsl:copy-of select="document('index.xml', /)/gjdoc:rootdoc/gjdoc:bottomnote"/>
64 <hr class="footer"/>
65 <div class="footer">
66 <xsl:text>Generated on</xsl:text><xsl:value-of select="document('index.xml', /)/gjdoc:rootdoc/gjdoc:created"/><xsl:text> by </xsl:text><a href="http://www.gnu.org/software/cp-tools" target="cptoolsinfo"><xsl:text>GNU Classpath Tools</xsl:text></a><xsl:text> (Gjdoc XmlDoclet </xsl:text><xsl:value-of select="$gjdoc.xmldoclet.version"/><xsl:text>).</xsl:text>
67 </div>
68 </xsl:template>
70 <!-- If the given class is also included, create a link to it. -->
71 <!-- Otherwise output the qualified name in plain text. -->
73 <xsl:template name="link_to_class_full">
74 <xsl:param name="p_qualifiedname" select="@qualifiedtypename"/>
75 <xsl:variable name="p_classdoc" select="document('index.xml', /)/gjdoc:rootdoc/gjdoc:classdoc[attribute::qualifiedtypename=$p_qualifiedname]"/>
76 <xsl:choose>
77 <xsl:when test="$p_classdoc">
78 <a href="{concat($gjdoc.pathtoroot, translate($p_classdoc/gjdoc:containingPackage/@name, '.', '/'), '/', $p_classdoc/@name, '.html')}">
79 <xsl:value-of select="$p_qualifiedname"/>
80 </a>
81 </xsl:when>
82 <xsl:when test="$gjdoc.refdocs1 and document(concat($gjdoc.refdocs1, '/descriptor.xml'), /)//gjdoc:class[attribute::qualifiedtypename=$p_qualifiedname]">
83 <a href="{concat($gjdoc.refdocs1, '/', $p_qualifiedname, '.html')}">
84 <xsl:value-of select="$p_qualifiedname"/>
85 </a>
86 </xsl:when>
87 <xsl:otherwise>
88 <xsl:value-of select="$p_qualifiedname"/>
89 </xsl:otherwise>
90 </xsl:choose>
91 </xsl:template>
93 <!-- If the given class is also included, create a link to it. -->
94 <!-- Otherwise output the qualified name in plain text. -->
96 <xsl:template name="link_to_class">
97 <xsl:param name="p_qualifiedname" select="@qualifiedtypename"/>
98 <xsl:param name="p_name" select="@name"/>
99 <xsl:variable name="p_classdoc" select="document('index.xml', /)/gjdoc:rootdoc/gjdoc:classdoc[attribute::qualifiedtypename=$p_qualifiedname]"/>
100 <xsl:choose>
101 <xsl:when test="$p_classdoc">
102 <a href="{concat($gjdoc.pathtoroot, translate($p_classdoc/gjdoc:containingPackage/@name, '.', '/'), '/', $p_classdoc/@name, '.html')}"><xsl:value-of select="$p_name"/></a>
103 </xsl:when>
104 <xsl:otherwise>
105 <xsl:value-of select="$p_qualifiedname"/>
106 </xsl:otherwise>
107 </xsl:choose>
108 </xsl:template>
110 <xsl:template name="output_alphaindex_category">
111 <dl>
112 <xsl:for-each select="gjdoc:entry">
113 <dt>
114 <xsl:element name="a">
115 <xsl:attribute name="href">
116 <xsl:choose>
117 <xsl:when test="gjdoc:isPackage">
118 <xsl:value-of select="concat(translate(@name, '.', '/'), '/package-summary.html')"/>
119 </xsl:when>
120 <xsl:when test="gjdoc:isClass and gjdoc:containingClass">
121 <xsl:value-of select="concat(translate(gjdoc:containingPackage/@name, '.', '/'), '/', gjdoc:containingClass/@name, '.', @name, '.html')"/>
122 </xsl:when>
123 <xsl:when test="gjdoc:isClass">
124 <xsl:value-of select="concat(translate(gjdoc:containingPackage/@name, '.', '/'), '/', @name, '.html')"/>
125 </xsl:when>
126 <xsl:when test="gjdoc:isMethod">
127 <xsl:value-of select="concat(translate(gjdoc:containingPackage/@name, '.', '/'), '/', gjdoc:containingClass/@name, '.html#', gjdoc:method/@name, gjdoc:signature/@full)"/>
128 </xsl:when>
129 <xsl:when test="gjdoc:isField">
130 <xsl:value-of select="concat(translate(gjdoc:containingPackage/@name, '.', '/'), '/', gjdoc:containingClass/@name, '.html#', @name)"/>
131 </xsl:when>
132 </xsl:choose>
133 </xsl:attribute>
134 <xsl:value-of select="@name"/>
135 </xsl:element>
137 <xsl:choose>
138 <xsl:when test="gjdoc:isPackage">
139 Package
140 </xsl:when>
141 <xsl:when test="gjdoc:isOrdinaryClass and gjdoc:containingClass">
142 Nested class in class
143 <xsl:value-of select="gjdoc:containingClass/@name"/>
144 </xsl:when>
145 <xsl:when test="gjdoc:isException and gjdoc:containingClass">
146 Nested exception in class
147 <xsl:value-of select="gjdoc:containingClass/@name"/>
148 </xsl:when>
149 <xsl:when test="gjdoc:isError and gjdoc:containingClass">
150 Nested error in class
151 <xsl:value-of select="gjdoc:containingClass/@name"/>
152 </xsl:when>
153 <xsl:when test="gjdoc:isInterface and gjdoc:containingClass">
154 Nested interface in class
155 <xsl:value-of select="gjdoc:containingClass/@name"/>
156 </xsl:when>
157 <xsl:when test="gjdoc:isOrdinaryClass">
158 Class in package
159 <xsl:value-of select="gjdoc:containingPackage/@name"/>
160 </xsl:when>
161 <xsl:when test="gjdoc:isException">
162 Exception in package
163 <xsl:value-of select="gjdoc:containingPackage/@name"/>
164 </xsl:when>
165 <xsl:when test="gjdoc:isError">
166 Error in package
167 <xsl:value-of select="gjdoc:containingPackage/@name"/>
168 </xsl:when>
169 <xsl:when test="gjdoc:isInterface">
170 Interface in package
171 <xsl:value-of select="gjdoc:containingPackage/@name"/>
172 </xsl:when>
173 <xsl:when test="gjdoc:isMethod">
174 Method in class
175 <xsl:value-of select="gjdoc:containingClass/@name"/>
176 </xsl:when>
177 <xsl:when test="gjdoc:isField">
178 Field in class
179 <xsl:value-of select="gjdoc:containingClass/@name"/>
180 </xsl:when>
181 </xsl:choose>
182 </dt>
183 <dd>
184 <xsl:for-each select="gjdoc:firstSentenceTags/node()">
185 <xsl:copy-of select="."/>
186 </xsl:for-each>
187 </dd>
188 </xsl:for-each>
189 </dl>
191 </xsl:template>
193 <xsl:template name="output_navlink">
194 <xsl:param name="p_href"/>
195 <xsl:param name="p_label"/>
196 <xsl:param name="p_target" select="'_self'"/>
197 <xsl:param name="p_enabled"/>
198 <xsl:param name="p_current"/>
199 <xsl:param name="p_onclick"/>
200 <xsl:param name="p_last" select="0"/>
201 <xsl:param name="p_css_class"/>
202 <xsl:param name="p_title"/>
204 <xsl:choose>
205 <xsl:when test="$p_enabled">
206 <span class="navi-button link"><a href="{$p_href}" target="{$p_target}" class="navi-button" title="{$p_title}" onClick="{$p_onclick}"><span class="{concat('navi-link ', $p_css_class)}"><xsl:value-of select="$p_label" disable-output-escaping="yes"/></span></a></span>
207 </xsl:when>
208 <xsl:when test="$p_current">
209 <span class="navi-button current"><xsl:value-of select="$p_label" disable-output-escaping="yes"/></span>
210 </xsl:when>
211 <xsl:otherwise>
212 <span class="navi-button unavailable"><xsl:value-of select="$p_label" disable-output-escaping="yes"/></span>
213 </xsl:otherwise>
214 </xsl:choose>
215 <xsl:if test="not($p_last)"><span class="navsep"><xsl:text disable-output-escaping="yes">&amp;nbsp;</xsl:text></span></xsl:if>
216 </xsl:template>
218 <xsl:template name="output_navbar">
219 <xsl:param name="p_show_frames" select="1"/>
220 <xsl:param name="p_curr_frames"/>
222 <xsl:param name="p_show_noframes" select="1"/>
223 <xsl:param name="p_curr_noframes"/>
225 <xsl:param name="p_show_package" select="1"/>
226 <xsl:param name="p_curr_package"/>
228 <xsl:param name="p_show_package_tree" select="1"/>
229 <xsl:param name="p_curr_package_tree"/>
231 <xsl:param name="p_show_full_tree" select="1"/>
232 <xsl:param name="p_curr_full_tree"/>
234 <xsl:param name="p_show_index" select="1"/>
235 <xsl:param name="p_curr_index"/>
237 <xsl:param name="p_show_help" select="1"/>
238 <xsl:param name="p_curr_help"/>
240 <xsl:param name="p_show_about" select="1"/>
241 <xsl:param name="p_curr_about"/>
243 <xsl:param name="p_show_source" select="1"/>
244 <xsl:param name="p_curr_source"/>
246 <xsl:param name="p_show_class"/>
247 <xsl:param name="p_curr_class"/>
249 <xsl:param name="p_show_use"/>
250 <xsl:param name="p_curr_use"/>
252 <xsl:param name="p_show_deprecated" select="1"/>
253 <xsl:param name="p_curr_deprecated"/>
255 <xsl:param name="p_top"/>
257 <xsl:variable name="v_navbar_class">
258 <xsl:choose>
259 <xsl:when test="$p_top">
260 <xsl:value-of select="'navbar top'"/>
261 </xsl:when>
262 <xsl:otherwise>
263 <xsl:value-of select="'navbar bottom'"/>
264 </xsl:otherwise>
265 </xsl:choose>
266 </xsl:variable>
268 <xsl:if test="not($gjdoc.option.nonavbar)">
269 <div class="{$v_navbar_class}">
270 <table border="1" cellspacing="0" class="{$v_navbar_class}">
271 <tr class="{$v_navbar_class}">
272 <td class="{$v_navbar_class}">
273 <div class="navbar-first-row">
274 <xsl:call-template name="output_navlink">
275 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'index_noframes.html')"/>
276 <xsl:with-param name="p_label" select="'Overview'"/>
277 <xsl:with-param name="p_enabled" select="$p_show_noframes"/>
278 <xsl:with-param name="p_current" select="$p_curr_noframes"/>
279 </xsl:call-template>
280 <xsl:call-template name="output_navlink">
281 <xsl:with-param name="p_href" select="'package-summary.html'"/>
282 <xsl:with-param name="p_label" select="'Package'"/>
283 <xsl:with-param name="p_enabled" select="$p_show_package"/>
284 <xsl:with-param name="p_current" select="$p_curr_package"/>
285 </xsl:call-template>
286 <xsl:call-template name="output_navlink">
287 <xsl:with-param name="p_href" select="$p_show_class"/>
288 <xsl:with-param name="p_label" select="'Class'"/>
289 <xsl:with-param name="p_enabled" select="$p_show_class"/>
290 <xsl:with-param name="p_current" select="$p_curr_class"/>
291 </xsl:call-template>
292 <xsl:if test="$gjdoc.option.linksource">
293 <xsl:call-template name="output_navlink">
294 <xsl:with-param name="p_href" select="$p_show_source"/>
295 <xsl:with-param name="p_label" select="'Source'"/>
296 <xsl:with-param name="p_enabled" select="$p_show_source"/>
297 <xsl:with-param name="p_current" select="$p_curr_source"/>
298 </xsl:call-template>
299 </xsl:if>
300 <xsl:if test="$gjdoc.option.uses">
301 <xsl:call-template name="output_navlink">
302 <xsl:with-param name="p_href" select="$p_show_use"/>
303 <xsl:with-param name="p_label" select="'Use'"/>
304 <xsl:with-param name="p_enabled" select="$p_show_use"/>
305 <xsl:with-param name="p_current" select="$p_curr_use"/>
306 </xsl:call-template>
307 </xsl:if>
308 <xsl:call-template name="output_navlink">
309 <xsl:with-param name="p_href" select="'package-tree.html'"/>
310 <xsl:with-param name="p_label" select="'Tree'"/>
311 <xsl:with-param name="p_enabled" select="$p_show_package_tree"/>
312 <xsl:with-param name="p_current" select="$p_curr_package_tree"/>
313 </xsl:call-template>
314 <xsl:if test="not($gjdoc.option.noindex)">
315 <xsl:call-template name="output_navlink">
316 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'alphaindex.html')"/>
317 <xsl:with-param name="p_label" select="'Index'"/>
318 <xsl:with-param name="p_enabled" select="$p_show_index"/>
319 <xsl:with-param name="p_current" select="$p_curr_index"/>
320 </xsl:call-template>
321 </xsl:if>
322 <xsl:if test="not($gjdoc.option.notree)">
323 <xsl:call-template name="output_navlink">
324 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'fulltree.html')"/>
325 <xsl:with-param name="p_label" select="'Full&amp;nbsp;Tree'"/>
326 <xsl:with-param name="p_enabled" select="$p_show_full_tree"/>
327 <xsl:with-param name="p_current" select="$p_curr_full_tree"/>
328 </xsl:call-template>
329 </xsl:if>
330 <xsl:if test="not($gjdoc.option.nodeprecatedlist)">
331 <xsl:call-template name="output_navlink">
332 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'deprecated.html')"/>
333 <xsl:with-param name="p_label" select="'Deprecated'"/>
334 <xsl:with-param name="p_enabled" select="$p_show_deprecated"/>
335 <xsl:with-param name="p_current" select="$p_curr_deprecated"/>
336 </xsl:call-template>
337 </xsl:if>
338 <xsl:if test="not($gjdoc.option.nohelp)">
339 <xsl:call-template name="output_navlink">
340 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'help.html')"/>
341 <xsl:with-param name="p_label" select="'Help'"/>
342 <xsl:with-param name="p_enabled" select="$p_show_help"/>
343 <xsl:with-param name="p_current" select="$p_curr_help"/>
344 </xsl:call-template>
345 </xsl:if>
346 <xsl:call-template name="output_navlink">
347 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'about.html')"/>
348 <xsl:with-param name="p_label" select="'About'"/>
349 <xsl:with-param name="p_enabled" select="$p_show_about"/>
350 <xsl:with-param name="p_current" select="$p_curr_about"/>
351 <xsl:with-param name="p_last" select="1"/>
352 </xsl:call-template>
353 </div>
354 <div class="navbar-second-row">
355 <xsl:call-template name="output_navlink">
356 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'index.html')"/>
357 <xsl:with-param name="p_label" select="'Frames'"/>
358 <xsl:with-param name="p_enabled" select="1"/>
359 <xsl:with-param name="p_target" select="'_top'"/>
360 </xsl:call-template>
361 <xsl:call-template name="output_navlink">
362 <xsl:with-param name="p_href" select="concat($gjdoc.pathtoroot, 'index_noframes.html')"/>
363 <xsl:with-param name="p_label" select="'No&amp;nbsp;Frames'"/>
364 <xsl:with-param name="p_enabled" select="1"/>
365 <xsl:with-param name="p_target" select="'_top'"/>
366 <xsl:with-param name="p_last" select="0"/>
367 </xsl:call-template>
368 <xsl:call-template name="output_navlink">
369 <xsl:with-param name="p_onclick" select="'return setStyleSheet(&quot;GNU Clean&quot;);'"/>
370 <xsl:with-param name="p_title" select="'GNU Clean Style'"/>
371 <xsl:with-param name="p_label" select="'GNU Clean'"/>
372 <xsl:with-param name="p_enabled" select="1"/>
373 <xsl:with-param name="p_last" select="0"/>
374 </xsl:call-template>
375 <xsl:call-template name="output_navlink">
376 <xsl:with-param name="p_onclick" select="'return setStyleSheet(&quot;Santa Clara&quot;);'"/>
377 <xsl:with-param name="p_title" select="'Santa Clara Style'"/>
378 <xsl:with-param name="p_label" select="'Santa Clara'"/>
379 <xsl:with-param name="p_enabled" select="1"/>
380 <xsl:with-param name="p_last" select="0"/>
381 </xsl:call-template>
382 <xsl:call-template name="output_navlink">
383 <xsl:with-param name="p_onclick" select="'return setStyleSheet(&quot;Fixed Fruit&quot;);'"/>
384 <xsl:with-param name="p_title" select="'Fixed Fruit Style'"/>
385 <xsl:with-param name="p_label" select="'Fixed Fruit'"/>
386 <xsl:with-param name="p_enabled" select="1"/>
387 <xsl:with-param name="p_last" select="0"/>
388 </xsl:call-template>
389 <xsl:call-template name="output_navlink">
390 <xsl:with-param name="p_onclick" select="'return setStyleSheet(&quot;Vanilla&quot;);'"/>
391 <xsl:with-param name="p_title" select="'Vanilla Style'"/>
392 <xsl:with-param name="p_label" select="'Vanilla'"/>
393 <xsl:with-param name="p_enabled" select="1"/>
394 <xsl:with-param name="p_last" select="0"/>
395 </xsl:call-template>
397 </div>
398 </td>
399 <xsl:choose>
400 <xsl:when test="$p_top">
401 <xsl:if test="$gjdoc.option.header">
402 <td class="{$v_navbar_class} navbar-header">
403 <xsl:value-of select="$gjdoc.option.header"/>
404 </td>
405 </xsl:if>
406 </xsl:when>
407 <xsl:otherwise>
408 <xsl:if test="$gjdoc.option.footer">
409 <td class="{$v_navbar_class} navbar-footer">
410 <xsl:value-of select="$gjdoc.option.footer"/>
411 </td>
412 </xsl:if>
413 </xsl:otherwise>
414 </xsl:choose>
416 </tr>
417 </table>
419 </div>
420 <xsl:if test="not($p_top) and $gjdoc.option.bottom">
421 <hr/>
422 <xsl:value-of select="$gjdoc.option.bottom"/>
423 </xsl:if>
424 </xsl:if>
425 </xsl:template>
427 <xsl:template name="link_to_class_source">
428 <xsl:choose>
429 <xsl:when test="$gjdoc.option.linksource">
430 <a href="{concat($gjdoc.pathtoroot, 'src-html/', translate(gjdoc:containingPackage/@name, '.', '/'), '/', @name, '.html')}"><b><xsl:value-of select="@name"/></b></a>
431 </xsl:when>
432 <xsl:otherwise>
433 <b><xsl:value-of select="@name"/></b>
434 </xsl:otherwise>
435 </xsl:choose>
436 </xsl:template>
438 <xsl:template name="link_to_member_source">
439 <xsl:choose>
440 <xsl:when test="$gjdoc.option.linksource">
441 <a href="{concat($gjdoc.pathtoroot, 'src-html/', translate(gjdoc:containingPackage/@name, '.', '/'), '/', gjdoc:containingClass/@typename, '.html#line.', gjdoc:position/@line)}"><b><xsl:value-of select="@name"/></b></a>
442 </xsl:when>
443 <xsl:otherwise>
444 <b><xsl:value-of select="@name"/></b>
445 </xsl:otherwise>
446 </xsl:choose>
447 </xsl:template>
449 <xsl:template name="output_title">
450 <xsl:param name="p_pagetitle"/>
451 <xsl:variable name="v_title">
452 <xsl:value-of select="$p_pagetitle"/>
453 <xsl:if test="$gjdoc.option.windowtitle">
454 <xsl:text> (</xsl:text>
455 <xsl:value-of select="$gjdoc.option.windowtitle"/>
456 <xsl:text>)</xsl:text>
457 </xsl:if>
458 </xsl:variable>
459 <title>
460 <xsl:value-of select="$v_title"/>
461 </title>
462 </xsl:template>
464 <xsl:template name="get_qualified_type">
465 <xsl:param name="p_typename"/>
466 <xsl:variable name="v_plaintype">
467 <xsl:choose>
468 <xsl:when test="contains($p_typename,'[')">
469 <xsl:value-of select="normalize-space(substring-before($p_typename, '['))"/>
470 </xsl:when>
471 <xsl:otherwise>
472 <xsl:value-of select="$p_typename"/>
473 </xsl:otherwise>
474 </xsl:choose>
475 </xsl:variable>
476 <xsl:variable name="v_containingpackage">
477 <xsl:value-of select="ancestor-or-self::gjdoc:classdoc/gjdoc:containingPackage/attribute::name"/>
478 </xsl:variable>
479 <xsl:choose>
480 <xsl:when test="document('index.xml', /)/gjdoc:rootdoc/gjdoc:classdoc[attribute::name=$v_plaintype]/gjdoc:containingPackage[attribute::name=$v_containingpackage]">
481 <xsl:value-of select="$v_containingpackage"/>
482 <xsl:text>.</xsl:text>
483 </xsl:when>
484 <xsl:when test="document('index.xml', /)/gjdoc:rootdoc/gjdoc:classdoc[attribute::name=$v_plaintype]/gjdoc:containingPackage[attribute::name='java.lang']">
485 <xsl:text>java.lang.</xsl:text>
486 </xsl:when>
487 </xsl:choose>
488 <xsl:value-of select="$p_typename"/>
489 </xsl:template>
492 <xsl:template name="output_link_tag">
493 <xsl:param name="p_contexturl"/>
494 <xsl:variable name="v_see">
495 <xsl:choose>
496 <xsl:when test="contains(., '(')">
497 <xsl:value-of select="normalize-space(substring-before(., '('))"/>
498 <xsl:text>(</xsl:text>
499 <xsl:call-template name="resolve_parameter_list">
500 <xsl:with-param name="p_anchor">
501 <xsl:value-of select="normalize-space(substring-before(substring-after(., '('), ')'))"/>
502 </xsl:with-param>
503 </xsl:call-template>
504 <xsl:text>)</xsl:text>
505 </xsl:when>
506 <xsl:otherwise>
507 <xsl:value-of select="."/>
508 </xsl:otherwise>
509 </xsl:choose>
510 </xsl:variable>
511 <xsl:variable name="v_class">
512 <xsl:choose>
513 <xsl:when test="contains(., '#')">
514 <xsl:value-of select="normalize-space(substring-before(., '#'))"/>
515 </xsl:when>
516 <xsl:otherwise>
517 <xsl:value-of select="normalize-space(.)"/>
518 </xsl:otherwise>
519 </xsl:choose>
520 </xsl:variable>
521 <xsl:variable name="v_anchor" select="normalize-space(substring-after(., '#'))"/>
522 <xsl:variable name="v_seeanchor">
523 <xsl:if test="contains($v_see, '#')">
524 <xsl:value-of select="concat('#', normalize-space(substring-after($v_see, '#')))"/>
525 </xsl:if>
526 </xsl:variable>
527 <xsl:variable name="v_classname" select="document('index.xml', /)/gjdoc:rootdoc/gjdoc:classdoc[attribute::name=$v_class]/attribute::qualifiedtypename"/>
528 <xsl:variable name="v_classnamefq" select="document('index.xml', /)/gjdoc:rootdoc/gjdoc:classdoc[attribute::qualifiedtypename=$v_class]/attribute::qualifiedtypename"/>
529 <xsl:choose>
530 <xsl:when test="starts-with(., '#')">
531 <xsl:choose>
532 <xsl:when test="$p_contexturl">
533 <a href="{concat($p_contexturl, translate($v_see,' ',''))}"><xsl:value-of select="$v_anchor"/></a>
534 </xsl:when>
535 <xsl:otherwise>
536 <a href="{translate($v_see,' ','')}"><xsl:value-of select="$v_anchor"/></a>
537 </xsl:otherwise>
538 </xsl:choose>
539 </xsl:when>
540 <xsl:when test="$v_classname">
541 <a href="{translate(concat($gjdoc.pathtoroot, translate($v_classname, '.', '/'), '.html', $v_seeanchor),' ','')}"><xsl:value-of select="translate($v_see,'#','.')"/></a>
542 </xsl:when>
543 <xsl:when test="$v_classnamefq">
544 <a href="{translate(concat($gjdoc.pathtoroot, translate($v_classnamefq, '.', '/'), '.html', $v_seeanchor),' ','')}"><xsl:value-of select="translate($v_see,'#','.')"/></a>
545 </xsl:when>
546 <xsl:otherwise>
547 <xsl:value-of select="translate(., '#', '.')" disable-output-escaping="yes"/>
548 </xsl:otherwise>
549 </xsl:choose>
550 </xsl:template>
552 <xsl:template name="resolve_parameter_list">
553 <xsl:param name="p_anchor"/>
554 <xsl:variable name="v_parameter">
555 <xsl:value-of select="normalize-space(substring-before($p_anchor, ','))"/>
556 </xsl:variable>
557 <xsl:variable name="v_remainder">
558 <xsl:value-of select="normalize-space(substring-after($p_anchor, ','))"/>
559 </xsl:variable>
560 <xsl:call-template name="get_qualified_type">
561 <xsl:with-param name="p_typename">
562 <xsl:choose>
563 <xsl:when test="string-length($v_remainder)>0">
564 <xsl:value-of select="$v_parameter"/>
565 </xsl:when>
566 <xsl:otherwise>
567 <xsl:value-of select="$p_anchor"/>
568 </xsl:otherwise>
569 </xsl:choose>
570 </xsl:with-param>
571 </xsl:call-template>
573 <xsl:if test="string-length($v_remainder)>0">
574 <xsl:text>,</xsl:text>
575 <xsl:call-template name="resolve_parameter_list">
576 <xsl:with-param name="p_anchor">
577 <xsl:value-of select="$v_remainder"/>
578 </xsl:with-param>
579 </xsl:call-template>
580 </xsl:if>
581 </xsl:template>
583 </xsl:stylesheet>