sproutcore 0.9.13 → 0.9.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (203) hide show
  1. data/History.txt +19 -0
  2. data/Manifest.txt +103 -26
  3. data/app_generators/sproutcore/templates/README +1 -1
  4. data/bin/sc-build +1 -1
  5. data/bin/sc-gen +0 -0
  6. data/bin/sc-ide +278 -0
  7. data/bin/sc-init +38 -0
  8. data/bin/sc-install +96 -0
  9. data/bin/sc-remove +94 -0
  10. data/bin/sc-server +4 -0
  11. data/bin/sc-update +94 -0
  12. data/bin/sproutcore +3 -14
  13. data/clients/sc_docs/controllers/docs.js +1 -1
  14. data/clients/sc_docs/models/doc.js +6 -0
  15. data/clients/sc_docs/views/doc_frame.js +1 -1
  16. data/clients/sc_test_runner/english.lproj/icons/small/next.png +0 -0
  17. data/clients/sc_test_runner/english.lproj/icons/small/reset.png +0 -0
  18. data/frameworks/sproutcore/HISTORY +34 -2
  19. data/frameworks/sproutcore/controllers/array.js +1 -1
  20. data/frameworks/sproutcore/controllers/controller.js +1 -1
  21. data/frameworks/sproutcore/controllers/object.js +9 -6
  22. data/frameworks/sproutcore/core.js +19 -4
  23. data/frameworks/sproutcore/english.lproj/blank.gif +0 -0
  24. data/frameworks/sproutcore/english.lproj/core.css +1 -0
  25. data/frameworks/sproutcore/english.lproj/menu.css +1 -0
  26. data/frameworks/sproutcore/foundation/application.js +3 -3
  27. data/frameworks/sproutcore/foundation/benchmark.js +1 -1
  28. data/frameworks/sproutcore/foundation/node_descriptor.js +13 -1
  29. data/frameworks/sproutcore/foundation/page.js +3 -2
  30. data/frameworks/sproutcore/foundation/path_module.js +33 -16
  31. data/frameworks/sproutcore/foundation/run_loop.js +1 -1
  32. data/frameworks/sproutcore/foundation/server.js +68 -18
  33. data/frameworks/sproutcore/foundation/string.js +1 -1
  34. data/frameworks/sproutcore/globals/window.js +62 -15
  35. data/frameworks/sproutcore/lib/core_views.rb +1 -0
  36. data/frameworks/sproutcore/lib/index.rhtml +4 -3
  37. data/frameworks/sproutcore/lib/menu_views.rb +2 -2
  38. data/frameworks/sproutcore/models/collection.js +122 -107
  39. data/frameworks/sproutcore/models/record.js +2 -2
  40. data/frameworks/sproutcore/panes/manager.js +1 -1
  41. data/frameworks/sproutcore/panes/overlay.js +3 -3
  42. data/frameworks/sproutcore/tests/controllers/object.rhtml +26 -0
  43. data/frameworks/sproutcore/tests/views/collection/incremental_rendering.rhtml +2 -2
  44. data/frameworks/sproutcore/views/button/disclosure.js +1 -1
  45. data/frameworks/sproutcore/views/collection/collection.js +19 -15
  46. data/frameworks/sproutcore/views/collection/source_list.js +1 -1
  47. data/frameworks/sproutcore/views/collection/table.js +2 -2
  48. data/frameworks/sproutcore/views/error_explanation.js +1 -1
  49. data/frameworks/sproutcore/views/field/checkbox_field.js +1 -1
  50. data/frameworks/sproutcore/views/field/field.js +1 -1
  51. data/frameworks/sproutcore/views/field/radio_field.js +1 -1
  52. data/frameworks/sproutcore/views/field/select_field.js +1 -1
  53. data/frameworks/sproutcore/views/form.js +1 -1
  54. data/frameworks/sproutcore/views/image.js +1 -1
  55. data/frameworks/sproutcore/views/menu_item.js +1 -1
  56. data/frameworks/sproutcore/views/popup_button.js +1 -1
  57. data/frameworks/sproutcore/views/popup_menu.js +1 -1
  58. data/frameworks/sproutcore/views/progress.js +4 -2
  59. data/frameworks/sproutcore/views/radio_group.js +1 -1
  60. data/frameworks/sproutcore/views/scroll.js +1 -1
  61. data/frameworks/sproutcore/views/source_list_group.js +1 -1
  62. data/frameworks/sproutcore/views/split.js +1 -1
  63. data/frameworks/sproutcore/views/tab.js +3 -1
  64. data/frameworks/sproutcore/views/view.js +19 -3
  65. data/jsdoc/README.txt +89 -57
  66. data/jsdoc/app/frame/Chain.js +102 -0
  67. data/jsdoc/app/frame/Dumper.js +144 -0
  68. data/jsdoc/app/frame/Hash.js +47 -0
  69. data/jsdoc/app/frame/Link.js +142 -0
  70. data/jsdoc/app/frame/Namespace.js +10 -0
  71. data/jsdoc/app/frame/Opt.js +134 -0
  72. data/jsdoc/app/frame/Reflection.js +26 -0
  73. data/jsdoc/app/frame/String.js +93 -0
  74. data/jsdoc/app/frame/Testrun.js +129 -0
  75. data/jsdoc/app/frame.js +33 -0
  76. data/jsdoc/app/handlers/FOODOC.js +26 -0
  77. data/jsdoc/app/handlers/XMLDOC/DomReader.js +159 -0
  78. data/jsdoc/app/handlers/XMLDOC/XMLDoc.js +16 -0
  79. data/jsdoc/app/handlers/XMLDOC/XMLParse.js +292 -0
  80. data/jsdoc/app/handlers/XMLDOC.js +26 -0
  81. data/jsdoc/app/lib/JSDOC/DocComment.js +200 -0
  82. data/jsdoc/app/lib/JSDOC/DocTag.js +294 -0
  83. data/jsdoc/app/lib/JSDOC/JsDoc.js +180 -0
  84. data/jsdoc/app/lib/JSDOC/JsPlate.js +100 -0
  85. data/jsdoc/app/lib/JSDOC/Lang.js +144 -0
  86. data/jsdoc/app/lib/JSDOC/Parser.js +109 -0
  87. data/jsdoc/app/lib/JSDOC/PluginManager.js +33 -0
  88. data/jsdoc/app/lib/JSDOC/Symbol.js +600 -0
  89. data/jsdoc/app/lib/JSDOC/SymbolSet.js +220 -0
  90. data/jsdoc/app/lib/JSDOC/TextStream.js +41 -0
  91. data/jsdoc/app/lib/JSDOC/Token.js +18 -0
  92. data/jsdoc/app/lib/JSDOC/TokenReader.js +323 -0
  93. data/jsdoc/app/lib/JSDOC/TokenStream.js +133 -0
  94. data/jsdoc/app/lib/JSDOC/Util.js +32 -0
  95. data/jsdoc/app/lib/JSDOC/Walker.js +416 -0
  96. data/jsdoc/app/lib/JSDOC.js +97 -0
  97. data/jsdoc/app/main.js +74 -0
  98. data/jsdoc/app/plugins/commentSrcJson.js +19 -0
  99. data/jsdoc/app/plugins/frameworkPrototype.js +16 -0
  100. data/jsdoc/app/plugins/functionCall.js +10 -0
  101. data/jsdoc/app/plugins/publishSrcHilite.js +62 -0
  102. data/jsdoc/app/plugins/sproutcoreTags.js +26 -0
  103. data/jsdoc/app/plugins/symbolLink.js +9 -0
  104. data/jsdoc/app/plugins/tagParamConfig.js +31 -0
  105. data/jsdoc/app/plugins/tagSynonyms.js +43 -0
  106. data/jsdoc/app/run.js +339 -137
  107. data/jsdoc/changes.txt +47 -0
  108. data/jsdoc/conf/sample.conf +31 -0
  109. data/jsdoc/java/build.xml +36 -0
  110. data/jsdoc/java/build_1.4.xml +36 -0
  111. data/jsdoc/java/classes/js.jar +0 -0
  112. data/jsdoc/java/src/JsDebugRun.java +21 -0
  113. data/jsdoc/java/src/JsRun.java +21 -0
  114. data/jsdoc/jsdebug.jar +0 -0
  115. data/jsdoc/jsrun.jar +0 -0
  116. data/jsdoc/t/TestDoc.js +144 -0
  117. data/jsdoc/t/runner.js +13 -0
  118. data/jsdoc/templates/sproutcore/allclasses.tmpl +17 -0
  119. data/jsdoc/templates/sproutcore/allfiles.tmpl +56 -0
  120. data/jsdoc/templates/sproutcore/class.tmpl +408 -326
  121. data/jsdoc/templates/sproutcore/index.tmpl +30 -31
  122. data/jsdoc/templates/sproutcore/publish.js +173 -81
  123. data/jsdoc/templates/sproutcore/static/default.css +191 -0
  124. data/jsdoc/templates/sproutcore/static/header.html +2 -0
  125. data/jsdoc/templates/sproutcore/static/index.html +19 -0
  126. data/jsdoc/templates/sproutcore/symbol.tmpl +35 -0
  127. data/jsdoc/test/addon.js +24 -0
  128. data/jsdoc/test/anon_inner.js +14 -0
  129. data/jsdoc/test/augments.js +31 -0
  130. data/jsdoc/test/augments2.js +26 -0
  131. data/jsdoc/test/borrows.js +41 -0
  132. data/jsdoc/test/borrows2.js +23 -0
  133. data/jsdoc/test/config.js +22 -0
  134. data/jsdoc/test/constructs.js +18 -0
  135. data/jsdoc/test/encoding.js +10 -0
  136. data/jsdoc/test/encoding_other.js +12 -0
  137. data/jsdoc/test/functions_anon.js +39 -0
  138. data/jsdoc/test/functions_nested.js +33 -0
  139. data/jsdoc/test/global.js +13 -0
  140. data/jsdoc/test/globals.js +25 -0
  141. data/jsdoc/test/ignore.js +10 -0
  142. data/jsdoc/test/inner.js +16 -0
  143. data/jsdoc/test/jsdoc_test.js +477 -0
  144. data/jsdoc/test/lend.js +33 -0
  145. data/jsdoc/test/memberof.js +20 -0
  146. data/jsdoc/test/memberof_constructor.js +15 -0
  147. data/jsdoc/test/name.js +19 -0
  148. data/jsdoc/test/namespace_nested.js +23 -0
  149. data/jsdoc/test/nocode.js +13 -0
  150. data/jsdoc/test/oblit_anon.js +20 -0
  151. data/jsdoc/test/overview.js +20 -0
  152. data/jsdoc/test/param_inline.js +37 -0
  153. data/jsdoc/test/params_optional.js +8 -0
  154. data/jsdoc/test/prototype.js +17 -0
  155. data/jsdoc/test/prototype_nested.js +9 -0
  156. data/jsdoc/test/prototype_oblit.js +13 -0
  157. data/jsdoc/test/prototype_oblit_constructor.js +24 -0
  158. data/jsdoc/test/public.js +10 -0
  159. data/jsdoc/test/shared.js +42 -0
  160. data/jsdoc/test/shared2.js +2 -0
  161. data/jsdoc/test/shortcuts.js +22 -0
  162. data/jsdoc/test/static_this.js +13 -0
  163. data/jsdoc/test/synonyms.js +23 -0
  164. data/jsdoc/test/tosource.js +23 -0
  165. data/jsdoc/test/variable_redefine.js +14 -0
  166. data/jsdoc/test.js +304 -0
  167. data/lib/sproutcore/build_tools/resource_builder.rb +6 -1
  168. data/lib/sproutcore/bundle_installer.rb +268 -0
  169. data/lib/sproutcore/jsdoc.rb +7 -6
  170. data/lib/sproutcore/library.rb +38 -0
  171. data/lib/sproutcore/merb/bundle_controller.rb +8 -4
  172. data/lib/sproutcore/version.rb +1 -1
  173. data/lib/sproutcore.rb +1 -1
  174. data/script/destroy +0 -0
  175. data/script/generate +0 -0
  176. data/script/txt2html +0 -0
  177. metadata +117 -29
  178. data/clients/view_builder/core.js +0 -19
  179. data/clients/view_builder/english.lproj/body.css +0 -149
  180. data/clients/view_builder/english.lproj/body.rhtml +0 -18
  181. data/clients/view_builder/english.lproj/strings.js +0 -14
  182. data/clients/view_builder/main.js +0 -37
  183. data/jsdoc/app/DocFile.js +0 -137
  184. data/jsdoc/app/DocTag.js +0 -110
  185. data/jsdoc/app/Doclet.js +0 -63
  186. data/jsdoc/app/Dumper.js +0 -143
  187. data/jsdoc/app/JsDoc.js +0 -103
  188. data/jsdoc/app/JsHilite.js +0 -45
  189. data/jsdoc/app/JsIO.js +0 -163
  190. data/jsdoc/app/JsParse.js +0 -385
  191. data/jsdoc/app/JsPlate.js +0 -130
  192. data/jsdoc/app/JsTestrun.js +0 -129
  193. data/jsdoc/app/JsToke.js +0 -564
  194. data/jsdoc/app/Symbol.js +0 -298
  195. data/jsdoc/app/Transformer.js +0 -14
  196. data/jsdoc/app/Util.js +0 -97
  197. data/jsdoc/app/js.jar +0 -0
  198. data/jsdoc/plugins/min.js +0 -316
  199. data/jsdoc/plugins/strip.js +0 -20
  200. data/jsdoc/templates/sproutcore/default.css +0 -191
  201. data/jsdoc/templates/sproutcore/index.html +0 -13
  202. data/jsdoc/templates/sproutcore/prototype.js +0 -4186
  203. data/jsdoc/templates/sproutcore/splash.html +0 -7
