lpmp 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (636) hide show
  1. data/LICENSE +3 -0
  2. data/README +3 -0
  3. data/Rakefile +45 -0
  4. data/bin/lpmp +107 -0
  5. data/config/help.yaml +1 -0
  6. data/config/hosts.yaml +2 -0
  7. data/config/log.yaml +1 -0
  8. data/config/memcache.yaml +5 -0
  9. data/erb/index.erb +62 -0
  10. data/lib/bg_pull/caichen.rb +199 -0
  11. data/lib/bg_pull/lpmp.rb +45 -0
  12. data/lib/exception.rb +8 -0
  13. data/lib/lpmp.rb +53 -0
  14. data/lib/pull/lpmp.rb +355 -0
  15. data/lib/remote_lmp.rb +129 -0
  16. data/lib/utils.rb +14 -0
  17. data/lib/xq_push/caichen.rb +174 -0
  18. data/lib/xq_push/lpmp.rb +96 -0
  19. data/log/lpmp1st.log +1 -0
  20. data/public/css/ext-portal.css +40 -0
  21. data/public/css/lpmp.css +6 -0
  22. data/public/designer/caichen.epj +1 -0
  23. data/public/designer/hostmonitor.epj +1 -0
  24. data/public/ext-3.0.0/INCLUDE_ORDER.txt +35 -0
  25. data/public/ext-3.0.0/adapter/ext/ext-base-debug.js +3589 -0
  26. data/public/ext-3.0.0/adapter/ext/ext-base.js +7 -0
  27. data/public/ext-3.0.0/adapter/jquery/ext-jquery-adapter-debug.js +2292 -0
  28. data/public/ext-3.0.0/adapter/jquery/ext-jquery-adapter.js +7 -0
  29. data/public/ext-3.0.0/adapter/prototype/ext-prototype-adapter-debug.js +2346 -0
  30. data/public/ext-3.0.0/adapter/prototype/ext-prototype-adapter.js +7 -0
  31. data/public/ext-3.0.0/adapter/yui/ext-yui-adapter-debug.js +2136 -0
  32. data/public/ext-3.0.0/adapter/yui/ext-yui-adapter.js +7 -0
  33. data/public/ext-3.0.0/ext-all-debug.js +65610 -0
  34. data/public/ext-3.0.0/ext-all.js +11 -0
  35. data/public/ext-3.0.0/license.txt +42 -0
  36. data/public/ext-3.0.0/pkgs/cmp-foundation-debug.js +11287 -0
  37. data/public/ext-3.0.0/pkgs/cmp-foundation.js +7 -0
  38. data/public/ext-3.0.0/pkgs/data-foundation-debug.js +3853 -0
  39. data/public/ext-3.0.0/pkgs/data-foundation.js +7 -0
  40. data/public/ext-3.0.0/pkgs/data-grouping-debug.js +139 -0
  41. data/public/ext-3.0.0/pkgs/data-grouping.js +7 -0
  42. data/public/ext-3.0.0/pkgs/data-json-debug.js +582 -0
  43. data/public/ext-3.0.0/pkgs/data-json.js +7 -0
  44. data/public/ext-3.0.0/pkgs/data-list-views-debug.js +1278 -0
  45. data/public/ext-3.0.0/pkgs/data-list-views.js +7 -0
  46. data/public/ext-3.0.0/pkgs/data-xml-debug.js +234 -0
  47. data/public/ext-3.0.0/pkgs/data-xml.js +7 -0
  48. data/public/ext-3.0.0/pkgs/direct-debug.js +1121 -0
  49. data/public/ext-3.0.0/pkgs/direct.js +7 -0
  50. data/public/ext-3.0.0/pkgs/ext-dd-debug.js +4567 -0
  51. data/public/ext-3.0.0/pkgs/ext-dd.js +7 -0
  52. data/public/ext-3.0.0/pkgs/ext-foundation-debug.js +13417 -0
  53. data/public/ext-3.0.0/pkgs/ext-foundation.js +7 -0
  54. data/public/ext-3.0.0/pkgs/pkg-buttons-debug.js +1060 -0
  55. data/public/ext-3.0.0/pkgs/pkg-buttons.js +7 -0
  56. data/public/ext-3.0.0/pkgs/pkg-charts-debug.js +1621 -0
  57. data/public/ext-3.0.0/pkgs/pkg-charts.js +10 -0
  58. data/public/ext-3.0.0/pkgs/pkg-forms-debug.js +7661 -0
  59. data/public/ext-3.0.0/pkgs/pkg-forms.js +7 -0
  60. data/public/ext-3.0.0/pkgs/pkg-grid-editor-debug.js +560 -0
  61. data/public/ext-3.0.0/pkgs/pkg-grid-editor.js +7 -0
  62. data/public/ext-3.0.0/pkgs/pkg-grid-foundation-debug.js +4765 -0
  63. data/public/ext-3.0.0/pkgs/pkg-grid-foundation.js +7 -0
  64. data/public/ext-3.0.0/pkgs/pkg-grid-grouping-debug.js +517 -0
  65. data/public/ext-3.0.0/pkgs/pkg-grid-grouping.js +7 -0
  66. data/public/ext-3.0.0/pkgs/pkg-grid-property-debug.js +370 -0
  67. data/public/ext-3.0.0/pkgs/pkg-grid-property.js +7 -0
  68. data/public/ext-3.0.0/pkgs/pkg-history-debug.js +203 -0
  69. data/public/ext-3.0.0/pkgs/pkg-history.js +7 -0
  70. data/public/ext-3.0.0/pkgs/pkg-menu-debug.js +1628 -0
  71. data/public/ext-3.0.0/pkgs/pkg-menu.js +7 -0
  72. data/public/ext-3.0.0/pkgs/pkg-tabs-debug.js +1100 -0
  73. data/public/ext-3.0.0/pkgs/pkg-tabs.js +7 -0
  74. data/public/ext-3.0.0/pkgs/pkg-tips-debug.js +994 -0
  75. data/public/ext-3.0.0/pkgs/pkg-tips.js +7 -0
  76. data/public/ext-3.0.0/pkgs/pkg-toolbars-debug.js +1374 -0
  77. data/public/ext-3.0.0/pkgs/pkg-toolbars.js +7 -0
  78. data/public/ext-3.0.0/pkgs/pkg-tree-debug.js +4522 -0
  79. data/public/ext-3.0.0/pkgs/pkg-tree.js +7 -0
  80. data/public/ext-3.0.0/pkgs/resizable-debug.js +760 -0
  81. data/public/ext-3.0.0/pkgs/resizable.js +7 -0
  82. data/public/ext-3.0.0/pkgs/state-debug.js +274 -0
  83. data/public/ext-3.0.0/pkgs/state.js +7 -0
  84. data/public/ext-3.0.0/pkgs/window-debug.js +1888 -0
  85. data/public/ext-3.0.0/pkgs/window.js +7 -0
  86. data/public/ext-3.0.0/resources/charts.swf +0 -0
  87. data/public/ext-3.0.0/resources/css/README.txt +3 -0
  88. data/public/ext-3.0.0/resources/css/ext-all-notheme.css +5345 -0
  89. data/public/ext-3.0.0/resources/css/ext-all.css +6990 -0
  90. data/public/ext-3.0.0/resources/css/reset-min.css +7 -0
  91. data/public/ext-3.0.0/resources/css/structure/borders.css +54 -0
  92. data/public/ext-3.0.0/resources/css/structure/box.css +80 -0
  93. data/public/ext-3.0.0/resources/css/structure/button.css +440 -0
  94. data/public/ext-3.0.0/resources/css/structure/combo.css +45 -0
  95. data/public/ext-3.0.0/resources/css/structure/core.css +326 -0
  96. data/public/ext-3.0.0/resources/css/structure/date-picker.css +265 -0
  97. data/public/ext-3.0.0/resources/css/structure/dd.css +61 -0
  98. data/public/ext-3.0.0/resources/css/structure/debug.css +26 -0
  99. data/public/ext-3.0.0/resources/css/structure/dialog.css +62 -0
  100. data/public/ext-3.0.0/resources/css/structure/editor.css +92 -0
  101. data/public/ext-3.0.0/resources/css/structure/form.css +562 -0
  102. data/public/ext-3.0.0/resources/css/structure/grid.css +552 -0
  103. data/public/ext-3.0.0/resources/css/structure/layout.css +296 -0
  104. data/public/ext-3.0.0/resources/css/structure/list-view.css +85 -0
  105. data/public/ext-3.0.0/resources/css/structure/menu.css +205 -0
  106. data/public/ext-3.0.0/resources/css/structure/panel-reset.css +130 -0
  107. data/public/ext-3.0.0/resources/css/structure/panel.css +468 -0
  108. data/public/ext-3.0.0/resources/css/structure/progress.css +42 -0
  109. data/public/ext-3.0.0/resources/css/structure/qtips.css +153 -0
  110. data/public/ext-3.0.0/resources/css/structure/reset.css +7 -0
  111. data/public/ext-3.0.0/resources/css/structure/resizable.css +149 -0
  112. data/public/ext-3.0.0/resources/css/structure/slider.css +103 -0
  113. data/public/ext-3.0.0/resources/css/structure/tabs.css +372 -0
  114. data/public/ext-3.0.0/resources/css/structure/toolbar.css +259 -0
  115. data/public/ext-3.0.0/resources/css/structure/tree.css +203 -0
  116. data/public/ext-3.0.0/resources/css/structure/window.css +222 -0
  117. data/public/ext-3.0.0/resources/css/visual/borders.css +25 -0
  118. data/public/ext-3.0.0/resources/css/visual/box.css +74 -0
  119. data/public/ext-3.0.0/resources/css/visual/button.css +94 -0
  120. data/public/ext-3.0.0/resources/css/visual/combo.css +43 -0
  121. data/public/ext-3.0.0/resources/css/visual/core.css +76 -0
  122. data/public/ext-3.0.0/resources/css/visual/date-picker.css +143 -0
  123. data/public/ext-3.0.0/resources/css/visual/dd.css +29 -0
  124. data/public/ext-3.0.0/resources/css/visual/debug.css +24 -0
  125. data/public/ext-3.0.0/resources/css/visual/dialog.css +34 -0
  126. data/public/ext-3.0.0/resources/css/visual/editor.css +13 -0
  127. data/public/ext-3.0.0/resources/css/visual/form.css +117 -0
  128. data/public/ext-3.0.0/resources/css/visual/grid.css +272 -0
  129. data/public/ext-3.0.0/resources/css/visual/layout.css +53 -0
  130. data/public/ext-3.0.0/resources/css/visual/list-view.css +37 -0
  131. data/public/ext-3.0.0/resources/css/visual/menu.css +82 -0
  132. data/public/ext-3.0.0/resources/css/visual/panel.css +87 -0
  133. data/public/ext-3.0.0/resources/css/visual/progress.css +32 -0
  134. data/public/ext-3.0.0/resources/css/visual/qtips.css +44 -0
  135. data/public/ext-3.0.0/resources/css/visual/resizable.css +43 -0
  136. data/public/ext-3.0.0/resources/css/visual/slider.css +21 -0
  137. data/public/ext-3.0.0/resources/css/visual/tabs.css +119 -0
  138. data/public/ext-3.0.0/resources/css/visual/toolbar.css +103 -0
  139. data/public/ext-3.0.0/resources/css/visual/tree.css +157 -0
  140. data/public/ext-3.0.0/resources/css/visual/window.css +86 -0
  141. data/public/ext-3.0.0/resources/css/xtheme-blue.css +1652 -0
  142. data/public/ext-3.0.0/resources/expressinstall.swf +0 -0
  143. data/public/ext-3.0.0/resources/images/default/box/corners-blue.gif +0 -0
  144. data/public/ext-3.0.0/resources/images/default/box/corners.gif +0 -0
  145. data/public/ext-3.0.0/resources/images/default/box/l-blue.gif +0 -0
  146. data/public/ext-3.0.0/resources/images/default/box/l.gif +0 -0
  147. data/public/ext-3.0.0/resources/images/default/box/r-blue.gif +0 -0
  148. data/public/ext-3.0.0/resources/images/default/box/r.gif +0 -0
  149. data/public/ext-3.0.0/resources/images/default/box/tb-blue.gif +0 -0
  150. data/public/ext-3.0.0/resources/images/default/box/tb.gif +0 -0
  151. data/public/ext-3.0.0/resources/images/default/button/arrow.gif +0 -0
  152. data/public/ext-3.0.0/resources/images/default/button/btn.gif +0 -0
  153. data/public/ext-3.0.0/resources/images/default/button/group-cs.gif +0 -0
  154. data/public/ext-3.0.0/resources/images/default/button/group-lr.gif +0 -0
  155. data/public/ext-3.0.0/resources/images/default/button/group-tb.gif +0 -0
  156. data/public/ext-3.0.0/resources/images/default/button/s-arrow-b-noline.gif +0 -0
  157. data/public/ext-3.0.0/resources/images/default/button/s-arrow-b.gif +0 -0
  158. data/public/ext-3.0.0/resources/images/default/button/s-arrow-bo.gif +0 -0
  159. data/public/ext-3.0.0/resources/images/default/button/s-arrow-noline.gif +0 -0
  160. data/public/ext-3.0.0/resources/images/default/button/s-arrow-o.gif +0 -0
  161. data/public/ext-3.0.0/resources/images/default/button/s-arrow.gif +0 -0
  162. data/public/ext-3.0.0/resources/images/default/dd/drop-add.gif +0 -0
  163. data/public/ext-3.0.0/resources/images/default/dd/drop-no.gif +0 -0
  164. data/public/ext-3.0.0/resources/images/default/dd/drop-yes.gif +0 -0
  165. data/public/ext-3.0.0/resources/images/default/editor/tb-sprite.gif +0 -0
  166. data/public/ext-3.0.0/resources/images/default/form/checkbox.gif +0 -0
  167. data/public/ext-3.0.0/resources/images/default/form/clear-trigger.gif +0 -0
  168. data/public/ext-3.0.0/resources/images/default/form/clear-trigger.psd +0 -0
  169. data/public/ext-3.0.0/resources/images/default/form/date-trigger.gif +0 -0
  170. data/public/ext-3.0.0/resources/images/default/form/date-trigger.psd +0 -0
  171. data/public/ext-3.0.0/resources/images/default/form/error-tip-corners.gif +0 -0
  172. data/public/ext-3.0.0/resources/images/default/form/exclamation.gif +0 -0
  173. data/public/ext-3.0.0/resources/images/default/form/radio.gif +0 -0
  174. data/public/ext-3.0.0/resources/images/default/form/search-trigger.gif +0 -0
  175. data/public/ext-3.0.0/resources/images/default/form/search-trigger.psd +0 -0
  176. data/public/ext-3.0.0/resources/images/default/form/text-bg.gif +0 -0
  177. data/public/ext-3.0.0/resources/images/default/form/trigger-tpl.gif +0 -0
  178. data/public/ext-3.0.0/resources/images/default/form/trigger.gif +0 -0
  179. data/public/ext-3.0.0/resources/images/default/form/trigger.psd +0 -0
  180. data/public/ext-3.0.0/resources/images/default/gradient-bg.gif +0 -0
  181. data/public/ext-3.0.0/resources/images/default/grid/arrow-left-white.gif +0 -0
  182. data/public/ext-3.0.0/resources/images/default/grid/arrow-right-white.gif +0 -0
  183. data/public/ext-3.0.0/resources/images/default/grid/col-move-bottom.gif +0 -0
  184. data/public/ext-3.0.0/resources/images/default/grid/col-move-top.gif +0 -0
  185. data/public/ext-3.0.0/resources/images/default/grid/columns.gif +0 -0
  186. data/public/ext-3.0.0/resources/images/default/grid/dirty.gif +0 -0
  187. data/public/ext-3.0.0/resources/images/default/grid/done.gif +0 -0
  188. data/public/ext-3.0.0/resources/images/default/grid/drop-no.gif +0 -0
  189. data/public/ext-3.0.0/resources/images/default/grid/drop-yes.gif +0 -0
  190. data/public/ext-3.0.0/resources/images/default/grid/footer-bg.gif +0 -0
  191. data/public/ext-3.0.0/resources/images/default/grid/grid-blue-hd.gif +0 -0
  192. data/public/ext-3.0.0/resources/images/default/grid/grid-blue-split.gif +0 -0
  193. data/public/ext-3.0.0/resources/images/default/grid/grid-hrow.gif +0 -0
  194. data/public/ext-3.0.0/resources/images/default/grid/grid-loading.gif +0 -0
  195. data/public/ext-3.0.0/resources/images/default/grid/grid-split.gif +0 -0
  196. data/public/ext-3.0.0/resources/images/default/grid/grid-vista-hd.gif +0 -0
  197. data/public/ext-3.0.0/resources/images/default/grid/grid3-hd-btn.gif +0 -0
  198. data/public/ext-3.0.0/resources/images/default/grid/grid3-hrow-over.gif +0 -0
  199. data/public/ext-3.0.0/resources/images/default/grid/grid3-hrow.gif +0 -0
  200. data/public/ext-3.0.0/resources/images/default/grid/grid3-special-col-bg.gif +0 -0
  201. data/public/ext-3.0.0/resources/images/default/grid/grid3-special-col-sel-bg.gif +0 -0
  202. data/public/ext-3.0.0/resources/images/default/grid/group-by.gif +0 -0
  203. data/public/ext-3.0.0/resources/images/default/grid/group-collapse.gif +0 -0
  204. data/public/ext-3.0.0/resources/images/default/grid/group-expand-sprite.gif +0 -0
  205. data/public/ext-3.0.0/resources/images/default/grid/group-expand.gif +0 -0
  206. data/public/ext-3.0.0/resources/images/default/grid/hd-pop.gif +0 -0
  207. data/public/ext-3.0.0/resources/images/default/grid/hmenu-asc.gif +0 -0
  208. data/public/ext-3.0.0/resources/images/default/grid/hmenu-desc.gif +0 -0
  209. data/public/ext-3.0.0/resources/images/default/grid/hmenu-lock.gif +0 -0
  210. data/public/ext-3.0.0/resources/images/default/grid/hmenu-lock.png +0 -0
  211. data/public/ext-3.0.0/resources/images/default/grid/hmenu-unlock.gif +0 -0
  212. data/public/ext-3.0.0/resources/images/default/grid/hmenu-unlock.png +0 -0
  213. data/public/ext-3.0.0/resources/images/default/grid/invalid_line.gif +0 -0
  214. data/public/ext-3.0.0/resources/images/default/grid/loading.gif +0 -0
  215. data/public/ext-3.0.0/resources/images/default/grid/mso-hd.gif +0 -0
  216. data/public/ext-3.0.0/resources/images/default/grid/nowait.gif +0 -0
  217. data/public/ext-3.0.0/resources/images/default/grid/page-first-disabled.gif +0 -0
  218. data/public/ext-3.0.0/resources/images/default/grid/page-first.gif +0 -0
  219. data/public/ext-3.0.0/resources/images/default/grid/page-last-disabled.gif +0 -0
  220. data/public/ext-3.0.0/resources/images/default/grid/page-last.gif +0 -0
  221. data/public/ext-3.0.0/resources/images/default/grid/page-next-disabled.gif +0 -0
  222. data/public/ext-3.0.0/resources/images/default/grid/page-next.gif +0 -0
  223. data/public/ext-3.0.0/resources/images/default/grid/page-prev-disabled.gif +0 -0
  224. data/public/ext-3.0.0/resources/images/default/grid/page-prev.gif +0 -0
  225. data/public/ext-3.0.0/resources/images/default/grid/pick-button.gif +0 -0
  226. data/public/ext-3.0.0/resources/images/default/grid/refresh.gif +0 -0
  227. data/public/ext-3.0.0/resources/images/default/grid/row-check-sprite.gif +0 -0
  228. data/public/ext-3.0.0/resources/images/default/grid/row-expand-sprite.gif +0 -0
  229. data/public/ext-3.0.0/resources/images/default/grid/row-over.gif +0 -0
  230. data/public/ext-3.0.0/resources/images/default/grid/row-sel.gif +0 -0
  231. data/public/ext-3.0.0/resources/images/default/grid/sort-hd.gif +0 -0
  232. data/public/ext-3.0.0/resources/images/default/grid/sort_asc.gif +0 -0
  233. data/public/ext-3.0.0/resources/images/default/grid/sort_desc.gif +0 -0
  234. data/public/ext-3.0.0/resources/images/default/grid/wait.gif +0 -0
  235. data/public/ext-3.0.0/resources/images/default/layout/collapse.gif +0 -0
  236. data/public/ext-3.0.0/resources/images/default/layout/expand.gif +0 -0
  237. data/public/ext-3.0.0/resources/images/default/layout/gradient-bg.gif +0 -0
  238. data/public/ext-3.0.0/resources/images/default/layout/mini-bottom.gif +0 -0
  239. data/public/ext-3.0.0/resources/images/default/layout/mini-left.gif +0 -0
  240. data/public/ext-3.0.0/resources/images/default/layout/mini-right.gif +0 -0
  241. data/public/ext-3.0.0/resources/images/default/layout/mini-top.gif +0 -0
  242. data/public/ext-3.0.0/resources/images/default/layout/ns-collapse.gif +0 -0
  243. data/public/ext-3.0.0/resources/images/default/layout/ns-expand.gif +0 -0
  244. data/public/ext-3.0.0/resources/images/default/layout/panel-close.gif +0 -0
  245. data/public/ext-3.0.0/resources/images/default/layout/panel-title-bg.gif +0 -0
  246. data/public/ext-3.0.0/resources/images/default/layout/panel-title-light-bg.gif +0 -0
  247. data/public/ext-3.0.0/resources/images/default/layout/stick.gif +0 -0
  248. data/public/ext-3.0.0/resources/images/default/layout/stuck.gif +0 -0
  249. data/public/ext-3.0.0/resources/images/default/layout/tab-close-on.gif +0 -0
  250. data/public/ext-3.0.0/resources/images/default/layout/tab-close.gif +0 -0
  251. data/public/ext-3.0.0/resources/images/default/menu/checked.gif +0 -0
  252. data/public/ext-3.0.0/resources/images/default/menu/group-checked.gif +0 -0
  253. data/public/ext-3.0.0/resources/images/default/menu/item-over.gif +0 -0
  254. data/public/ext-3.0.0/resources/images/default/menu/menu-parent.gif +0 -0
  255. data/public/ext-3.0.0/resources/images/default/menu/menu.gif +0 -0
  256. data/public/ext-3.0.0/resources/images/default/menu/unchecked.gif +0 -0
  257. data/public/ext-3.0.0/resources/images/default/panel/corners-sprite.gif +0 -0
  258. data/public/ext-3.0.0/resources/images/default/panel/left-right.gif +0 -0
  259. data/public/ext-3.0.0/resources/images/default/panel/light-hd.gif +0 -0
  260. data/public/ext-3.0.0/resources/images/default/panel/tool-sprite-tpl.gif +0 -0
  261. data/public/ext-3.0.0/resources/images/default/panel/tool-sprites.gif +0 -0
  262. data/public/ext-3.0.0/resources/images/default/panel/tools-sprites-trans.gif +0 -0
  263. data/public/ext-3.0.0/resources/images/default/panel/top-bottom.gif +0 -0
  264. data/public/ext-3.0.0/resources/images/default/panel/top-bottom.png +0 -0
  265. data/public/ext-3.0.0/resources/images/default/panel/white-corners-sprite.gif +0 -0
  266. data/public/ext-3.0.0/resources/images/default/panel/white-left-right.gif +0 -0
  267. data/public/ext-3.0.0/resources/images/default/panel/white-top-bottom.gif +0 -0
  268. data/public/ext-3.0.0/resources/images/default/progress/progress-bg.gif +0 -0
  269. data/public/ext-3.0.0/resources/images/default/qtip/bg.gif +0 -0
  270. data/public/ext-3.0.0/resources/images/default/qtip/close.gif +0 -0
  271. data/public/ext-3.0.0/resources/images/default/qtip/tip-anchor-sprite.gif +0 -0
  272. data/public/ext-3.0.0/resources/images/default/qtip/tip-sprite.gif +0 -0
  273. data/public/ext-3.0.0/resources/images/default/s.gif +0 -0
  274. data/public/ext-3.0.0/resources/images/default/shadow-c.png +0 -0
  275. data/public/ext-3.0.0/resources/images/default/shadow-lr.png +0 -0
  276. data/public/ext-3.0.0/resources/images/default/shadow.png +0 -0
  277. data/public/ext-3.0.0/resources/images/default/shared/blue-loading.gif +0 -0
  278. data/public/ext-3.0.0/resources/images/default/shared/calendar.gif +0 -0
  279. data/public/ext-3.0.0/resources/images/default/shared/glass-bg.gif +0 -0
  280. data/public/ext-3.0.0/resources/images/default/shared/hd-sprite.gif +0 -0
  281. data/public/ext-3.0.0/resources/images/default/shared/large-loading.gif +0 -0
  282. data/public/ext-3.0.0/resources/images/default/shared/left-btn.gif +0 -0
  283. data/public/ext-3.0.0/resources/images/default/shared/loading-balls.gif +0 -0
  284. data/public/ext-3.0.0/resources/images/default/shared/right-btn.gif +0 -0
  285. data/public/ext-3.0.0/resources/images/default/shared/warning.gif +0 -0
  286. data/public/ext-3.0.0/resources/images/default/sizer/e-handle-dark.gif +0 -0
  287. data/public/ext-3.0.0/resources/images/default/sizer/e-handle.gif +0 -0
  288. data/public/ext-3.0.0/resources/images/default/sizer/ne-handle-dark.gif +0 -0
  289. data/public/ext-3.0.0/resources/images/default/sizer/ne-handle.gif +0 -0
  290. data/public/ext-3.0.0/resources/images/default/sizer/nw-handle-dark.gif +0 -0
  291. data/public/ext-3.0.0/resources/images/default/sizer/nw-handle.gif +0 -0
  292. data/public/ext-3.0.0/resources/images/default/sizer/s-handle-dark.gif +0 -0
  293. data/public/ext-3.0.0/resources/images/default/sizer/s-handle.gif +0 -0
  294. data/public/ext-3.0.0/resources/images/default/sizer/se-handle-dark.gif +0 -0
  295. data/public/ext-3.0.0/resources/images/default/sizer/se-handle.gif +0 -0
  296. data/public/ext-3.0.0/resources/images/default/sizer/square.gif +0 -0
  297. data/public/ext-3.0.0/resources/images/default/sizer/sw-handle-dark.gif +0 -0
  298. data/public/ext-3.0.0/resources/images/default/sizer/sw-handle.gif +0 -0
  299. data/public/ext-3.0.0/resources/images/default/slider/slider-bg.png +0 -0
  300. data/public/ext-3.0.0/resources/images/default/slider/slider-thumb.png +0 -0
  301. data/public/ext-3.0.0/resources/images/default/slider/slider-v-bg.png +0 -0
  302. data/public/ext-3.0.0/resources/images/default/slider/slider-v-thumb.png +0 -0
  303. data/public/ext-3.0.0/resources/images/default/tabs/scroll-left.gif +0 -0
  304. data/public/ext-3.0.0/resources/images/default/tabs/scroll-right.gif +0 -0
  305. data/public/ext-3.0.0/resources/images/default/tabs/scroller-bg.gif +0 -0
  306. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-inactive-left-bg.gif +0 -0
  307. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-inactive-right-bg.gif +0 -0
  308. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-left-bg.gif +0 -0
  309. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-right-bg.gif +0 -0
  310. data/public/ext-3.0.0/resources/images/default/tabs/tab-close.gif +0 -0
  311. data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-bg.gif +0 -0
  312. data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-bg.png +0 -0
  313. data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-btm-bg.gif +0 -0
  314. data/public/ext-3.0.0/resources/images/default/tabs/tabs-sprite.gif +0 -0
  315. data/public/ext-3.0.0/resources/images/default/toolbar/bg.gif +0 -0
  316. data/public/ext-3.0.0/resources/images/default/toolbar/btn-arrow-light.gif +0 -0
  317. data/public/ext-3.0.0/resources/images/default/toolbar/btn-arrow.gif +0 -0
  318. data/public/ext-3.0.0/resources/images/default/toolbar/btn-over-bg.gif +0 -0
  319. data/public/ext-3.0.0/resources/images/default/toolbar/gray-bg.gif +0 -0
  320. data/public/ext-3.0.0/resources/images/default/toolbar/more.gif +0 -0
  321. data/public/ext-3.0.0/resources/images/default/toolbar/tb-bg.gif +0 -0
  322. data/public/ext-3.0.0/resources/images/default/toolbar/tb-btn-sprite.gif +0 -0
  323. data/public/ext-3.0.0/resources/images/default/toolbar/tb-xl-btn-sprite.gif +0 -0
  324. data/public/ext-3.0.0/resources/images/default/toolbar/tb-xl-sep.gif +0 -0
  325. data/public/ext-3.0.0/resources/images/default/tree/arrows.gif +0 -0
  326. data/public/ext-3.0.0/resources/images/default/tree/drop-add.gif +0 -0
  327. data/public/ext-3.0.0/resources/images/default/tree/drop-between.gif +0 -0
  328. data/public/ext-3.0.0/resources/images/default/tree/drop-no.gif +0 -0
  329. data/public/ext-3.0.0/resources/images/default/tree/drop-over.gif +0 -0
  330. data/public/ext-3.0.0/resources/images/default/tree/drop-under.gif +0 -0
  331. data/public/ext-3.0.0/resources/images/default/tree/drop-yes.gif +0 -0
  332. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-minus-nl.gif +0 -0
  333. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-minus.gif +0 -0
  334. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-plus-nl.gif +0 -0
  335. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-plus.gif +0 -0
  336. data/public/ext-3.0.0/resources/images/default/tree/elbow-end.gif +0 -0
  337. data/public/ext-3.0.0/resources/images/default/tree/elbow-line.gif +0 -0
  338. data/public/ext-3.0.0/resources/images/default/tree/elbow-minus-nl.gif +0 -0
  339. data/public/ext-3.0.0/resources/images/default/tree/elbow-minus.gif +0 -0
  340. data/public/ext-3.0.0/resources/images/default/tree/elbow-plus-nl.gif +0 -0
  341. data/public/ext-3.0.0/resources/images/default/tree/elbow-plus.gif +0 -0
  342. data/public/ext-3.0.0/resources/images/default/tree/elbow.gif +0 -0
  343. data/public/ext-3.0.0/resources/images/default/tree/folder-open.gif +0 -0
  344. data/public/ext-3.0.0/resources/images/default/tree/folder.gif +0 -0
  345. data/public/ext-3.0.0/resources/images/default/tree/leaf.gif +0 -0
  346. data/public/ext-3.0.0/resources/images/default/tree/loading.gif +0 -0
  347. data/public/ext-3.0.0/resources/images/default/tree/s.gif +0 -0
  348. data/public/ext-3.0.0/resources/images/default/window/icon-error.gif +0 -0
  349. data/public/ext-3.0.0/resources/images/default/window/icon-info.gif +0 -0
  350. data/public/ext-3.0.0/resources/images/default/window/icon-question.gif +0 -0
  351. data/public/ext-3.0.0/resources/images/default/window/icon-warning.gif +0 -0
  352. data/public/ext-3.0.0/resources/images/default/window/left-corners.png +0 -0
  353. data/public/ext-3.0.0/resources/images/default/window/left-corners.psd +0 -0
  354. data/public/ext-3.0.0/resources/images/default/window/left-right.png +0 -0
  355. data/public/ext-3.0.0/resources/images/default/window/left-right.psd +0 -0
  356. data/public/ext-3.0.0/resources/images/default/window/right-corners.png +0 -0
  357. data/public/ext-3.0.0/resources/images/default/window/right-corners.psd +0 -0
  358. data/public/ext-3.0.0/resources/images/default/window/top-bottom.png +0 -0
  359. data/public/ext-3.0.0/resources/images/default/window/top-bottom.psd +0 -0
  360. data/public/ext-3.0.0/resources/images/icon/chart.gif +0 -0
  361. data/public/ext-3.0.0/src/adapter/core/ext-base-ajax.js +371 -0
  362. data/public/ext-3.0.0/src/adapter/core/ext-base-anim-extra.js +301 -0
  363. data/public/ext-3.0.0/src/adapter/core/ext-base-anim.js +477 -0
  364. data/public/ext-3.0.0/src/adapter/core/ext-base-begin.js +18 -0
  365. data/public/ext-3.0.0/src/adapter/core/ext-base-dom.js +157 -0
  366. data/public/ext-3.0.0/src/adapter/core/ext-base-end.js +21 -0
  367. data/public/ext-3.0.0/src/adapter/core/ext-base-event.js +453 -0
  368. data/public/ext-3.0.0/src/adapter/core/ext-base-point.js +17 -0
  369. data/public/ext-3.0.0/src/adapter/core/ext-base-region.js +81 -0
  370. data/public/ext-3.0.0/src/adapter/ext-base-dom-more.js +9 -0
  371. data/public/ext-3.0.0/src/adapter/jquery-bridge.js +546 -0
  372. data/public/ext-3.0.0/src/adapter/prototype-bridge.js +600 -0
  373. data/public/ext-3.0.0/src/adapter/yui-bridge.js +390 -0
  374. data/public/ext-3.0.0/src/core/CompositeElement.js +136 -0
  375. data/public/ext-3.0.0/src/core/CompositeElementLite-more.js +102 -0
  376. data/public/ext-3.0.0/src/core/DomHelper-more.js +179 -0
  377. data/public/ext-3.0.0/src/core/Element-more.js +192 -0
  378. data/public/ext-3.0.0/src/core/Element.alignment.js +370 -0
  379. data/public/ext-3.0.0/src/core/Element.dd.js +46 -0
  380. data/public/ext-3.0.0/src/core/Element.fx-more.js +152 -0
  381. data/public/ext-3.0.0/src/core/Element.insertion-more.js +52 -0
  382. data/public/ext-3.0.0/src/core/Element.keys.js +48 -0
  383. data/public/ext-3.0.0/src/core/Element.legacy.js +42 -0
  384. data/public/ext-3.0.0/src/core/Element.position-more.js +165 -0
  385. data/public/ext-3.0.0/src/core/Element.scroll-more.js +110 -0
  386. data/public/ext-3.0.0/src/core/Element.style-more.js +318 -0
  387. data/public/ext-3.0.0/src/core/Error.js +81 -0
  388. data/public/ext-3.0.0/src/core/EventManager-more.js +334 -0
  389. data/public/ext-3.0.0/src/core/Ext-more.js +669 -0
  390. data/public/ext-3.0.0/src/core/Template-more.js +115 -0
  391. data/public/ext-3.0.0/src/core/core/CompositeElementLite.js +197 -0
  392. data/public/ext-3.0.0/src/core/core/DomHelper.js +378 -0
  393. data/public/ext-3.0.0/src/core/core/DomQuery.js +826 -0
  394. data/public/ext-3.0.0/src/core/core/Element.fx.js +324 -0
  395. data/public/ext-3.0.0/src/core/core/Element.insertion.js +147 -0
  396. data/public/ext-3.0.0/src/core/core/Element.js +945 -0
  397. data/public/ext-3.0.0/src/core/core/Element.position.js +303 -0
  398. data/public/ext-3.0.0/src/core/core/Element.scroll.js +58 -0
  399. data/public/ext-3.0.0/src/core/core/Element.style.js +439 -0
  400. data/public/ext-3.0.0/src/core/core/Element.traversal.js +176 -0
  401. data/public/ext-3.0.0/src/core/core/EventManager.js +623 -0
  402. data/public/ext-3.0.0/src/core/core/Ext.js +922 -0
  403. data/public/ext-3.0.0/src/core/core/Fx.js +1115 -0
  404. data/public/ext-3.0.0/src/core/core/Template.js +185 -0
  405. data/public/ext-3.0.0/src/data/Api.js +210 -0
  406. data/public/ext-3.0.0/src/data/ArrayReader.js +102 -0
  407. data/public/ext-3.0.0/src/data/ArrayStore.js +70 -0
  408. data/public/ext-3.0.0/src/data/DataField.js +249 -0
  409. data/public/ext-3.0.0/src/data/DataProxy.js +427 -0
  410. data/public/ext-3.0.0/src/data/DataReader.js +160 -0
  411. data/public/ext-3.0.0/src/data/DataWriter.js +201 -0
  412. data/public/ext-3.0.0/src/data/DirectProxy.js +141 -0
  413. data/public/ext-3.0.0/src/data/DirectStore.js +52 -0
  414. data/public/ext-3.0.0/src/data/GroupingStore.js +139 -0
  415. data/public/ext-3.0.0/src/data/HttpProxy.js +276 -0
  416. data/public/ext-3.0.0/src/data/JsonReader.js +311 -0
  417. data/public/ext-3.0.0/src/data/JsonStore.js +49 -0
  418. data/public/ext-3.0.0/src/data/JsonWriter.js +77 -0
  419. data/public/ext-3.0.0/src/data/MemoryProxy.js +69 -0
  420. data/public/ext-3.0.0/src/data/Record.js +400 -0
  421. data/public/ext-3.0.0/src/data/ScriptTagProxy.js +279 -0
  422. data/public/ext-3.0.0/src/data/SortTypes.js +91 -0
  423. data/public/ext-3.0.0/src/data/Store.js +1492 -0
  424. data/public/ext-3.0.0/src/data/StoreMgr.js +72 -0
  425. data/public/ext-3.0.0/src/data/Tree.js +785 -0
  426. data/public/ext-3.0.0/src/data/XmlReader.js +128 -0
  427. data/public/ext-3.0.0/src/data/XmlStore.js +75 -0
  428. data/public/ext-3.0.0/src/data/XmlWriter.js +45 -0
  429. data/public/ext-3.0.0/src/data/core/Connection.js +575 -0
  430. data/public/ext-3.0.0/src/dd/DDCore.js +2992 -0
  431. data/public/ext-3.0.0/src/dd/DragSource.js +365 -0
  432. data/public/ext-3.0.0/src/dd/DragTracker.js +217 -0
  433. data/public/ext-3.0.0/src/dd/DragZone.js +133 -0
  434. data/public/ext-3.0.0/src/dd/DropTarget.js +115 -0
  435. data/public/ext-3.0.0/src/dd/DropZone.js +262 -0
  436. data/public/ext-3.0.0/src/dd/Registry.js +127 -0
  437. data/public/ext-3.0.0/src/dd/ScrollManager.js +201 -0
  438. data/public/ext-3.0.0/src/dd/StatusProxy.js +171 -0
  439. data/public/ext-3.0.0/src/debug.js +906 -0
  440. data/public/ext-3.0.0/src/direct/Direct.js +235 -0
  441. data/public/ext-3.0.0/src/direct/Event.js +34 -0
  442. data/public/ext-3.0.0/src/direct/JsonProvider.js +45 -0
  443. data/public/ext-3.0.0/src/direct/PollingProvider.js +151 -0
  444. data/public/ext-3.0.0/src/direct/Provider.js +110 -0
  445. data/public/ext-3.0.0/src/direct/RemotingProvider.js +373 -0
  446. data/public/ext-3.0.0/src/direct/Transaction.js +32 -0
  447. data/public/ext-3.0.0/src/locale/ext-lang-af.js +184 -0
  448. data/public/ext-3.0.0/src/locale/ext-lang-bg.js +278 -0
  449. data/public/ext-3.0.0/src/locale/ext-lang-ca.js +315 -0
  450. data/public/ext-3.0.0/src/locale/ext-lang-cs.js +293 -0
  451. data/public/ext-3.0.0/src/locale/ext-lang-da.js +296 -0
  452. data/public/ext-3.0.0/src/locale/ext-lang-de.js +326 -0
  453. data/public/ext-3.0.0/src/locale/ext-lang-el_GR.js +309 -0
  454. data/public/ext-3.0.0/src/locale/ext-lang-en.js +335 -0
  455. data/public/ext-3.0.0/src/locale/ext-lang-en_GB.js +315 -0
  456. data/public/ext-3.0.0/src/locale/ext-lang-es.js +318 -0
  457. data/public/ext-3.0.0/src/locale/ext-lang-fa.js +272 -0
  458. data/public/ext-3.0.0/src/locale/ext-lang-fi.js +302 -0
  459. data/public/ext-3.0.0/src/locale/ext-lang-fr.js +335 -0
  460. data/public/ext-3.0.0/src/locale/ext-lang-fr_CA.js +218 -0
  461. data/public/ext-3.0.0/src/locale/ext-lang-gr.js +175 -0
  462. data/public/ext-3.0.0/src/locale/ext-lang-he.js +292 -0
  463. data/public/ext-3.0.0/src/locale/ext-lang-hr.js +295 -0
  464. data/public/ext-3.0.0/src/locale/ext-lang-hu.js +296 -0
  465. data/public/ext-3.0.0/src/locale/ext-lang-id.js +302 -0
  466. data/public/ext-3.0.0/src/locale/ext-lang-it.js +295 -0
  467. data/public/ext-3.0.0/src/locale/ext-lang-ja.js +318 -0
  468. data/public/ext-3.0.0/src/locale/ext-lang-ko.js +267 -0
  469. data/public/ext-3.0.0/src/locale/ext-lang-lt.js +333 -0
  470. data/public/ext-3.0.0/src/locale/ext-lang-lv.js +176 -0
  471. data/public/ext-3.0.0/src/locale/ext-lang-mk.js +176 -0
  472. data/public/ext-3.0.0/src/locale/ext-lang-nl.js +323 -0
  473. data/public/ext-3.0.0/src/locale/ext-lang-no_NB.js +294 -0
  474. data/public/ext-3.0.0/src/locale/ext-lang-no_NN.js +294 -0
  475. data/public/ext-3.0.0/src/locale/ext-lang-pl.js +304 -0
  476. data/public/ext-3.0.0/src/locale/ext-lang-pt.js +260 -0
  477. data/public/ext-3.0.0/src/locale/ext-lang-pt_BR.js +302 -0
  478. data/public/ext-3.0.0/src/locale/ext-lang-pt_PT.js +298 -0
  479. data/public/ext-3.0.0/src/locale/ext-lang-ro.js +295 -0
  480. data/public/ext-3.0.0/src/locale/ext-lang-ru.js +319 -0
  481. data/public/ext-3.0.0/src/locale/ext-lang-sk.js +182 -0
  482. data/public/ext-3.0.0/src/locale/ext-lang-sl.js +176 -0
  483. data/public/ext-3.0.0/src/locale/ext-lang-sr.js +179 -0
  484. data/public/ext-3.0.0/src/locale/ext-lang-sr_RS.js +178 -0
  485. data/public/ext-3.0.0/src/locale/ext-lang-sv_SE.js +178 -0
  486. data/public/ext-3.0.0/src/locale/ext-lang-th.js +294 -0
  487. data/public/ext-3.0.0/src/locale/ext-lang-tr.js +306 -0
  488. data/public/ext-3.0.0/src/locale/ext-lang-ukr.js +258 -0
  489. data/public/ext-3.0.0/src/locale/ext-lang-vn.js +181 -0
  490. data/public/ext-3.0.0/src/locale/ext-lang-zh_CN.js +174 -0
  491. data/public/ext-3.0.0/src/locale/ext-lang-zh_TW.js +178 -0
  492. data/public/ext-3.0.0/src/state/CookieProvider.js +91 -0
  493. data/public/ext-3.0.0/src/state/Provider.js +127 -0
  494. data/public/ext-3.0.0/src/state/StateManager.js +69 -0
  495. data/public/ext-3.0.0/src/util/CSS.js +161 -0
  496. data/public/ext-3.0.0/src/util/ClickRepeater.js +200 -0
  497. data/public/ext-3.0.0/src/util/Cookies.js +96 -0
  498. data/public/ext-3.0.0/src/util/Date.js +1317 -0
  499. data/public/ext-3.0.0/src/util/Format.js +356 -0
  500. data/public/ext-3.0.0/src/util/History.js +203 -0
  501. data/public/ext-3.0.0/src/util/KeyMap.js +242 -0
  502. data/public/ext-3.0.0/src/util/KeyNav.js +161 -0
  503. data/public/ext-3.0.0/src/util/MixedCollection.js +576 -0
  504. data/public/ext-3.0.0/src/util/Observable-more.js +178 -0
  505. data/public/ext-3.0.0/src/util/TextMetrics.js +131 -0
  506. data/public/ext-3.0.0/src/util/UpdateManager.js +536 -0
  507. data/public/ext-3.0.0/src/util/XTemplate.js +379 -0
  508. data/public/ext-3.0.0/src/util/core/DelayedTask.js +68 -0
  509. data/public/ext-3.0.0/src/util/core/JSON.js +174 -0
  510. data/public/ext-3.0.0/src/util/core/Observable.js +483 -0
  511. data/public/ext-3.0.0/src/util/core/TaskMgr.js +174 -0
  512. data/public/ext-3.0.0/src/widgets/Action.js +252 -0
  513. data/public/ext-3.0.0/src/widgets/BoxComponent.js +519 -0
  514. data/public/ext-3.0.0/src/widgets/Button.js +762 -0
  515. data/public/ext-3.0.0/src/widgets/ButtonGroup.js +103 -0
  516. data/public/ext-3.0.0/src/widgets/ColorPalette.js +148 -0
  517. data/public/ext-3.0.0/src/widgets/Component.js +1540 -0
  518. data/public/ext-3.0.0/src/widgets/ComponentMgr.js +159 -0
  519. data/public/ext-3.0.0/src/widgets/Container.js +894 -0
  520. data/public/ext-3.0.0/src/widgets/CycleButton.js +188 -0
  521. data/public/ext-3.0.0/src/widgets/DataView.js +749 -0
  522. data/public/ext-3.0.0/src/widgets/DatePicker.js +771 -0
  523. data/public/ext-3.0.0/src/widgets/Editor.js +385 -0
  524. data/public/ext-3.0.0/src/widgets/Layer.js +466 -0
  525. data/public/ext-3.0.0/src/widgets/LoadMask.js +123 -0
  526. data/public/ext-3.0.0/src/widgets/MessageBox.js +626 -0
  527. data/public/ext-3.0.0/src/widgets/PagingToolbar.js +502 -0
  528. data/public/ext-3.0.0/src/widgets/Panel.js +1772 -0
  529. data/public/ext-3.0.0/src/widgets/PanelDD.js +154 -0
  530. data/public/ext-3.0.0/src/widgets/ProgressBar.js +289 -0
  531. data/public/ext-3.0.0/src/widgets/Resizable.js +760 -0
  532. data/public/ext-3.0.0/src/widgets/Shadow.js +192 -0
  533. data/public/ext-3.0.0/src/widgets/Slider.js +426 -0
  534. data/public/ext-3.0.0/src/widgets/SplitBar.js +436 -0
  535. data/public/ext-3.0.0/src/widgets/SplitButton.js +124 -0
  536. data/public/ext-3.0.0/src/widgets/TabPanel.js +1100 -0
  537. data/public/ext-3.0.0/src/widgets/Toolbar.js +781 -0
  538. data/public/ext-3.0.0/src/widgets/Viewport.js +124 -0
  539. data/public/ext-3.0.0/src/widgets/Window.js +941 -0
  540. data/public/ext-3.0.0/src/widgets/WindowManager.js +187 -0
  541. data/public/ext-3.0.0/src/widgets/chart/Chart.js +721 -0
  542. data/public/ext-3.0.0/src/widgets/chart/EventProxy.js +20 -0
  543. data/public/ext-3.0.0/src/widgets/chart/FlashComponent.js +117 -0
  544. data/public/ext-3.0.0/src/widgets/chart/swfobject.js +783 -0
  545. data/public/ext-3.0.0/src/widgets/form/Action.js +626 -0
  546. data/public/ext-3.0.0/src/widgets/form/BasicForm.js +735 -0
  547. data/public/ext-3.0.0/src/widgets/form/Checkbox.js +177 -0
  548. data/public/ext-3.0.0/src/widgets/form/CheckboxGroup.js +419 -0
  549. data/public/ext-3.0.0/src/widgets/form/Combo.js +1232 -0
  550. data/public/ext-3.0.0/src/widgets/form/DateField.js +389 -0
  551. data/public/ext-3.0.0/src/widgets/form/DisplayField.js +98 -0
  552. data/public/ext-3.0.0/src/widgets/form/Field.js +640 -0
  553. data/public/ext-3.0.0/src/widgets/form/FieldSet.js +305 -0
  554. data/public/ext-3.0.0/src/widgets/form/Form.js +335 -0
  555. data/public/ext-3.0.0/src/widgets/form/Hidden.js +39 -0
  556. data/public/ext-3.0.0/src/widgets/form/HtmlEditor.js +1179 -0
  557. data/public/ext-3.0.0/src/widgets/form/Label.js +64 -0
  558. data/public/ext-3.0.0/src/widgets/form/NumberField.js +139 -0
  559. data/public/ext-3.0.0/src/widgets/form/Radio.js +81 -0
  560. data/public/ext-3.0.0/src/widgets/form/RadioGroup.js +116 -0
  561. data/public/ext-3.0.0/src/widgets/form/TextArea.js +117 -0
  562. data/public/ext-3.0.0/src/widgets/form/TextField.js +491 -0
  563. data/public/ext-3.0.0/src/widgets/form/TimeField.js +146 -0
  564. data/public/ext-3.0.0/src/widgets/form/TriggerField.js +328 -0
  565. data/public/ext-3.0.0/src/widgets/form/VTypes.js +135 -0
  566. data/public/ext-3.0.0/src/widgets/grid/AbstractSelectionModel.js +57 -0
  567. data/public/ext-3.0.0/src/widgets/grid/CellSelectionModel.js +262 -0
  568. data/public/ext-3.0.0/src/widgets/grid/CheckboxSelectionModel.js +103 -0
  569. data/public/ext-3.0.0/src/widgets/grid/Column.js +406 -0
  570. data/public/ext-3.0.0/src/widgets/grid/ColumnDD.js +199 -0
  571. data/public/ext-3.0.0/src/widgets/grid/ColumnModel.js +592 -0
  572. data/public/ext-3.0.0/src/widgets/grid/ColumnSplitDD.js +62 -0
  573. data/public/ext-3.0.0/src/widgets/grid/EditorGrid.js +291 -0
  574. data/public/ext-3.0.0/src/widgets/grid/GridDD.js +95 -0
  575. data/public/ext-3.0.0/src/widgets/grid/GridEditor.js +21 -0
  576. data/public/ext-3.0.0/src/widgets/grid/GridPanel.js +952 -0
  577. data/public/ext-3.0.0/src/widgets/grid/GridView.js +1776 -0
  578. data/public/ext-3.0.0/src/widgets/grid/GroupingView.js +517 -0
  579. data/public/ext-3.0.0/src/widgets/grid/PropertyGrid.js +370 -0
  580. data/public/ext-3.0.0/src/widgets/grid/RowNumberer.js +61 -0
  581. data/public/ext-3.0.0/src/widgets/grid/RowSelectionModel.js +530 -0
  582. data/public/ext-3.0.0/src/widgets/layout/AbsoluteLayout.js +82 -0
  583. data/public/ext-3.0.0/src/widgets/layout/AccordionLayout.js +177 -0
  584. data/public/ext-3.0.0/src/widgets/layout/AnchorLayout.js +200 -0
  585. data/public/ext-3.0.0/src/widgets/layout/BorderLayout.js +1108 -0
  586. data/public/ext-3.0.0/src/widgets/layout/BoxLayout.js +417 -0
  587. data/public/ext-3.0.0/src/widgets/layout/CardLayout.js +127 -0
  588. data/public/ext-3.0.0/src/widgets/layout/ColumnLayout.js +130 -0
  589. data/public/ext-3.0.0/src/widgets/layout/ContainerLayout.js +215 -0
  590. data/public/ext-3.0.0/src/widgets/layout/FitLayout.js +48 -0
  591. data/public/ext-3.0.0/src/widgets/layout/FormLayout.js +266 -0
  592. data/public/ext-3.0.0/src/widgets/layout/TableLayout.js +194 -0
  593. data/public/ext-3.0.0/src/widgets/list/ColumnResizer.js +123 -0
  594. data/public/ext-3.0.0/src/widgets/list/ListView.js +357 -0
  595. data/public/ext-3.0.0/src/widgets/list/Sorter.js +70 -0
  596. data/public/ext-3.0.0/src/widgets/menu/BaseItem.js +160 -0
  597. data/public/ext-3.0.0/src/widgets/menu/CheckItem.js +114 -0
  598. data/public/ext-3.0.0/src/widgets/menu/ColorMenu.js +72 -0
  599. data/public/ext-3.0.0/src/widgets/menu/DateMenu.js +90 -0
  600. data/public/ext-3.0.0/src/widgets/menu/Item.js +211 -0
  601. data/public/ext-3.0.0/src/widgets/menu/Menu.js +733 -0
  602. data/public/ext-3.0.0/src/widgets/menu/MenuMgr.js +211 -0
  603. data/public/ext-3.0.0/src/widgets/menu/Separator.js +46 -0
  604. data/public/ext-3.0.0/src/widgets/menu/TextItem.js +46 -0
  605. data/public/ext-3.0.0/src/widgets/tips/QuickTip.js +207 -0
  606. data/public/ext-3.0.0/src/widgets/tips/QuickTips.js +159 -0
  607. data/public/ext-3.0.0/src/widgets/tips/Tip.js +157 -0
  608. data/public/ext-3.0.0/src/widgets/tips/ToolTip.js +492 -0
  609. data/public/ext-3.0.0/src/widgets/tree/AsyncTreeNode.js +114 -0
  610. data/public/ext-3.0.0/src/widgets/tree/TreeDragZone.js +82 -0
  611. data/public/ext-3.0.0/src/widgets/tree/TreeDropZone.js +321 -0
  612. data/public/ext-3.0.0/src/widgets/tree/TreeEditor.js +160 -0
  613. data/public/ext-3.0.0/src/widgets/tree/TreeEventModel.js +169 -0
  614. data/public/ext-3.0.0/src/widgets/tree/TreeFilter.js +114 -0
  615. data/public/ext-3.0.0/src/widgets/tree/TreeLoader.js +342 -0
  616. data/public/ext-3.0.0/src/widgets/tree/TreeNode.js +546 -0
  617. data/public/ext-3.0.0/src/widgets/tree/TreeNodeUI.js +633 -0
  618. data/public/ext-3.0.0/src/widgets/tree/TreePanel.js +918 -0
  619. data/public/ext-3.0.0/src/widgets/tree/TreeSelectionModel.js +315 -0
  620. data/public/ext-3.0.0/src/widgets/tree/TreeSorter.js +106 -0
  621. data/public/js/ext-portal.js +235 -0
  622. data/public/js/global.js +7 -0
  623. data/public/js/outerframe.js +47 -0
  624. data/public/js/portal.js +713 -0
  625. data/public/js/test_chart.js +152 -0
  626. data/test/config.rb +62 -0
  627. data/test/config/hosts.yaml +5 -0
  628. data/test/config/log.yaml +1 -0
  629. data/test/config/memcache.yaml +5 -0
  630. data/test/exception.rb +39 -0
  631. data/test/method_missing.rb +14 -0
  632. data/test/module.rb +39 -0
  633. data/test/remote_lmp.rb +126 -0
  634. data/test/sinatra.rb +29 -0
  635. data/test/sinatra_base.rb +16 -0
  636. metadata +690 -0
