blob: 649aaff52bbc9721f256176a2b6c63802a452753 [file] [log] [blame]
Dirk Dougherty541b4942014-02-14 18:31:53 -08001<?cs include:"doctype.cs" ?>
2<?cs include:"macros.cs" ?>
Dirk Doughertyff233cc2015-05-04 14:37:05 -07003<?cs include:"macros_override.cs" ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -08004<html<?cs if:devsite ?> devsite<?cs /if ?>>
5<?cs include:"head_tag.cs" ?>
6<body class="gc-documentation <?cs if:(reference.gms || reference.gcm) ?>google<?cs /if ?>
7 <?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs
Dirk Doughertyff233cc2015-05-04 14:37:05 -07008 if:reference ?> reference<?cs
9 /if ?><?cs
Dirk Dougherty541b4942014-02-14 18:31:53 -080010 elif:design ?>design<?cs
11 elif:distribute ?>distribute<?cs
12 /if ?>" itemscope itemtype="http://schema.org/Article">
13 <div id="doc-api-level" class="<?cs var:class.since ?>" style="display:none"></div>
14 <a name="top"></a>
15<?cs include:"header.cs" ?>
16
17<div class="col-12" id="doc-col">
18
19<div id="api-info-block">
20
21<?cs # are there inherited members ?>
22<?cs each:cl=class.inherited ?>
23 <?cs if:subcount(cl.methods) ?>
24 <?cs set:inhmethods = #1 ?>
25 <?cs /if ?>
26 <?cs if:subcount(cl.constants) ?>
27 <?cs set:inhconstants = #1 ?>
28 <?cs /if ?>
29 <?cs if:subcount(cl.fields) ?>
30 <?cs set:inhfields = #1 ?>
31 <?cs /if ?>
32 <?cs if:subcount(cl.attrs) ?>
33 <?cs set:inhattrs = #1 ?>
34 <?cs /if ?>
35<?cs /each ?>
36
37<div class="sum-details-links">
38<?cs if:inhattrs || inhconstants || inhfields || inhmethods || (!class.subclasses.hidden &&
39 (subcount(class.subclasses.direct) || subcount(class.subclasses.indirect))) ?>
40Summary:
41<?cs if:subcount(class.inners) ?>
42 <a href="#nestedclasses">Nested Classes</a>
43 <?cs set:linkcount = #1 ?>
44<?cs /if ?>
45<?cs if:subcount(class.attrs) ?>
46 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#lattrs">XML Attrs</a>
47 <?cs set:linkcount = #1 ?>
48<?cs /if ?>
49<?cs if:inhattrs ?>
50 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhattrs">Inherited XML Attrs</a>
51 <?cs set:linkcount = #1 ?>
52<?cs /if ?>
53<?cs if:subcount(class.enumConstants) ?>
54 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#enumconstants">Enums</a>
55 <?cs set:linkcount = #1 ?>
56<?cs /if ?>
57<?cs if:subcount(class.constants) ?>
58 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#constants">Constants</a>
59 <?cs set:linkcount = #1 ?>
60<?cs /if ?>
61<?cs if:inhconstants ?>
62 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhconstants">Inherited Constants</a>
63 <?cs set:linkcount = #1 ?>
64<?cs /if ?>
65<?cs if:subcount(class.fields) ?>
66 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#lfields">Fields</a>
67 <?cs set:linkcount = #1 ?>
68<?cs /if ?>
69<?cs if:inhfields ?>
70 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhfields">Inherited Fields</a>
71 <?cs set:linkcount = #1 ?>
72<?cs /if ?>
73<?cs if:subcount(class.ctors.public) ?>
74 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#pubctors">Ctors</a>
75 <?cs set:linkcount = #1 ?>
76<?cs /if ?>
77<?cs if:subcount(class.ctors.protected) ?>
78 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#proctors">Protected Ctors</a>
79 <?cs set:linkcount = #1 ?>
80<?cs /if ?>
81<?cs if:subcount(class.methods.public) ?>
82 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#pubmethods">Methods</a>
83 <?cs set:linkcount = #1 ?>
84<?cs /if ?>
85<?cs if:subcount(class.methods.protected) ?>
86 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#promethods">Protected Methods</a>
87 <?cs set:linkcount = #1 ?>
88<?cs /if ?>
89<?cs if:inhmethods ?>
90 <?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhmethods">Inherited Methods</a>
91<?cs /if ?>
92&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
93<?cs /if ?>
94</div><!-- end sum-details-links -->
95<div class="api-level">
96 <?cs call:since_tags(class) ?><?cs
97 if:class.deprecatedsince
98 ?><br>Deprecated since <a href="<?cs var:toroot ?>guide/topics/manifest/uses-sdk-element.html#ApiLevels"
99 >API level <?cs var:class.deprecatedsince ?></a><?cs
100 /if ?>
101 <?cs call:federated_refs(class) ?>
102</div>
103</div><!-- end api-info-block -->
104
105<?cs # this next line must be exactly like this to be parsed by eclipse ?>
106<!-- ======== START OF CLASS DATA ======== -->
107
108<div id="jd-header">
109 <?cs var:class.scope ?>
110 <?cs var:class.static ?>
111 <?cs var:class.final ?>
112 <?cs var:class.abstract ?>
113 <?cs var:class.kind ?>
114<h1 itemprop="name"><?cs var:class.name ?></h1>
115
116<?cs set:colspan = subcount(class.inheritance) ?>
117<?cs each:supr = class.inheritance ?>
118 <?cs if:colspan == 2 ?>
119 extends <?cs call:type_link(supr.short_class) ?><br/>
120 <?cs /if ?>
121 <?cs if:last(supr) && subcount(supr.interfaces) ?>
122 implements
123 <?cs each:t=supr.interfaces ?>
124 <?cs call:type_link(t) ?>
125 <?cs /each ?>
126 <?cs /if ?>
127 <?cs set:colspan = colspan-1 ?>
128<?cs /each ?>
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700129<?cs call:show_annotations_list(class) ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800130
131</div><!-- end header -->
132
133<div id="naMessage"></div>
134
135<div id="jd-content" class="api apilevel-<?cs var:class.since ?>">
136<table class="jd-inheritance-table">
137<?cs set:colspan = subcount(class.inheritance) ?>
138<?cs each:supr = class.inheritance ?>
139 <tr>
140 <?cs loop:i = 1, (subcount(class.inheritance)-colspan), 1 ?>
141 <td class="jd-inheritance-space">&nbsp;<?cs if:(subcount(class.inheritance)-colspan) == i ?>&nbsp;&nbsp;&#x21b3;<?cs /if ?></td>
142 <?cs /loop ?>
143 <td colspan="<?cs var:colspan ?>" class="jd-inheritance-class-cell"><?cs
144 if:colspan == 1
145 ?><?cs call:class_name(class.qualifiedType) ?><?cs
146 else
147 ?><?cs call:type_link(supr.class) ?><?cs
148 /if ?></td>
149 </tr>
150 <?cs set:colspan = colspan-1 ?>
151<?cs /each ?>
152</table>
153
154<?cs # this next line must be exactly like this to be parsed by eclipse ?>
155
156<?cs if:subcount(class.subclasses.direct) && !class.subclasses.hidden ?>
157<table class="jd-sumtable jd-sumtable-subclasses"><tr><td colspan="12" style="border:none;margin:0;padding:0;">
158<?cs call:expando_trigger("subclasses-direct", "closed") ?>Known Direct Subclasses
159<?cs call:expandable_class_list("subclasses-direct", class.subclasses.direct, "list") ?>
160</td></tr></table>
161<?cs /if ?>
162
163<?cs if:subcount(class.subclasses.indirect) && !class.subclasses.hidden ?>
164<table class="jd-sumtable jd-sumtable-subclasses"><tr><td colspan="12" style="border:none;margin:0;padding:0;">
165<?cs call:expando_trigger("subclasses-indirect", "closed") ?>Known Indirect Subclasses
166<?cs call:expandable_class_list("subclasses-indirect", class.subclasses.indirect, "list") ?>
167</td></tr></table>
168<?cs /if ?>
169
170<div class="jd-descr">
171<?cs call:deprecated_warning(class) ?>
Dirk Dougherty29e93432015-05-05 18:17:13 -0700172<?cs if:subcount(class.descr) || subcount(class.annotationdocumentation) ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800173<h2>Class Overview</h2>
Dirk Dougherty29e93432015-05-05 18:17:13 -0700174<?cs if:subcount(class.descr) ?><p itemprop="articleBody"><?cs call:tag_list(class.descr) ?></p><?cs /if ?>
175<?cs if:subcount(class.annotationdocumentation) ?><?cs each:annodoc = class.annotationdocumentation?>
176<p><?cs var:annodoc.text ?></p>
177<?cs /each?><?cs /if?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800178<?cs /if ?>
179
180<?cs call:see_also_tags(class.seeAlso) ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800181</div><!-- jd-descr -->
182
183
184<?cs # summary macros ?>
185
186<?cs def:write_method_summary(methods, included) ?>
187<?cs set:count = #1 ?>
188<?cs each:method = methods ?>
189 <?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
190 <tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:method.since ?>" >
191 <td class="jd-typecol"><nobr>
192 <?cs var:method.abstract ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800193 <?cs var:method.final ?>
194 <?cs var:method.static ?>
195 <?cs call:type_link(method.generic) ?>
196 <?cs call:type_link(method.returnType) ?></nobr>
197 </td>
198 <td class="jd-linkcol" width="100%"><nobr>
199 <span class="sympad"><?cs call:cond_link(method.name, toroot, method.href, included) ?></span>(<?cs call:parameter_list(method.params) ?>)</nobr>
Dirk Dougherty29e93432015-05-05 18:17:13 -0700200 <?cs if:subcount(method.shortDescr) || subcount(method.deprecated) || subcount(method.showAnnotations) ?>
201 <div class="jd-descrdiv">
202 <?cs if:subcount(method.shortDescr) || subcount(method.annotationdocumentation) ?><?cs call:short_descr(method)?><?cs /if?>
203 <?cs call:show_annotations_list(method) ?>
204 </div>
205 <?cs /if ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800206 </td></tr>
207<?cs set:count = count + #1 ?>
208<?cs /each ?>
209<?cs /def ?>
210
211<?cs def:write_field_summary(fields, included) ?>
212<?cs set:count = #1 ?>
213 <?cs each:field=fields ?>
214 <tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:field.since ?>" >
215 <td class="jd-typecol"><nobr>
216 <?cs var:field.scope ?>
217 <?cs var:field.static ?>
218 <?cs var:field.final ?>
219 <?cs call:type_link(field.type) ?></nobr></td>
220 <td class="jd-linkcol"><?cs call:cond_link(field.name, toroot, field.href, included) ?></td>
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700221 <td class="jd-descrcol" width="100%">
222 <?cs call:short_descr(field) ?>
223 <?cs call:show_annotations_list(field) ?>
224 </td>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800225 </tr>
226 <?cs set:count = count + #1 ?>
227 <?cs /each ?>
228<?cs /def ?>
229
230<?cs def:write_constant_summary(fields, included) ?>
231<?cs set:count = #1 ?>
232 <?cs each:field=fields ?>
233 <tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:field.since ?>" >
234 <td class="jd-typecol"><?cs call:type_link(field.type) ?></td>
235 <td class="jd-linkcol"><?cs call:cond_link(field.name, toroot, field.href, included) ?></td>
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700236 <td class="jd-descrcol" width="100%">
237 <?cs call:short_descr(field) ?>
238 <?cs call:show_annotations_list(field) ?>
239 </td>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800240 </tr>
241 <?cs set:count = count + #1 ?>
242 <?cs /each ?>
243<?cs /def ?>
244
245<?cs def:write_attr_summary(attrs, included) ?>
246<?cs set:count = #1 ?>
247 <tr>
248 <td><nobr><em>Attribute Name</em></nobr></td>
249 <td><nobr><em>Related Method</em></nobr></td>
250 <td><nobr><em>Description</em></nobr></td>
251 </tr>
252 <?cs each:attr=attrs ?>
253 <tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:attr.since ?>" >
254 <td class="jd-linkcol"><?cs if:included ?><a href="<?cs var:toroot ?><?cs var:attr.href ?>"><?cs /if ?><?cs var:attr.name ?><?cs if:included ?></a><?cs /if ?></td>
255 <td class="jd-linkcol"><?cs each:m=attr.methods ?>
256 <?cs call:cond_link(m.name, toroot, m.href, included) ?>
257 <?cs /each ?>
258 </td>
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700259 <td class="jd-descrcol" width="100%">
260 <?cs call:short_descr(attr) ?>&nbsp;
261 <?cs call:show_annotations_list(attr) ?>
262 </td>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800263 </tr>
264 <?cs set:count = count + #1 ?>
265 <?cs /each ?>
266<?cs /def ?>
267
268<?cs def:write_inners_summary(classes) ?>
269<?cs set:count = #1 ?>
270 <?cs each:cl=class.inners ?>
271 <tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:cl.since ?>" >
272 <td class="jd-typecol"><nobr>
273 <?cs var:cl.scope ?>
274 <?cs var:cl.static ?>
275 <?cs var:cl.final ?>
276 <?cs var:cl.abstract ?>
277 <?cs var:cl.kind ?></nobr></td>
278 <td class="jd-linkcol"><?cs call:type_link(cl.type) ?></td>
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700279 <td class="jd-descrcol" width="100%">
280 <?cs call:short_descr(cl) ?>&nbsp;
281 <?cs call:show_annotations_list(cl) ?>
282 </td>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800283 </tr>
284 <?cs set:count = count + #1 ?>
285 <?cs /each ?>
286<?cs /def ?>
287
288<?cs # end macros ?>
289
290<div class="jd-descr">
291<?cs # make sure there's a summary view to display ?>
292<?cs if:subcount(class.inners)
293 || subcount(class.attrs)
294 || inhattrs
295 || subcount(class.enumConstants)
296 || subcount(class.constants)
297 || inhconstants
298 || subcount(class.fields)
299 || inhfields
300 || subcount(class.ctors.public)
301 || subcount(class.ctors.protected)
302 || subcount(class.methods.public)
303 || subcount(class.methods.protected)
304 || inhmethods ?>
305<h2>Summary</h2>
306
307<?cs if:subcount(class.inners) ?>
308<?cs # this next line must be exactly like this to be parsed by eclipse ?>
309<!-- ======== NESTED CLASS SUMMARY ======== -->
310<table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
311<?cs call:write_inners_summary(class.inners) ?>
312<?cs /if ?>
313
314<?cs # this next line must be exactly like this to be parsed by eclipse ?>
315<?cs if:subcount(class.attrs) ?>
316<!-- =========== FIELD SUMMARY =========== -->
317<table id="lattrs" class="jd-sumtable"><tr><th colspan="12">XML Attributes</th></tr>
318<?cs call:write_attr_summary(class.attrs, 1) ?>
319<?cs /if ?>
320
321<?cs # if there are inherited attrs, write the table ?>
322<?cs if:inhattrs ?>
323<?cs # this next line must be exactly like this to be parsed by eclipse ?>
324<!-- =========== FIELD SUMMARY =========== -->
325<table id="inhattrs" class="jd-sumtable"><tr><th>
326 <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
327 <div style="clear:left;">Inherited XML Attributes</div></th></tr>
328<?cs each:cl=class.inherited ?>
329<?cs if:subcount(cl.attrs) ?>
330<tr class="api apilevel-<?cs var:cl.since ?>" >
331<td colspan="12">
332<?cs call:expando_trigger("inherited-attrs-"+cl.qualified, "closed") ?>From <?cs var:cl.kind ?>
333<?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
334<div id="inherited-attrs-<?cs var:cl.qualified ?>">
335 <div id="inherited-attrs-<?cs var:cl.qualified ?>-list"
336 class="jd-inheritedlinks">
337 </div>
338 <div id="inherited-attrs-<?cs var:cl.qualified ?>-summary" style="display: none;">
339 <table class="jd-sumtable-expando">
340 <?cs call:write_attr_summary(cl.attrs, cl.included) ?></table>
341 </div>
342</div>
343</td></tr>
344<?cs /if ?>
345<?cs /each ?>
346</table>
347<?cs /if ?>
348
349<?cs if:subcount(class.enumConstants) ?>
350<?cs # this next line must be exactly like this to be parsed by eclipse ?>
351<!-- =========== ENUM CONSTANT SUMMARY =========== -->
352<table id="enumconstants" class="jd-sumtable"><tr><th colspan="12">Enum Values</th></tr>
353<?cs set:count = #1 ?>
354 <?cs each:field=class.enumConstants ?>
355 <tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:field.since ?>" >
356 <td class="jd-descrcol"><?cs call:type_link(field.type) ?>&nbsp;</td>
357 <td class="jd-linkcol"><?cs call:cond_link(field.name, toroot, field.href, cl.included) ?>&nbsp;</td>
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700358 <td class="jd-descrcol" width="100%">
359 <?cs call:short_descr(field) ?>&nbsp;
360 <?cs call:show_annotations_list(field) ?>
361 </td>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800362 </tr>
363 <?cs set:count = count + #1 ?>
364 <?cs /each ?>
365<?cs /if ?>
366
367<?cs if:subcount(class.constants) ?>
368<?cs # this next line must be exactly like this to be parsed by eclipse ?>
369<!-- =========== ENUM CONSTANT SUMMARY =========== -->
370<table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr>
371<?cs call:write_constant_summary(class.constants, 1) ?>
372</table>
373<?cs /if ?>
374
375<?cs # if there are inherited constants, write the table ?>
376<?cs if:inhconstants ?>
377<?cs # this next line must be exactly like this to be parsed by eclipse ?>
378<!-- =========== ENUM CONSTANT SUMMARY =========== -->
379<table id="inhconstants" class="jd-sumtable"><tr><th>
380 <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
381 <div style="clear:left;">Inherited Constants</div></th></tr>
382<?cs each:cl=class.inherited ?>
383<?cs if:subcount(cl.constants) ?>
384<tr class="api apilevel-<?cs var:cl.since ?>" >
385<td colspan="12">
386<?cs call:expando_trigger("inherited-constants-"+cl.qualified, "closed") ?>From <?cs var:cl.kind ?>
387<?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
388<div id="inherited-constants-<?cs var:cl.qualified ?>">
389 <div id="inherited-constants-<?cs var:cl.qualified ?>-list"
390 class="jd-inheritedlinks">
391 </div>
392 <div id="inherited-constants-<?cs var:cl.qualified ?>-summary" style="display: none;">
393 <table class="jd-sumtable-expando">
394 <?cs call:write_constant_summary(cl.constants, cl.included) ?></table>
395 </div>
396</div>
397</td></tr>
398<?cs /if ?>
399<?cs /each ?>
400</table>
401<?cs /if ?>
402
403<?cs if:subcount(class.fields) ?>
404<?cs # this next line must be exactly like this to be parsed by eclipse ?>
405<!-- =========== FIELD SUMMARY =========== -->
406<table id="lfields" class="jd-sumtable"><tr><th colspan="12">Fields</th></tr>
407<?cs call:write_field_summary(class.fields, 1) ?>
408</table>
409<?cs /if ?>
410
411<?cs # if there are inherited fields, write the table ?>
412<?cs if:inhfields ?>
413<?cs # this next line must be exactly like this to be parsed by eclipse ?>
414<!-- =========== FIELD SUMMARY =========== -->
415<table id="inhfields" class="jd-sumtable"><tr><th>
416 <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
417 <div style="clear:left;">Inherited Fields</div></th></tr>
418<?cs each:cl=class.inherited ?>
419<?cs if:subcount(cl.fields) ?>
420<tr class="api apilevel-<?cs var:cl.since ?>" >
421<td colspan="12">
422<?cs call:expando_trigger("inherited-fields-"+cl.qualified, "closed") ?>From <?cs var:cl.kind ?>
423<?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
424<div id="inherited-fields-<?cs var:cl.qualified ?>">
425 <div id="inherited-fields-<?cs var:cl.qualified ?>-list"
426 class="jd-inheritedlinks">
427 </div>
428 <div id="inherited-fields-<?cs var:cl.qualified ?>-summary" style="display: none;">
429 <table class="jd-sumtable-expando">
430 <?cs call:write_field_summary(cl.fields, cl.included) ?></table>
431 </div>
432</div>
433</td></tr>
434<?cs /if ?>
435<?cs /each ?>
436</table>
437<?cs /if ?>
438
439<?cs if:subcount(class.ctors.public) ?>
440<?cs # this next line must be exactly like this to be parsed by eclipse ?>
441<!-- ======== CONSTRUCTOR SUMMARY ======== -->
442<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
443<?cs call:write_method_summary(class.ctors.public, 1) ?>
444</table>
445<?cs /if ?>
446
447<?cs if:subcount(class.ctors.protected) ?>
448<?cs # this next line must be exactly like this to be parsed by eclipse ?>
449<!-- ======== CONSTRUCTOR SUMMARY ======== -->
450<table id="proctors" class="jd-sumtable"><tr><th colspan="12">Protected Constructors</th></tr>
451<?cs call:write_method_summary(class.ctors.protected, 1) ?>
452</table>
453<?cs /if ?>
454
455<?cs if:subcount(class.methods.public) ?>
456<?cs # this next line must be exactly like this to be parsed by eclipse ?>
457<!-- ========== METHOD SUMMARY =========== -->
458<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
459<?cs call:write_method_summary(class.methods.public, 1) ?>
460</table>
461<?cs /if ?>
462
463<?cs if:subcount(class.methods.protected) ?>
464<?cs # this next line must be exactly like this to be parsed by eclipse ?>
465<!-- ========== METHOD SUMMARY =========== -->
466<table id="promethods" class="jd-sumtable"><tr><th colspan="12">Protected Methods</th></tr>
467<?cs call:write_method_summary(class.methods.protected, 1) ?>
468</table>
469<?cs /if ?>
470
471<?cs # if there are inherited methods, write the table ?>
472<?cs if:inhmethods ?>
473<?cs # this next line must be exactly like this to be parsed by eclipse ?>
474<!-- ========== METHOD SUMMARY =========== -->
475<table id="inhmethods" class="jd-sumtable"><tr><th>
476 <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
477 <div style="clear:left;">Inherited Methods</div></th></tr>
478<?cs each:cl=class.inherited ?>
479<?cs if:subcount(cl.methods) ?>
480<tr class="api apilevel-<?cs var:cl.since ?>" >
481<td colspan="12"><?cs call:expando_trigger("inherited-methods-"+cl.qualified, "closed") ?>
482From <?cs var:cl.kind ?>
483<?cs if:cl.included ?>
484 <a href="<?cs var:toroot ?><?cs var:cl.link ?>"><?cs var:cl.qualified ?></a>
485<?cs elif:cl.federated ?>
486 <a href="<?cs var:cl.link ?>"><?cs var:cl.qualified ?></a>
487<?cs else ?>
488 <?cs var:cl.qualified ?>
489<?cs /if ?>
490<div id="inherited-methods-<?cs var:cl.qualified ?>">
491 <div id="inherited-methods-<?cs var:cl.qualified ?>-list"
492 class="jd-inheritedlinks">
493 </div>
494 <div id="inherited-methods-<?cs var:cl.qualified ?>-summary" style="display: none;">
495 <table class="jd-sumtable-expando">
496 <?cs call:write_method_summary(cl.methods, cl.included) ?></table>
497 </div>
498</div>
499</td></tr>
500<?cs /if ?>
501<?cs /each ?>
502</table>
503<?cs /if ?>
504<?cs /if ?>
505</div><!-- jd-descr (summary) -->
506
507<!-- Details -->
508
509<?cs def:write_field_details(fields) ?>
510<?cs each:field=fields ?>
511<?cs # this next line must be exactly like this to be parsed by eclipse ?>
512<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
513<A NAME="<?cs var:field.anchor ?>"></A>
514<?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
515<div class="jd-details api apilevel-<?cs var:field.since ?>">
516 <h4 class="jd-details-title">
517 <span class="normal">
518 <?cs var:field.scope ?>
519 <?cs var:field.static ?>
520 <?cs var:field.final ?>
521 <?cs call:type_link(field.type) ?>
522 </span>
523 <?cs var:field.name ?>
524 </h4>
525 <div class="api-level">
526 <?cs call:since_tags(field) ?>
527 <?cs call:federated_refs(field) ?>
528 </div>
529 <div class="jd-details-descr">
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700530 <?cs call:show_annotations_list(field) ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800531 <?cs call:description(field) ?>
532 <?cs if:subcount(field.constantValue) ?>
533 <div class="jd-tagdata">
534 <span class="jd-tagtitle">Constant Value: </span>
535 <span>
536 <?cs if:field.constantValue.isString ?>
537 <?cs var:field.constantValue.str ?>
538 <?cs else ?>
539 <?cs var:field.constantValue.dec ?>
540 (<?cs var:field.constantValue.hex ?>)
541 <?cs /if ?>
542 </span>
543 </div>
544 <?cs /if ?>
545 </div>
546</div>
547<?cs /each ?>
548<?cs /def ?>
549
550<?cs def:write_method_details(methods) ?>
551<?cs each:method=methods ?>
552<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
553<A NAME="<?cs var:method.anchor ?>"></A>
554<?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
555<div class="jd-details api apilevel-<?cs var:method.since ?>">
556 <h4 class="jd-details-title">
557 <span class="normal">
558 <?cs var:method.scope ?>
559 <?cs var:method.static ?>
560 <?cs var:method.final ?>
561 <?cs var:method.abstract ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800562 <?cs call:type_link(method.returnType) ?>
563 </span>
564 <span class="sympad"><?cs var:method.name ?></span>
565 <span class="normal">(<?cs call:parameter_list(method.params) ?>)</span>
566 </h4>
567 <div class="api-level">
568 <div><?cs call:since_tags(method) ?></div>
569 <?cs call:federated_refs(method) ?>
570 </div>
571 <div class="jd-details-descr">
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700572 <?cs call:show_annotations_list(method) ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800573 <?cs call:description(method) ?>
574 </div>
575</div>
576<?cs /each ?>
577<?cs /def ?>
578
579<?cs def:write_attr_details(attrs) ?>
580<?cs each:attr=attrs ?>
581<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
582<A NAME="<?cs var:attr.anchor ?>"></A>
583<div class="jd-details">
584 <h4 class="jd-details-title"><?cs var:attr.name ?>
585 </h4>
586 <div class="jd-details-descr">
Dirk Doughertyff233cc2015-05-04 14:37:05 -0700587 <?cs call:show_annotations_list(attr) ?>
Dirk Dougherty541b4942014-02-14 18:31:53 -0800588 <?cs call:description(attr) ?>
589
590 <div class="jd-tagdata">
591 <h5 class="jd-tagtitle">Related Methods</h5>
592 <ul class="nolist">
593 <?cs each:m=attr.methods ?>
594 <li><a href="<?cs var:toroot ?><?cs var:m.href ?>"><?cs var:m.name ?></a></li>
595 <?cs /each ?>
596 </ul>
597 </div>
598 </div>
599</div>
600<?cs /each ?>
601<?cs /def ?>
602
603
604<!-- XML Attributes -->
605<?cs if:subcount(class.attrs) ?>
606<?cs # this next line must be exactly like this to be parsed by eclipse ?>
607<!-- ========= FIELD DETAIL ======== -->
608<h2>XML Attributes</h2>
609<?cs call:write_attr_details(class.attrs) ?>
610<?cs /if ?>
611
612<!-- Enum Values -->
613<?cs if:subcount(class.enumConstants) ?>
614<?cs # this next line must be exactly like this to be parsed by eclipse ?>
615<!-- ========= ENUM CONSTANTS DETAIL ======== -->
616<h2>Enum Values</h2>
617<?cs call:write_field_details(class.enumConstants) ?>
618<?cs /if ?>
619
620<!-- Constants -->
621<?cs if:subcount(class.constants) ?>
622<?cs # this next line must be exactly like this to be parsed by eclipse ?>
623<!-- ========= ENUM CONSTANTS DETAIL ======== -->
624<h2>Constants</h2>
625<?cs call:write_field_details(class.constants) ?>
626<?cs /if ?>
627
628<!-- Fields -->
629<?cs if:subcount(class.fields) ?>
630<?cs # this next line must be exactly like this to be parsed by eclipse ?>
631<!-- ========= FIELD DETAIL ======== -->
632<h2>Fields</h2>
633<?cs call:write_field_details(class.fields) ?>
634<?cs /if ?>
635
636<!-- Public ctors -->
637<?cs if:subcount(class.ctors.public) ?>
638<?cs # this next line must be exactly like this to be parsed by eclipse ?>
639<!-- ========= CONSTRUCTOR DETAIL ======== -->
640<h2>Public Constructors</h2>
641<?cs call:write_method_details(class.ctors.public) ?>
642<?cs /if ?>
643
644<?cs # this next line must be exactly like this to be parsed by eclipse ?>
645<!-- ========= CONSTRUCTOR DETAIL ======== -->
646<!-- Protected ctors -->
647<?cs if:subcount(class.ctors.protected) ?>
648<h2>Protected Constructors</h2>
649<?cs call:write_method_details(class.ctors.protected) ?>
650<?cs /if ?>
651
652<?cs # this next line must be exactly like this to be parsed by eclipse ?>
653<!-- ========= METHOD DETAIL ======== -->
654<!-- Public methdos -->
655<?cs if:subcount(class.methods.public) ?>
656<h2>Public Methods</h2>
657<?cs call:write_method_details(class.methods.public) ?>
658<?cs /if ?>
659
660<?cs # this next line must be exactly like this to be parsed by eclipse ?>
661<!-- ========= METHOD DETAIL ======== -->
662<?cs if:subcount(class.methods.protected) ?>
663<h2>Protected Methods</h2>
664<?cs call:write_method_details(class.methods.protected) ?>
665<?cs /if ?>
666
667<?cs # the next two lines must be exactly like this to be parsed by eclipse ?>
668<!-- ========= END OF CLASS DATA ========= -->
669<A NAME="navbar_top"></A>
670
671<?cs include:"footer.cs" ?>
672</div> <!-- jd-content -->
673
674</div><!-- end doc-content -->
675
676<?cs include:"trailer.cs" ?>
677
678</body>
679</html>