@@ -1,341 +1,423 @@
1
1
  {!
2
- function byName(a, b) {
3
- if (a.name != undefined && b.name != undefined) {
4
- a = a.name.toLowerCase();
5
- b = b.name.toLowerCase();
6
- if (a < b) return -1;
7
- if (a > b) return 1;
8
- return 0;
9
- }
10
- }
11
-
12
- function summarize(desc) {
13
- if (typeof desc != "undefined")
14
- return desc.match(/([\w\W]+?\.)[^a-z0-9]/i)? RegExp.$1 : desc;
15
- };
16
-
17
- thisClass = data[0];
18
- if (thisClass.methods) thisClass.methods.sort(byName);
19
- if (thisClass.properties) thisClass.properties.sort(byName);
20
- if (thisClass.events) thisClass.events.sort(byName);
21
-
22
- function htmlize(desc, stripSummary) {
23
- if (stripSummary === undefined) stripSummary = true ;
24
- if (stripSummary) {
25
- var summary = summarize(desc) ;
26
- desc = (summary && summary.length > 0) ? desc.slice(summary.length, desc.length) : desc ;
27
- }
28
-
29
- return superTextile(desc) ;
30
- } ;
31
-
32
- rowClass = 'even';
33
- function resetRowClass() { rowClass = 'even'; };
34
-
35
- function nextRowClass() {
36
- var ret = rowClass ;
37
- rowClass = (rowClass == 'even') ? 'odd' : 'even' ;
38
- return ret ;
39
- } ;
40
-
41
- function hasUsefulParams(params) {
42
- if (!params || !params.length) return false ;
43
- var idx = params.length;
44
- while(--idx >= 0) {
45
- var param = params[idx] ;
46
- if (isUsefulParam(param)) return true ;
47
- }
48
- return false ;
49
- };
50
-
51
- function isUsefulParam(param) {
52
- if (!param) return false ;
53
- if (param.type && param.type.length > 0) return true ;
54
- if (param.desc && param.desc.length > 0) return true ;
55
- return false ;
56
- } ;
57
-
58
- var seen = [] ;
59
- function convertToString(data) {
60
- try {
61
- if (seen.indexOf(data) >= 0) return 'SEEN' ;
62
- seen.push(data) ;
63
- var ret = data ;
64
- if (data === null) return 'null' ;
65
- if (data === undefined) return 'undefined';
66
- if (data instanceof Array) {
67
- ret = [] ;
68
- for(var idx=0;idx<data.length;idx++) {
69
- ret.push(convertToString(data[idx])) ;
70
- }
71
- ret = '[' + ret.join(', ') + ']';
72
- } else if (data instanceof Object) {
73
- ret = [] ;
74
- for(var key in data) {
75
- if (!data.hasOwnProperty(key)) continue ;
76
- ret.push(key + ': ' + convertToString(data[key])) ;
77
- }
78
- ret = '{ ' + ret.join(",\n") + ' }' ;
79
- } else if (data.toString) ret = data.toString() ;
80
- }
81
-
82
- catch(e) { ret = 'EXCEPTION'; }
83
- return ret ;
84
- };
2
+ rowClass = 'even';
3
+ function resetRowClass() { rowClass = 'even'; };
4
+
5
+ function nextRowClass() {
6
+ var ret = rowClass ;
7
+ rowClass = (rowClass == 'even') ? 'odd' : 'even' ;
8
+ return ret ;
9
+ } ;
10
+
11
+ function summarize(desc) {
12
+ if (typeof desc != "undefined")
13
+ return desc.match(/([\w\W]+?\.)[^a-z0-9]/i)? RegExp.$1 : desc;
14
+ };
15
+
16
+ function htmlize(desc, stripSummary) {
17
+ if (stripSummary === undefined) stripSummary = true;
18
+ if (stripSummary) {
19
+ var summary = summarize(desc);
20
+ desc = (summary && summary.length > 0) ? desc.slice(summary.length, desc.length) : desc ;
21
+ }
22
+
23
+ return superTextile(desc);
24
+ };
25
+
26
+ function constantText(p) {
27
+ return '<code><span class="type">' + (p.type||"Object") + '</span>' + ' <span class="name">' + p.name + '</span></code>' ;
28
+ };
29
+
30
+ function propertyText(p) {
31
+ var ret = '';
32
+
33
+ ret += (p.isStatic || !p.memberOf) ? '+' : '-' ;
34
+ ret += '&nbsp;(';
35
+ ret += (p.isPrivate) ? 'private&nbsp;' : '';
36
+ ret += p.type || 'Object' ;
37
+ ret += ') ' + p.name ;
38
+
39
+ return '<code>' + ret + '</code>' ;
40
+ };
41
+
42
+ function isUsefulParam(param) {
43
+ if (!param) return false ;
44
+ if (param.type && param.type.length > 0) return true ;
45
+ if (param.desc && param.desc.length > 0) return true ;
46
+ return false ;
47
+ } ;
48
+
49
+ function hasUsefulParams(params) {
50
+ if (!params || !params.length) return false ;
51
+ var idx = params.length;
52
+ while(--idx >= 0) {
53
+ var param = params[idx] ;
54
+ if (isUsefulParam(param)) return true ;
55
+ }
56
+ return false ;
57
+ };
58
+
59
+ function relativeSrcPath(path) {
60
+ var parts = path.split('/') ;
61
+
62
+ var rootIndex = parts.indexOf('frameworks') ;
63
+ if (rootIndex < 0) rootIndex = parts.indexOf('clients') ;
64
+
65
+ if (rootIndex < 0) {
66
+ return parts[parts.length - 2] ;
67
+
68
+ } else {
69
+ return parts.slice(rootIndex, parts.length).join('/') ;
70
+ }
71
+ };
85
72
 
86
73
  !}