@@ -0,0 +1,918 @@
1
+ /*!
2
+ * Ext JS Library 3.0.0
3
+ * Copyright(c) 2006-2009 Ext JS, LLC
4
+ * licensing@extjs.com
5
+ * http://www.extjs.com/license
6
+ */
7
+ /**
8
+ * @class Ext.tree.TreePanel
9
+ * @extends Ext.Panel
10
+ * <p>The TreePanel provides tree-structured UI representation of tree-structured data.</p>
11
+ * <p>{@link Ext.tree.TreeNode TreeNode}s added to the TreePanel may each contain metadata
12
+ * used by your application in their {@link Ext.tree.TreeNode#attributes attributes} property.</p>
13
+ * <p><b>A TreePanel must have a {@link #root} node before it is rendered.</b> This may either be
14
+ * specified using the {@link #root} config option, or using the {@link #setRootNode} method.
15
+ * <p>An example of tree rendered to an existing div:</p><pre><code>
16
+ var tree = new Ext.tree.TreePanel({
17
+ renderTo: 'tree-div',
18
+ useArrows: true,
19
+ autoScroll: true,
20
+ animate: true,
21
+ enableDD: true,
22
+ containerScroll: true,
23
+ border: false,
24
+ // auto create TreeLoader
25
+ dataUrl: 'get-nodes.php',
26
+
27
+ root: {
28
+ nodeType: 'async',
29
+ text: 'Ext JS',
30
+ draggable: false,
31
+ id: 'source'
32
+ }
33
+ });
34
+
35
+ tree.getRootNode().expand();
36
+ * </code></pre>
37
+ * <p>The example above would work with a data packet similar to this:</p><pre><code>
38
+ [{
39
+ "text": "adapter",
40
+ "id": "source\/adapter",
41
+ "cls": "folder"
42
+ }, {
43
+ "text": "dd",
44
+ "id": "source\/dd",
45
+ "cls": "folder"
46
+ }, {
47
+ "text": "debug.js",
48
+ "id": "source\/debug.js",
49
+ "leaf": true,
50
+ "cls": "file"
51
+ }]
52
+ * </code></pre>
53
+ * <p>An example of tree within a Viewport:</p><pre><code>
54
+ new Ext.Viewport({
55
+ layout: 'border',
56
+ items: [{
57
+ region: 'west',
58
+ collapsible: true,
59
+ title: 'Navigation',
60
+ xtype: 'treepanel',
61
+ width: 200,
62
+ autoScroll: true,
63
+ split: true,
64
+ loader: new Ext.tree.TreeLoader(),
65
+ root: new Ext.tree.AsyncTreeNode({
66
+ expanded: true,
67
+ children: [{
68
+ text: 'Menu Option 1',
69
+ leaf: true
70
+ }, {
71
+ text: 'Menu Option 2',
72
+ leaf: true
73
+ }, {
74
+ text: 'Menu Option 3',
75
+ leaf: true
76
+ }]
77
+ }),
78
+ rootVisible: false,
79
+ listeners: {
80
+ click: function(n) {
81
+ Ext.Msg.alert('Navigation Tree Click', 'You clicked: "' + n.attributes.text + '"');
82
+ }
83
+ }
84
+ }, {
85
+ region: 'center',
86
+ xtype: 'tabpanel',
87
+ // remaining code not shown ...
88
+ }]
89
+ });
90
+ </code></pre>
91
+ *
92
+ * @cfg {Ext.tree.TreeNode} root The root node for the tree.
93
+ * @cfg {Boolean} rootVisible <tt>false</tt> to hide the root node (defaults to <tt>true</tt>)
94
+ * @cfg {Boolean} lines <tt>false</tt> to disable tree lines (defaults to <tt>true</tt>)
95
+ * @cfg {Boolean} enableDD <tt>true</tt> to enable drag and drop
96
+ * @cfg {Boolean} enableDrag <tt>true</tt> to enable just drag
97
+ * @cfg {Boolean} enableDrop <tt>true</tt> to enable just drop
98
+ * @cfg {Object} dragConfig Custom config to pass to the {@link Ext.tree.TreeDragZone} instance
99
+ * @cfg {Object} dropConfig Custom config to pass to the {@link Ext.tree.TreeDropZone} instance
100
+ * @cfg {String} ddGroup The DD group this TreePanel belongs to
101
+ * @cfg {Boolean} ddAppendOnly <tt>true</tt> if the tree should only allow append drops (use for trees which are sorted)
102
+ * @cfg {Boolean} ddScroll <tt>true</tt> to enable body scrolling
103
+ * @cfg {Boolean} containerScroll <tt>true</tt> to register this container with ScrollManager
104
+ * @cfg {Boolean} hlDrop <tt>false</tt> to disable node highlight on drop (defaults to the value of {@link Ext#enableFx})
105
+ * @cfg {String} hlColor The color of the node highlight (defaults to <tt>'C3DAF9'</tt>)
106
+ * @cfg {Boolean} animate <tt>true</tt> to enable animated expand/collapse (defaults to the value of {@link Ext#enableFx})
107
+ * @cfg {Boolean} singleExpand <tt>true</tt> if only 1 node per branch may be expanded
108
+ * @cfg {Object} selModel A tree selection model to use with this TreePanel (defaults to an {@link Ext.tree.DefaultSelectionModel})
109
+ * @cfg {Boolean} trackMouseOver <tt>false</tt> to disable mouse over highlighting
110
+ * @cfg {Ext.tree.TreeLoader} loader A {@link Ext.tree.TreeLoader} for use with this TreePanel
111
+ * @cfg {String} pathSeparator The token used to separate sub-paths in path strings (defaults to <tt>'/'</tt>)
112
+ * @cfg {Boolean} useArrows <tt>true</tt> to use Vista-style arrows in the tree (defaults to <tt>false</tt>)
113
+ * @cfg {String} requestMethod The HTTP request method for loading data (defaults to the value of {@link Ext.Ajax#method}).
114
+ *
115
+ * @constructor
116
+ * @param {Object} config
117
+ * @xtype treepanel
118
+ */
119
+ Ext.tree.TreePanel = Ext.extend(Ext.Panel, {
120
+ rootVisible : true,
121
+ animate: Ext.enableFx,
122
+ lines : true,
123
+ enableDD : false,
124
+ hlDrop : Ext.enableFx,
125
+ pathSeparator: "/",
126
+
127
+ initComponent : function(){
128
+ Ext.tree.TreePanel.superclass.initComponent.call(this);
129
+
130
+ if(!this.eventModel){
131
+ this.eventModel = new Ext.tree.TreeEventModel(this);
132
+ }
133
+
134
+ // initialize the loader
135
+ var l = this.loader;
136
+ if(!l){
137
+ l = new Ext.tree.TreeLoader({
138
+ dataUrl: this.dataUrl,
139
+ requestMethod: this.requestMethod
140
+ });
141
+ }else if(typeof l == 'object' && !l.load){
142
+ l = new Ext.tree.TreeLoader(l);
143
+ }
144
+ this.loader = l;
145
+
146
+ this.nodeHash = {};
147
+
148
+ /**
149
+ * The root node of this tree.
150
+ * @type Ext.tree.TreeNode
151
+ * @property root
152
+ */
153
+ if(this.root){
154
+ var r = this.root;
155
+ delete this.root;
156
+ this.setRootNode(r);
157
+ }
158
+
159
+
160
+ this.addEvents(
161
+
162
+ /**
163
+ * @event append
164
+ * Fires when a new child node is appended to a node in this tree.
165
+ * @param {Tree} tree The owner tree
166
+ * @param {Node} parent The parent node
167
+ * @param {Node} node The newly appended node
168
+ * @param {Number} index The index of the newly appended node
169
+ */
170
+ "append",
171
+ /**
172
+ * @event remove
173
+ * Fires when a child node is removed from a node in this tree.
174
+ * @param {Tree} tree The owner tree
175
+ * @param {Node} parent The parent node
176
+ * @param {Node} node The child node removed
177
+ */
178
+ "remove",
179
+ /**
180
+ * @event movenode
181
+ * Fires when a node is moved to a new location in the tree
182
+ * @param {Tree} tree The owner tree
183
+ * @param {Node} node The node moved
184
+ * @param {Node} oldParent The old parent of this node
185
+ * @param {Node} newParent The new parent of this node
186
+ * @param {Number} index The index it was moved to
187
+ */
188
+ "movenode",
189
+ /**
190
+ * @event insert
191
+ * Fires when a new child node is inserted in a node in this tree.
192
+ * @param {Tree} tree The owner tree
193
+ * @param {Node} parent The parent node
194
+ * @param {Node} node The child node inserted
195
+ * @param {Node} refNode The child node the node was inserted before
196
+ */
197
+ "insert",
198
+ /**
199
+ * @event beforeappend
200
+ * Fires before a new child is appended to a node in this tree, return false to cancel the append.
201
+ * @param {Tree} tree The owner tree
202
+ * @param {Node} parent The parent node
203
+ * @param {Node} node The child node to be appended
204
+ */
205
+ "beforeappend",
206
+ /**
207
+ * @event beforeremove
208
+ * Fires before a child is removed from a node in this tree, return false to cancel the remove.
209
+ * @param {Tree} tree The owner tree
210
+ * @param {Node} parent The parent node
211
+ * @param {Node} node The child node to be removed
212
+ */
213
+ "beforeremove",
214
+ /**
215
+ * @event beforemovenode
216
+ * Fires before a node is moved to a new location in the tree. Return false to cancel the move.
217
+ * @param {Tree} tree The owner tree
218
+ * @param {Node} node The node being moved
219
+ * @param {Node} oldParent The parent of the node
220
+ * @param {Node} newParent The new parent the node is moving to
221
+ * @param {Number} index The index it is being moved to
222
+ */
223
+ "beforemovenode",
224
+ /**
225
+ * @event beforeinsert
226
+ * Fires before a new child is inserted in a node in this tree, return false to cancel the insert.
227
+ * @param {Tree} tree The owner tree
228
+ * @param {Node} parent The parent node
229
+ * @param {Node} node The child node to be inserted
230
+ * @param {Node} refNode The child node the node is being inserted before
231
+ */
232
+ "beforeinsert",
233
+
234
+ /**
235
+ * @event beforeload
236
+ * Fires before a node is loaded, return false to cancel
237
+ * @param {Node} node The node being loaded
238
+ */
239
+ "beforeload",
240
+ /**
241
+ * @event load
242
+ * Fires when a node is loaded
243
+ * @param {Node} node The node that was loaded
244
+ */
245
+ "load",
246
+ /**
247
+ * @event textchange
248
+ * Fires when the text for a node is changed
249
+ * @param {Node} node The node
250
+ * @param {String} text The new text
251
+ * @param {String} oldText The old text
252
+ */
253
+ "textchange",
254
+ /**
255
+ * @event beforeexpandnode
256
+ * Fires before a node is expanded, return false to cancel.
257
+ * @param {Node} node The node
258
+ * @param {Boolean} deep
259
+ * @param {Boolean} anim
260
+ */
261
+ "beforeexpandnode",
262
+ /**
263
+ * @event beforecollapsenode
264
+ * Fires before a node is collapsed, return false to cancel.
265
+ * @param {Node} node The node
266
+ * @param {Boolean} deep
267
+ * @param {Boolean} anim
268
+ */
269
+ "beforecollapsenode",
270
+ /**
271
+ * @event expandnode
272
+ * Fires when a node is expanded
273
+ * @param {Node} node The node
274
+ */
275
+ "expandnode",
276
+ /**
277
+ * @event disabledchange
278
+ * Fires when the disabled status of a node changes
279
+ * @param {Node} node The node
280
+ * @param {Boolean} disabled
281
+ */
282
+ "disabledchange",
283
+ /**
284
+ * @event collapsenode
285
+ * Fires when a node is collapsed
286
+ * @param {Node} node The node
287
+ */
288
+ "collapsenode",
289
+ /**
290
+ * @event beforeclick
291
+ * Fires before click processing on a node. Return false to cancel the default action.
292
+ * @param {Node} node The node
293
+ * @param {Ext.EventObject} e The event object
294
+ */
295
+ "beforeclick",
296
+ /**
297
+ * @event click
298
+ * Fires when a node is clicked
299
+ * @param {Node} node The node
300
+ * @param {Ext.EventObject} e The event object
301
+ */
302
+ "click",
303
+ /**
304
+ * @event checkchange
305
+ * Fires when a node with a checkbox's checked property changes
306
+ * @param {Node} this This node
307
+ * @param {Boolean} checked
308
+ */
309
+ "checkchange",
310
+ /**
311
+ * @event dblclick
312
+ * Fires when a node is double clicked
313
+ * @param {Node} node The node
314
+ * @param {Ext.EventObject} e The event object
315
+ */
316
+ "dblclick",
317
+ /**
318
+ * @event contextmenu
319
+ * Fires when a node is right clicked. To display a context menu in response to this
320
+ * event, first create a Menu object (see {@link Ext.menu.Menu} for details), then add
321
+ * a handler for this event:<pre><code>
322
+ new Ext.tree.TreePanel({
323
+ title: 'My TreePanel',
324
+ root: new Ext.tree.AsyncTreeNode({
325
+ text: 'The Root',
326
+ children: [
327
+ { text: 'Child node 1', leaf: true },
328
+ { text: 'Child node 2', leaf: true }
329
+ ]
330
+ }),
331
+ contextMenu: new Ext.menu.Menu({
332
+ items: [{
333
+ id: 'delete-node',
334
+ text: 'Delete Node'
335
+ }],
336
+ listeners: {
337
+ itemclick: function(item) {
338
+ switch (item.id) {
339
+ case 'delete-node':
340
+ var n = item.parentMenu.contextNode;
341
+ if (n.parentNode) {
342
+ n.remove();
343
+ }
344
+ break;
345
+ }
346
+ }
347
+ }
348
+ }),
349
+ listeners: {
350
+ contextmenu: function(node, e) {
351
+ // Register the context node with the menu so that a Menu Item's handler function can access
352
+ // it via its {@link Ext.menu.BaseItem#parentMenu parentMenu} property.
353
+ node.select();
354
+ var c = node.getOwnerTree().contextMenu;
355
+ c.contextNode = node;
356
+ c.showAt(e.getXY());
357
+ }
358
+ }
359
+ });
360
+ </code></pre>
361
+ * @param {Node} node The node
362
+ * @param {Ext.EventObject} e The event object
363
+ */
364
+ "contextmenu",
365
+ /**
366
+ * @event beforechildrenrendered
367
+ * Fires right before the child nodes for a node are rendered
368
+ * @param {Node} node The node
369
+ */
370
+ "beforechildrenrendered",
371
+ /**
372
+ * @event startdrag
373
+ * Fires when a node starts being dragged
374
+ * @param {Ext.tree.TreePanel} this
375
+ * @param {Ext.tree.TreeNode} node
376
+ * @param {event} e The raw browser event
377
+ */
378
+ "startdrag",
379
+ /**
380
+ * @event enddrag
381
+ * Fires when a drag operation is complete
382
+ * @param {Ext.tree.TreePanel} this
383
+ * @param {Ext.tree.TreeNode} node
384
+ * @param {event} e The raw browser event
385
+ */
386
+ "enddrag",
387
+ /**
388
+ * @event dragdrop
389
+ * Fires when a dragged node is dropped on a valid DD target
390
+ * @param {Ext.tree.TreePanel} this
391
+ * @param {Ext.tree.TreeNode} node
392
+ * @param {DD} dd The dd it was dropped on
393
+ * @param {event} e The raw browser event
394
+ */
395
+ "dragdrop",
396
+ /**
397
+ * @event beforenodedrop
398
+ * Fires when a DD object is dropped on a node in this tree for preprocessing. Return false to cancel the drop. The dropEvent
399
+ * passed to handlers has the following properties:<br />
400
+ * <ul style="padding:5px;padding-left:16px;">
401
+ * <li>tree - The TreePanel</li>
402
+ * <li>target - The node being targeted for the drop</li>
403
+ * <li>data - The drag data from the drag source</li>
404
+ * <li>point - The point of the drop - append, above or below</li>
405
+ * <li>source - The drag source</li>
406
+ * <li>rawEvent - Raw mouse event</li>
407
+ * <li>dropNode - Drop node(s) provided by the source <b>OR</b> you can supply node(s)
408
+ * to be inserted by setting them on this object.</li>
409
+ * <li>cancel - Set this to true to cancel the drop.</li>
410
+ * <li>dropStatus - If the default drop action is cancelled but the drop is valid, setting this to true
411
+ * will prevent the animated "repair" from appearing.</li>
412
+ * </ul>
413
+ * @param {Object} dropEvent
414
+ */
415
+ "beforenodedrop",
416
+ /**
417
+ * @event nodedrop
418
+ * Fires after a DD object is dropped on a node in this tree. The dropEvent
419
+ * passed to handlers has the following properties:<br />
420
+ * <ul style="padding:5px;padding-left:16px;">
421
+ * <li>tree - The TreePanel</li>
422
+ * <li>target - The node being targeted for the drop</li>
423
+ * <li>data - The drag data from the drag source</li>
424
+ * <li>point - The point of the drop - append, above or below</li>
425
+ * <li>source - The drag source</li>
426
+ * <li>rawEvent - Raw mouse event</li>
427
+ * <li>dropNode - Dropped node(s).</li>
428
+ * </ul>
429
+ * @param {Object} dropEvent
430
+ */
431
+ "nodedrop",
432
+ /**
433
+ * @event nodedragover
434
+ * Fires when a tree node is being targeted for a drag drop, return false to signal drop not allowed. The dragOverEvent
435
+ * passed to handlers has the following properties:<br />
436
+ * <ul style="padding:5px;padding-left:16px;">
437
+ * <li>tree - The TreePanel</li>
438
+ * <li>target - The node being targeted for the drop</li>
439
+ * <li>data - The drag data from the drag source</li>
440
+ * <li>point - The point of the drop - append, above or below</li>
441
+ * <li>source - The drag source</li>
442
+ * <li>rawEvent - Raw mouse event</li>
443
+ * <li>dropNode - Drop node(s) provided by the source.</li>
444
+ * <li>cancel - Set this to true to signal drop not allowed.</li>
445
+ * </ul>
446
+ * @param {Object} dragOverEvent
447
+ */
448
+ "nodedragover"
449
+ );
450
+ if(this.singleExpand){
451
+ this.on("beforeexpandnode", this.restrictExpand, this);
452
+ }
453
+ },
454
+
455
+ // private
456
+ proxyNodeEvent : function(ename, a1, a2, a3, a4, a5, a6){
457
+ if(ename == 'collapse' || ename == 'expand' || ename == 'beforecollapse' || ename == 'beforeexpand' || ename == 'move' || ename == 'beforemove'){
458
+ ename = ename+'node';
459
+ }
460
+ // args inline for performance while bubbling events
461
+ return this.fireEvent(ename, a1, a2, a3, a4, a5, a6);
462
+ },
463
+
464
+
465
+ /**
466
+ * Returns this root node for this tree
467
+ * @return {Node}
468
+ */
469
+ getRootNode : function(){
470
+ return this.root;
471
+ },
472
+
473
+ /**
474
+ * Sets the root node for this tree. If the TreePanel has already rendered a root node, the
475
+ * previous root node (and all of its descendants) are destroyed before the new root node is rendered.
476
+ * @param {Node} node
477
+ * @return {Node}
478
+ */
479
+ setRootNode : function(node){
480
+ Ext.destroy(this.root);
481
+ if(!node.render){ // attributes passed
482
+ node = this.loader.createNode(node);
483
+ }
484
+ this.root = node;
485
+ node.ownerTree = this;
486
+ node.isRoot = true;
487
+ this.registerNode(node);
488
+ if(!this.rootVisible){
489
+ var uiP = node.attributes.uiProvider;
490
+ node.ui = uiP ? new uiP(node) : new Ext.tree.RootTreeNodeUI(node);
491
+ }
492
+ if (this.innerCt) {
493
+ this.innerCt.update('');
494
+ this.afterRender();
495
+ }
496
+ return node;
497
+ },
498
+
499
+ /**
500
+ * Gets a node in this tree by its id
501
+ * @param {String} id
502
+ * @return {Node}
503
+ */
504
+ getNodeById : function(id){
505
+ return this.nodeHash[id];
506
+ },
507
+
508
+ // private
509
+ registerNode : function(node){
510
+ this.nodeHash[node.id] = node;
511
+ },
512
+
513
+ // private
514
+ unregisterNode : function(node){
515
+ delete this.nodeHash[node.id];
516
+ },
517
+
518
+ // private
519
+ toString : function(){
520
+ return "[Tree"+(this.id?" "+this.id:"")+"]";
521
+ },
522
+
523
+ // private
524
+ restrictExpand : function(node){
525
+ var p = node.parentNode;
526
+ if(p){
527
+ if(p.expandedChild && p.expandedChild.parentNode == p){
528
+ p.expandedChild.collapse();
529
+ }
530
+ p.expandedChild = node;
531
+ }
532
+ },
533
+
534
+ /**
535
+ * Retrieve an array of checked nodes, or an array of a specific attribute of checked nodes (e.g. "id")
536
+ * @param {String} attribute (optional) Defaults to null (return the actual nodes)
537
+ * @param {TreeNode} startNode (optional) The node to start from, defaults to the root
538
+ * @return {Array}
539
+ */
540
+ getChecked : function(a, startNode){
541
+ startNode = startNode || this.root;
542
+ var r = [];
543
+ var f = function(){
544
+ if(this.attributes.checked){
545
+ r.push(!a ? this : (a == 'id' ? this.id : this.attributes[a]));
546
+ }
547
+ };
548
+ startNode.cascade(f);
549
+ return r;
550
+ },
551
+
552
+ /**
553
+ * Returns the container element for this TreePanel.
554
+ * @return {Element} The container element for this TreePanel.
555
+ */
556
+ getEl : function(){
557
+ return this.el;
558
+ },
559
+
560
+ /**
561
+ * Returns the default {@link Ext.tree.TreeLoader} for this TreePanel.
562
+ * @return {Ext.tree.TreeLoader} The TreeLoader for this TreePanel.
563
+ */
564
+ getLoader : function(){
565
+ return this.loader;
566
+ },
567
+
568
+ /**
569
+ * Expand all nodes
570
+ */
571
+ expandAll : function(){
572
+ this.root.expand(true);
573
+ },
574
+
575
+ /**
576
+ * Collapse all nodes
577
+ */
578
+ collapseAll : function(){
579
+ this.root.collapse(true);
580
+ },
581
+
582
+ /**
583
+ * Returns the selection model used by this TreePanel.
584
+ * @return {TreeSelectionModel} The selection model used by this TreePanel
585
+ */
586
+ getSelectionModel : function(){
587
+ if(!this.selModel){
588
+ this.selModel = new Ext.tree.DefaultSelectionModel();
589
+ }
590
+ return this.selModel;
591
+ },
592
+
593
+ /**
594
+ * Expands a specified path in this TreePanel. A path can be retrieved from a node with {@link Ext.data.Node#getPath}
595
+ * @param {String} path
596
+ * @param {String} attr (optional) The attribute used in the path (see {@link Ext.data.Node#getPath} for more info)
597
+ * @param {Function} callback (optional) The callback to call when the expand is complete. The callback will be called with
598
+ * (bSuccess, oLastNode) where bSuccess is if the expand was successful and oLastNode is the last node that was expanded.
599
+ */
600
+ expandPath : function(path, attr, callback){
601
+ attr = attr || "id";
602
+ var keys = path.split(this.pathSeparator);
603
+ var curNode = this.root;
604
+ if(curNode.attributes[attr] != keys[1]){ // invalid root
605
+ if(callback){
606
+ callback(false, null);
607
+ }
608
+ return;
609
+ }
610
+ var index = 1;
611
+ var f = function(){
612
+ if(++index == keys.length){
613
+ if(callback){
614
+ callback(true, curNode);
615
+ }
616
+ return;
617
+ }
618
+ var c = curNode.findChild(attr, keys[index]);
619
+ if(!c){
620
+ if(callback){
621
+ callback(false, curNode);
622
+ }
623
+ return;
624
+ }
625
+ curNode = c;
626
+ c.expand(false, false, f);
627
+ };
628
+ curNode.expand(false, false, f);
629
+ },
630
+
631
+ /**
632
+ * Selects the node in this tree at the specified path. A path can be retrieved from a node with {@link Ext.data.Node#getPath}
633
+ * @param {String} path
634
+ * @param {String} attr (optional) The attribute used in the path (see {@link Ext.data.Node#getPath} for more info)
635
+ * @param {Function} callback (optional) The callback to call when the selection is complete. The callback will be called with
636
+ * (bSuccess, oSelNode) where bSuccess is if the selection was successful and oSelNode is the selected node.
637
+ */
638
+ selectPath : function(path, attr, callback){
639
+ attr = attr || "id";
640
+ var keys = path.split(this.pathSeparator);
641
+ var v = keys.pop();
642
+ if(keys.length > 0){
643
+ var f = function(success, node){
644
+ if(success && node){
645
+ var n = node.findChild(attr, v);
646
+ if(n){
647
+ n.select();
648
+ if(callback){
649
+ callback(true, n);
650
+ }
651
+ }else if(callback){
652
+ callback(false, n);
653
+ }
654
+ }else{
655
+ if(callback){
656
+ callback(false, n);
657
+ }
658
+ }
659
+ };
660
+ this.expandPath(keys.join(this.pathSeparator), attr, f);
661
+ }else{
662
+ this.root.select();
663
+ if(callback){
664
+ callback(true, this.root);
665
+ }
666
+ }
667
+ },
668
+
669
+ /**
670
+ * Returns the underlying Element for this tree
671
+ * @return {Ext.Element} The Element
672
+ */
673
+ getTreeEl : function(){
674
+ return this.body;
675
+ },
676
+
677
+ // private
678
+ onRender : function(ct, position){
679
+ Ext.tree.TreePanel.superclass.onRender.call(this, ct, position);
680
+ this.el.addClass('x-tree');
681
+ this.innerCt = this.body.createChild({tag:"ul",
682
+ cls:"x-tree-root-ct " +
683
+ (this.useArrows ? 'x-tree-arrows' : this.lines ? "x-tree-lines" : "x-tree-no-lines")});
684
+ },
685
+
686
+ // private
687
+ initEvents : function(){
688
+ Ext.tree.TreePanel.superclass.initEvents.call(this);
689
+
690
+ if(this.containerScroll){
691
+ Ext.dd.ScrollManager.register(this.body);
692
+ }
693
+ if((this.enableDD || this.enableDrop) && !this.dropZone){
694
+ /**
695
+ * The dropZone used by this tree if drop is enabled (see {@link #enableDD} or {@link #enableDrop})
696
+ * @property dropZone
697
+ * @type Ext.tree.TreeDropZone
698
+ */
699
+ this.dropZone = new Ext.tree.TreeDropZone(this, this.dropConfig || {
700
+ ddGroup: this.ddGroup || "TreeDD", appendOnly: this.ddAppendOnly === true
701
+ });
702
+ }
703
+ if((this.enableDD || this.enableDrag) && !this.dragZone){
704
+ /**
705
+ * The dragZone used by this tree if drag is enabled (see {@link #enableDD} or {@link #enableDrag})
706
+ * @property dragZone
707
+ * @type Ext.tree.TreeDragZone
708
+ */
709
+ this.dragZone = new Ext.tree.TreeDragZone(this, this.dragConfig || {
710
+ ddGroup: this.ddGroup || "TreeDD",
711
+ scroll: this.ddScroll
712
+ });
713
+ }
714
+ this.getSelectionModel().init(this);
715
+ },
716
+
717
+ // private
718
+ afterRender : function(){
719
+ Ext.tree.TreePanel.superclass.afterRender.call(this);
720
+ this.root.render();
721
+ if(!this.rootVisible){
722
+ this.root.renderChildren();
723
+ }
724
+ },
725
+
726
+ onDestroy : function(){
727
+ if(this.rendered){
728
+ this.body.removeAllListeners();
729
+ Ext.dd.ScrollManager.unregister(this.body);
730
+ if(this.dropZone){
731
+ this.dropZone.unreg();
732
+ }
733
+ if(this.dragZone){
734
+ this.dragZone.unreg();
735
+ }
736
+ }
737
+ this.root.destroy();
738
+ this.nodeHash = null;
739
+ Ext.tree.TreePanel.superclass.onDestroy.call(this);
740
+ }
741
+
742
+ /**
743
+ * @cfg {String/Number} activeItem
744
+ * @hide
745
+ */
746
+ /**
747
+ * @cfg {Boolean} autoDestroy
748
+ * @hide
749
+ */
750
+ /**
751
+ * @cfg {Object/String/Function} autoLoad
752
+ * @hide
753
+ */
754
+ /**
755
+ * @cfg {Boolean} autoWidth
756
+ * @hide
757
+ */
758
+ /**
759
+ * @cfg {Boolean/Number} bufferResize
760
+ * @hide
761
+ */
762
+ /**
763
+ * @cfg {String} defaultType
764
+ * @hide
765
+ */
766
+ /**
767
+ * @cfg {Object} defaults
768
+ * @hide
769
+ */
770
+ /**
771
+ * @cfg {Boolean} hideBorders
772
+ * @hide
773
+ */
774
+ /**
775
+ * @cfg {Mixed} items
776
+ * @hide
777
+ */
778
+ /**
779
+ * @cfg {String} layout
780
+ * @hide
781
+ */
782
+ /**
783
+ * @cfg {Object} layoutConfig
784
+ * @hide
785
+ */
786
+ /**
787
+ * @cfg {Boolean} monitorResize
788
+ * @hide
789
+ */
790
+ /**
791
+ * @property items
792
+ * @hide
793
+ */
794
+ /**
795
+ * @method cascade
796
+ * @hide
797
+ */
798
+ /**
799
+ * @method doLayout
800
+ * @hide
801
+ */
802
+ /**
803
+ * @method find
804
+ * @hide
805
+ */
806
+ /**
807
+ * @method findBy
808
+ * @hide
809
+ */
810
+ /**
811
+ * @method findById
812
+ * @hide
813
+ */
814
+ /**
815
+ * @method findByType
816
+ * @hide
817
+ */
818
+ /**
819
+ * @method getComponent
820
+ * @hide
821
+ */
822
+ /**
823
+ * @method getLayout
824
+ * @hide
825
+ */
826
+ /**
827
+ * @method getUpdater
828
+ * @hide
829
+ */
830
+ /**
831
+ * @method insert
832
+ * @hide
833
+ */
834
+ /**
835
+ * @method load
836
+ * @hide
837
+ */
838
+ /**
839
+ * @method remove
840
+ * @hide
841
+ */
842
+ /**
843
+ * @event add
844
+ * @hide
845
+ */
846
+ /**
847
+ * @method removeAll
848
+ * @hide
849
+ */
850
+ /**
851
+ * @event afterLayout
852
+ * @hide
853
+ */
854
+ /**
855
+ * @event beforeadd
856
+ * @hide
857
+ */
858
+ /**
859
+ * @event beforeremove
860
+ * @hide
861
+ */
862
+ /**
863
+ * @event remove
864
+ * @hide
865
+ */
866
+
867
+
868
+
869
+ /**
870
+ * @cfg {String} allowDomMove @hide
871
+ */
872
+ /**
873
+ * @cfg {String} autoEl @hide
874
+ */
875
+ /**
876
+ * @cfg {String} applyTo @hide
877
+ */
878
+ /**
879
+ * @cfg {String} contentEl @hide
880
+ */
881
+ /**
882
+ * @cfg {String} disabledClass @hide
883
+ */
884
+ /**
885
+ * @cfg {String} elements @hide
886
+ */
887
+ /**
888
+ * @cfg {String} html @hide
889
+ */
890
+ /**
891
+ * @cfg {Boolean} preventBodyReset
892
+ * @hide
893
+ */
894
+ /**
895
+ * @property disabled
896
+ * @hide
897
+ */
898
+ /**
899
+ * @method applyToMarkup
900
+ * @hide
901
+ */
902
+ /**
903
+ * @method enable
904
+ * @hide
905
+ */
906
+ /**
907
+ * @method disable
908
+ * @hide
909
+ */
910
+ /**
911
+ * @method setDisabled
912
+ * @hide
913
+ */
914
+ });
915
+
916
+ Ext.tree.TreePanel.nodeTypes = {};
917
+
918
+ Ext.reg('treepanel', Ext.tree.TreePanel);