74
+
87
75
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
88
76
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
89
77
  <html>
90
78
  <head>
91
- <meta http-equiv="content-type" content="text/html; charset={+(JsDoc.opt.e||'utf-8')+}">
92
- <title>JsDoc: {+thisClass.alias+}</title>
93
- <link rel=stylesheet href="default.css" type="text/css" media=screen>
79
+ <meta http-equiv="content-type" content="text/html; charset={+IO.encoding+}" />
80
+ <meta name="generator" content="JsDoc Toolkit" />
81
+ {! Link.base = "../"; /* all generated links will be relative to this */ !}
82
+ <title>JsDoc: {+data.alias+}</title>
94
83
  </head>
95
84
 
96
- <body class="sc-theme sc-doc">
85
+ <style type="text/css">
86
+ {+include("static/default.css")+}
87
+ </style>
97
88
 
98
- <h1>
99
- {+thisClass.alias+} <if test="thisClass.isStatic">Module</if><if test="!thisClass.isStatic">Class</if> Reference
100
- </h1>
101
-
102
- <table class="summary">
103
- {! resetRowClass(); !}
104
-
105
- <if test="thisClass.deprecated">
106
- <tr class="{+ nextRowClass() +}">
107
- <td class="label">Deprecated:</td>
108
- <td class="value">
109
- {+htmlize(thisClass.deprecated.desc)+}
110
- </td>
111
- </tr>
112
- </if>
113
-
114
- <if test="thisClass.augments && thisClass.augments.length">
115
- <tr class="{+ nextRowClass() +}">
116
- <td class="label">Extends:</td>
117
- <td class="value">
118
- <for each="augment" in="thisClass.augments"><a href="{+augment+}.html">{+augment+}</a><if test="augment != thisClass.augments[thisClass.augments.length-1]"> : </if></for>
119
- </td>
120
- </tr>
121
- </if>
122
-
123
- <if test="thisClass.source">
124
- <tr class="{+ nextRowClass() +}">
125
- <td class="label">Defined in:</td>
126
- <td class="value">{+thisClass.filename+}</td>
127
- </tr>
128
- </if>
129
-
130
- <if test="thisClass.since">
131
- <tr class="{+ nextRowClass() +}">
132
- <td class="label">Availability:</td>
133
- <td class="value">
134
- since {+thisClass.since+}
135
- </td>
136
- </tr>
137
- </if>
138
-
139
- <if test="thisClass.doc">
140
- <for each="version" in="thisClass.doc.getTag('version')">
141
- <tr class="{+ nextRowClass() +}">
142
- <td class="label">Version:</td>
143
- <td class="value">{+version+}</td>
144
- </tr>
145
- </for>
146
- </if>
147
-
148
- </table>
149
-
150
- <if test="thisClass.classDesc">
151
- <div class="description">
152
- {+htmlize(thisClass.classDesc, false)+}
153
- </div>
154
- </if>
155
-
156
- <!-- =========== FIELD SUMMARY =========== -->
157
- <if test="thisClass.properties.length">
158
- <div class="field-summary summary">
159
-
160
- <h2>Field Summary</h2>
161
- <ul>
162
- <for each="property" in="thisClass.properties">
163
- <li>
164
- <a href="#{+property.name+}"><code class="type"><if test="property.isStatic||!property.memberof">+</if><if test="!(property.isStatic||!property.memberof)">-</if>&nbsp;(<if test="property.isPrivate">private&nbsp;</if>{+(property.type||"object")+}) {+property.name+}</code></a>
165
- <div class="description">{+summarize(property.desc)+}</div>
166
- </li>
167
- </for>
168
- </ul>
169
-
170
- </div>
171
- </if>
172
- <!-- =========== END FIELD SUMMARY =========== -->
173
-
174
- <!-- ========== METHOD SUMMARY =========== -->
175
- <if test="thisClass.methods.length || thisClass.inherited">
176
- <h2>Method Summary</h2>
177
- </if>
178
-
179
- <if test="thisClass.methods.length">
180
- <div class="method-summary summary">
181
- <ul>
182
- <for each="method" in="thisClass.methods">
183
- <li>
184
- <a href="#{+method.name+}"><code class="type"><if test="method.isStatic||!method.memberof">+</if><if test="!(method.isStatic||!method.memberof)">-</if>&nbsp;<if test="method.isPrivate">private&nbsp;</if><if test="method.returns.length"><for each="ret" in="method.returns">&nbsp;{+ret.type+}</for></if> {+method.name+}({+method.signature()+})</code></a>
185
- <div class="description">{+summarize(method.desc)+}</div>
186
- </li>
187
- </for>
188
- </ul>
189
-
190
- </div>
191
- </if>
192
-
193
- <!-- ========== INHERITED METHODS SUMMARY =========== -->
194
- <if test="thisClass.inherited">
195
- {! inheritedCnt = 0; !}
196
- <div class="method-summary summary">
197
- <for each="className" in="keys(thisClass.inherited)">
198
-
199
- {! inheritedCnt++; !}
200
- <h4>Inherited from <a href="{+className+}.html">{+className+}</a>
201
- <span id='show-link-{+inheritedCnt+}'>(<a href="javascript:;" onclick="$$('ul.inherited-{+inheritedCnt+}').invoke('show'); $('hide-link-{+inheritedCnt+}').show(); $('show-link-{+inheritedCnt+}').hide();">show</a>)</span>
202
- <span id="hide-link-{+inheritedCnt+}" style="display:none;">(<a href="javascript:;" onclick="$$('ul.inherited-{+inheritedCnt+}').invoke('hide'); $('hide-link-{+inheritedCnt+}').hide(); $('show-link-{+inheritedCnt+}').show();">hide</a>)</span></h4>
203
- <ul class="inherited-{+inheritedCnt+}" style="display:none;">
204
- <for each="method" in="thisClass.inherited[className]">
205
- <li>
206
- <a href="{+(method.memberof || method.name)+}.html#{+method.name+}"><code class="type"><if test="method.isStatic||!method.memberof">+</if><if test="!(method.isStatic||!method.memberof)">-</if>&nbsp;<if test="method.isPrivate">private&nbsp;</if><if test="method.returns.length"><for each="ret" in="method.returns">&nbsp;{+ret.type+}</for></if> {+method.name+}({+method.signature()+})</code></a>
207
- <div class="description">{+summarize(method.desc)+}</div>
208
- </li>
209
- </for>
210
- </ul>
211
-
212
- </for>
213
- </div>
214
- </if>
215
-
216
- <!-- ========== END INHERITED METHODS SUMMARY =========== -->
217
-
218
- <!-- ============ FIELD DETAIL START ========= -->
219
- <if test="thisClass.properties.length">
220
- <div class="field-detail detail">
221
- <a name="field_detail"> </a>
222
- <h2>Field Details</h2>
223
-
224
- <for each="property" in="thisClass.properties">
225
-
226
- <!-- One single method detail entry -->
227
- <div class="field">
228
- <a name="{+property.name+}"></a>
229
- <h3>{+property.name+}</h3>
230
- <p class="summary">{+summarize(property.desc)+}</p>
231
-
232
- <if test="property.deprecated">
233
- <p class="deprecated">Deprecated {+property.deprecated.desc+}</p>
234
- </if>
235
-
236
- <p class="signature"><if test="property.isStatic||!property.memberof">+</if><if test="!(property.isStatic||!property.memberof)">-</if>&nbsp;<span class="type"><if test="property.isPrivate">private&nbsp;</if>{+(property.type||"object")+}</span> <span class="name">{+property.name+}</span></p>
237
-
238
- <h5>Discussion</h5>
239
- <div class="description">
240
- {+htmlize(property.desc)+}
241
- </div>
242
-
243
- <if test="property.doc.getTag('since') && property.doc.getTag('since').length > 0">
244
- <h5>Availability</h5>
245
- <for each="since" in="property.doc.getTag('since')">
246
- <div class="since">Since {+since+}</div>
247
- </for>
248
- </if>
249
-
250
- </div>
251
- </for>
252
-
253
- </div>
254
- </if>
255
- <!-- ============ FIELD DETAIL END ========== -->
256
-
257
- <!-- ============ METHOD DETAIL START ======= -->
258
-
259
- <if test="thisClass.methods.length">
260
- <div class="method-detail detail">
261
- <a name="method_detail"> </a>
262
- <h2>Method Details</h2>
263
-
264
- <for each="method" in="thisClass.methods">
265
-
266
- <!-- One single method detail entry -->
267
- <div class="method">
268
- <a name="{+method.name+}"></a>
269
- <h3>{+method.name+}()</h3>
270
- <p class="summary">{+summarize(method.desc)+}</p>
271
-
272
- <if test="method.deprecated">
273
- <p class="deprecated">Deprecated {+method.deprecated.desc+}</p>
274
- </if>
275
-
276
- <p class="signature"><if test="method.isStatic||!method.memberof">+</if><if test="!(method.isStatic||!method.memberof)">-</if>&nbsp;<span class="type"><if test="method.isPrivate">private&nbsp;</if><if test="method.returns.length"><for each="ret" in="method.returns">{+ret.type+}&nbsp;</for></if></span> <span class="name">{+method.name+}</span><span class="params">({+method.signature()+})</span></p>
277
-
278
- <!-- METHOD PARAMETERS START -->
279
- <if test="hasUsefulParams(method.params)">
280
- <h5>Parameters</h5>
281
- <for each="param" in="method.params">
282
- <if test="isUsefulParam(param)">
283
- <dt><if test="param.type"><span class="type">{+param.type+}</span>&nbsp;</if><span class="name">{+param.name+} </span></dt>
284
- <if test="param.desc">
285
- <dd>{+param.desc+}</dd>
89
+ <body class="sc-theme sc-doc">
90
+ <h1>
91
+ {!
92
+ var classType = "";
93
+
94
+ if (data.isBuiltin()) {
95
+ classType += "Built-In ";
96
+ }
97
+
98
+ if (data.isNamespace) {
99
+ if (data.is('FUNCTION')) {
100
+ classType += "Function ";
101
+ }
102
+ classType += "Namespace ";
103
+ }
104
+ else {
105
+ classType += "Class ";
106
+ }
107
+ !}
108
+ {+classType+}{+data.alias+}
109
+ </h1>
110
+
111
+ <table class="summary">
112
+ {! resetRowClass(); !}
113
+
114
+ <if test="data.deprecated">
115
+ <tr class="{+ nextRowClass() +}">
116
+ <td class="label">Deprecated:</td>
117
+ <td class="value">
118
+ {+htmlize(thisClass.deprecated.desc)+}
119
+ </td>
120
+ </tr>
121
+ </if>
122
+
123
+ <if test="data.augments.length">
124
+ <tr class="{+ nextRowClass() +}">
125
+ <td class="label">Extends:</td>
126
+ <td class="value">
127
+ {+
128
+ data.augments
129
+ .sort()
130
+ .map(
131
+ function($) { return new Link().toSymbol($); }
132
+ )
133
+ .join(", ")
134
+ +}
135
+ </td>
136
+ </tr>
137
+ </if>
138
+
139
+ <if test="!data.isBuiltin()">
140
+ <tr class="{+ nextRowClass() +}">
141
+ <td class="label">Defined in:</td>
142
+ <td class="value">{+new Link().toSrc(data.srcFile).withText(relativeSrcPath(data.srcFile))+}</td>
143
+ </tr>
144
+ </if>
145
+
146
+ <if test="data.since">
147
+ <tr class="{+ nextRowClass() +}">
148
+ <td class="label">Availability:</td>
149
+ <td class="value">
150
+ since {+data.since+}
151
+ </td>
152
+ </tr>
153
+ </if>
154
+
155
+ <if test="data.version">
156
+ <tr class="{+ nextRowClass() +}">
157
+ <td class="label">Version:</td>
158
+ <td class="value">{+data.version+}</td>
159
+ </tr>
160
+ </if>
161
+ </table>
162
+
163
+ <if test="data.classDesc">
164
+ <div class="description">
165
+ {+htmlize(data.classDesc, false)+}
166
+ </div>
167
+ </if>
168
+
169
+ <!-- ============================== properties summary ===================== -->
170
+ <if test="data.properties.length">
171
+ {! var ownProperties = data.properties.filter(function($){return $.memberOf == data.alias && !$.isNamespace}).sort(makeSortby("name")); !}
172
+ {! var ownConstants = ownProperties.filter(function($){return $.isConstant}).sort(makeSortby("name")); !}
173
+ <if test="ownConstants.length">
174
+ <div class="field-summary summary">
175
+ <h2>Constants</h2>
176
+ <ul>
177
+ <for each="member" in="ownConstants">
178
+ <li>
179
+ {+new Link().toSymbol(member.alias).withText(constantText(member))+}
180
+ <if test="member.desc">
181
+ <div class="description">{+summarize(member.desc)+}</div>
182
+ </if>
183
+ </li>
184
+ </for>
185
+ </ul>
186
+ </div>
187
+ </if>
188
+ <if test="ownProperties.length">
189
+ <div class="field-summary summary">
190
+ <h2>Property Summary</h2>
191
+ <ul>
192
+ <for each="member" in="ownProperties">
193
+ <if test="!(member.isConstant)">
194
+ <li>
195
+ {+new Link().toSymbol(member.alias).withText(propertyText(member))+}
196
+ <if test="member.desc">
197
+ <div class="description">{+summarize(member.desc)+}</div>
198
+ </if>
199
+ </li>
200
+ </if>
201
+ </for>
202
+ </ul>
203
+ </div>
204
+ </if>
205
+ </if>
206
+
207
+ <if test="data.inheritsFrom.length">
208
+ <dl class="inheritsList">
209
+ {!
210
+ var borrowedMembers = data.properties.filter(function($) {return $.memberOf != data.alias});
211
+
212
+ var contributers = [];
213
+ borrowedMembers.map(function($) {if (contributers.indexOf($.memberOf) < 0) contributers.push($.memberOf)});
214
+ for (var i = 0, l = contributers.length; i < l; i++) {
215
+ output +=
216
+ "<dt>Properties borrowed from class "+new Link().toSymbol(contributers[i])+": </dt>"
217
+ +
218
+ "<dd>" +
219
+ borrowedMembers
220
+ .filter(
221
+ function($) { return $.memberOf == contributers[i] }
222
+ )
223
+ .sort(makeSortby("name"))
224
+ .map(
225
+ function($) { return new Link().toSymbol($.alias).withText($.name) }
226
+ )
227
+ .join(", ")
228
+ +
229
+ "</dd>";
230
+ }
231
+ !}
232
+ </dl>
233
+ </if>
234
+
235
+ <!-- ============================== methods summary ======================== -->
236
+ <if test="data.methods.length">
237
+ <h2>Method Summary</h2>
238
+ {! var ownMethods = data.methods.filter(function($){return $.memberOf == data.alias && !$.isNamespace}).sort(makeSortby("name")); !}
239
+ <if test="ownMethods.length">
240
+ <div class="method-summary summary">
241
+ <ul>
242
+ <for each="method" in="ownMethods">
243
+ <li>
244
+ <a href="#{+method.alias+}">
245
+ <code class="type">
246
+ <if test="method.isStatic||!method.memberOf">+</if>
247
+ <if test="!(method.isStatic||!method.memberOf)">-</if>
248
+ &nbsp;<if test="method.isPrivate">private&nbsp;</if>
249
+ <if test="method.returns.length">
250
+ <for each="ret" in="method.returns">
251
+ &nbsp;{+ret.type+}
252
+ </for>
253
+ </if>
254
+ {+method.name+}{+makeSignature(method.params)+}
255
+ </code>
256
+ </a>
257
+ <if test="method.desc">
258
+ <div class="description">{+summarize(method.desc)+}</div>
259
+ </if>
260
+ </li>
261
+ </for>
262
+ </ul>
263
+ </div>
264
+ </if>
265
+
266
+ <if test="data.inheritsFrom.length">
267
+ <dl class="inheritsList">
268
+ {!
269
+ var borrowedMembers = data.methods.filter(function($) {return $.memberOf != data.alias});
270
+ var contributers = [];
271
+ borrowedMembers.map(function($) {if (contributers.indexOf($.memberOf) < 0) contributers.push($.memberOf)});
272
+ for (var i = 0, l = contributers.length; i < l; i++) {
273
+ output +=
274
+ "<dt>Methods borrowed from class "+new Link().toSymbol(contributers[i])+": </dt>"
275
+ +
276
+ "<dd>" +
277
+ borrowedMembers
278
+ .filter(
279
+ function($) { return $.memberOf == contributers[i] }
280
+ )
281
+ .sort(makeSortby("name"))
282
+ .map(
283
+ function($) { return new Link().toSymbol($.alias).withText($.name) }
284
+ )
285
+ .join(", ")
286
+ +
287
+ "</dd>";
288
+ }
289
+
290
+ !}
291
+ </dl>
292
+ </if>
293
+ </if>
294
+
295
+ <!-- ============================== field details ========================== -->
296
+ <if test="defined(ownProperties) && ownProperties.length">
297
+ <div class="field-detail detail">
298
+ <a name="field_detail"><h2>Property Details</h2></a>
299
+ <for each="property" in="ownProperties">
300
+ <if test="!(property.isConstant)">
301
+ <!-- One single method detail entry -->
302
+ <div class="field">
303
+ <a name="{+Link.symbolNameToLinkName(property)+}"></a>
304
+ <h3>{+property.name+}</h3>
305
+ <p class="summary">{+summarize(property.desc)+}</p>
306
+
307
+ <if test="property.deprecated">
308
+ <p class="deprecated">Deprecated {+property.deprecated+}</p>
309
+ </if>
310
+
311
+ <p class="signature">
312
+ <if test="property.isStatic||!property.memberOf">+</if>
313
+ <if test="!(property.isStatic||!property.memberOf)">-</if>
314
+ &nbsp;
315
+ <span class="type">
316
+ <if test="property.isPrivate">private&nbsp;</if>
317
+ {+(property.type||"Object")+}
318
+ </span>
319
+ <span class="name">{+property.name+}</span>
320
+ </p>
321
+
322
+ <if test="property.desc">
323
+ <h5>Discussion</h5>
324
+ <div class="description">
325
+ {+htmlize(property.desc)+}
326
+ </div>
327
+ </if>
328
+
329
+ <if test="property.since">
330
+ <h5>Availability</h5>
331
+ <div class="since">since {+property.since+}</div>
332
+ </if>
333
+ </div>
286
334
  </if>
287
- </if>
288
- </for>
289
- </if>
290
- <!-- METHOD PARAMETERS END -->
291
-
292
- <!-- ADDITIONAL ATTRIBUTES START -->
293
- <if test="method.returns.length">
294
- <h5>Return Value</h5>
295
- <for each="ret" in="method.returns">
296
- <p class="return-value">
297
- <if test="ret.type"><span class="type">{+ret.type+}</span>&nbsp;-&nbsp;</if>
298
- <span class="description">{+ret.desc+}</span>
299
- </p>
300
335
  </for>
301
- </if>
302
-
303
- <if test="method.exceptions.length">
304
- <h5>Throws Exceptions</h5>
305
- <for each="ex" in="method.exceptions">
306
- <p class="exception">
307
- <if test="ex.type"><span class="type">{+ex.type+}</span>&nbsp;-&nbsp;</if>
308
- <span class="description">{+ex.desc+}</span>
309
- </p>
310
- </for>
311
- </if>
312
- <!-- ADDITIONAL ATTRIBUTES END -->
313
-
314
- <h5>Discussion</h5>
315
- <div class="description">
316
- {+htmlize(method.desc)+}
317
- </div>
318
-
319
- <if test="method.doc.getTag('since') && method.doc.getTag('since').length > 0">
320
- <h5>Availability</h5>
321
- <for each="since" in="method.doc.getTag('since')">
322
- <div class="since">Since {+since+}</div>
336
+ </div>
337
+ </if>
338
+
339
+ <!-- ============================== method details ========================= -->
340
+ <if test="defined(ownMethods) && ownMethods.length">
341
+ <div class="method-detail detail">
342
+ <a name="method_detail"><h2>Method Details</h2></a>
343
+ <for each="method" in="ownMethods">
344
+ <!-- One single method detail entry -->
345
+ <div class="method">
346
+ <a name="{+method.alias+}"></a>
347
+ <h3>{+method.name+}()</h3>
348
+ <p class="summary">{+summarize(method.desc)+}</p>
349
+
350
+ <if test="method.deprecated">
351
+ <p class="deprecated">Deprecated {+method.deprecated+}</p>
352
+ </if>
353
+
354
+ <p class="signature">
355
+ <if test="method.isStatic||!method.memberOf">+</if>
356
+ <if test="!(method.isStatic||!method.memberOf)">-</if>
357
+ &nbsp;
358
+ <span class="type">
359
+ <if test="method.isPrivate">private&nbsp;</if>
360
+ <if test="method.returns.length">
361
+ <for each="ret" in="method.returns">
362
+ {+ret.type+}&nbsp;
363
+ </for>
364
+ </if>
365
+ </span>
366
+ <span class="name">{+method.name+}</span>
367
+ <span class="params">{+makeSignature(method.params)+}</span>
368
+ </p>
369
+
370
+ <!-- METHOD PARAMETERS START -->
371
+ <if test="hasUsefulParams(method.params)">
372
+ <h5>Parameters</h5>
373
+ <for each="param" in="method.params">
374
+ <if test="isUsefulParam(param)">
375
+ <dt><if test="param.type"><span class="type">{+param.type+}</span>&nbsp;</if><span class="name">{+param.name+} </span></dt>
376
+ <if test="param.desc">
377
+ <dd>{+htmlize(param.desc)+}</dd>
378
+ </if>
379
+ </if>
380
+ </for>
381
+ </if>
382
+ <!-- METHOD PARAMETERS END -->
383
+
384
+ <!-- ADDITIONAL ATTRIBUTES START -->
385
+ <if test="method.returns.length">
386
+ <h5>Return Value</h5>
387
+ <for each="ret" in="method.returns">
388
+ <p class="return-value">
389
+ <if test="ret.type"><span class="type">{+ret.type+}</span>&nbsp;-&nbsp;</if>
390
+ <span class="description">{+htmlize(ret.desc)+}</span>
391
+ </p>
392
+ </for>
393
+ </if>
394
+
395
+ <if test="method.exceptions.length">
396
+ <h5>Throws Exceptions</h5>
397
+ <for each="ex" in="method.exceptions">
398
+ <p class="exception">
399
+ <if test="ex.type"><span class="type">{+ex.type+}</span>&nbsp;-&nbsp;</if>
400
+ <span class="description">{+htmlize(ex.desc)+}</span>
401
+ </p>
402
+ </for>
403
+ </if>
404
+ <!-- ADDITIONAL ATTRIBUTES END -->
405
+
406
+ <h5>Discussion</h5>
407
+ <div class="description">
408
+ {+htmlize(method.desc)+}
409
+ </div>
410
+
411
+ <if test="method.since">
412
+ <h5>Availability</h5>
413
+ <div class="since">since {+method.since+}</div>
414
+ </if>
415
+ </div>
323
416
  </for>
324
- </if>
325
-
326
- </div>
327
-
328
-
329
-
330
- </for>
331
-
332
- </div>
333
- </if>
334
- <!-- ============ METHOD DETAIL END ========== -->
335
-
336
- <div class="jsdoc_ctime">Documentation generated by <a href="http://jsdoctoolkit.org/" target="_parent">JsDoc Toolkit</a> {+JsDoc.VERSION+} on {+new Date()+}</div>
337
-
338
- <script src="prototype.js"></script>
339
-
417
+ </div>
418
+ </if>
419
+
420
+ <!-- ============================== footer ================================= -->
421
+ <div class="jsdoc_ctime">Documentation generated by <a href="http://jsdoctoolkit.org/" target="_parent">JsDoc Toolkit</a> {+JSDOC.VERSION+} on {+new Date()+}</div>
340
422
  </body>
341
423
  </html>