dojo_src 1.4.102 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1591) hide show
  1. data/Rakefile +2 -3
  2. data/bin/dojofy +1 -1
  3. data/dojo/dijit/Calendar.js +62 -24
  4. data/dojo/dijit/CheckedMenuItem.js +1 -1
  5. data/dojo/dijit/ColorPalette.js +43 -288
  6. data/dojo/dijit/Dialog.js +25 -24
  7. data/dojo/dijit/DialogUnderlay.js +3 -1
  8. data/dojo/dijit/Editor.js +229 -68
  9. data/dojo/dijit/InlineEditBox.js +72 -35
  10. data/dojo/dijit/LICENSE +1 -1
  11. data/dojo/dijit/Menu.js +75 -76
  12. data/dojo/dijit/MenuBar.js +5 -10
  13. data/dojo/dijit/MenuItem.js +18 -11
  14. data/dojo/dijit/PopupMenuItem.js +1 -0
  15. data/dojo/dijit/ProgressBar.js +1 -1
  16. data/dojo/dijit/TitlePane.js +18 -38
  17. data/dojo/dijit/Toolbar.js +4 -1
  18. data/dojo/dijit/ToolbarSeparator.js +1 -1
  19. data/dojo/dijit/Tooltip.js +7 -14
  20. data/dojo/dijit/Tree.js +116 -64
  21. data/dojo/dijit/_Container.js +5 -11
  22. data/dojo/dijit/_CssStateMixin.js +252 -0
  23. data/dojo/dijit/_DialogMixin.js +3 -1
  24. data/dojo/dijit/_HasDropDown.js +48 -58
  25. data/dojo/dijit/_KeyNavContainer.js +4 -4
  26. data/dojo/dijit/_PaletteMixin.js +313 -0
  27. data/dojo/dijit/_Templated.js +2 -1
  28. data/dojo/dijit/_TimePicker.js +11 -6
  29. data/dojo/dijit/_Widget.js +125 -63
  30. data/dojo/dijit/_base/focus.js +15 -9
  31. data/dojo/dijit/_base/manager.js +210 -183
  32. data/dojo/dijit/_base/place.js +3 -52
  33. data/dojo/dijit/_base/popup.js +101 -89
  34. data/dojo/dijit/_base/scroll.js +4 -91
  35. data/dojo/dijit/_base/sniff.js +3 -66
  36. data/dojo/dijit/_base/typematic.js +31 -27
  37. data/dojo/dijit/_base/window.js +3 -23
  38. data/dojo/dijit/_editor/RichText.js +180 -74
  39. data/dojo/dijit/_editor/_Plugin.js +17 -16
  40. data/dojo/dijit/_editor/html.js +1 -1
  41. data/dojo/dijit/_editor/nls/FontChoice.js +2 -1
  42. data/dojo/dijit/_editor/nls/ar/LinkDialog.js +7 -1
  43. data/dojo/dijit/_editor/nls/ar/commands.js +12 -6
  44. data/dojo/dijit/_editor/nls/ca/LinkDialog.js +8 -3
  45. data/dojo/dijit/_editor/nls/ca/commands.js +4 -0
  46. data/dojo/dijit/_editor/nls/da/LinkDialog.js +7 -1
  47. data/dojo/dijit/_editor/nls/da/commands.js +6 -1
  48. data/dojo/dijit/_editor/nls/el/LinkDialog.js +8 -2
  49. data/dojo/dijit/_editor/nls/el/commands.js +7 -2
  50. data/dojo/dijit/_editor/nls/fi/LinkDialog.js +7 -1
  51. data/dojo/dijit/_editor/nls/fi/commands.js +7 -2
  52. data/dojo/dijit/_editor/nls/he/LinkDialog.js +7 -1
  53. data/dojo/dijit/_editor/nls/he/commands.js +9 -2
  54. data/dojo/dijit/_editor/nls/ja/commands.js +9 -10
  55. data/dojo/dijit/_editor/nls/nb/LinkDialog.js +7 -1
  56. data/dojo/dijit/_editor/nls/nb/commands.js +5 -0
  57. data/dojo/dijit/_editor/nls/nl/LinkDialog.js +7 -1
  58. data/dojo/dijit/_editor/nls/nl/commands.js +5 -0
  59. data/dojo/dijit/_editor/nls/pt-pt/LinkDialog.js +8 -2
  60. data/dojo/dijit/_editor/nls/pt-pt/commands.js +5 -0
  61. data/dojo/dijit/_editor/nls/ro/FontChoice.js +27 -0
  62. data/dojo/dijit/_editor/nls/ro/LinkDialog.js +13 -0
  63. data/dojo/dijit/_editor/nls/ro/commands.js +48 -0
  64. data/dojo/dijit/_editor/nls/sk/LinkDialog.js +9 -4
  65. data/dojo/dijit/_editor/nls/sk/commands.js +4 -0
  66. data/dojo/dijit/_editor/nls/sl/LinkDialog.js +6 -1
  67. data/dojo/dijit/_editor/nls/sl/commands.js +12 -8
  68. data/dojo/dijit/_editor/nls/sv/LinkDialog.js +7 -1
  69. data/dojo/dijit/_editor/nls/sv/commands.js +8 -2
  70. data/dojo/dijit/_editor/nls/th/LinkDialog.js +6 -1
  71. data/dojo/dijit/_editor/nls/th/commands.js +6 -2
  72. data/dojo/dijit/_editor/nls/tr/LinkDialog.js +7 -1
  73. data/dojo/dijit/_editor/nls/tr/commands.js +5 -0
  74. data/dojo/dijit/_editor/nls/zh-tw/LinkDialog.js +1 -1
  75. data/dojo/dijit/_editor/nls/zh/commands.js +3 -3
  76. data/dojo/dijit/_editor/plugins/AlwaysShowToolbar.js +2 -2
  77. data/dojo/dijit/_editor/plugins/EnterKeyHandling.js +85 -4
  78. data/dojo/dijit/_editor/plugins/FontChoice.js +194 -32
  79. data/dojo/dijit/_editor/plugins/FullScreen.js +76 -32
  80. data/dojo/dijit/_editor/plugins/LinkDialog.js +79 -22
  81. data/dojo/dijit/_editor/plugins/NewPage.js +7 -2
  82. data/dojo/dijit/_editor/plugins/Print.js +6 -3
  83. data/dojo/dijit/_editor/plugins/TabIndent.js +2 -2
  84. data/dojo/dijit/_editor/plugins/TextColor.js +75 -23
  85. data/dojo/dijit/_editor/plugins/ToggleDir.js +1 -1
  86. data/dojo/dijit/_editor/plugins/ViewSource.js +53 -28
  87. data/dojo/dijit/_editor/range.js +22 -19
  88. data/dojo/dijit/_editor/selection.js +56 -4
  89. data/dojo/dijit/dijit-all.js +5 -1
  90. data/dojo/dijit/form/Button.js +24 -58
  91. data/dojo/dijit/form/CheckBox.js +27 -19
  92. data/dojo/dijit/form/ComboBox.js +73 -54
  93. data/dojo/dijit/form/CurrencyTextBox.js +8 -5
  94. data/dojo/dijit/form/FilteringSelect.js +14 -6
  95. data/dojo/dijit/form/Form.js +26 -16
  96. data/dojo/dijit/form/HorizontalRuleLabels.js +2 -2
  97. data/dojo/dijit/form/HorizontalSlider.js +12 -1
  98. data/dojo/dijit/form/MultiSelect.js +3 -3
  99. data/dojo/dijit/form/NumberSpinner.js +4 -5
  100. data/dojo/dijit/form/NumberTextBox.js +25 -17
  101. data/dojo/dijit/form/Select.js +24 -18
  102. data/dojo/dijit/form/SimpleTextarea.js +2 -2
  103. data/dojo/dijit/form/TextBox.js +72 -12
  104. data/dojo/dijit/form/Textarea.js +8 -1
  105. data/dojo/dijit/form/TimeTextBox.js +3 -2
  106. data/dojo/dijit/form/ValidationTextBox.js +56 -42
  107. data/dojo/dijit/form/VerticalRuleLabels.js +4 -1
  108. data/dojo/dijit/form/VerticalSlider.js +0 -30
  109. data/dojo/dijit/form/_DateTimeTextBox.js +23 -17
  110. data/dojo/dijit/form/_FormMixin.js +23 -19
  111. data/dojo/dijit/form/_FormSelectWidget.js +3 -3
  112. data/dojo/dijit/form/_FormWidget.js +66 -164
  113. data/dojo/dijit/form/_Spinner.js +18 -37
  114. data/dojo/dijit/form/nls/ro/ComboBox.js +5 -0
  115. data/dojo/dijit/form/nls/ro/Textarea.js +8 -0
  116. data/dojo/dijit/form/nls/ro/validate.js +6 -0
  117. data/dojo/dijit/form/templates/Button.html +15 -16
  118. data/dojo/dijit/form/templates/CheckBox.html +3 -3
  119. data/dojo/dijit/form/templates/ComboBox.html +13 -14
  120. data/dojo/dijit/form/templates/ComboButton.html +13 -10
  121. data/dojo/dijit/form/templates/DropDownButton.html +18 -20
  122. data/dojo/dijit/form/templates/HorizontalSlider.html +7 -7
  123. data/dojo/dijit/form/templates/Select.html +7 -8
  124. data/dojo/dijit/form/templates/Spinner.html +23 -24
  125. data/dojo/dijit/form/templates/TextBox.html +6 -4
  126. data/dojo/dijit/form/templates/ValidationTextBox.html +8 -10
  127. data/dojo/dijit/form/templates/VerticalSlider.html +8 -9
  128. data/dojo/dijit/icons/commonIcons.css +164 -0
  129. data/dojo/dijit/icons/commonIcons_rtl.css +127 -0
  130. data/dojo/dijit/icons/editorIcons.css +78 -0
  131. data/dojo/dijit/icons/editorIcons_rtl.css +23 -0
  132. data/dojo/dijit/icons/images/commonIconsObjActDisabled.png +0 -0
  133. data/dojo/dijit/icons/images/commonIconsObjActDisabled_rtl.png +0 -0
  134. data/dojo/dijit/icons/images/commonIconsObjActEnabled.png +0 -0
  135. data/dojo/dijit/icons/images/commonIconsObjActEnabled8bit.png +0 -0
  136. data/dojo/dijit/icons/images/commonIconsObjActEnabled8bit_rtl.png +0 -0
  137. data/dojo/dijit/icons/images/commonIconsObjActEnabled_rtl.png +0 -0
  138. data/dojo/dijit/icons/images/editorIconsDisabled.png +0 -0
  139. data/dojo/dijit/icons/images/editorIconsDisabled_rtl.png +0 -0
  140. data/dojo/dijit/icons/images/editorIconsEnabled.png +0 -0
  141. data/dojo/dijit/icons/images/editorIconsEnabled_rtl.png +0 -0
  142. data/dojo/dijit/icons/images/loadingAnimation_rtl.gif +0 -0
  143. data/dojo/dijit/layout/AccordionContainer.js +214 -104
  144. data/dojo/dijit/layout/BorderContainer.js +50 -38
  145. data/dojo/dijit/layout/ContentPane.js +13 -11
  146. data/dojo/dijit/layout/ScrollingTabController.js +29 -28
  147. data/dojo/dijit/layout/SplitContainer.js +0 -1
  148. data/dojo/dijit/layout/StackContainer.js +15 -22
  149. data/dojo/dijit/layout/StackController.js +15 -18
  150. data/dojo/dijit/layout/TabContainer.js +2 -0
  151. data/dojo/dijit/layout/TabController.js +21 -17
  152. data/dojo/dijit/layout/_LayoutWidget.js +0 -1
  153. data/dojo/dijit/layout/templates/AccordionButton.html +5 -3
  154. data/dojo/dijit/layout/templates/ScrollingTabController.html +13 -8
  155. data/dojo/dijit/layout/templates/_ScrollingTabControllerButton.html +4 -5
  156. data/dojo/dijit/layout/templates/_TabButton.html +10 -9
  157. data/dojo/dijit/nls/ro/common.js +7 -0
  158. data/dojo/dijit/nls/ro/loading.js +5 -0
  159. data/dojo/dijit/robot.js +0 -97
  160. data/dojo/dijit/robotx.js +1 -1
  161. data/dojo/dijit/templates/Calendar.html +6 -6
  162. data/dojo/dijit/templates/CheckedMenuItem.html +3 -4
  163. data/dojo/dijit/templates/ColorPalette.html +4 -3
  164. data/dojo/dijit/templates/Dialog.html +1 -1
  165. data/dojo/dijit/templates/Menu.html +1 -1
  166. data/dojo/dijit/templates/MenuBarItem.html +1 -1
  167. data/dojo/dijit/templates/MenuItem.html +3 -3
  168. data/dojo/dijit/templates/MenuSeparator.html +6 -2
  169. data/dojo/dijit/templates/ProgressBar.html +1 -2
  170. data/dojo/dijit/templates/TimePicker.html +1 -1
  171. data/dojo/dijit/templates/TitlePane.html +8 -6
  172. data/dojo/dijit/templates/TreeNode.html +3 -3
  173. data/dojo/dijit/tests/Tree.html +16 -30
  174. data/dojo/dijit/tests/Tree_with_JRS.html +33 -27
  175. data/dojo/dijit/tests/Widget-placeAt.html +6 -6
  176. data/dojo/dijit/tests/_Container.html +1 -1
  177. data/dojo/dijit/tests/_Templated-widgetsInTemplate.html +2 -2
  178. data/dojo/dijit/tests/_Widget-attr.html +26 -7
  179. data/dojo/dijit/tests/_Widget-connect-performance.html +1 -1
  180. data/dojo/dijit/tests/_Widget-deferredConnect.html +1 -1
  181. data/dojo/dijit/tests/_Widget-lifecycle.html +1 -1
  182. data/dojo/dijit/tests/_Widget-ondijitclick.html +1 -1
  183. data/dojo/dijit/tests/_Widget-subscribe.html +1 -1
  184. data/dojo/dijit/tests/_altCalendar.html +12 -11
  185. data/dojo/dijit/tests/_base/module.js +5 -9
  186. data/dojo/dijit/tests/_base/place.html +2 -1
  187. data/dojo/dijit/tests/_base/robot/FocusManager.html +0 -2
  188. data/dojo/dijit/tests/_base/robot/focus_mouse.html +0 -1
  189. data/dojo/dijit/tests/_base/robot/popup.html +0 -1
  190. data/dojo/dijit/tests/_base/robot/typematic.html +72 -0
  191. data/dojo/dijit/tests/_base/tabindex.html +1 -1
  192. data/dojo/dijit/tests/_base/test_FocusManager.html +3 -2
  193. data/dojo/dijit/tests/_base/test_focusWidget.html +1 -1
  194. data/dojo/dijit/tests/_base/test_typematic.html +10 -3
  195. data/dojo/dijit/tests/_testCommon.js +28 -12
  196. data/dojo/dijit/tests/bidi.html +188 -0
  197. data/dojo/dijit/tests/editor/BackForwardState.html +2 -2
  198. data/dojo/dijit/tests/editor/EnterKeyHandling.html +31 -11
  199. data/dojo/dijit/tests/editor/_Editor.html +5 -4
  200. data/dojo/dijit/tests/editor/nls_8859-2.html +4 -4
  201. data/dojo/dijit/tests/editor/nls_sjis.html +5 -5
  202. data/dojo/dijit/tests/editor/nls_utf8.html +2 -2
  203. data/dojo/dijit/tests/editor/robot/BackForwardState.html +8 -9
  204. data/dojo/dijit/tests/editor/robot/Editor_FontChoice.html +282 -757
  205. data/dojo/dijit/tests/editor/robot/Editor_FullScreen.html +55 -55
  206. data/dojo/dijit/tests/editor/robot/Editor_LinkDialog.html +502 -123
  207. data/dojo/dijit/tests/editor/robot/Editor_NewPage.html +11 -11
  208. data/dojo/dijit/tests/editor/robot/Editor_ViewSource.html +56 -56
  209. data/dojo/dijit/tests/editor/robot/Editor_a11y.html +14 -14
  210. data/dojo/dijit/tests/editor/robot/Editor_misc.html +120 -4
  211. data/dojo/dijit/tests/editor/robot/Editor_mouse.html +4 -4
  212. data/dojo/dijit/tests/editor/robot/EnterKeyHandling.html +128 -16
  213. data/dojo/dijit/tests/editor/test_CustomPlugin.html +4 -4
  214. data/dojo/dijit/tests/editor/test_Editor.html +103 -70
  215. data/dojo/dijit/tests/editor/test_FontChoice.html +19 -5
  216. data/dojo/dijit/tests/editor/test_FullScreen.html +2 -2
  217. data/dojo/dijit/tests/editor/test_LinkDialog.html +2 -2
  218. data/dojo/dijit/tests/editor/test_NewPage.html +2 -2
  219. data/dojo/dijit/tests/editor/test_Print.html +2 -2
  220. data/dojo/dijit/tests/editor/test_TabIndent.html +2 -2
  221. data/dojo/dijit/tests/editor/test_ToggleDir.html +2 -2
  222. data/dojo/dijit/tests/editor/test_ToggleDir_rtl.html +2 -2
  223. data/dojo/dijit/tests/editor/test_ViewSource.html +2 -2
  224. data/dojo/dijit/tests/editor/test_resize.html +1 -1
  225. data/dojo/dijit/tests/form/Form.html +30 -16
  226. data/dojo/dijit/tests/form/FormInvalid.html +4 -4
  227. data/dojo/dijit/tests/form/TextBox_sizes.html +532 -0
  228. data/dojo/dijit/tests/form/TextBox_sizes.js +456 -0
  229. data/dojo/dijit/tests/form/_autoComplete.html +35 -15
  230. data/dojo/dijit/tests/form/module.js +25 -1
  231. data/dojo/dijit/tests/form/robot/Button_a11y.html +27 -14
  232. data/dojo/dijit/tests/form/robot/Button_mouse.html +429 -18
  233. data/dojo/dijit/tests/form/robot/DateTextBox.html +31 -34
  234. data/dojo/dijit/tests/form/robot/Form.html +3 -4
  235. data/dojo/dijit/tests/form/robot/Select.html +410 -0
  236. data/dojo/dijit/tests/form/robot/Slider_a11y.html +27 -28
  237. data/dojo/dijit/tests/form/robot/Slider_mouse.html +29 -29
  238. data/dojo/dijit/tests/form/robot/Spinner_a11y.html +88 -51
  239. data/dojo/dijit/tests/form/robot/Spinner_mouse.html +36 -37
  240. data/dojo/dijit/tests/form/robot/Textarea.html +178 -0
  241. data/dojo/dijit/tests/form/robot/TimeTextBox.html +81 -0
  242. data/dojo/dijit/tests/form/robot/_autoComplete_a11y.html +128 -47
  243. data/dojo/dijit/tests/form/robot/_autoComplete_mouse.html +171 -24
  244. data/dojo/dijit/tests/form/robot/test_validate.html +362 -102
  245. data/dojo/dijit/tests/form/robot/validationMessages.html +470 -0
  246. data/dojo/dijit/tests/form/runTests.html +9 -0
  247. data/dojo/dijit/tests/form/test_Button.html +56 -10
  248. data/dojo/dijit/tests/form/test_CheckBox.html +212 -61
  249. data/dojo/dijit/tests/form/test_ComboBox_destroy.html +2 -2
  250. data/dojo/dijit/tests/form/test_DateTextBox.html +17 -12
  251. data/dojo/dijit/tests/form/test_Form_onsubmit.html +2 -2
  252. data/dojo/dijit/tests/form/test_MultiSelect.html +7 -7
  253. data/dojo/dijit/tests/form/test_Select.html +180 -97
  254. data/dojo/dijit/tests/form/test_SimpleTextarea.html +16 -11
  255. data/dojo/dijit/tests/form/test_Slider.html +4 -4
  256. data/dojo/dijit/tests/form/test_Spinner.html +10 -11
  257. data/dojo/dijit/tests/form/test_Textarea.html +80 -76
  258. data/dojo/dijit/tests/form/test_TimeTextBox.html +2 -2
  259. data/dojo/dijit/tests/form/test_validStatePerformance.html +6 -6
  260. data/dojo/dijit/tests/form/test_validate.html +34 -23
  261. data/dojo/dijit/tests/form/test_validationState.html +8 -8
  262. data/dojo/dijit/tests/general-module.js +1 -0
  263. data/dojo/dijit/tests/helpers.js +2 -2
  264. data/dojo/dijit/tests/i18n/calendar.html +2 -2
  265. data/dojo/dijit/tests/i18n/currency.html +1 -1
  266. data/dojo/dijit/tests/i18n/date.html +1 -1
  267. data/dojo/dijit/tests/i18n/digit.html +1 -1
  268. data/dojo/dijit/tests/i18n/module.js +6 -6
  269. data/dojo/dijit/tests/i18n/number.html +1 -1
  270. data/dojo/dijit/tests/i18n/textbox.html +1 -1
  271. data/dojo/dijit/tests/i18n/time.html +1 -1
  272. data/dojo/dijit/tests/images/copy.gif +0 -0
  273. data/dojo/dijit/tests/images/cut.gif +0 -0
  274. data/dojo/dijit/tests/images/note.gif +0 -0
  275. data/dojo/dijit/tests/images/paste.gif +0 -0
  276. data/dojo/dijit/tests/infrastructure-module.js +7 -7
  277. data/dojo/dijit/tests/layout/AccordionContainer.html +81 -23
  278. data/dojo/dijit/tests/layout/ContentPane.html +40 -40
  279. data/dojo/dijit/tests/layout/ContentPaneLayout.html +6 -6
  280. data/dojo/dijit/tests/layout/TabContainer.html +20 -20
  281. data/dojo/dijit/tests/layout/getResponse.php +1 -1
  282. data/dojo/dijit/tests/layout/module.js +9 -2
  283. data/dojo/dijit/tests/layout/nestedStack.html +1 -1
  284. data/dojo/dijit/tests/layout/robot/AccordionContainer_a11y.html +68 -0
  285. data/dojo/dijit/tests/layout/robot/AccordionContainer_mouse.html +53 -0
  286. data/dojo/dijit/tests/layout/robot/BorderContainer.html +358 -0
  287. data/dojo/dijit/tests/layout/robot/TabContainer_a11y.html +29 -12
  288. data/dojo/dijit/tests/layout/robot/TabContainer_mouse.html +19 -13
  289. data/dojo/dijit/tests/layout/test_AccordionContainer.html +12 -8
  290. data/dojo/dijit/tests/layout/test_AccordionContainerDestroy.html +3 -3
  291. data/dojo/dijit/tests/layout/test_BorderContainer.html +21 -19
  292. data/dojo/dijit/tests/layout/test_BorderContainer_complex.html +2 -2
  293. data/dojo/dijit/tests/layout/test_BorderContainer_experimental.html +2 -2
  294. data/dojo/dijit/tests/layout/test_BorderContainer_full.html +2 -2
  295. data/dojo/dijit/tests/layout/test_BorderContainer_nested.html +2 -2
  296. data/dojo/dijit/tests/layout/test_BorderContainer_prog.html +2 -2
  297. data/dojo/dijit/tests/layout/test_ContentPane.html +7 -7
  298. data/dojo/dijit/tests/layout/test_ContentPane_prog.html +4 -4
  299. data/dojo/dijit/tests/layout/test_Gui.html +2 -2
  300. data/dojo/dijit/tests/layout/test_LayoutContainer.html +2 -2
  301. data/dojo/dijit/tests/layout/test_SplitContainer.html +1 -1
  302. data/dojo/dijit/tests/layout/test_StackContainer.html +6 -6
  303. data/dojo/dijit/tests/layout/test_StackContainer_code.html +2 -2
  304. data/dojo/dijit/tests/layout/test_TabContainer.html +10 -10
  305. data/dojo/dijit/tests/layout/test_TabContainerTitlePane.html +2 -2
  306. data/dojo/dijit/tests/layout/test_TabContainer_noLayout.html +2 -2
  307. data/dojo/dijit/tests/layout/test_TabContainer_prog.html +2 -2
  308. data/dojo/dijit/tests/layout/test_TabContainer_remote.html +2 -2
  309. data/dojo/dijit/tests/layout/test_refreshOnShow.html +2 -2
  310. data/dojo/dijit/tests/robot/Calendar_a11y.html +6 -7
  311. data/dojo/dijit/tests/robot/ColorPalette.html +38 -21
  312. data/dojo/dijit/tests/robot/Dialog_a11y.html +58 -17
  313. data/dojo/dijit/tests/robot/Dialog_mouse.html +0 -1
  314. data/dojo/dijit/tests/robot/InlineEditBox.html +135 -24
  315. data/dojo/dijit/tests/robot/Menu_a11y.html +7 -7
  316. data/dojo/dijit/tests/robot/Menu_mouse.html +2 -11
  317. data/dojo/dijit/tests/robot/TitlePane.html +20 -20
  318. data/dojo/dijit/tests/robot/Toolbar.html +3 -4
  319. data/dojo/dijit/tests/robot/TooltipDialog_a11y.html +233 -110
  320. data/dojo/dijit/tests/robot/TooltipDialog_mouse.html +121 -0
  321. data/dojo/dijit/tests/robot/Tooltip_a11y.html +15 -15
  322. data/dojo/dijit/tests/robot/Tooltip_mouse.html +0 -1
  323. data/dojo/dijit/tests/robot/Tree_a11y.html +74 -1
  324. data/dojo/dijit/tests/robot/Tree_dnd.html +5 -5
  325. data/dojo/dijit/tests/robot/Tree_dnd_multiParent.html +4 -4
  326. data/dojo/dijit/tests/robot/_Widget-deferredConnect.html +0 -1
  327. data/dojo/dijit/tests/robot/_Widget-ondijitclick_a11y.html +0 -1
  328. data/dojo/dijit/tests/robot/_Widget-ondijitclick_mouse.html +0 -1
  329. data/dojo/dijit/tests/test.html +1 -1
  330. data/dojo/dijit/tests/test_Calendar.html +4 -4
  331. data/dojo/dijit/tests/test_ColorPalette.html +3 -3
  332. data/dojo/dijit/tests/test_ColorPalette_quirks.html +5 -0
  333. data/dojo/dijit/tests/test_Declaration.html +2 -2
  334. data/dojo/dijit/tests/test_Dialog.html +65 -4
  335. data/dojo/dijit/tests/test_Dialog_focusDestroy.html +2 -2
  336. data/dojo/dijit/tests/test_InlineEditBox.html +14 -5
  337. data/dojo/dijit/tests/test_Menu.html +10 -8
  338. data/dojo/dijit/tests/test_Menu_iframe.html +1 -1
  339. data/dojo/dijit/tests/test_ProgressBar.html +2 -2
  340. data/dojo/dijit/tests/test_TitlePane.html +18 -18
  341. data/dojo/dijit/tests/test_Toolbar.html +2 -2
  342. data/dojo/dijit/tests/test_Tooltip.html +3 -3
  343. data/dojo/dijit/tests/test_TooltipDialog.html +20 -10
  344. data/dojo/dijit/tests/test_Tree.html +26 -20
  345. data/dojo/dijit/tests/test_Tree_Notification_API_Support.html +2 -2
  346. data/dojo/dijit/tests/test_bgIframe.html +2 -2
  347. data/dojo/dijit/tests/test_instantiate.html +2 -2
  348. data/dojo/dijit/tests/tree/module.js +2 -2
  349. data/dojo/dijit/tests/tree/test_CustomLabel.html +2 -2
  350. data/dojo/dijit/tests/tree/test_Tree_DnD.html +2 -2
  351. data/dojo/dijit/tests/tree/test_Tree_Programmatic.html +2 -2
  352. data/dojo/dijit/tests/tree/test_Tree_v1.html +3 -3
  353. data/dojo/dijit/themes/a11y/colors3x4-rtl.png +0 -0
  354. data/dojo/dijit/themes/a11y/colors3x4.png +0 -0
  355. data/dojo/dijit/themes/a11y/colors7x10-rtl.png +0 -0
  356. data/dojo/dijit/themes/a11y/colors7x10.png +0 -0
  357. data/dojo/dijit/themes/claro/Calendar.css +257 -0
  358. data/dojo/dijit/themes/claro/Calendar_rtl.css +19 -0
  359. data/dojo/dijit/themes/claro/ColorPalette.css +44 -0
  360. data/dojo/dijit/themes/claro/Common.css +79 -0
  361. data/dojo/dijit/themes/claro/Dialog.css +212 -0
  362. data/dojo/dijit/themes/claro/Dialog_rtl.css +10 -0
  363. data/dojo/dijit/themes/claro/Editor.css +56 -0
  364. data/dojo/dijit/themes/claro/Editor_rtl.css +7 -0
  365. data/dojo/dijit/themes/claro/InlineEditBox.css +23 -0
  366. data/dojo/dijit/themes/claro/Menu.css +182 -0
  367. data/dojo/dijit/themes/claro/Menu_rtl.css +9 -0
  368. data/dojo/dijit/themes/claro/ProgressBar.css +53 -0
  369. data/dojo/dijit/themes/claro/TimePicker.css +125 -0
  370. data/dojo/dijit/themes/claro/TimePicker_rtl.css +10 -0
  371. data/dojo/dijit/themes/claro/TitlePane.css +73 -0
  372. data/dojo/dijit/themes/claro/TitlePane_rtl.css +4 -0
  373. data/dojo/dijit/themes/claro/Toolbar.css +170 -0
  374. data/dojo/dijit/themes/claro/Tree.css +122 -0
  375. data/dojo/dijit/themes/claro/claro.css +29 -0
  376. data/dojo/dijit/themes/claro/claro_rtl.css +15 -0
  377. data/dojo/dijit/themes/claro/document.css +109 -0
  378. data/dojo/dijit/themes/claro/form/Button.css +168 -0
  379. data/dojo/dijit/themes/claro/form/Button_rtl.css +22 -0
  380. data/dojo/dijit/themes/claro/form/Checkbox.css +77 -0
  381. data/dojo/dijit/themes/claro/form/Common.css +176 -0
  382. data/dojo/dijit/themes/claro/form/Common_rtl.css +10 -0
  383. data/dojo/dijit/themes/claro/form/NumberSpinner.css +143 -0
  384. data/dojo/dijit/themes/claro/form/RadioButton.css +82 -0
  385. data/dojo/dijit/themes/claro/form/Select.css +124 -0
  386. data/dojo/dijit/themes/claro/form/Select_rtl.css +4 -0
  387. data/dojo/dijit/themes/claro/form/Slider.css +359 -0
  388. data/dojo/dijit/themes/claro/form/Slider_rtl.css +31 -0
  389. data/dojo/dijit/themes/claro/form/images/button.png +0 -0
  390. data/dojo/dijit/themes/claro/form/images/buttonArrows.png +0 -0
  391. data/dojo/dijit/themes/claro/form/images/button_grad_d.png +0 -0
  392. data/dojo/dijit/themes/claro/form/images/checkboxAndRadioButtons_IE6.png +0 -0
  393. data/dojo/dijit/themes/claro/form/images/checkboxRadioButtonStates.png +0 -0
  394. data/dojo/dijit/themes/claro/form/images/commonFormArrows.png +0 -0
  395. data/dojo/dijit/themes/claro/form/images/error.png +0 -0
  396. data/dojo/dijit/themes/claro/form/images/formHighlight.png +0 -0
  397. data/dojo/dijit/themes/claro/form/images/shadow.png +0 -0
  398. data/dojo/dijit/themes/claro/form/images/sliderHorizontal.png +0 -0
  399. data/dojo/dijit/themes/claro/form/images/sliderThumbs.png +0 -0
  400. data/dojo/dijit/themes/claro/form/images/sliderVertical.png +0 -0
  401. data/dojo/dijit/themes/claro/form/images/textBox_back.png +0 -0
  402. data/dojo/dijit/themes/claro/images/calendarArrows.png +0 -0
  403. data/dojo/dijit/themes/claro/images/calendarArrows8bit.png +0 -0
  404. data/dojo/dijit/themes/claro/images/calendarContainerImages.png +0 -0
  405. data/dojo/dijit/themes/claro/images/checkmarkNoBorder.gif +0 -0
  406. data/dojo/dijit/themes/claro/images/checkmarkNoBorder.png +0 -0
  407. data/dojo/dijit/themes/claro/images/commonHighlight.png +0 -0
  408. data/dojo/dijit/themes/claro/images/dialogCloseIcon.png +0 -0
  409. data/dojo/dijit/themes/claro/images/dialogCloseIcon8bit.png +0 -0
  410. data/dojo/dijit/themes/claro/images/dnd.png +0 -0
  411. data/dojo/dijit/themes/claro/images/loading.gif +0 -0
  412. data/dojo/dijit/themes/claro/images/loadingAnimation.gif +0 -0
  413. data/dojo/dijit/themes/claro/images/menuHighlight.png +0 -0
  414. data/dojo/dijit/themes/claro/images/progressBarAnim.gif +0 -0
  415. data/dojo/dijit/themes/claro/images/progressBarEmpty.png +0 -0
  416. data/dojo/dijit/themes/claro/images/progressBarFull.png +0 -0
  417. data/dojo/dijit/themes/claro/images/spriteArrows.png +0 -0
  418. data/dojo/dijit/themes/claro/images/titlebar.png +0 -0
  419. data/dojo/dijit/themes/claro/images/tooltip.png +0 -0
  420. data/dojo/dijit/themes/claro/images/tooltip8bit.png +0 -0
  421. data/dojo/dijit/themes/claro/images/treeExpandImages.png +0 -0
  422. data/dojo/dijit/themes/claro/images/treeExpandImages8bit.png +0 -0
  423. data/dojo/dijit/themes/claro/images/treeExpand_loading.gif +0 -0
  424. data/dojo/dijit/themes/claro/layout/AccordionContainer.css +108 -0
  425. data/dojo/dijit/themes/claro/layout/BorderContainer.css +134 -0
  426. data/dojo/dijit/themes/claro/layout/ContentPane.css +40 -0
  427. data/dojo/dijit/themes/claro/layout/TabContainer.css +439 -0
  428. data/dojo/dijit/themes/claro/layout/TabContainer_rtl.css +77 -0
  429. data/dojo/dijit/themes/claro/layout/images/accordion.png +0 -0
  430. data/dojo/dijit/themes/claro/layout/images/splitterHorizontalHover.png +0 -0
  431. data/dojo/dijit/themes/claro/layout/images/splitterVerticalHover.png +0 -0
  432. data/dojo/dijit/themes/claro/layout/images/tabBottom.png +0 -0
  433. data/dojo/dijit/themes/claro/layout/images/tabClose.png +0 -0
  434. data/dojo/dijit/themes/claro/layout/images/tabLeft.png +0 -0
  435. data/dojo/dijit/themes/claro/layout/images/tabNested.png +0 -0
  436. data/dojo/dijit/themes/claro/layout/images/tabRight.png +0 -0
  437. data/dojo/dijit/themes/claro/layout/images/tabTop.png +0 -0
  438. data/dojo/dijit/themes/dijit.css +633 -452
  439. data/dojo/dijit/themes/dijit_rtl.css +70 -59
  440. data/dojo/dijit/themes/nihilo/Calendar.css +0 -14
  441. data/dojo/dijit/themes/nihilo/Dialog.css +2 -5
  442. data/dojo/dijit/themes/nihilo/Editor.css +3 -58
  443. data/dojo/dijit/themes/nihilo/Editor_rtl.css +2 -6
  444. data/dojo/dijit/themes/nihilo/TimePicker.css +1 -11
  445. data/dojo/dijit/themes/nihilo/TimePicker_rtl.css +4 -0
  446. data/dojo/dijit/themes/nihilo/TitlePane.css +3 -32
  447. data/dojo/dijit/themes/nihilo/Toolbar.css +2 -2
  448. data/dojo/dijit/themes/nihilo/Tree.css +2 -20
  449. data/dojo/dijit/themes/nihilo/Tree_rtl.css +10 -16
  450. data/dojo/dijit/themes/nihilo/form/Button.css +36 -20
  451. data/dojo/dijit/themes/nihilo/form/Common.css +11 -37
  452. data/dojo/dijit/themes/nihilo/form/Select.css +4 -11
  453. data/dojo/dijit/themes/nihilo/form/Slider.css +0 -8
  454. data/dojo/dijit/themes/nihilo/layout/AccordionContainer.css +2 -4
  455. data/dojo/dijit/themes/nihilo/layout/AccordionContainer_rtl.css +1 -1
  456. data/dojo/dijit/themes/nihilo/layout/TabContainer.css +12 -23
  457. data/dojo/dijit/themes/nihilo/nihilo.css +2 -1
  458. data/dojo/dijit/themes/nihilo/nihilo_rtl.css +3 -2
  459. data/dojo/dijit/themes/soria/Calendar.css +0 -14
  460. data/dojo/dijit/themes/soria/Dialog.css +2 -5
  461. data/dojo/dijit/themes/soria/Editor.css +3 -57
  462. data/dojo/dijit/themes/soria/Editor_rtl.css +2 -7
  463. data/dojo/dijit/themes/soria/TimePicker.css +0 -10
  464. data/dojo/dijit/themes/soria/TimePicker_rtl.css +4 -0
  465. data/dojo/dijit/themes/soria/TitlePane.css +4 -30
  466. data/dojo/dijit/themes/soria/Toolbar.css +2 -2
  467. data/dojo/dijit/themes/soria/Tree.css +3 -20
  468. data/dojo/dijit/themes/soria/Tree_rtl.css +11 -12
  469. data/dojo/dijit/themes/soria/form/Button.css +38 -29
  470. data/dojo/dijit/themes/soria/form/Common.css +10 -36
  471. data/dojo/dijit/themes/soria/form/Select.css +4 -11
  472. data/dojo/dijit/themes/soria/form/Slider.css +0 -8
  473. data/dojo/dijit/themes/soria/layout/AccordionContainer.css +2 -4
  474. data/dojo/dijit/themes/soria/layout/AccordionContainer_rtl.css +1 -1
  475. data/dojo/dijit/themes/soria/layout/TabContainer.css +17 -34
  476. data/dojo/dijit/themes/soria/soria.css +2 -2
  477. data/dojo/dijit/themes/soria/soria_rtl.css +3 -2
  478. data/dojo/dijit/themes/themeTester.html +215 -100
  479. data/dojo/dijit/themes/tundra/Calendar.css +9 -20
  480. data/dojo/dijit/themes/tundra/Calendar_rtl.css +2 -2
  481. data/dojo/dijit/themes/tundra/Dialog.css +6 -25
  482. data/dojo/dijit/themes/tundra/Dialog_rtl.css +1 -1
  483. data/dojo/dijit/themes/tundra/Editor.css +5 -58
  484. data/dojo/dijit/themes/tundra/Editor_rtl.css +4 -9
  485. data/dojo/dijit/themes/tundra/Menu.css +2 -2
  486. data/dojo/dijit/themes/tundra/Menu_rtl.css +1 -6
  487. data/dojo/dijit/themes/tundra/TimePicker.css +0 -10
  488. data/dojo/dijit/themes/tundra/TimePicker_rtl.css +4 -0
  489. data/dojo/dijit/themes/tundra/TitlePane.css +4 -38
  490. data/dojo/dijit/themes/tundra/TitlePane_rtl.css +1 -1
  491. data/dojo/dijit/themes/tundra/Toolbar.css +12 -2
  492. data/dojo/dijit/themes/tundra/Tree.css +3 -22
  493. data/dojo/dijit/themes/tundra/Tree_rtl.css +9 -9
  494. data/dojo/dijit/themes/tundra/form/Button.css +35 -59
  495. data/dojo/dijit/themes/tundra/form/Common.css +12 -84
  496. data/dojo/dijit/themes/tundra/form/RadioButton.css +11 -13
  497. data/dojo/dijit/themes/tundra/form/Select.css +15 -22
  498. data/dojo/dijit/themes/tundra/form/Slider.css +0 -7
  499. data/dojo/dijit/themes/tundra/form/Slider_rtl.css +12 -12
  500. data/dojo/dijit/themes/tundra/layout/AccordionContainer.css +2 -4
  501. data/dojo/dijit/themes/tundra/layout/SplitContainer.css +0 -4
  502. data/dojo/dijit/themes/tundra/layout/TabContainer.css +19 -44
  503. data/dojo/dijit/themes/tundra/layout/TabContainer_rtl.css +21 -9
  504. data/dojo/dijit/themes/tundra/tundra.css +2 -1
  505. data/dojo/dijit/themes/tundra/tundra_rtl.css +2 -1
  506. data/dojo/dijit/tree/TreeStoreModel.js +13 -12
  507. data/dojo/dojo/DeferredList.js +66 -78
  508. data/dojo/dojo/LICENSE +1 -1
  509. data/dojo/dojo/NodeList-fx.js +92 -18
  510. data/dojo/dojo/Stateful.js +123 -0
  511. data/dojo/dojo/_base.js +1 -1
  512. data/dojo/dojo/_base/Deferred.js +211 -301
  513. data/dojo/dojo/_base/NodeList.js +28 -5
  514. data/dojo/dojo/_base/_loader/bootstrap.js +5 -16
  515. data/dojo/dojo/_base/_loader/hostenv_browser.js +42 -24
  516. data/dojo/dojo/_base/connect.js +13 -13
  517. data/dojo/dojo/_base/declare.js +81 -17
  518. data/dojo/dojo/_base/fx.js +75 -77
  519. data/dojo/dojo/_base/html.js +20 -10
  520. data/dojo/dojo/_base/json.js +2 -1
  521. data/dojo/dojo/back.js +7 -0
  522. data/dojo/dojo/cache.js +7 -8
  523. data/dojo/dojo/cldr/monetary.js +7 -4
  524. data/dojo/dojo/cldr/nls/ar/gregorian.js +7 -3
  525. data/dojo/dojo/cldr/nls/ar/hebrew.js +12 -16
  526. data/dojo/dojo/cldr/nls/ar/islamic-civil.js +124 -49
  527. data/dojo/dojo/cldr/nls/ar/islamic.js +61 -70
  528. data/dojo/dojo/cldr/nls/buddhist.js +236 -0
  529. data/dojo/dojo/cldr/nls/ca/gregorian.js +152 -148
  530. data/dojo/dojo/cldr/nls/cs/gregorian.js +110 -100
  531. data/dojo/dojo/cldr/nls/cs/number.js +1 -1
  532. data/dojo/dojo/cldr/nls/currency.js +0 -1
  533. data/dojo/dojo/cldr/nls/da/gregorian.js +144 -145
  534. data/dojo/dojo/cldr/nls/de/gregorian.js +22 -24
  535. data/dojo/dojo/cldr/nls/el/gregorian.js +15 -14
  536. data/dojo/dojo/cldr/nls/en-au/gregorian.js +3 -0
  537. data/dojo/dojo/cldr/nls/en-ca/gregorian.js +10 -0
  538. data/dojo/dojo/cldr/nls/en/gregorian.js +12 -10
  539. data/dojo/dojo/cldr/nls/es/gregorian.js +19 -20
  540. data/dojo/dojo/cldr/nls/fi/gregorian.js +15 -14
  541. data/dojo/dojo/cldr/nls/fr/gregorian.js +15 -17
  542. data/dojo/dojo/cldr/nls/gregorian.js +14 -8
  543. data/dojo/dojo/cldr/nls/he/gregorian.js +48 -49
  544. data/dojo/dojo/cldr/nls/he/hebrew.js +23 -56
  545. data/dojo/dojo/cldr/nls/he/islamic.js +17 -19
  546. data/dojo/dojo/cldr/nls/hebrew.js +133 -124
  547. data/dojo/dojo/cldr/nls/hu/gregorian.js +20 -17
  548. data/dojo/dojo/cldr/nls/islamic.js +132 -129
  549. data/dojo/dojo/cldr/nls/it/gregorian.js +143 -145
  550. data/dojo/dojo/cldr/nls/ja/gregorian.js +17 -17
  551. data/dojo/dojo/cldr/nls/ko/gregorian.js +19 -19
  552. data/dojo/dojo/cldr/nls/nb/gregorian.js +141 -143
  553. data/dojo/dojo/cldr/nls/nl/gregorian.js +12 -14
  554. data/dojo/dojo/cldr/nls/pl/gregorian.js +149 -143
  555. data/dojo/dojo/cldr/nls/pt-pt/gregorian.js +83 -39
  556. data/dojo/dojo/cldr/nls/pt/gregorian.js +14 -16
  557. data/dojo/dojo/cldr/nls/ru/gregorian.js +138 -146
  558. data/dojo/dojo/cldr/nls/sk/gregorian.js +15 -6
  559. data/dojo/dojo/cldr/nls/sl/gregorian.js +12 -11
  560. data/dojo/dojo/cldr/nls/sv/gregorian.js +23 -17
  561. data/dojo/dojo/cldr/nls/th/buddhist.js +10 -13
  562. data/dojo/dojo/cldr/nls/th/gregorian.js +140 -136
  563. data/dojo/dojo/cldr/nls/tr/gregorian.js +13 -13
  564. data/dojo/dojo/cldr/nls/zh-tw/gregorian.js +15 -2
  565. data/dojo/dojo/cldr/nls/zh/gregorian.js +17 -14
  566. data/dojo/dojo/cldr/supplemental.js +10 -10
  567. data/dojo/dojo/currency.js +27 -14
  568. data/dojo/dojo/data/ItemFileReadStore.js +22 -21
  569. data/dojo/dojo/date/locale.js +9 -9
  570. data/dojo/dojo/date/stamp.js +3 -5
  571. data/dojo/dojo/dnd/Container.js +3 -1
  572. data/dojo/dojo/dnd/Manager.js +1 -1
  573. data/dojo/dojo/dnd/Moveable.js +2 -2
  574. data/dojo/dojo/dnd/Mover.js +5 -5
  575. data/dojo/dojo/dnd/Source.js +9 -8
  576. data/dojo/dojo/dnd/common.js +1 -1
  577. data/dojo/dojo/dojo.js +6 -18
  578. data/dojo/dojo/hash.js +20 -15
  579. data/dojo/dojo/html.js +7 -6
  580. data/dojo/dojo/nls/ro/colors.js +155 -0
  581. data/dojo/dojo/number.js +67 -56
  582. data/dojo/dojo/parser.js +167 -47
  583. data/dojo/dojo/resources/dojo.css +5 -6
  584. data/dojo/dojo/robot.js +85 -11
  585. data/dojo/dojo/tests/NodeList-fx.html +58 -38
  586. data/dojo/dojo/tests/Stateful.js +36 -0
  587. data/dojo/dojo/tests/_base/Deferred.js +95 -0
  588. data/dojo/dojo/tests/_base/NodeList.html +9 -1
  589. data/dojo/dojo/tests/_base/declare.js +65 -3
  590. data/dojo/dojo/tests/_base/fx.html +55 -49
  591. data/dojo/dojo/tests/_base/html.html +7 -0
  592. data/dojo/dojo/tests/_base/html_rtl.html +1 -0
  593. data/dojo/dojo/tests/cache.js +7 -0
  594. data/dojo/dojo/tests/currency.js +3 -2
  595. data/dojo/dojo/tests/date/locale.js +7 -3
  596. data/dojo/dojo/tests/date/stamp.js +4 -0
  597. data/dojo/dojo/tests/dnd/robot/test_dnd.html +1 -1
  598. data/dojo/dojo/tests/hash.js +26 -1
  599. data/dojo/dojo/tests/module.js +3 -0
  600. data/dojo/dojo/tests/number.js +7 -0
  601. data/dojo/dojo/tests/parser.html +90 -10
  602. data/dojo/dojo/tests/uacss.js +10 -0
  603. data/dojo/{dijit/tests/_base → dojo/tests/uacss}/sniffQuirks.html +5 -4
  604. data/dojo/{dijit/tests/_base → dojo/tests/uacss}/sniffStandards.html +4 -4
  605. data/dojo/dojo/tests/window.js +11 -0
  606. data/dojo/{dijit/tests/_base → dojo/tests/window}/test_scroll.html +155 -229
  607. data/dojo/{dijit/tests/_base/test_scrollStrictDTD.html → dojo/tests/window/test_scrollNoDTD.html} +30 -35
  608. data/dojo/{dijit/tests/_base/test_scrollNoDTD.html → dojo/tests/window/test_scrollStrictDTD.html} +30 -31
  609. data/dojo/{dijit/tests/_base → dojo/tests/window}/viewport.html +8 -10
  610. data/dojo/dojo/tests/window/viewportQuirks.html +5 -0
  611. data/dojo/dojo/uacss.js +63 -0
  612. data/dojo/dojo/window.js +132 -0
  613. data/dojo/dojox/LICENSE +1 -1
  614. data/dojo/dojox/atom/io/model.js +1 -1
  615. data/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js +7 -0
  616. data/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js +12 -0
  617. data/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js +4 -0
  618. data/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js +6 -0
  619. data/dojo/dojox/av/FLAudio.js +62 -49
  620. data/dojo/dojox/av/resources/audio.swf +0 -0
  621. data/dojo/dojox/av/tests/test_FLAudio.html +15 -9
  622. data/dojo/dojox/charting/Chart2D.js +609 -51
  623. data/dojo/dojox/charting/DataChart.js +72 -63
  624. data/dojo/dojox/charting/DataSeries.js +183 -0
  625. data/dojo/dojox/charting/Element.js +201 -3
  626. data/dojo/dojox/charting/Series.js +47 -4
  627. data/dojo/dojox/charting/Theme.js +590 -189
  628. data/dojo/dojox/charting/action2d/Base.js +31 -5
  629. data/dojo/dojox/charting/action2d/Highlight.js +37 -12
  630. data/dojo/dojox/charting/action2d/Magnify.js +39 -13
  631. data/dojo/dojox/charting/action2d/MoveSlice.js +42 -13
  632. data/dojo/dojox/charting/action2d/Shake.js +36 -12
  633. data/dojo/dojox/charting/action2d/Tooltip.js +205 -7
  634. data/dojo/dojox/charting/axis2d/Base.js +46 -7
  635. data/dojo/dojox/charting/axis2d/Default.js +414 -238
  636. data/dojo/dojox/charting/axis2d/Invisible.js +290 -0
  637. data/dojo/dojox/charting/axis2d/common.js +53 -7
  638. data/dojo/dojox/charting/plot2d/Areas.js +2 -0
  639. data/dojo/dojox/charting/plot2d/Bars.js +94 -63
  640. data/dojo/dojox/charting/plot2d/Base.js +143 -53
  641. data/dojo/dojox/charting/plot2d/Bubble.js +139 -65
  642. data/dojo/dojox/charting/plot2d/Candlesticks.js +143 -80
  643. data/dojo/dojox/charting/plot2d/ClusteredBars.js +60 -58
  644. data/dojo/dojox/charting/plot2d/ClusteredColumns.js +59 -57
  645. data/dojo/dojox/charting/plot2d/Columns.js +78 -60
  646. data/dojo/dojox/charting/plot2d/Default.js +280 -121
  647. data/dojo/dojox/charting/plot2d/Grid.js +181 -19
  648. data/dojo/dojox/charting/plot2d/Lines.js +4 -0
  649. data/dojo/dojox/charting/plot2d/Markers.js +4 -0
  650. data/dojo/dojox/charting/plot2d/MarkersOnly.js +4 -0
  651. data/dojo/dojox/charting/plot2d/OHLC.js +127 -69
  652. data/dojo/dojox/charting/plot2d/Pie.js +200 -105
  653. data/dojo/dojox/charting/plot2d/Scatter.js +194 -8
  654. data/dojo/dojox/charting/plot2d/Stacked.js +71 -46
  655. data/dojo/dojox/charting/plot2d/StackedAreas.js +4 -0
  656. data/dojo/dojox/charting/plot2d/StackedBars.js +75 -64
  657. data/dojo/dojox/charting/plot2d/StackedColumns.js +75 -64
  658. data/dojo/dojox/charting/plot2d/StackedLines.js +4 -0
  659. data/dojo/dojox/charting/plot2d/_PlotEvents.js +123 -0
  660. data/dojo/dojox/charting/plot2d/common.js +44 -35
  661. data/dojo/dojox/charting/scaler/primitive.js +6 -0
  662. data/dojo/dojox/charting/tests/gradients/test_grad_bars1.html +85 -0
  663. data/dojo/dojox/charting/tests/gradients/test_grad_bars2.html +79 -0
  664. data/dojo/dojox/charting/tests/gradients/test_grad_bars3.html +79 -0
  665. data/dojo/dojox/charting/tests/gradients/test_grad_bars4.html +79 -0
  666. data/dojo/dojox/charting/tests/gradients/test_grad_bars5.html +82 -0
  667. data/dojo/dojox/charting/tests/gradients/test_grad_bubble1.html +71 -0
  668. data/dojo/dojox/charting/tests/gradients/test_grad_bubble2.html +65 -0
  669. data/dojo/dojox/charting/tests/gradients/test_grad_bubble3.html +66 -0
  670. data/dojo/dojox/charting/tests/gradients/test_grad_bubble4.html +65 -0
  671. data/dojo/dojox/charting/tests/gradients/test_grad_bubble6.html +71 -0
  672. data/dojo/dojox/charting/tests/gradients/test_grad_columns1.html +85 -0
  673. data/dojo/dojox/charting/tests/gradients/test_grad_columns2.html +79 -0
  674. data/dojo/dojox/charting/tests/gradients/test_grad_columns3.html +79 -0
  675. data/dojo/dojox/charting/tests/gradients/test_grad_columns4.html +79 -0
  676. data/dojo/dojox/charting/tests/gradients/test_grad_columns5.html +82 -0
  677. data/dojo/dojox/charting/tests/gradients/test_grad_pie1.html +58 -0
  678. data/dojo/dojox/charting/tests/gradients/test_grad_pie2.html +52 -0
  679. data/dojo/dojox/charting/tests/gradients/test_grad_pie3.html +53 -0
  680. data/dojo/dojox/charting/tests/gradients/test_grad_pie4.html +52 -0
  681. data/dojo/dojox/charting/tests/gradients/test_grad_pie7.html +52 -0
  682. data/dojo/dojox/charting/tests/gradients/test_grad_pie8.html +52 -0
  683. data/dojo/dojox/charting/tests/gradients/test_grad_pie9.html +52 -0
  684. data/dojo/dojox/charting/tests/gradients/test_grad_pieA.html +52 -0
  685. data/dojo/dojox/charting/tests/gradients/test_grad_scatter1.html +71 -0
  686. data/dojo/dojox/charting/tests/gradients/test_grad_scatter2.html +65 -0
  687. data/dojo/dojox/charting/tests/gradients/test_grad_scatterB.html +54 -0
  688. data/dojo/dojox/charting/tests/stock.json +0 -1
  689. data/dojo/dojox/charting/tests/test_DataChart.html +3 -1
  690. data/dojo/dojox/charting/tests/test_DataSeries.html +216 -0
  691. data/dojo/dojox/charting/tests/test_anim2d.html +2 -0
  692. data/dojo/dojox/charting/tests/test_axes.html +81 -0
  693. data/dojo/dojox/charting/tests/test_axisZoomControl.html +91 -0
  694. data/dojo/dojox/charting/tests/test_bars.html +4 -2
  695. data/dojo/dojox/charting/tests/test_chart2d.html +14 -8
  696. data/dojo/dojox/charting/tests/test_chart2d_dynamics.html +4 -2
  697. data/dojo/dojox/charting/tests/test_chart2d_updating.html +2 -0
  698. data/dojo/dojox/charting/tests/test_cylinders.html +4 -2
  699. data/dojo/dojox/charting/tests/test_event2d.html +6 -3
  700. data/dojo/dojox/charting/tests/test_fireEvent.html +204 -0
  701. data/dojo/dojox/charting/tests/test_labels2d.html +57 -3
  702. data/dojo/dojox/charting/tests/test_nulls.html +89 -0
  703. data/dojo/dojox/charting/tests/test_pie2d.html +7 -4
  704. data/dojo/dojox/charting/tests/test_plot_order.html +96 -0
  705. data/dojo/dojox/charting/tests/test_rotatedLabels.html +85 -0
  706. data/dojo/dojox/charting/tests/test_scaler.html +4 -2
  707. data/dojo/dojox/charting/tests/test_series_order.html +88 -0
  708. data/dojo/dojox/charting/tests/test_sparklines.html +2 -0
  709. data/dojo/dojox/charting/tests/test_tension.html +55 -0
  710. data/dojo/dojox/charting/tests/test_themes.html +270 -115
  711. data/dojo/dojox/charting/tests/test_widget2d.html +3 -1
  712. data/dojo/dojox/charting/tests/test_win2d.html +6 -4
  713. data/dojo/dojox/charting/tests/theme_preview.html +69 -0
  714. data/dojo/dojox/charting/themes/Charged.js +91 -0
  715. data/dojo/dojox/charting/themes/Chris.js +77 -0
  716. data/dojo/dojox/charting/themes/Electric.js +92 -0
  717. data/dojo/dojox/charting/themes/Ireland.js +2 -2
  718. data/dojo/dojox/charting/themes/Julie.js +70 -0
  719. data/dojo/dojox/charting/themes/PlotKit/base.js +53 -0
  720. data/dojo/dojox/charting/themes/PlotKit/blue.js +6 -35
  721. data/dojo/dojox/charting/themes/PlotKit/cyan.js +6 -35
  722. data/dojo/dojox/charting/themes/PlotKit/green.js +6 -35
  723. data/dojo/dojox/charting/themes/PlotKit/orange.js +6 -35
  724. data/dojo/dojox/charting/themes/PlotKit/purple.js +6 -35
  725. data/dojo/dojox/charting/themes/PlotKit/red.js +6 -35
  726. data/dojo/dojox/charting/themes/PrimaryColors.js +14 -0
  727. data/dojo/dojox/charting/themes/Renkoo.js +85 -0
  728. data/dojo/dojox/charting/themes/ThreeD.js +49 -0
  729. data/dojo/dojox/charting/themes/Tom.js +87 -0
  730. data/dojo/dojox/charting/themes/Tufte.js +45 -50
  731. data/dojo/dojox/charting/themes/gradientGenerator.js +83 -0
  732. data/dojo/dojox/charting/widget/Chart2D.js +21 -1
  733. data/dojo/dojox/charting/widget/Legend.js +10 -1
  734. data/dojo/dojox/color/Palette.js +124 -17
  735. data/dojo/dojox/css3/fx.js +183 -0
  736. data/dojo/dojox/data/AndOrReadStore.js +4 -2
  737. data/dojo/dojox/data/ClientFilter.js +1 -1
  738. data/dojo/dojox/data/FlickrRestStore.js +86 -88
  739. data/dojo/dojox/data/HtmlStore.js +1 -1
  740. data/dojo/dojox/data/ItemExplorer.js +3 -3
  741. data/dojo/dojox/data/PersevereStore.js +1 -1
  742. data/dojo/dojox/data/QueryReadStore.js +6 -9
  743. data/dojo/dojox/data/ServiceStore.js +9 -2
  744. data/dojo/dojox/data/StoreExplorer.js +2 -2
  745. data/dojo/dojox/data/XmlStore.js +1 -1
  746. data/dojo/dojox/data/demos/stores/LazyLoadJSIStore.js +1 -1
  747. data/dojo/dojox/data/s3/proxy.example-php +73 -73
  748. data/dojo/dojox/data/tests/stores/FlickrRestStore.js +1 -1
  749. data/dojo/dojox/data/util/JsonQuery.js +0 -3
  750. data/dojo/dojox/date/README +7 -1
  751. data/dojo/dojox/date/buddhist/locale.js +5 -5
  752. data/dojo/dojox/date/hebrew/locale.js +41 -18
  753. data/dojo/dojox/date/hebrew/numerals.js +17 -13
  754. data/dojo/dojox/date/islamic.js +0 -1
  755. data/dojo/dojox/date/islamic/Date.js +17 -19
  756. data/dojo/dojox/date/islamic/locale.js +37 -16
  757. data/dojo/dojox/date/posix.js +1 -1
  758. data/dojo/dojox/date/tests/hebrew/Date.js +2 -2
  759. data/dojo/dojox/date/tests/islamic/Date.js +200 -17
  760. data/dojo/dojox/date/timezone.js +59 -62
  761. data/dojo/dojox/dnd/BoundingBoxController.js +130 -0
  762. data/dojo/dojox/dnd/README +22 -0
  763. data/dojo/dojox/dnd/Selector.js +159 -0
  764. data/dojo/dojox/dnd/tests/robot/test_selector.html +71 -0
  765. data/dojo/dojox/dnd/tests/test_selector.html +57 -0
  766. data/dojo/dojox/drawing/Drawing.js +24 -17
  767. data/dojo/dojox/drawing/_base.js +0 -1
  768. data/dojo/dojox/drawing/annotations/Angle.js +17 -10
  769. data/dojo/dojox/drawing/annotations/BoxShadow.js +92 -4
  770. data/dojo/dojox/drawing/annotations/Label.js +6 -6
  771. data/dojo/dojox/drawing/defaults.js +44 -27
  772. data/dojo/dojox/drawing/library/icons.js +7 -0
  773. data/dojo/dojox/drawing/manager/Anchors.js +22 -10
  774. data/dojo/dojox/drawing/manager/Canvas.js +6 -5
  775. data/dojo/dojox/drawing/manager/Mouse.js +45 -19
  776. data/dojo/dojox/drawing/manager/Stencil.js +29 -26
  777. data/dojo/dojox/drawing/manager/_registry.js +4 -1
  778. data/dojo/dojox/drawing/manager/keys.js +1 -1
  779. data/dojo/dojox/drawing/plugins/_Plugin.js +1 -1
  780. data/dojo/dojox/drawing/plugins/drawing/Grid.js +15 -4
  781. data/dojo/dojox/drawing/plugins/drawing/Silverlight.js +1 -1
  782. data/dojo/dojox/drawing/plugins/tools/Pan.js +29 -5
  783. data/dojo/dojox/drawing/plugins/tools/Zoom.js +4 -4
  784. data/dojo/dojox/drawing/stencil/Ellipse.js +1 -1
  785. data/dojo/dojox/drawing/stencil/Line.js +0 -17
  786. data/dojo/dojox/drawing/stencil/Path.js +17 -13
  787. data/dojo/dojox/drawing/stencil/Text.js +26 -7
  788. data/dojo/dojox/drawing/stencil/_Base.js +163 -159
  789. data/dojo/dojox/drawing/tests/drawing.html +34 -35
  790. data/dojo/dojox/drawing/tests/test_drawing.html +20 -21
  791. data/dojo/dojox/drawing/tests/test_shadows.html +18 -18
  792. data/dojo/dojox/drawing/tools/Ellipse.js +20 -6
  793. data/dojo/dojox/drawing/tools/Line.js +19 -9
  794. data/dojo/dojox/drawing/tools/Rect.js +21 -7
  795. data/dojo/dojox/drawing/tools/TextBlock.js +37 -29
  796. data/dojo/dojox/drawing/tools/custom/Axes.js +249 -97
  797. data/dojo/dojox/drawing/tools/custom/Vector.js +298 -6
  798. data/dojo/dojox/drawing/ui/Button.js +45 -20
  799. data/dojo/dojox/drawing/ui/Toolbar.js +94 -29
  800. data/dojo/dojox/drawing/ui/Tooltip.js +3 -3
  801. data/dojo/dojox/drawing/ui/dom/Pan.js +2 -2
  802. data/dojo/dojox/drawing/ui/dom/Toolbar.js +4 -4
  803. data/dojo/dojox/drawing/util/common.js +20 -14
  804. data/dojo/dojox/drawing/util/oo.js +1 -1
  805. data/dojo/dojox/dtl/Context.js +8 -7
  806. data/dojo/dojox/dtl/_DomTemplated.js +5 -1
  807. data/dojo/dojox/dtl/_Templated.js +38 -3
  808. data/dojo/dojox/dtl/_base.js +17 -8
  809. data/dojo/dojox/dtl/tests/context.js +11 -2
  810. data/dojo/dojox/editor/README +95 -2
  811. data/dojo/dojox/editor/plugins/Blockquote.js +506 -0
  812. data/dojo/dojox/editor/plugins/Breadcrumb.js +31 -25
  813. data/dojo/dojox/editor/plugins/CollapsibleToolbar.js +174 -0
  814. data/dojo/dojox/editor/plugins/EntityPalette.js +112 -290
  815. data/dojo/dojox/editor/plugins/FindReplace.js +490 -163
  816. data/dojo/dojox/editor/plugins/InsertAnchor.js +430 -0
  817. data/dojo/dojox/editor/plugins/NormalizeIndentOutdent.js +3 -51
  818. data/dojo/dojox/editor/plugins/NormalizeStyle.js +551 -0
  819. data/dojo/dojox/editor/plugins/PasteFromWord.js +206 -0
  820. data/dojo/dojox/editor/plugins/Preview.js +1 -1
  821. data/dojo/dojox/editor/plugins/Save.js +4 -4
  822. data/dojo/dojox/editor/plugins/ShowBlockNodes.js +1 -1
  823. data/dojo/dojox/editor/plugins/Smiley.js +48 -22
  824. data/dojo/dojox/editor/plugins/StatusBar.js +172 -0
  825. data/dojo/dojox/editor/plugins/TablePlugins.js +454 -394
  826. data/dojo/dojox/editor/plugins/TextColor.js +191 -0
  827. data/dojo/dojox/editor/plugins/ToolbarLineBreak.js +6 -1
  828. data/dojo/dojox/editor/plugins/_SmileyPalette.js +113 -333
  829. data/dojo/dojox/editor/plugins/nls/Blockquote.js +3 -0
  830. data/dojo/dojox/editor/plugins/nls/CollapsibleToolbar.js +4 -0
  831. data/dojo/dojox/editor/plugins/nls/FindReplace.js +15 -5
  832. data/dojo/dojox/editor/plugins/nls/InsertAnchor.js +8 -0
  833. data/dojo/dojox/editor/plugins/nls/PasteFromWord.js +6 -0
  834. data/dojo/dojox/editor/plugins/nls/TableDialog.js +0 -1
  835. data/dojo/dojox/editor/plugins/nls/TextColor.js +4 -0
  836. data/dojo/dojox/editor/plugins/nls/ar/TableDialog.js +0 -1
  837. data/dojo/dojox/editor/plugins/nls/ca/TableDialog.js +0 -1
  838. data/dojo/dojox/editor/plugins/nls/cs/TableDialog.js +0 -1
  839. data/dojo/dojox/editor/plugins/nls/da/TableDialog.js +0 -1
  840. data/dojo/dojox/editor/plugins/nls/de/TableDialog.js +0 -1
  841. data/dojo/dojox/editor/plugins/nls/el/TableDialog.js +0 -1
  842. data/dojo/dojox/editor/plugins/nls/es/TableDialog.js +0 -1
  843. data/dojo/dojox/editor/plugins/nls/fi/TableDialog.js +0 -1
  844. data/dojo/dojox/editor/plugins/nls/fr/TableDialog.js +0 -1
  845. data/dojo/dojox/editor/plugins/nls/he/TableDialog.js +0 -1
  846. data/dojo/dojox/editor/plugins/nls/hu/TableDialog.js +0 -1
  847. data/dojo/dojox/editor/plugins/nls/it/TableDialog.js +0 -1
  848. data/dojo/dojox/editor/plugins/nls/ja/TableDialog.js +0 -1
  849. data/dojo/dojox/editor/plugins/nls/ko/TableDialog.js +0 -1
  850. data/dojo/dojox/editor/plugins/nls/nb/TableDialog.js +0 -1
  851. data/dojo/dojox/editor/plugins/nls/nl/TableDialog.js +0 -1
  852. data/dojo/dojox/editor/plugins/nls/pl/TableDialog.js +0 -1
  853. data/dojo/dojox/editor/plugins/nls/pt-pt/TableDialog.js +0 -1
  854. data/dojo/dojox/editor/plugins/nls/pt/TableDialog.js +0 -1
  855. data/dojo/dojox/editor/plugins/nls/ro/Blockquote.js +4 -0
  856. data/dojo/dojox/editor/plugins/nls/ro/Breadcrumb.js +10 -0
  857. data/dojo/dojox/editor/plugins/nls/ro/CollapsibleToolbar.js +5 -0
  858. data/dojo/dojox/editor/plugins/nls/ro/FindReplace.js +22 -0
  859. data/dojo/dojox/editor/plugins/nls/ro/InsertAnchor.js +9 -0
  860. data/dojo/dojox/editor/plugins/nls/ro/InsertEntity.js +4 -0
  861. data/dojo/dojox/editor/plugins/nls/ro/PageBreak.js +4 -0
  862. data/dojo/dojox/editor/plugins/nls/ro/PasteFromWord.js +7 -0
  863. data/dojo/dojox/editor/plugins/nls/ro/Preview.js +4 -0
  864. data/dojo/dojox/editor/plugins/nls/ro/Save.js +4 -0
  865. data/dojo/dojox/editor/plugins/nls/ro/ShowBlockNodes.js +4 -0
  866. data/dojo/dojox/editor/plugins/nls/ro/Smiley.js +22 -0
  867. data/dojo/dojox/editor/plugins/nls/ro/TableDialog.js +30 -0
  868. data/dojo/dojox/editor/plugins/nls/ro/TextColor.js +5 -0
  869. data/dojo/dojox/editor/plugins/nls/ro/latinEntities.js +257 -0
  870. data/dojo/dojox/editor/plugins/nls/ru/TableDialog.js +0 -1
  871. data/dojo/dojox/editor/plugins/nls/sk/TableDialog.js +0 -1
  872. data/dojo/dojox/editor/plugins/nls/sl/TableDialog.js +0 -1
  873. data/dojo/dojox/editor/plugins/nls/sv/TableDialog.js +0 -1
  874. data/dojo/dojox/editor/plugins/nls/th/TableDialog.js +0 -1
  875. data/dojo/dojox/editor/plugins/nls/tr/TableDialog.js +0 -1
  876. data/dojo/dojox/editor/plugins/nls/zh-tw/TableDialog.js +0 -1
  877. data/dojo/dojox/editor/plugins/nls/zh/FindReplace.js +14 -4
  878. data/dojo/dojox/editor/plugins/nls/zh/TableDialog.js +0 -1
  879. data/dojo/dojox/editor/plugins/resources/css/Blockquote.css +17 -0
  880. data/dojo/dojox/editor/plugins/resources/css/CollapsibleToolbar.css +173 -0
  881. data/dojo/dojox/editor/plugins/resources/css/FindReplace.css +56 -51
  882. data/dojo/dojox/editor/plugins/resources/css/InsertAnchor.css +17 -0
  883. data/dojo/dojox/editor/plugins/resources/css/InsertEntity.css +15 -37
  884. data/dojo/dojox/editor/plugins/resources/css/PasteFromWord.css +30 -0
  885. data/dojo/dojox/editor/plugins/resources/css/Smiley.css +20 -59
  886. data/dojo/dojox/editor/plugins/resources/css/StatusBar.css +75 -0
  887. data/dojo/dojox/editor/plugins/resources/css/TextColor.css +7 -0
  888. data/dojo/dojox/editor/plugins/resources/editorPlugins.css +1 -1
  889. data/dojo/dojox/editor/plugins/resources/icons/anchor.gif +0 -0
  890. data/dojo/dojox/editor/plugins/resources/icons/{findIconDisabled.gif → anchorDisabled.gif} +0 -0
  891. data/dojo/dojox/editor/plugins/resources/icons/blockquote.gif +0 -0
  892. data/dojo/dojox/editor/plugins/resources/icons/blockquoteDisabled.gif +0 -0
  893. data/dojo/dojox/editor/plugins/resources/icons/{replaceIconDisabled.gif → claro/close.gif} +0 -0
  894. data/dojo/dojox/editor/plugins/resources/icons/editorIconsFindReplaceDisabled.png +0 -0
  895. data/dojo/dojox/editor/plugins/resources/icons/editorIconsFindReplaceEnabled.png +0 -0
  896. data/dojo/dojox/editor/plugins/resources/icons/nihilo/close.gif +0 -0
  897. data/dojo/dojox/editor/plugins/resources/icons/pasteFromWord.gif +0 -0
  898. data/dojo/dojox/editor/plugins/resources/icons/pasteFromWordDisabled.gif +0 -0
  899. data/dojo/dojox/editor/plugins/resources/icons/smileyDisabled.gif +0 -0
  900. data/dojo/dojox/editor/plugins/resources/icons/soria/close.gif +0 -0
  901. data/dojo/dojox/editor/plugins/resources/icons/tundra/close.gif +0 -0
  902. data/dojo/dojox/editor/plugins/resources/images/anchor.gif +0 -0
  903. data/dojo/dojox/editor/plugins/resources/images/claro/collapse.gif +0 -0
  904. data/dojo/dojox/editor/plugins/resources/images/claro/expand.gif +0 -0
  905. data/dojo/dojox/editor/plugins/resources/images/nihilo/collapse.gif +0 -0
  906. data/dojo/dojox/editor/plugins/resources/images/nihilo/expand.gif +0 -0
  907. data/dojo/dojox/editor/plugins/resources/images/nihilo/sidebar.gif +0 -0
  908. data/dojo/dojox/editor/plugins/resources/images/soria/collapse.gif +0 -0
  909. data/dojo/dojox/editor/plugins/resources/images/soria/expand.gif +0 -0
  910. data/dojo/dojox/editor/plugins/resources/images/soria/sidebar.gif +0 -0
  911. data/dojo/dojox/editor/plugins/resources/images/tundra/collapse.gif +0 -0
  912. data/dojo/dojox/editor/plugins/resources/images/tundra/expand.gif +0 -0
  913. data/dojo/dojox/editor/plugins/resources/images/tundra/sidebar.gif +0 -0
  914. data/dojo/dojox/editor/tests/editorBlockquote.html +118 -0
  915. data/dojo/dojox/editor/tests/editorCollapsibleToolbar.html +131 -0
  916. data/dojo/dojox/editor/tests/editorFindReplace.html +7 -3
  917. data/dojo/dojox/editor/tests/editorInsertAnchor.html +119 -0
  918. data/dojo/dojox/editor/tests/editorNormalizeStyle.html +163 -0
  919. data/dojo/dojox/editor/tests/editorPasteFromWord.html +98 -0
  920. data/dojo/dojox/editor/tests/editorSmileyPlugin.html +66 -8
  921. data/dojo/dojox/editor/tests/editorStatusBar.html +232 -0
  922. data/dojo/dojox/editor/tests/editorTablePlugs.html +80 -74
  923. data/dojo/dojox/editor/tests/editorTextColor.html +97 -0
  924. data/dojo/dojox/editor/tests/module.js +15 -0
  925. data/dojo/dojox/editor/tests/robot/Editor_Smiley.html +60 -0
  926. data/dojo/dojox/editor/tests/runTests.html +9 -0
  927. data/dojo/dojox/editor/tests/testPluginsAll.html +206 -0
  928. data/dojo/dojox/embed/Flash.js +94 -77
  929. data/dojo/dojox/flash/_base.js +3 -3
  930. data/dojo/dojox/form/BusyButton.js +2 -2
  931. data/dojo/dojox/form/CheckedMultiSelect.js +3 -16
  932. data/dojo/dojox/form/FileInput.js +4 -0
  933. data/dojo/dojox/form/FileInputAuto.js +12 -4
  934. data/dojo/dojox/form/FilePickerTextBox.js +5 -8
  935. data/dojo/dojox/form/FileUploader.js +1378 -1331
  936. data/dojo/dojox/form/ListInput.js +5 -5
  937. data/dojo/dojox/form/PasswordValidator.js +3 -3
  938. data/dojo/dojox/form/RangeSlider.js +3 -2
  939. data/dojo/dojox/form/Rating.js +0 -1
  940. data/dojo/dojox/form/TimeSpinner.js +1 -2
  941. data/dojo/dojox/form/manager/_Mixin.js +21 -11
  942. data/dojo/dojox/form/nls/ro/PasswordValidator.js +5 -0
  943. data/dojo/dojox/form/resources/CheckedMultiSelect.css +30 -0
  944. data/dojo/dojox/form/resources/CheckedMultiSelect.html +1 -1
  945. data/dojo/dojox/form/resources/FileInput.css +30 -0
  946. data/dojo/dojox/form/resources/FilePickerTextBox.html +2 -2
  947. data/dojo/dojox/form/resources/FileUploader.css +0 -24
  948. data/dojo/dojox/form/resources/HorizontalRangeSlider.html +38 -38
  949. data/dojo/dojox/form/resources/RangeSlider.css +9 -1
  950. data/dojo/dojox/form/resources/VerticalRangeSlider.html +49 -50
  951. data/dojo/dojox/form/resources/_CheckedMultiSelectItem.html +1 -1
  952. data/dojo/dojox/form/resources/uploader.swf +0 -0
  953. data/dojo/dojox/form/tests/UploadFile.php.disabled +25 -19
  954. data/dojo/dojox/form/tests/test_FileUploader.html +38 -38
  955. data/dojo/dojox/form/tests/test_FileUploaderDialog.html +0 -1
  956. data/dojo/dojox/form/tests/test_FileUploaderForm.html +5 -3
  957. data/dojo/dojox/form/tests/test_FileUploaderTabs.html +147 -0
  958. data/dojo/dojox/form/tests/test_MultiComboBox.html +1 -1
  959. data/dojo/dojox/form/tests/test_RangeSlider.html +1 -2
  960. data/dojo/dojox/form/tests/test_TimeSpinner.html +3 -30
  961. data/dojo/dojox/fx/Timeline.js +210 -0
  962. data/dojo/dojox/fx/ext-dojo/complex.js +169 -0
  963. data/dojo/dojox/fx/ext-dojo/reverse.js +98 -0
  964. data/dojo/dojox/fx/scroll.js +13 -6
  965. data/dojo/dojox/fx/tests/test_Timeline.html +173 -0
  966. data/dojo/dojox/fx/tests/test_complex.html +87 -0
  967. data/dojo/dojox/fx/tests/test_reverse.html +100 -0
  968. data/dojo/dojox/fx/tests/test_transform.html +210 -0
  969. data/dojo/dojox/fx/text.js +3 -3
  970. data/dojo/dojox/geo/README +37 -0
  971. data/dojo/dojox/geo/charting/Map.js +140 -0
  972. data/dojo/dojox/geo/charting/_Feature.js +169 -0
  973. data/dojo/dojox/geo/charting/_Marker.js +52 -0
  974. data/dojo/dojox/geo/charting/_base.js +53 -0
  975. data/dojo/dojox/geo/charting/resources/Map.css +30 -0
  976. data/dojo/dojox/geo/charting/resources/data/NOTICES +63 -0
  977. data/dojo/dojox/geo/charting/resources/data/USStates.json +261 -0
  978. data/dojo/dojox/geo/charting/resources/img/zoomin.gif +0 -0
  979. data/dojo/dojox/geo/charting/resources/img/zoomin.png +0 -0
  980. data/dojo/dojox/geo/charting/resources/img/zoomout.gif +0 -0
  981. data/dojo/dojox/geo/charting/resources/img/zoomout.png +0 -0
  982. data/dojo/dojox/geo/charting/resources/markers/USStates.json +1 -0
  983. data/dojo/dojox/geo/charting/tests/datastore/dataStore.json +1 -0
  984. data/dojo/dojox/geo/charting/tests/test_mapWithCharting.html +72 -0
  985. data/dojo/dojox/geo/charting/tests/test_mapWithLegend.html +63 -0
  986. data/dojo/dojox/geo/charting/tests/test_maps.html +37 -0
  987. data/dojo/dojox/geo/charting/widget/Legend.js +62 -0
  988. data/dojo/dojox/gfx/README +9 -2
  989. data/dojo/dojox/gfx/README-svgweb +98 -0
  990. data/dojo/dojox/gfx/VectorText.js +3 -3
  991. data/dojo/dojox/gfx/_base.js +2 -2
  992. data/dojo/dojox/gfx/arc.js +1 -1
  993. data/dojo/dojox/gfx/gradient.js +160 -0
  994. data/dojo/dojox/gfx/gradutils.js +91 -0
  995. data/dojo/dojox/gfx/path.js +89 -24
  996. data/dojo/dojox/gfx/resources/svg2gfx.xsl +53 -14
  997. data/dojo/dojox/gfx/shape.js +14 -7
  998. data/dojo/dojox/gfx/svg.js +135 -16
  999. data/dojo/dojox/gfx/tests/svgweb/README +15 -0
  1000. data/dojo/dojox/gfx/tests/svgweb/sample.html +171 -0
  1001. data/dojo/dojox/gfx/tests/svgweb/svgweb/COPYING.txt +65 -0
  1002. data/dojo/dojox/gfx/tests/svgweb/svgweb/src/svg.htc +1 -0
  1003. data/dojo/dojox/gfx/tests/svgweb/svgweb/src/svg.js +1 -0
  1004. data/dojo/dojox/gfx/tests/svgweb/svgweb/src/svg.swf +0 -0
  1005. data/dojo/dojox/gfx/tests/svgweb/test.roundrect.html +39 -0
  1006. data/dojo/dojox/gfx/tests/svgweb/test_arc.html +66 -0
  1007. data/dojo/dojox/gfx/tests/svgweb/test_bezier.html +81 -0
  1008. data/dojo/dojox/gfx/tests/svgweb/test_destroy.html +58 -0
  1009. data/dojo/dojox/gfx/tests/svgweb/test_fill.html +45 -0
  1010. data/dojo/dojox/gfx/tests/svgweb/test_fx.html +104 -0
  1011. data/dojo/dojox/gfx/tests/svgweb/test_fx_shapes.html +123 -0
  1012. data/dojo/dojox/gfx/tests/svgweb/test_gfx.html +565 -0
  1013. data/dojo/dojox/gfx/tests/svgweb/test_gradient.html +77 -0
  1014. data/dojo/dojox/gfx/tests/svgweb/test_group1.html +70 -0
  1015. data/dojo/dojox/gfx/tests/svgweb/test_group2.html +54 -0
  1016. data/dojo/dojox/gfx/tests/svgweb/test_image1.html +80 -0
  1017. data/dojo/dojox/gfx/tests/svgweb/test_image2.html +52 -0
  1018. data/dojo/dojox/gfx/tests/svgweb/test_image3.html +77 -0
  1019. data/dojo/dojox/gfx/tests/svgweb/test_image4.html +58 -0
  1020. data/dojo/dojox/gfx/tests/svgweb/test_image5.html +67 -0
  1021. data/dojo/dojox/gfx/tests/svgweb/test_linearGradient.html +75 -0
  1022. data/dojo/dojox/gfx/tests/svgweb/test_linestyle.html +43 -0
  1023. data/dojo/dojox/gfx/tests/svgweb/test_pattern.html +43 -0
  1024. data/dojo/dojox/gfx/tests/svgweb/test_poly.html +49 -0
  1025. data/dojo/dojox/gfx/tests/svgweb/test_resize.html +57 -0
  1026. data/dojo/dojox/gfx/tests/svgweb/test_setPath.html +86 -0
  1027. data/dojo/dojox/gfx/tests/svgweb/test_tbbox.html +113 -0
  1028. data/dojo/dojox/gfx/tests/svgweb/test_text.html +80 -0
  1029. data/dojo/dojox/gfx/tests/svgweb/test_textpath.html +77 -0
  1030. data/dojo/dojox/gfx/tests/svgweb/test_transform.html +99 -0
  1031. data/dojo/dojox/gfx/tests/svgweb/test_utils.html +234 -0
  1032. data/dojo/dojox/gfx/tests/svgweb/test_vectortext_draw.html +64 -0
  1033. data/dojo/dojox/gfx/tests/svgweb/test_vectortext_load.html +97 -0
  1034. data/dojo/dojox/gfx/tests/test_image1.html +1 -4
  1035. data/dojo/dojox/gfx/tests/test_image2.html +5 -5
  1036. data/dojo/dojox/gfx/tests/test_image3.html +2 -2
  1037. data/dojo/dojox/gfx/tests/test_image4.html +2 -2
  1038. data/dojo/dojox/gfx/tests/test_linearGradient.html +2 -1
  1039. data/dojo/dojox/gfx/tests/test_pattern.html +4 -3
  1040. data/dojo/dojox/gfx/tests/test_refproj.html +109 -0
  1041. data/dojo/dojox/gfx/vml.js +52 -57
  1042. data/dojo/dojox/grid/DataGrid.js +17 -6
  1043. data/dojo/dojox/grid/EnhancedGrid.js +24 -6
  1044. data/dojo/dojox/grid/README +57 -0
  1045. data/dojo/dojox/grid/_Builder.js +18 -8
  1046. data/dojo/dojox/grid/_Grid.js +10 -20
  1047. data/dojo/dojox/grid/_View.js +5 -2
  1048. data/dojo/dojox/grid/cells/dijit.js +11 -4
  1049. data/dojo/dojox/grid/enhanced/_Events.js +16 -6
  1050. data/dojo/dojox/grid/enhanced/_Plugin.js +15 -20
  1051. data/dojo/dojox/grid/enhanced/dnd/_DndEvents.js +6 -0
  1052. data/dojo/dojox/grid/enhanced/dnd/_DndMovingManager.js +3 -1
  1053. data/dojo/dojox/grid/enhanced/nls/ar/EnhancedGrid.js +8 -0
  1054. data/dojo/dojox/grid/enhanced/nls/ca/EnhancedGrid.js +8 -0
  1055. data/dojo/dojox/grid/enhanced/nls/da/EnhancedGrid.js +8 -0
  1056. data/dojo/dojox/grid/enhanced/nls/el/EnhancedGrid.js +8 -0
  1057. data/dojo/dojox/grid/enhanced/nls/fi/EnhancedGrid.js +8 -0
  1058. data/dojo/dojox/grid/enhanced/nls/he/EnhancedGrid.js +8 -0
  1059. data/dojo/dojox/grid/enhanced/nls/nb/EnhancedGrid.js +8 -0
  1060. data/dojo/dojox/grid/enhanced/nls/nl/EnhancedGrid.js +8 -0
  1061. data/dojo/dojox/grid/enhanced/nls/pt-pt/EnhancedGrid.js +8 -0
  1062. data/dojo/dojox/grid/enhanced/nls/ro/EnhancedGrid.js +9 -0
  1063. data/dojo/dojox/grid/enhanced/nls/sk/EnhancedGrid.js +8 -0
  1064. data/dojo/dojox/grid/enhanced/nls/sl/EnhancedGrid.js +8 -0
  1065. data/dojo/dojox/grid/enhanced/nls/sv/EnhancedGrid.js +8 -0
  1066. data/dojo/dojox/grid/enhanced/nls/th/EnhancedGrid.js +8 -0
  1067. data/dojo/dojox/grid/enhanced/nls/tr/EnhancedGrid.js +8 -0
  1068. data/dojo/dojox/grid/enhanced/plugins/IndirectSelection.js +5 -5
  1069. data/dojo/dojox/grid/enhanced/plugins/Menu.js +22 -6
  1070. data/dojo/dojox/grid/enhanced/plugins/NestedSorting.js +26 -42
  1071. data/dojo/dojox/grid/enhanced/resources/EnhancedGrid.css +31 -32
  1072. data/dojo/dojox/grid/enhanced/resources/EnhancedGrid_rtl.css +16 -7
  1073. data/dojo/dojox/grid/enhanced/resources/claroEnhancedGrid.css +104 -0
  1074. data/dojo/dojox/grid/enhanced/resources/tundraEnhancedGrid.css +8 -17
  1075. data/dojo/dojox/grid/resources/Grid.css +6 -0
  1076. data/dojo/dojox/grid/resources/Grid_rtl.css +10 -2
  1077. data/dojo/dojox/grid/resources/_Grid.html +1 -1
  1078. data/dojo/dojox/grid/resources/claroGrid.css +216 -0
  1079. data/dojo/dojox/grid/resources/images/header.png +0 -0
  1080. data/dojo/dojox/grid/resources/images/header_shadow.png +0 -0
  1081. data/dojo/dojox/grid/resources/images/row_back.png +0 -0
  1082. data/dojo/dojox/grid/resources/images/td_button_down.png +0 -0
  1083. data/dojo/dojox/grid/tests/enhanced/test_enhanced_grid_claro.html +70 -0
  1084. data/dojo/dojox/grid/tests/robot/7815.html +0 -1
  1085. data/dojo/dojox/grid/tests/robot/DataGrid_a11y.html +6 -1
  1086. data/dojo/dojox/grid/tests/robot/DataGrid_mouse.html +50 -18
  1087. data/dojo/dojox/grid/tests/robot/_DataGrid.html +0 -1
  1088. data/dojo/dojox/grid/tests/robot/stores.js +3 -1
  1089. data/dojo/dojox/grid/tests/test_grid_themes.html +27 -2
  1090. data/dojo/dojox/grid/tests/test_treegrid_model.html +6 -6
  1091. data/dojo/dojox/highlight/languages/_dynamic.js +2 -0
  1092. data/dojo/dojox/highlight/languages/_static.js +1 -1
  1093. data/dojo/dojox/highlight/languages/groovy.js +67 -0
  1094. data/dojo/dojox/highlight/languages/java.js +58 -0
  1095. data/dojo/dojox/highlight/languages/xquery.js +56 -0
  1096. data/dojo/dojox/highlight/tests/test_highlight.html +147 -0
  1097. data/dojo/dojox/html/entities.js +7 -7
  1098. data/dojo/dojox/html/ext-dojo/style.js +460 -0
  1099. data/dojo/dojox/html/format.js +5 -0
  1100. data/dojo/dojox/html/metrics.js +31 -12
  1101. data/dojo/dojox/html/tests/test_style-html.html +310 -0
  1102. data/dojo/dojox/html/tests/test_themes.html +2 -2
  1103. data/dojo/dojox/image/Lightbox.js +70 -28
  1104. data/dojo/dojox/image/resources/Lightbox.css +11 -4
  1105. data/dojo/dojox/image/resources/Lightbox.html +3 -3
  1106. data/dojo/dojox/image/tests/Lightbox.html +2 -2
  1107. data/dojo/dojox/image/tests/test_Lightbox.html +36 -2
  1108. data/dojo/dojox/io/proxy/xip_client.html +1 -1
  1109. data/dojo/dojox/io/proxy/xip_server.html +1 -1
  1110. data/dojo/dojox/jq.js +1 -1
  1111. data/dojo/dojox/json/query.js +7 -7
  1112. data/dojo/dojox/json/ref.js +4 -2
  1113. data/dojo/dojox/lang/README +13 -2
  1114. data/dojo/dojox/lang/async.js +199 -0
  1115. data/dojo/dojox/lang/async/event.js +41 -0
  1116. data/dojo/dojox/lang/async/timeout.js +41 -0
  1117. data/dojo/dojox/lang/async/topic.js +41 -0
  1118. data/dojo/dojox/lang/oo/rearrange.js +1 -1
  1119. data/dojo/dojox/lang/tests/async.js +216 -0
  1120. data/dojo/dojox/lang/tests/docs.js +2 -2
  1121. data/dojo/dojox/lang/tests/main.js +1 -1
  1122. data/dojo/dojox/lang/tests/test_oo_decl.html +52 -3
  1123. data/dojo/dojox/lang/utils.js +52 -9
  1124. data/dojo/dojox/layout/ExpandoPane.js +71 -21
  1125. data/dojo/dojox/layout/FloatingPane.js +7 -4
  1126. data/dojo/dojox/layout/GridContainer.js +453 -920
  1127. data/dojo/dojox/layout/GridContainerLite.js +811 -0
  1128. data/dojo/dojox/layout/README +1 -1
  1129. data/dojo/dojox/layout/ResizeHandle.js +6 -3
  1130. data/dojo/dojox/layout/RotatorContainer.js +1 -1
  1131. data/dojo/dojox/layout/TableContainer.js +7 -0
  1132. data/dojo/dojox/layout/ToggleSplitter.js +2 -2
  1133. data/dojo/dojox/layout/resources/ExpandoPane.css +52 -0
  1134. data/dojo/dojox/layout/resources/ExpandoPane.html +2 -2
  1135. data/dojo/dojox/layout/resources/GridContainer.css +49 -69
  1136. data/dojo/dojox/layout/resources/GridContainer.html +9 -5
  1137. data/dojo/dojox/layout/resources/ResizeHandle.css +18 -0
  1138. data/dojo/dojox/layout/resources/icons/gridcontainer_grip.gif +0 -0
  1139. data/dojo/dojox/layout/resources/icons/resizeRtl.png +0 -0
  1140. data/dojo/dojox/layout/tests/resources/script_dnd.js +158 -0
  1141. data/dojo/dojox/layout/tests/resources/set_complete_dnd.css +61 -0
  1142. data/dojo/dojox/layout/tests/test_ExpandoPane.html +7 -1
  1143. data/dojo/dojox/layout/tests/test_ExpandoPane_prog.html +1 -1
  1144. data/dojo/dojox/layout/tests/test_GridContainer.html +24 -76
  1145. data/dojo/dojox/layout/tests/test_GridContainerColWidths.html +31 -19
  1146. data/dojo/dojox/layout/tests/test_GridContainerLite.html +122 -0
  1147. data/dojo/dojox/layout/tests/test_GridContainerLite_doLayout.html +112 -0
  1148. data/dojo/dojox/layout/tests/test_GridContainerLite_dragRestriction.html +148 -0
  1149. data/dojo/dojox/layout/tests/test_GridContainer_ResizableCol.html +93 -0
  1150. data/dojo/dojox/layout/tests/test_GridContainer_TitlePanes.html +85 -0
  1151. data/dojo/dojox/layout/tests/test_GridContainer_complete_solution.html +103 -0
  1152. data/dojo/dojox/layout/tests/test_GridContainer_dragHandle.html +107 -0
  1153. data/dojo/dojox/layout/tests/{test_GridContainerBC.html → test_GridContainer_in_BorderContainer.html} +27 -61
  1154. data/dojo/dojox/layout/tests/{test_GridContainerBC_prog.html → test_GridContainer_in_BorderContainer_prog.html} +142 -50
  1155. data/dojo/dojox/layout/tests/test_TableContainer.html +2 -2
  1156. data/dojo/dojox/math/BigInteger-ext.js +1 -3
  1157. data/dojo/dojox/math/BigInteger.js +3 -3
  1158. data/dojo/dojox/math/README +0 -3
  1159. data/dojo/dojox/math/_base.js +48 -11
  1160. data/dojo/dojox/math/tests/math.js +19 -1
  1161. data/dojo/dojox/mdnd/AreaManager.js +707 -0
  1162. data/dojo/dojox/mdnd/AutoScroll.js +195 -0
  1163. data/dojo/dojox/mdnd/DropIndicator.js +86 -0
  1164. data/dojo/dojox/mdnd/LazyManager.js +68 -0
  1165. data/dojo/dojox/mdnd/Moveable.js +251 -0
  1166. data/dojo/dojox/mdnd/PureSource.js +208 -0
  1167. data/dojo/dojox/mdnd/README +94 -0
  1168. data/dojo/dojox/mdnd/adapter/DndFromDojo.js +366 -0
  1169. data/dojo/dojox/mdnd/adapter/DndToDojo.js +484 -0
  1170. data/dojo/dojox/mdnd/dropMode/DefaultDropMode.js +333 -0
  1171. data/dojo/dojox/mdnd/dropMode/OverDropMode.js +308 -0
  1172. data/dojo/dojox/mdnd/dropMode/VerticalDropMode.js +343 -0
  1173. data/dojo/dojox/mdnd/resources/dnd.css +93 -0
  1174. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_acceptance.html +71 -0
  1175. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_autoScroll.html +52 -0
  1176. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_defaultDropMode.html +55 -0
  1177. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_dndFromDojo.html +73 -0
  1178. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_dndToDojo.html +93 -0
  1179. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_dndToDojo_dndFromDojo.html +70 -0
  1180. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_overDropMode.html +57 -0
  1181. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_stress.html +83 -0
  1182. data/dojo/dojox/mdnd/tests/functionalTests/test_dnd_verticalDropMode.html +55 -0
  1183. data/dojo/dojox/mdnd/tests/module.js +16 -0
  1184. data/dojo/dojox/mdnd/tests/resources/test_dnd.css +68 -0
  1185. data/dojo/dojox/mdnd/tests/robot/module.js +16 -0
  1186. data/dojo/dojox/mdnd/tests/robot/test_dnd_acceptance.html +284 -0
  1187. data/dojo/dojox/mdnd/tests/robot/test_dnd_defaultDropMode.html +101 -0
  1188. data/dojo/dojox/mdnd/tests/robot/test_dnd_dndFromDojo.html +322 -0
  1189. data/dojo/dojox/mdnd/tests/robot/test_dnd_dndToDojo.html +198 -0
  1190. data/dojo/dojox/mdnd/tests/robot/test_dnd_overDropMode.html +272 -0
  1191. data/dojo/dojox/mdnd/tests/robot/test_dnd_verticalDropMode.html +101 -0
  1192. data/dojo/dojox/mdnd/tests/runTests.html +9 -0
  1193. data/dojo/dojox/mdnd/tests/unitTests/areaManager/AreaManagerCoverPresence.html +110 -0
  1194. data/dojo/dojox/mdnd/tests/unitTests/areaManager/AreaManagerManagingDragItems.html +149 -0
  1195. data/dojo/dojox/mdnd/tests/unitTests/areaManager/AreaManagerRegistering.html +124 -0
  1196. data/dojo/dojox/mdnd/tests/unitTests/areaManager/module.js +12 -0
  1197. data/dojo/dojox/mdnd/tests/unitTests/dropIndicator/DropIndicatorTest.html +187 -0
  1198. data/dojo/dojox/mdnd/tests/unitTests/dropIndicator/module.js +8 -0
  1199. data/dojo/dojox/mdnd/tests/unitTests/dropMode/DefaultDropModeTest.html +241 -0
  1200. data/dojo/dojox/mdnd/tests/unitTests/dropMode/FixtureLib.js +87 -0
  1201. data/dojo/dojox/mdnd/tests/unitTests/dropMode/OverDropModeTest.html +195 -0
  1202. data/dojo/dojox/mdnd/tests/unitTests/dropMode/VerticalDropModeTest.html +241 -0
  1203. data/dojo/dojox/mdnd/tests/unitTests/dropMode/module.js +10 -0
  1204. data/dojo/dojox/mdnd/tests/unitTests/dropMode/resources/domElement.html +130 -0
  1205. data/dojo/dojox/mdnd/tests/unitTests/module.js +9 -0
  1206. data/dojo/dojox/mobile.js +4 -0
  1207. data/dojo/dojox/mobile/README +55 -0
  1208. data/dojo/dojox/mobile/_base.js +1451 -0
  1209. data/dojo/dojox/mobile/app.js +3 -0
  1210. data/dojo/dojox/mobile/app/AlertDialog.js +182 -0
  1211. data/dojo/dojox/mobile/app/ImageThumbView.js +254 -0
  1212. data/dojo/dojox/mobile/app/ImageView.js +716 -0
  1213. data/dojo/dojox/mobile/app/List.js +577 -0
  1214. data/dojo/dojox/mobile/app/ListSelector.js +218 -0
  1215. data/dojo/dojox/mobile/app/SceneAssistant.js +56 -0
  1216. data/dojo/dojox/mobile/app/SceneController.js +157 -0
  1217. data/dojo/dojox/mobile/app/StageController.js +137 -0
  1218. data/dojo/dojox/mobile/app/TextBox.js +321 -0
  1219. data/dojo/dojox/mobile/app/_FormWidget.js +294 -0
  1220. data/dojo/dojox/mobile/app/_Widget.js +30 -0
  1221. data/dojo/dojox/mobile/app/_base.js +226 -0
  1222. data/dojo/dojox/mobile/app/_event.js +119 -0
  1223. data/dojo/dojox/mobile/app/compat.js +109 -0
  1224. data/dojo/dojox/mobile/build/build.bat +47 -0
  1225. data/dojo/dojox/mobile/build/build.sh +50 -0
  1226. data/dojo/dojox/mobile/build/profiles/mobile-all.profile.js +36 -0
  1227. data/dojo/dojox/mobile/build/profiles/mobile.profile.js +40 -0
  1228. data/dojo/dojox/mobile/compat.js +399 -0
  1229. data/dojo/dojox/mobile/parser.js +80 -0
  1230. data/dojo/dojox/mobile/tests/complexListApp/app/assistants/main-assistant.js +123 -0
  1231. data/dojo/dojox/mobile/tests/complexListApp/app/views/main/emptyTemplate.html +3 -0
  1232. data/dojo/dojox/mobile/tests/complexListApp/app/views/main/main-scene.html +23 -0
  1233. data/dojo/dojox/mobile/tests/complexListApp/app/views/main/rowTemplate.html +15 -0
  1234. data/dojo/dojox/mobile/tests/complexListApp/images/i-icon-1.png +0 -0
  1235. data/dojo/dojox/mobile/tests/complexListApp/images/i-icon-2.png +0 -0
  1236. data/dojo/dojox/mobile/tests/complexListApp/images/i-icon-3.png +0 -0
  1237. data/dojo/dojox/mobile/tests/complexListApp/images/i-icon-4.png +0 -0
  1238. data/dojo/dojox/mobile/tests/complexListApp/index.html +37 -0
  1239. data/dojo/dojox/mobile/tests/complexListApp/styles/style.css +38 -0
  1240. data/dojo/dojox/mobile/tests/dialogApp/app/assistants/main-assistant.js +75 -0
  1241. data/dojo/dojox/mobile/tests/dialogApp/app/views/main/main-scene.html +10 -0
  1242. data/dojo/dojox/mobile/tests/dialogApp/index.html +37 -0
  1243. data/dojo/dojox/mobile/tests/imageControlsApp/app/assistants/flickr-image-thumb-view-assistant.js +198 -0
  1244. data/dojo/dojox/mobile/tests/imageControlsApp/app/assistants/flickr-image-view-assistant.js +170 -0
  1245. data/dojo/dojox/mobile/tests/imageControlsApp/app/assistants/flickr-search-group-assistant.js +123 -0
  1246. data/dojo/dojox/mobile/tests/imageControlsApp/app/assistants/flickr-search-selection-assistant.js +54 -0
  1247. data/dojo/dojox/mobile/tests/imageControlsApp/app/assistants/flickr-search-text-assistant.js +119 -0
  1248. data/dojo/dojox/mobile/tests/imageControlsApp/app/assistants/image-view-assistant.js +92 -0
  1249. data/dojo/dojox/mobile/tests/imageControlsApp/app/assistants/main-assistant.js +40 -0
  1250. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-image-thumb-view/flickr-image-thumb-view-scene.html +17 -0
  1251. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-image-view/flickr-image-view-scene.html +10 -0
  1252. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-group/emptyTemplate.html +3 -0
  1253. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-group/flickr-search-group-scene.html +19 -0
  1254. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-group/rowTemplate.html +8 -0
  1255. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-selection/flickr-search-selection-scene.html +7 -0
  1256. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-selection/rowTemplate.html +8 -0
  1257. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-text/emptyTemplate.html +3 -0
  1258. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-text/flickr-search-group-scene.html +19 -0
  1259. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/flickr-search-text/rowTemplate.html +15 -0
  1260. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/image-view/image-view-scene.html +23 -0
  1261. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/main/main-scene.html +6 -0
  1262. data/dojo/dojox/mobile/tests/imageControlsApp/app/views/main/rowTemplate.html +8 -0
  1263. data/dojo/dojox/mobile/tests/imageControlsApp/images/chris1_lg.jpg +0 -0
  1264. data/dojo/dojox/mobile/tests/imageControlsApp/images/chris2_lg.jpg +0 -0
  1265. data/dojo/dojox/mobile/tests/imageControlsApp/images/imageHoriz.jpg +0 -0
  1266. data/dojo/dojox/mobile/tests/imageControlsApp/images/imageVert.jpg +0 -0
  1267. data/dojo/dojox/mobile/tests/imageControlsApp/images/square.jpg +0 -0
  1268. data/dojo/dojox/mobile/tests/imageControlsApp/index.html +39 -0
  1269. data/dojo/dojox/mobile/tests/imageControlsApp/styles/styles.css +13 -0
  1270. data/dojo/dojox/mobile/tests/imageControlsApp/view-resources.json +14 -0
  1271. data/dojo/dojox/mobile/tests/images/a-icon-1-41x41.png +0 -0
  1272. data/dojo/dojox/mobile/tests/images/a-icon-1.png +0 -0
  1273. data/dojo/dojox/mobile/tests/images/a-icon-10.png +0 -0
  1274. data/dojo/dojox/mobile/tests/images/a-icon-11.png +0 -0
  1275. data/dojo/dojox/mobile/tests/images/a-icon-12.png +0 -0
  1276. data/dojo/dojox/mobile/tests/images/a-icon-13.png +0 -0
  1277. data/dojo/dojox/mobile/tests/images/a-icon-14.png +0 -0
  1278. data/dojo/dojox/mobile/tests/images/a-icon-15.png +0 -0
  1279. data/dojo/dojox/mobile/tests/images/a-icon-16.png +0 -0
  1280. data/dojo/dojox/mobile/tests/images/a-icon-17.png +0 -0
  1281. data/dojo/dojox/mobile/tests/images/a-icon-18.png +0 -0
  1282. data/dojo/dojox/mobile/tests/images/a-icon-2-41x41.png +0 -0
  1283. data/dojo/dojox/mobile/tests/images/a-icon-2.png +0 -0
  1284. data/dojo/dojox/mobile/tests/images/a-icon-3.png +0 -0
  1285. data/dojo/dojox/mobile/tests/images/a-icon-4.png +0 -0
  1286. data/dojo/dojox/mobile/tests/images/i-icon-1.png +0 -0
  1287. data/dojo/dojox/mobile/tests/images/i-icon-10.png +0 -0
  1288. data/dojo/dojox/mobile/tests/images/i-icon-2.png +0 -0
  1289. data/dojo/dojox/mobile/tests/images/i-icon-3.png +0 -0
  1290. data/dojo/dojox/mobile/tests/images/i-icon-4.png +0 -0
  1291. data/dojo/dojox/mobile/tests/images/i-icon-5.png +0 -0
  1292. data/dojo/dojox/mobile/tests/images/i-icon-6.png +0 -0
  1293. data/dojo/dojox/mobile/tests/images/i-icon-7.png +0 -0
  1294. data/dojo/dojox/mobile/tests/images/i-icon-8.png +0 -0
  1295. data/dojo/dojox/mobile/tests/images/i-icon-9.png +0 -0
  1296. data/dojo/dojox/mobile/tests/images/i-icon-all.png +0 -0
  1297. data/dojo/dojox/mobile/tests/images/icon-1.png +0 -0
  1298. data/dojo/dojox/mobile/tests/images/not-images.png +0 -0
  1299. data/dojo/dojox/mobile/tests/images/red-button-bg.png +0 -0
  1300. data/dojo/dojox/mobile/tests/images/red-button-sel-bg.png +0 -0
  1301. data/dojo/dojox/mobile/tests/images/widget-bg.png +0 -0
  1302. data/dojo/dojox/mobile/tests/index.html +55 -0
  1303. data/dojo/dojox/mobile/tests/inputApp/app/assistants/text-input-assistant.js +21 -0
  1304. data/dojo/dojox/mobile/tests/inputApp/app/views/text-input/text-input-scene.html +50 -0
  1305. data/dojo/dojox/mobile/tests/inputApp/index.html +37 -0
  1306. data/dojo/dojox/mobile/tests/multiSceneApp/app/assistants/main-assistant.js +41 -0
  1307. data/dojo/dojox/mobile/tests/multiSceneApp/app/assistants/second-assistant.js +32 -0
  1308. data/dojo/dojox/mobile/tests/multiSceneApp/app/assistants/third-assistant.js +33 -0
  1309. data/dojo/dojox/mobile/tests/multiSceneApp/app/views/main/main-scene.html +16 -0
  1310. data/dojo/dojox/mobile/tests/multiSceneApp/app/views/second/second-scene.html +12 -0
  1311. data/dojo/dojox/mobile/tests/multiSceneApp/app/views/third/third-scene.html +13 -0
  1312. data/dojo/dojox/mobile/tests/multiSceneApp/index.html +37 -0
  1313. data/dojo/dojox/mobile/tests/simpleApp/app/assistants/main-assistant.js +23 -0
  1314. data/dojo/dojox/mobile/tests/simpleApp/app/views/main/main-scene.html +3 -0
  1315. data/dojo/dojox/mobile/tests/simpleApp/index.html +36 -0
  1316. data/dojo/dojox/mobile/tests/simpleListApp/app/assistants/main-assistant.js +66 -0
  1317. data/dojo/dojox/mobile/tests/simpleListApp/app/views/main/main-scene.html +14 -0
  1318. data/dojo/dojox/mobile/tests/simpleListApp/app/views/main/rowTemplate.html +3 -0
  1319. data/dojo/dojox/mobile/tests/simpleListApp/index.html +36 -0
  1320. data/dojo/dojox/mobile/tests/test_Android-ButtonList.html +68 -0
  1321. data/dojo/dojox/mobile/tests/test_Android-EdgeToEdge.html +50 -0
  1322. data/dojo/dojox/mobile/tests/test_Android-EdgeToEdgeCategory.html +46 -0
  1323. data/dojo/dojox/mobile/tests/test_Android-Icon.html +58 -0
  1324. data/dojo/dojox/mobile/tests/test_Android-RoundRectList.html +60 -0
  1325. data/dojo/dojox/mobile/tests/test_Android-Settings.html +104 -0
  1326. data/dojo/dojox/mobile/tests/test_Android-Switch.html +23 -0
  1327. data/dojo/dojox/mobile/tests/test_Android-TabContainer.html +139 -0
  1328. data/dojo/dojox/mobile/tests/test_Android-VariableHeightList.html +100 -0
  1329. data/dojo/dojox/mobile/tests/test_ajax-html.html +34 -0
  1330. data/dojo/dojox/mobile/tests/test_ajax-json.html +34 -0
  1331. data/dojo/dojox/mobile/tests/test_anchor-label.html +74 -0
  1332. data/dojo/dojox/mobile/tests/test_bookmarkable.html +112 -0
  1333. data/dojo/dojox/mobile/tests/test_buttons.html +21 -0
  1334. data/dojo/dojox/mobile/tests/test_dynamic-icons.html +53 -0
  1335. data/dojo/dojox/mobile/tests/test_dynamic-items.html +98 -0
  1336. data/dojo/dojox/mobile/tests/test_dynamic-view.html +58 -0
  1337. data/dojo/dojox/mobile/tests/test_hash-parameter.html +71 -0
  1338. data/dojo/dojox/mobile/tests/test_iPhone-Animation.html +81 -0
  1339. data/dojo/dojox/mobile/tests/test_iPhone-Button.html +41 -0
  1340. data/dojo/dojox/mobile/tests/test_iPhone-ButtonList.html +50 -0
  1341. data/dojo/dojox/mobile/tests/test_iPhone-EdgeToEdge.html +47 -0
  1342. data/dojo/dojox/mobile/tests/test_iPhone-EdgeToEdgeCategory.html +46 -0
  1343. data/dojo/dojox/mobile/tests/test_iPhone-Heading.html +24 -0
  1344. data/dojo/dojox/mobile/tests/test_iPhone-Icon.html +58 -0
  1345. data/dojo/dojox/mobile/tests/test_iPhone-IconMulti.html +36 -0
  1346. data/dojo/dojox/mobile/tests/test_iPhone-IconSingle.html +35 -0
  1347. data/dojo/dojox/mobile/tests/test_iPhone-IconSingleBelow.html +35 -0
  1348. data/dojo/dojox/mobile/tests/test_iPhone-ResultList.html +65 -0
  1349. data/dojo/dojox/mobile/tests/test_iPhone-RoundRect.html +27 -0
  1350. data/dojo/dojox/mobile/tests/test_iPhone-RoundRectList.html +54 -0
  1351. data/dojo/dojox/mobile/tests/test_iPhone-Settings.html +168 -0
  1352. data/dojo/dojox/mobile/tests/test_iPhone-Switch.html +23 -0
  1353. data/dojo/dojox/mobile/tests/test_iPhone-TabContainer.html +169 -0
  1354. data/dojo/dojox/mobile/tests/test_iPhone-VariableHeightList.html +99 -0
  1355. data/dojo/dojox/mobile/tests/test_progress-indicator.html +83 -0
  1356. data/dojo/dojox/mobile/tests/view-sample.html +38 -0
  1357. data/dojo/dojox/mobile/tests/view1.html +14 -0
  1358. data/dojo/dojox/mobile/tests/view1.json +18 -0
  1359. data/dojo/dojox/mobile/tests/view2.html +9 -0
  1360. data/dojo/dojox/mobile/tests/view2.json +31 -0
  1361. data/dojo/dojox/mobile/tests/view3.html +16 -0
  1362. data/dojo/dojox/mobile/tests/view3.json +44 -0
  1363. data/dojo/dojox/mobile/themes/android/android-compat.css +284 -0
  1364. data/dojo/dojox/mobile/themes/android/android.css +738 -0
  1365. data/dojo/dojox/mobile/themes/android/compat/arrow-button-bg.png +0 -0
  1366. data/dojo/dojox/mobile/themes/android/compat/arrow-button-head.png +0 -0
  1367. data/dojo/dojox/mobile/themes/android/compat/blue-button-bg.png +0 -0
  1368. data/dojo/dojox/mobile/themes/android/compat/blue-button-sel-bg.png +0 -0
  1369. data/dojo/dojox/{editor/plugins/resources/icons/findReplaceDisabled.gif → mobile/themes/android/compat/gray-arrow.png} +0 -0
  1370. data/dojo/dojox/mobile/themes/android/compat/icon-content-heading-bg.png +0 -0
  1371. data/dojo/dojox/mobile/themes/android/compat/switch-blue-bg.png +0 -0
  1372. data/dojo/dojox/mobile/themes/android/compat/switch-gray-bg.png +0 -0
  1373. data/dojo/dojox/mobile/themes/android/compat/switch-green-bg.png +0 -0
  1374. data/dojo/dojox/mobile/themes/android/compat/switch-knob-bg.png +0 -0
  1375. data/dojo/dojox/mobile/themes/android/compat/tab-button-bg.png +0 -0
  1376. data/dojo/dojox/mobile/themes/android/compat/tab-orange-button-bg.png +0 -0
  1377. data/dojo/dojox/mobile/themes/android/compat/tab-sel-button-bg.png +0 -0
  1378. data/dojo/dojox/mobile/themes/buttons-compat.css +30 -0
  1379. data/dojo/dojox/mobile/themes/buttons.css +191 -0
  1380. data/dojo/dojox/mobile/themes/compat/check-off-button.png +0 -0
  1381. data/dojo/dojox/mobile/themes/compat/check-on-button.png +0 -0
  1382. data/dojo/dojox/mobile/themes/compat/small-blue-button-bg.png +0 -0
  1383. data/dojo/dojox/mobile/themes/compat/small-darkblue-button-bg.png +0 -0
  1384. data/dojo/dojox/mobile/themes/compat/small-red-button-bg.png +0 -0
  1385. data/dojo/dojox/mobile/themes/iphone/compat/arrow-button-bg.png +0 -0
  1386. data/dojo/dojox/mobile/themes/iphone/compat/arrow-button-head.png +0 -0
  1387. data/dojo/dojox/mobile/themes/iphone/compat/blue-button-bg.png +0 -0
  1388. data/dojo/dojox/mobile/themes/iphone/compat/blue-button-sel-bg.png +0 -0
  1389. data/dojo/dojox/mobile/themes/iphone/compat/edge-categ-bg.png +0 -0
  1390. data/dojo/dojox/mobile/themes/iphone/compat/gray-arrow.png +0 -0
  1391. data/dojo/dojox/mobile/themes/iphone/compat/heading-bg.png +0 -0
  1392. data/dojo/dojox/mobile/themes/iphone/compat/icon-content-heading-bg.png +0 -0
  1393. data/dojo/dojox/mobile/themes/iphone/compat/switch-blue-bg.png +0 -0
  1394. data/dojo/dojox/mobile/themes/iphone/compat/switch-gray-bg.png +0 -0
  1395. data/dojo/dojox/mobile/themes/iphone/compat/switch-knob-bg.png +0 -0
  1396. data/dojo/dojox/mobile/themes/iphone/compat/tab-button-bg.png +0 -0
  1397. data/dojo/dojox/mobile/themes/iphone/compat/tab-sel-button-bg.png +0 -0
  1398. data/dojo/dojox/mobile/themes/iphone/compat/white-arrow.png +0 -0
  1399. data/dojo/dojox/mobile/themes/iphone/images/thumb-overlay.png +0 -0
  1400. data/dojo/dojox/mobile/themes/iphone/iphone-app-compat.css +24 -0
  1401. data/dojo/dojox/mobile/themes/iphone/iphone-app.css +281 -0
  1402. data/dojo/dojox/mobile/themes/iphone/iphone-compat.css +290 -0
  1403. data/dojo/dojox/mobile/themes/iphone/iphone.css +751 -0
  1404. data/dojo/dojox/rails.js +143 -0
  1405. data/dojo/dojox/rails/README +41 -0
  1406. data/dojo/dojox/rails/tests/module.js +7 -0
  1407. data/dojo/dojox/rails/tests/plugd/trigger.js +187 -0
  1408. data/dojo/dojox/rails/tests/runTests.html +9 -0
  1409. data/dojo/dojox/rails/tests/success_response.html +1 -0
  1410. data/dojo/dojox/rails/tests/test_rails.html +320 -0
  1411. data/dojo/dojox/robot/recorder.js +3 -3
  1412. data/dojo/dojox/rpc/SMDLibrary/wikipedia.smd +49 -49
  1413. data/dojo/dojox/rpc/tests/resources/query +5 -5
  1414. data/dojo/dojox/sketch/Figure.js +2 -2
  1415. data/dojo/dojox/sketch/UndoStack.js +2 -2
  1416. data/dojo/dojox/validate/creditCard.js +1 -1
  1417. data/dojo/dojox/widget/Calendar.js +18 -18
  1418. data/dojo/dojox/widget/CalendarViews.js +2 -2
  1419. data/dojo/dojox/widget/ColorPicker.js +248 -73
  1420. data/dojo/dojox/widget/ColorPicker/ColorPicker.css +32 -19
  1421. data/dojo/dojox/widget/ColorPicker/ColorPicker.html +71 -30
  1422. data/dojo/dojox/widget/ColorPicker/images/hueHandleA11y.png +0 -0
  1423. data/dojo/dojox/widget/DataPresentation.js +126 -60
  1424. data/dojo/dojox/widget/Dialog.js +2 -1
  1425. data/dojo/dojox/widget/Dialog/Dialog.css +7 -0
  1426. data/dojo/dojox/widget/DynamicTooltip.js +3 -3
  1427. data/dojo/dojox/widget/FeedPortlet.js +9 -9
  1428. data/dojo/dojox/widget/FilePicker.js +2 -2
  1429. data/dojo/dojox/widget/Portlet.js +8 -0
  1430. data/dojo/dojox/widget/Portlet/Portlet.css +2 -2
  1431. data/dojo/dojox/widget/RollingList.js +11 -8
  1432. data/dojo/dojox/widget/Rotator.js +7 -1
  1433. data/dojo/dojox/widget/Standby.js +32 -5
  1434. data/dojo/dojox/widget/Toaster.js +3 -1
  1435. data/dojo/dojox/widget/UpgradeBar.js +20 -20
  1436. data/dojo/dojox/widget/Wizard.js +2 -2
  1437. data/dojo/dojox/widget/Wizard/Wizard.css +5 -0
  1438. data/dojo/dojox/widget/gauge/_Gauge.js +2 -2
  1439. data/dojo/dojox/widget/nls/ColorPicker.js +4 -2
  1440. data/dojo/dojox/widget/nls/ar/ColorPicker.js +3 -0
  1441. data/dojo/dojox/widget/nls/ca/ColorPicker.js +6 -0
  1442. data/dojo/dojox/widget/nls/da/ColorPicker.js +3 -0
  1443. data/dojo/dojox/widget/nls/el/ColorPicker.js +10 -0
  1444. data/dojo/dojox/widget/nls/fi/ColorPicker.js +3 -0
  1445. data/dojo/dojox/widget/nls/he/ColorPicker.js +10 -0
  1446. data/dojo/dojox/widget/nls/ko/ColorPicker.js +7 -1
  1447. data/dojo/dojox/widget/nls/nb/ColorPicker.js +3 -0
  1448. data/dojo/dojox/widget/nls/nl/ColorPicker.js +6 -0
  1449. data/dojo/dojox/widget/nls/pt-pt/ColorPicker.js +8 -0
  1450. data/dojo/dojox/widget/nls/ro/ColorPicker.js +5 -0
  1451. data/dojo/dojox/widget/nls/ro/FilePicker.js +6 -0
  1452. data/dojo/dojox/widget/nls/ro/Wizard.js +6 -0
  1453. data/dojo/dojox/widget/nls/sk/ColorPicker.js +3 -0
  1454. data/dojo/dojox/widget/nls/sl/ColorPicker.js +3 -0
  1455. data/dojo/dojox/widget/nls/sv/ColorPicker.js +6 -0
  1456. data/dojo/dojox/widget/nls/tr/ColorPicker.js +10 -0
  1457. data/dojo/dojox/widget/rotator/ThumbnailController.js +96 -0
  1458. data/dojo/dojox/widget/tests/test_ColorPicker.html +10 -1
  1459. data/dojo/dojox/widget/tests/test_DataPresentation.html +7 -3
  1460. data/dojo/dojox/widget/tests/test_PortletInGridContainer.html +27 -37
  1461. data/dojo/dojox/widget/tests/test_PortletInGridContainer.js +2 -1
  1462. data/dojo/dojox/widget/tests/test_PortletInGridContainerColumns.html +10 -8
  1463. data/dojo/dojox/widget/tests/test_Rotator.html +2 -0
  1464. data/dojo/dojox/widget/tests/test_Rotator_ThumbnailController.html +63 -0
  1465. data/dojo/dojox/widget/tests/test_Standby.html +4 -4
  1466. data/dojo/dojox/wire/Wire.js +32 -4
  1467. data/dojo/dojox/wire/demos/markup/demo_ActionChaining.html +1 -1
  1468. data/dojo/dojox/wire/demos/markup/demo_ConditionalActions.html +6 -6
  1469. data/dojo/dojox/wire/demos/markup/demo_TopicWiring.html +1 -1
  1470. data/dojo/dojox/xml/parser.js +2 -2
  1471. data/dojo/util/LICENSE +1 -1
  1472. data/dojo/util/buildscripts/build.bat +3 -3
  1473. data/dojo/util/buildscripts/build.js +4 -2
  1474. data/dojo/util/buildscripts/build_notice.txt +2 -4
  1475. data/dojo/util/buildscripts/build_release.sh +6 -6
  1476. data/dojo/util/buildscripts/cdnBuild.sh +39 -0
  1477. data/dojo/util/buildscripts/cdnBuild.txt +13 -13
  1478. data/dojo/util/buildscripts/cldr/README +1 -1
  1479. data/dojo/util/buildscripts/cldr/build.xml +1 -1
  1480. data/dojo/util/buildscripts/cldr/calendar.xsl +98 -74
  1481. data/dojo/util/buildscripts/cldr/ldml/CatalogManager.properties +16 -16
  1482. data/dojo/util/buildscripts/cldr/ldml/catalog +1 -1
  1483. data/dojo/util/buildscripts/cldr/ldml/core.zip +0 -0
  1484. data/dojo/util/buildscripts/copyright.txt +1 -1
  1485. data/dojo/util/buildscripts/jslib/buildUtil.js +9 -0
  1486. data/dojo/util/buildscripts/jslib/dojoGuardEnd.jsfrag +8 -7
  1487. data/dojo/util/buildscripts/profiles/baseplus.profile.js +21 -0
  1488. data/dojo/util/buildscripts/profiles/demos-all.profile.js +7 -0
  1489. data/dojo/util/buildscripts/tests/conditionalTest.js +1 -1
  1490. data/dojo/util/checkstyle/checkstyle.bat +3 -3
  1491. data/dojo/util/checkstyle/checkstyleUtil.js +68 -4
  1492. data/dojo/util/checkstyle/runCheckstyle.js +24 -2
  1493. data/dojo/util/docscripts/LICENSE +1 -1
  1494. data/dojo/util/docscripts/cheat/lib.js +1 -1
  1495. data/dojo/util/docscripts/lib/parser2/JavaScriptArray.php +2 -2
  1496. data/dojo/util/docscripts/makeCix.php +1 -1
  1497. data/dojo/util/doh/_browserRunner.js +25 -4
  1498. data/dojo/util/doh/_rhinoRunner.js +1 -0
  1499. data/dojo/util/doh/robot/DOHRobot.jar +0 -0
  1500. data/dojo/util/doh/robot/DOHRobot.java +32 -7
  1501. data/dojo/util/doh/runner.html +2 -2
  1502. data/dojo/util/doh/runner.js +14 -5
  1503. data/dojo/util/jsdoc/LICENSE +1 -1
  1504. data/dojo/util/migration/dijitCss14to15.sed +67 -0
  1505. data/dojo/util/shrinksafe/shrinksafe.jar +0 -0
  1506. data/dojo/util/shrinksafe/src/org/dojotoolkit/shrinksafe/resources/Messages.properties +1 -1
  1507. data/dojo/util/shrinksafe/tests/escapeunicode.js +1 -0
  1508. data/dojo/util/shrinksafe/tests/module.js +14 -5
  1509. data/lib/dojo_src.rb +2 -5
  1510. metadata +4940 -4373
  1511. data/dojo/dijit/tests/_base/viewportQuirks.html +0 -5
  1512. data/dojo/dijit/themes/nihilo/form/ComboBox.css +0 -12
  1513. data/dojo/dijit/themes/nihilo/form/Common_rtl.css +0 -7
  1514. data/dojo/dijit/themes/nihilo/images/editor.gif +0 -0
  1515. data/dojo/dijit/themes/nihilo/images/editorDisabled.gif +0 -0
  1516. data/dojo/dijit/themes/nihilo/images/editorDisabled_rtl.gif +0 -0
  1517. data/dojo/dijit/themes/nihilo/images/editor_rtl.gif +0 -0
  1518. data/dojo/dijit/themes/soria/form/ComboBox.css +0 -12
  1519. data/dojo/dijit/themes/soria/form/Common_rtl.css +0 -7
  1520. data/dojo/dijit/themes/soria/images/editor.gif +0 -0
  1521. data/dojo/dijit/themes/soria/images/editorDisabled.gif +0 -0
  1522. data/dojo/dijit/themes/soria/images/editorDisabled_rtl.gif +0 -0
  1523. data/dojo/dijit/themes/soria/images/editor_rtl.gif +0 -0
  1524. data/dojo/dijit/themes/templateThemeTest.html +0 -178
  1525. data/dojo/dijit/themes/tundra/form/Common_rtl.css +0 -6
  1526. data/dojo/dijit/themes/tundra/images/editor.gif +0 -0
  1527. data/dojo/dijit/themes/tundra/images/editorDisabled.gif +0 -0
  1528. data/dojo/dijit/themes/tundra/images/editorDisabled_rtl.gif +0 -0
  1529. data/dojo/dijit/themes/tundra/images/editorMaster.png +0 -0
  1530. data/dojo/dijit/themes/tundra/images/editor_rtl.gif +0 -0
  1531. data/dojo/dojo/cldr/nls/de-de/number.js +0 -4
  1532. data/dojo/dojo/cldr/nls/en-us/currency.js +0 -5
  1533. data/dojo/dojo/cldr/nls/en-us/number.js +0 -4
  1534. data/dojo/dojo/cldr/nls/es-es/gregorian.js +0 -7
  1535. data/dojo/dojo/cldr/nls/es-es/number.js +0 -4
  1536. data/dojo/dojo/cldr/nls/islamic-civil.js +0 -96
  1537. data/dojo/dojo/cldr/nls/it-it/gregorian.js +0 -5
  1538. data/dojo/dojo/cldr/nls/ja-jp/number.js +0 -4
  1539. data/dojo/dojo/cldr/nls/ko-kr/gregorian.js +0 -6
  1540. data/dojo/dojo/cldr/nls/ko-kr/number.js +0 -4
  1541. data/dojo/dojo/cldr/nls/pt-br/gregorian.js +0 -18
  1542. data/dojo/dojo/cldr/nls/zh-cn/gregorian.js +0 -12
  1543. data/dojo/dojo/cldr/nls/zh-cn/number.js +0 -4
  1544. data/dojo/dojo/cldr/nls/zh-tw/number.js +0 -6
  1545. data/dojo/dojox/editor/plugins/resources/icons/findIcon.gif +0 -0
  1546. data/dojo/dojox/editor/plugins/resources/icons/findReplace.gif +0 -0
  1547. data/dojo/dojox/editor/plugins/resources/icons/replaceIcon.gif +0 -0
  1548. data/dojo/dojox/math/LICENSE-BigInteger +0 -40
  1549. data/dojo/util/buildscripts/cldr/ldml/ldml.dtd +0 -1166
  1550. data/dojo/util/docscripts/api.json +0 -202488
  1551. data/dojo/util/docscripts/api.xml +0 -54976
  1552. data/dojo/util/resources/LICENSE +0 -195
  1553. data/dojo/util/resources/api/api.xml +0 -0
  1554. data/dojo/util/resources/api/dojo.cix +0 -0
  1555. data/dojo/util/resources/dojotoolkit.org/mini-dtk/dojo-styles.css +0 -114
  1556. data/dojo/util/resources/dojotoolkit.org/mini-dtk/images/bg-content-left.png +0 -0
  1557. data/dojo/util/resources/dojotoolkit.org/mini-dtk/images/bg-content-right.png +0 -0
  1558. data/dojo/util/resources/dojotoolkit.org/mini-dtk/images/body.png +0 -0
  1559. data/dojo/util/resources/dojotoolkit.org/mini-dtk/images/logo.png +0 -0
  1560. data/dojo/util/resources/dojotoolkit.org/mini-dtk/mini-dtk.css +0 -34
  1561. data/dojo/util/resources/dojotoolkit.org/mini-dtk/mini-dtk.psd +0 -0
  1562. data/dojo/util/resources/dojotoolkit.org/mini-dtk/style.css +0 -1092
  1563. data/dojo/util/resources/dojotoolkit.org/mini-dtk/template.html +0 -115
  1564. data/dojo/util/resources/logo/negative/dijit.logo.neg.ai +15 -4118
  1565. data/dojo/util/resources/logo/negative/dijit.logo.neg.eps +0 -5557
  1566. data/dojo/util/resources/logo/negative/dijit.logo.neg.png +0 -0
  1567. data/dojo/util/resources/logo/negative/dijit.logo.neg.svg +0 -987
  1568. data/dojo/util/resources/logo/negative/dojo.logo.neg.ai +0 -0
  1569. data/dojo/util/resources/logo/negative/dojo.logo.neg.big.png +0 -0
  1570. data/dojo/util/resources/logo/negative/dojo.logo.neg.eps +0 -64
  1571. data/dojo/util/resources/logo/negative/dojo.logo.neg.png +0 -0
  1572. data/dojo/util/resources/logo/negative/dojo.logo.neg.svg +0 -36
  1573. data/dojo/util/resources/logo/negative/dojox.logo.neg.ai +8 -4003
  1574. data/dojo/util/resources/logo/negative/dojox.logo.neg.eps +0 -5357
  1575. data/dojo/util/resources/logo/negative/dojox.logo.neg.png +0 -0
  1576. data/dojo/util/resources/logo/negative/dojox.logo.neg.svg +0 -41
  1577. data/dojo/util/resources/logo/positive/dijit.logo.ai +10 -4169
  1578. data/dojo/util/resources/logo/positive/dijit.logo.eps +0 -5562
  1579. data/dojo/util/resources/logo/positive/dijit.logo.png +0 -0
  1580. data/dojo/util/resources/logo/positive/dijit.logo.svg +0 -987
  1581. data/dojo/util/resources/logo/positive/dojo.logo.ai +15 -3719
  1582. data/dojo/util/resources/logo/positive/dojo.logo.big.png +0 -0
  1583. data/dojo/util/resources/logo/positive/dojo.logo.eps +0 -64
  1584. data/dojo/util/resources/logo/positive/dojo.logo.png +0 -0
  1585. data/dojo/util/resources/logo/positive/dojo.logo.svg +0 -36
  1586. data/dojo/util/resources/logo/positive/dojox.logo.ai +13 -4068
  1587. data/dojo/util/resources/logo/positive/dojox.logo.eps +0 -5362
  1588. data/dojo/util/resources/logo/positive/dojox.logo.png +0 -0
  1589. data/dojo/util/resources/logo/positive/dojox.logo.svg +0 -41
  1590. data/dojo/util/resources/themes/nihilo/nihilo.psd +0 -0
  1591. data/dojo/util/resources/themes/soria/soria.psd +0 -0
@@ -7,34 +7,31 @@ dojo.requireLocalization("dojox.editor.plugins", "TableDialog");
7
7
 
8
8
  dojo.experimental("dojox.editor.plugins.TablePlugins");
9
9
 
10
- // summary:
10
+ // summary:
11
11
  // A series of plugins that give the Editor the ability to create and edit
12
12
  // HTML tables. See the end of this document for all avaiable plugins
13
- // and dojox/editorPlugins/tests/editorTablePlugs.html for an example
13
+ // and dojox/editorPlugins/tests/editorTablePlugs.html for an example
14
14
  //
15
- // example:
15
+ // example:
16
16
  // | <div dojoType="dijit.Editor" plugins="[
17
17
  // | 'bold','italic','|',
18
18
  // | {name: 'dojox.editor.plugins.TablePlugins', command: 'insertTable'},
19
19
  // | {name: 'dojox.editor.plugins.TablePlugins', command: 'modifyTable'}
20
20
  // | ]">
21
- // | Editor text is here
21
+ // | Editor text is here
22
22
  // | </div>
23
23
  //
24
- // TODO:
24
+ // TODO:
25
25
  // Currently not supporting merging or splitting cells
26
26
  //
27
- // FIXME: Undo is very buggy, and therefore unimeplented in all browsers
27
+ // FIXME: Undo is very buggy, and therefore unimeplented in all browsers
28
28
  // except IE - which itself has only been lightly tested.
29
29
  //
30
- // FIXME: Selecting multiple table cells in Firefox looks to be impossible.
30
+ // FIXME: Selecting multiple table cells in Firefox looks to be impossible.
31
31
  // This affect the 'colorTableCell' plugin. Cells can still be
32
32
  // colored individually or in rows.
33
33
 
34
-
35
-
36
-
37
- dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
34
+ dojo.declare("dojox.editor.plugins._TableHandler", dijit._editor._Plugin,{
38
35
  // summary:
39
36
  // A global object that handles common tasks for all the plugins. Since
40
37
  // there are several plugins that are all calling common methods, it's preferable
@@ -49,7 +46,8 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
49
46
  tableData: null,
50
47
  shiftKeyDown:false,
51
48
  editorDomNode: null,
52
- undoEnabled: dojo.isIE, //FIXME:
49
+ undoEnabled: true, //Using custom undo for all browsers.
50
+ refCount: 0,
53
51
 
54
52
  doMixins: function(){
55
53
 
@@ -58,7 +56,6 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
58
56
  return dojo.withGlobal(this.window, "getAncestorElement",dijit._editor.selection, [tagName]);
59
57
  },
60
58
  hasAncestorElement: function(tagName){
61
- return true
62
59
  return dojo.withGlobal(this.window, "hasAncestorElement",dijit._editor.selection, [tagName]);
63
60
  },
64
61
  selectElement: function(elem){
@@ -80,11 +77,20 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
80
77
  // Initialize the global handler upon a plugin's first instance of setEditor
81
78
  //
82
79
 
83
- // All plugins will attempt initialization. We only need to do so once.
80
+ // All plugins will attempt initialization. We only need to do so once.
81
+ // But keep track so that it is cleaned up when all usage of it for an editor has
82
+ // been removed.
83
+ this.refCount++;
84
+
85
+ // Turn on custom undo for all.
86
+ editor.customUndo = true;
87
+
84
88
  if(this.initialized){ return; }
85
89
 
86
90
  this.initialized = true;
87
91
  this.editor = editor;
92
+
93
+ this.editor._tablePluginHandler = this;
88
94
 
89
95
  //Editor loads async, can't assume doc is ready yet. So, use the deferred of the
90
96
  //editor to init at the right time.
@@ -93,25 +99,25 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
93
99
 
94
100
  // RichText should have a mouseup connection to recognize drag-selections
95
101
  // Example would be selecting multiple table cells
96
- dojo.connect(this.editorDomNode , "mouseup", this.editor, "onClick");
97
-
98
- dojo.connect(this.editor, "onDisplayChanged", this, "checkAvailable");
99
-
102
+ this._myListeners = [];
103
+ this._myListeners.push(dojo.connect(this.editorDomNode , "mouseup", this.editor, "onClick"));
104
+ this._myListeners.push(dojo.connect(this.editor, "onDisplayChanged", this, "checkAvailable"));
105
+ this._myListeners.push(dojo.connect(this.editor, "onBlur", this, "checkAvailable"));
100
106
  this.doMixins();
101
107
  this.connectDraggable();
102
108
  }));
103
109
  },
104
110
 
105
111
  getTableInfo: function(forceNewData){
106
- // summary
107
- // Gets the table in focus
108
- // Collects info on the table - see return params
112
+ // summary:
113
+ // Gets the table in focus
114
+ // Collects info on the table - see return params
109
115
  //
110
116
  if(forceNewData){ this._tempStoreTableData(false); }
111
117
  if(this.tableData){
112
118
  // tableData is set for a short amount of time, so that all
113
119
  // plugins get the same return without doing the method over
114
- console.log("returning current tableData:", this.tableData);
120
+ //console.log("returning current tableData:", this.tableData);
115
121
  return this.tableData;
116
122
  }
117
123
  var tr, trs, td, tds, tbl, cols, tdIndex, trIndex;
@@ -124,11 +130,11 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
124
130
 
125
131
  tds = dojo.query("td", tbl);
126
132
  tds.forEach(function(d, i){
127
- if(td==d){tdIndex = i}
133
+ if(td==d){tdIndex = i;}
128
134
  });
129
135
  trs = dojo.query("tr", tbl);
130
136
  trs.forEach(function(r, i){
131
- if(tr==r){trIndex = i}
137
+ if(tr==r){trIndex = i;}
132
138
  });
133
139
  cols = tds.length/trs.length;
134
140
  var o = {
@@ -143,21 +149,21 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
143
149
  trIndex:trIndex, // index of focused row
144
150
  colIndex:tdIndex%cols
145
151
  };
146
- console.log("NEW tableData:",o);
152
+ //console.log("NEW tableData:",o);
147
153
  this.tableData = o;
148
154
  this._tempStoreTableData(500);
149
155
  return this.tableData;
150
156
  },
151
157
 
152
158
  connectDraggable: function(){
153
- // summary
154
- // Detects drag-n-drop in the editor (could probably be moved to there)
155
- // Currently only checks if item dragged was a TABLE, and removes its align attr
156
- // DOES NOT WORK IN FF - it could - but FF's drag detection is a monster
159
+ // summary:
160
+ // Detects drag-n-drop in the editor (could probably be moved to there)
161
+ // Currently only checks if item dragged was a TABLE, and removes its align attr
162
+ // DOES NOT WORK IN FF - it could - but FF's drag detection is a monster
157
163
  //
158
164
  if(!dojo.isIE){
159
165
  //console.warn("Drag and Drop is currently only detectable in IE.");
160
- return
166
+ return;
161
167
  }
162
168
 
163
169
  // IE ONLY
@@ -180,15 +186,12 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
180
186
  dojo.withGlobal(this.editor.window, "selectElement",dijit._editor.selection, [tbl]);
181
187
 
182
188
  tbl.ondragstart = function(){
183
- console.log ("ondragstart");
189
+ //console.log("ondragstart");
184
190
  };
185
191
  tbl.ondrag = function(){
186
192
  alert("drag")
187
- //console.log ("ondrag");
188
-
189
- */
190
-
191
-
193
+ //console.log("ondrag");
194
+ */
192
195
  },
193
196
  onDragStart: function(){
194
197
  var e = window.event;
@@ -198,21 +201,21 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
198
201
  //console.log("onDragStart", e.srcElement.id);
199
202
  },
200
203
  onDragEnd: function(){
201
- // summary
202
- // Detects that an object has been dragged into place
203
- // Currently, this code is only used for when a table is dragged
204
- // and clears the "align" attribute, so that the table will look
205
- // to be more in the place that the user expected.
206
- // TODO: This code can be used for other things, most
207
- // notably UNDO, which currently is not quite usable.
208
- // This code could also find itself in the Editor code when it is
209
- // complete.
204
+ // summary:
205
+ // Detects that an object has been dragged into place
206
+ // Currently, this code is only used for when a table is dragged
207
+ // and clears the "align" attribute, so that the table will look
208
+ // to be more in the place that the user expected.
209
+ // TODO: This code can be used for other things, most
210
+ // notably UNDO, which currently is not quite usable.
211
+ // This code could also find itself in the Editor code when it is
212
+ // complete.
210
213
 
211
214
  //console.log("onDragEnd");
212
- var e = window.event
215
+ var e = window.event;
213
216
  var node = e.srcElement;
214
217
  var id = node.id;
215
- var win = this.editor.window
218
+ var win = this.editor.window;
216
219
  //console.log("NODE:", node.tagName, node.id, dojo.attr(node, "align"));
217
220
 
218
221
  // clearing a table's align attr
@@ -227,10 +230,10 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
227
230
  }
228
231
  },
229
232
  checkAvailable: function(){
230
- // summary
231
- // For table plugs
232
- // Checking if a table or part of a table has focus so that
233
- // Plugs can change their status
233
+ // summary:
234
+ // For table plugs
235
+ // Checking if a table or part of a table has focus so that
236
+ // Plugs can change their status
234
237
  //
235
238
  if(this.availableCurrentlySet){
236
239
  // availableCurrentlySet is set for a short amount of time, so that all
@@ -249,7 +252,8 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
249
252
  return true;
250
253
  }
251
254
 
252
- this.currentlyAvailable = this.editor.hasAncestorElement("table");
255
+ // Only return avalable if the editor is focused.
256
+ this.currentlyAvailable = this.editor._focused ? this.editor.hasAncestorElement("table") : false;
253
257
 
254
258
  if(this.currentlyAvailable){
255
259
  this.connectTableKeys();
@@ -258,17 +262,16 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
258
262
  }
259
263
 
260
264
  this._tempAvailability(500);
261
-
262
- dojo.publish("available", [ this.currentlyAvailable ]);
265
+ dojo.publish(this.editor.id + "_tablePlugins", [ this.currentlyAvailable ]);
263
266
  return this.currentlyAvailable;
264
267
  },
265
268
 
266
269
  _prepareTable: function(tbl){
267
- // For IE's sake, we are adding IDs to the TDs if none is there
270
+ // For IE's sake, we are adding IDs to the TDs if none is there
268
271
  // We go ahead and use it for other code for convenience
269
272
  //
270
273
  var tds = this.editor.query("td", tbl);
271
- console.log("prep:", tds, tbl)
274
+ console.log("prep:", tds, tbl);
272
275
  if(!tds[0].id){
273
276
  tds.forEach(function(td, i){
274
277
  if(!td.id){
@@ -292,7 +295,7 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
292
295
  // clear object
293
296
  this.tableData = null;
294
297
  }else if(type===undefined){
295
- console.warn("_tempStoreTableData must be passed an argument")
298
+ console.warn("_tempStoreTableData must be passed an argument");
296
299
  }else{
297
300
  // type is a number/ms
298
301
  setTimeout(dojo.hitch(this, function(){
@@ -310,7 +313,7 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
310
313
  // clear object
311
314
  this.availableCurrentlySet = false;
312
315
  }else if(type===undefined){
313
- console.warn("_tempAvailability must be passed an argument")
316
+ console.warn("_tempAvailability must be passed an argument");
314
317
  }else{
315
318
  // type is a number/ms
316
319
  this.availableCurrentlySet = true;
@@ -322,19 +325,19 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
322
325
  },
323
326
 
324
327
  connectTableKeys: function(){
325
- // summary
326
- // When a table is in focus, start detecting keys
327
- // Mainly checking for the TAB key so user can tab
328
- // through a table (blocking the browser's desire to
329
- // tab away from teh editor completely)
328
+ // summary:
329
+ // When a table is in focus, start detecting keys
330
+ // Mainly checking for the TAB key so user can tab
331
+ // through a table (blocking the browser's desire to
332
+ // tab away from teh editor completely)
330
333
  if(this.tablesConnected){ return; }
331
334
  this.tablesConnected = true;
332
335
  var node = (this.editor.iframe) ? this.editor.document : this.editor.editNode;
333
336
  this.cnKeyDn = dojo.connect(node, "onkeydown", this, "onKeyDown");
334
337
  this.cnKeyUp = dojo.connect(node, "onkeyup", this, "onKeyUp");
335
- dojo.connect(node, "onkeypress", this, "onKeyUp");
336
-
338
+ this._myListeners.push(dojo.connect(node, "onkeypress", this, "onKeyUp"));
337
339
  },
340
+
338
341
  disconnectTableKeys: function(){
339
342
  //console.log("disconnect")
340
343
  dojo.disconnect(this.cnKeyDn);
@@ -343,11 +346,10 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
343
346
  },
344
347
 
345
348
  onKeyDown: function(evt){
346
-
347
349
  var key = evt.keyCode;
348
350
  //console.log(" -> DOWN:", key);
349
- if(key == 16) this.shiftKeyDown = true;
350
- if(key == 9) {console.log("TAB!:");
351
+ if(key == 16){ this.shiftKeyDown = true;}
352
+ if(key == 9) {
351
353
  var o = this.getTableInfo();
352
354
  //console.log("TAB ", o.tdIndex, o);
353
355
  // modifying the o.tdIndex in the tableData directly, because we may save it
@@ -373,38 +375,64 @@ dojo.declare("dojox.editor.plugins.GlobalTableHandler", dijit._editor._Plugin,{
373
375
  dojo.stopEvent(evt);
374
376
  }
375
377
  }
376
-
377
378
  },
379
+
378
380
  onKeyUp: function(evt){
379
381
  var key = evt.keyCode;
380
382
  //console.log(" -> UP:", key)
381
- if(key == 16) this.shiftKeyDown = false;
383
+ if(key == 16){ this.shiftKeyDown = false;}
382
384
  if(key == 37 || key == 38 || key == 39 || key == 40 ){
383
385
  // user can arrow or tab out of table - need to recheck
384
386
  this.onDisplayChanged();
385
387
  }
386
- if(key == 9 && this.stopEvent) dojo.stopEvent(evt);
388
+ if(key == 9 && this.stopEvent){ dojo.stopEvent(evt);}
387
389
  },
390
+
388
391
  onDisplayChanged: function(){
389
392
  //console.log("onDisplayChanged")
390
393
  this.currentlyAvailable = false;
391
394
  this._tempStoreTableData(false);
392
395
  this._tempAvailability(false);
393
396
  this.checkAvailable();
397
+ },
398
+
399
+ uninitialize: function(editor){
400
+ // summary:
401
+ // Function to handle cleaning up of connects
402
+ // and such. It only finally destroys everything once
403
+ // all 'references' to it have gone. As in all plugins
404
+ // that called init on it destroyed their refs in their
405
+ // cleanup calls.
406
+ // editor:
407
+ // The editor to detach from.
408
+ if(this.editor == editor){
409
+ this.refCount--;
410
+ if(!this.refCount && this.initialized){
411
+ if(this.tablesConnected){
412
+ this.disconnectTableKeys();
413
+ }
414
+ this.initialized = false;
415
+ dojo.forEach(this._myListeners, function(l){
416
+ dojo.disconnect(l);
417
+ });
418
+ delete this._myListeners;
419
+ delete this.editor._tablePluginHandler;
420
+ delete this.editor;
421
+ }
422
+ this.inherited(arguments);
423
+ }
394
424
  }
395
425
  });
396
- // global:
397
- tablePluginHandler = new dojox.editor.plugins.GlobalTableHandler(); //FIXME: no globals.
398
426
 
399
427
  dojo.declare("dojox.editor.plugins.TablePlugins",
400
428
  dijit._editor._Plugin,
401
429
  {
402
430
  //summary:
403
- // A collection of Plugins for inserting and modifying tables in the Editor
404
- // See end of this document for all avaiable plugs
405
- // and dojox/editorPlugins/tests/editorTablePlugs.html for an example
431
+ // A collection of Plugins for inserting and modifying tables in the Editor
432
+ // See end of this document for all avaiable plugs
433
+ // and dojox/editorPlugins/tests/editorTablePlugs.html for an example
406
434
  //
407
- // NOT IMPLEMENTED: Not handling cell merge, span or split
435
+ // NOT IMPLEMENTED: Not handling cell merge, span or split
408
436
  //
409
437
 
410
438
  iconClassPrefix: "editorIcon",
@@ -413,184 +441,43 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
413
441
  commandName:"",
414
442
  label:"",
415
443
  alwaysAvailable:false,
416
- undoEnabled:false,
444
+ undoEnabled:true,
417
445
 
418
- constructor: function(){
419
- // summary
420
- // Initialize certain plugins
421
- //
422
- switch(this.commandName){
423
-
424
- case "colorTableCell":
425
- this.buttonClass = dijit.form.DropDownButton;
426
- this.dropDown = new dijit.ColorPalette();
427
- this.connect(this.dropDown, "onChange", function(color){
428
- this.modTable(null, color);
429
- });
430
- break;
431
-
432
- case "modifyTable":
433
- this.buttonClass = dijit.form.Button;
434
- this.modTable = this.launchModifyDialog;
435
- break;
436
-
437
- case "insertTable":
438
- this.alwaysAvailable = true;
439
- this.buttonClass = dijit.form.Button;
440
- this.modTable = this.launchInsertDialog;
441
- break;
442
-
443
- case "tableContextMenu":
444
- this.connect(this, "setEditor", function(editor){
445
- editor.onLoadDeferred.addCallback(dojo.hitch(this, function() {
446
- this._createContextMenu();
447
- }));
448
- this.button.domNode.style.display = "none";
449
- });
450
- break;
451
- }
452
-
453
- dojo.subscribe("available", this, "onDisplayChanged");
454
-
455
- },
456
446
  onDisplayChanged: function(withinTable){
457
447
  // subscribed to from the global object's publish method
458
448
  //
459
449
  //console.log("onDisplayChanged", this.commandName);
460
450
  if(!this.alwaysAvailable){
461
451
  this.available = withinTable;
462
- this.button.attr('disabled', !this.available);
452
+ this.button.set('disabled', !this.available);
463
453
  }
464
454
  },
465
455
 
466
- setEditor: function(){
456
+ setEditor: function(editor){
457
+ this.editor = editor;
458
+ this.editor.customUndo = true;
467
459
  this.inherited(arguments);
460
+ this._availableTopic = dojo.subscribe(this.editor.id + "_tablePlugins", this, "onDisplayChanged");
468
461
  this.onEditorLoaded();
469
462
  },
470
463
  onEditorLoaded: function(){
471
- //stub
472
- // call global object to initialize it
473
- tablePluginHandler.initialize(this.editor);
474
- },
475
-
476
- _createContextMenu: function(){
477
- // summary
478
- // Building context menu for right-click shortcuts within a table
479
- //
480
- var node = dojo.isMoz ? this.editor.editNode : this.editorDomNode;
481
-
482
- var pMenu = new dijit.Menu({targetNodeIds:[node], id:"progMenu", contextMenuForWindow:dojo.isIE});
483
- var _M = dijit.MenuItem;
484
- var messages = dojo.i18n.getLocalization("dojox.editor.plugins", "TableDialog", this.lang);
485
- pMenu.addChild(new _M({label: messages.selectTableLabel, onClick: dojo.hitch(this, "selectTable")}));
486
- pMenu.addChild(new dijit.MenuSeparator());
487
-
488
- pMenu.addChild(new _M({label: messages.insertTableRowBeforeLabel, onClick: dojo.hitch(this, "modTable", "insertTableRowBefore" )}));
489
- pMenu.addChild(new _M({label: messages.insertTableRowAfterLabel, onClick: dojo.hitch(this, "modTable", "insertTableRowAfter" )}));
490
- pMenu.addChild(new _M({label: messages.insertTableColumnBeforeLabel, onClick: dojo.hitch(this, "modTable", "insertTableColumnBefore" )}));
491
- pMenu.addChild(new _M({label: messages.insertTableColumnAfterLabel, onClick: dojo.hitch(this, "modTable", "insertTableColumnAfter" )}));
492
- pMenu.addChild(new dijit.MenuSeparator());
493
- pMenu.addChild(new _M({label: messages.deleteTableRowLabel, onClick: dojo.hitch(this, "modTable", "deleteTableRow" )}));
494
- pMenu.addChild(new _M({label: messages.deleteTableColumnLabel, onClick: dojo.hitch(this, "modTable", "deleteTableColumn" )}));
495
-
496
- // overwriting this method, as the menu's coordinates
497
- // are not accurate in the editor's iframe
498
- // FIXME: Works well in IE - all others, sometimes inaccurate.
499
- pMenu._openMyself = function(e){
500
-
501
- if(!tablePluginHandler.checkAvailable()){ return; }
502
-
503
- if(this.leftClickToOpen && e.button>0){
504
- return;
505
- }
506
- dojo.stopEvent(e);
507
-
508
- var x,y;
509
- if(dojo.isIE){
510
- x = e.x;
511
- y = e.y;
512
- }else{
513
- x = e.screenX;
514
- y = e.screenY + 25;
515
- }
516
- var self=this;
517
- var savedFocus = dijit.getFocus(this);
518
- function closeAndRestoreFocus(){
519
- // user has clicked on a menu or popup
520
- dijit.focus(savedFocus);
521
- dijit.popup.close(self);
522
- }
523
- var res = dijit.popup.open({
524
- popup: this,
525
- x: x,
526
- y: y,
527
- onExecute: closeAndRestoreFocus,
528
- onCancel: closeAndRestoreFocus,
529
- orient: this.isLeftToRight() ? 'L' : 'R'
530
- });
531
- var v = dijit.getViewport();
532
- if(res.y+res.h>v.h){
533
- if(e.screenY-res.h>=0){
534
- y = e.screenY - res.h;
535
- }else{
536
- y = 0;
537
- }
538
- dijit.popup.close(this);
539
- // FIXME: Not very DRY here.
540
- // Reopening popup if the location was not good.
541
- res = dijit.popup.open({
542
- popup: this,
543
- x: x,
544
- y: y,
545
- onExecute: closeAndRestoreFocus,
546
- onCancel: closeAndRestoreFocus,
547
- orient: this.isLeftToRight() ? 'L' : 'R'
548
- });
549
- }
550
- console.log(dijit.getViewport());
551
- this.focus();
552
-
553
- this._onBlur = function(){
554
- this.inherited('_onBlur', arguments);
555
- dijit.popup.close(this);
556
- }
464
+ if(!this.editor._tablePluginHandler){
465
+ // Create it and init it off the editor. This
466
+ // will create the _tablePluginHandler reference on
467
+ // the dijit.Editor instance. This avoids a global.
468
+ var tablePluginHandler = new dojox.editor.plugins._TableHandler();
469
+ tablePluginHandler.initialize(this.editor);
470
+ }else{
471
+ this.editor._tablePluginHandler.initialize(this.editor);
557
472
  }
558
- this.menu = pMenu;
559
473
  },
560
474
 
561
-
562
475
  selectTable: function(){
563
476
  // selects table that is in focus
564
477
  var o = this.getTableInfo();
565
- dojo.withGlobal(this.editor.window, "selectElement",dijit._editor.selection, [o.tbl]);
566
- },
567
- launchInsertDialog: function(){
568
- var w = new dojox.editor.plugins.EditorTableDialog({});
569
- w.show();
570
- var c = dojo.connect(w, "onBuildTable", this, function(obj){
571
- dojo.disconnect(c);
572
-
573
- var res = this.editor.execCommand('inserthtml', obj.htmlText);
574
-
575
- // commenting this line, due to msg below
576
- //var td = this.editor.query("td", this.editor.byId(obj.id));
577
-
578
- //HMMMM.... This throws a security error now. didn't used to.
579
- //this.editor.selectElement(td);
580
- });
581
- },
582
-
583
- launchModifyDialog: function(){
584
- var o = this.getTableInfo();
585
- console.log("LAUNCH DIALOG")
586
- var w = new dojox.editor.plugins.EditorModifyTableDialog({table:o.tbl});
587
- w.show();
588
- this.connect(w, "onSetTable", function(color){
589
- // uhm... not sure whats going on here...
590
- var o = this.getTableInfo();
591
- console.log("set color:", color)
592
- dojo.attr(o.td, "bgcolor", color);
593
- });
478
+ if(o && o.tbl){
479
+ dojo.withGlobal(this.editor.window, "selectElement",dijit._editor.selection, [o.tbl]);
480
+ }
594
481
  },
595
482
 
596
483
  _initButton: function(){
@@ -600,19 +487,18 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
600
487
  this.inherited(arguments);
601
488
  delete this.command;
602
489
 
603
- if(this.commandName != "colorTableCell") this.connect(this.button.domNode, "click", "modTable");
604
- if(this.commandName=="tableContextMenu") this.button.domNode.display = "none";
490
+ this.connect(this.button, "onClick", "modTable");
605
491
 
606
492
  this.onDisplayChanged(false);
607
493
  },
608
494
 
609
495
  modTable: function(cmd, args){
610
- // summary
611
- // Where each plugin performs its action
612
- // Note: not using execCommand. In spite of their presence in the
613
- // Editor as query-able plugins, I was not able to find any evidence
614
- // that they are supported (especially in NOT IE). If they are
615
- // supported in other browsers, it may help with the undo problem.
496
+ // summary:
497
+ // Where each plugin performs its action
498
+ // Note: not using execCommand. In spite of their presence in the
499
+ // Editor as query-able plugins, I was not able to find any evidence
500
+ // that they are supported (especially in NOT IE). If they are
501
+ // supported in other browsers, it may help with the undo problem.
616
502
  //
617
503
  this.begEdit();
618
504
  var o = this.getTableInfo();
@@ -620,7 +506,12 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
620
506
  var r, c, i;
621
507
  var adjustColWidth = false;
622
508
  //console.log("modTable:", sw)
623
-
509
+
510
+ if(dojo.isIE){
511
+ // IE can lose selections on focus changes, so focus back
512
+ // in order to restore it.
513
+ this.editor.focus();
514
+ }
624
515
  switch(sw){
625
516
  case "insertTableRowBefore":
626
517
  r = o.tbl.insertRow(o.trIndex);
@@ -652,7 +543,7 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
652
543
  break;
653
544
  case "deleteTableRow":
654
545
  o.tbl.deleteRow(o.trIndex);
655
- console.log("TableInfo:", this.getTableInfo())
546
+ console.log("TableInfo:", this.getTableInfo());
656
547
  break;
657
548
  case "deleteTableColumn":
658
549
  o.trs.forEach(function(tr){
@@ -660,19 +551,11 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
660
551
  });
661
552
  adjustColWidth = true;
662
553
  break;
663
- case "colorTableCell":
664
- // The one plugin that really needs use of the very verbose
665
- // getSelectedCells()
666
- var tds = this.getSelectedCells(o.tbl);
667
- dojo.forEach(tds, function(td){
668
- dojo.style(td, "backgroundColor", args);
669
- });
670
-
671
- break;
554
+
672
555
  case "modifyTable":
673
556
  break;
674
557
  case "insertTable":
675
- break
558
+ break;
676
559
 
677
560
  }
678
561
  if(adjustColWidth){
@@ -681,22 +564,20 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
681
564
  this.endEdit();
682
565
  },
683
566
 
684
- // UNDO HANDLERS
685
- // Only works in IE
686
567
  begEdit: function(){
687
- if(tablePluginHandler.undoEnabled){
688
- console.log("UNDO:", this.editor.customUndo)
568
+ if(this.editor._tablePluginHandler.undoEnabled){
569
+ //console.log("UNDO:", this.editor.customUndo);
689
570
  if(this.editor.customUndo){
690
571
  this.editor.beginEditing();
691
572
  }else{
692
573
  this.valBeforeUndo = this.editor.getValue();
693
- console.log("VAL:", this.valBeforeUndo)
574
+ //console.log("VAL:", this.valBeforeUndo);
694
575
 
695
576
  }
696
577
  }
697
578
  },
698
579
  endEdit: function(){
699
- if(tablePluginHandler.undoEnabled){
580
+ if(this.editor._tablePluginHandler.undoEnabled){
700
581
  if(this.editor.customUndo){
701
582
  this.editor.endEditing();
702
583
  }else{
@@ -714,9 +595,9 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
714
595
  },
715
596
 
716
597
  makeColumnsEven: function(){
717
- //summary
718
- // After changing column amount, change widths to
719
- // keep columns even
598
+ //summary:
599
+ // After changing column amount, change widths to
600
+ // keep columns even
720
601
  //
721
602
  // the timeout helps prevent an occasional snafu
722
603
  setTimeout(dojo.hitch(this, function(){
@@ -729,21 +610,21 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
729
610
  },
730
611
 
731
612
  getTableInfo: function(forceNewData){
732
- // summary
733
- // Gets the table in focus
734
- // Collects info on the table - see return params
613
+ // summary:
614
+ // Gets the table in focus
615
+ // Collects info on the table - see return params
735
616
  //
736
- return tablePluginHandler.getTableInfo(forceNewData);
617
+ return this.editor._tablePluginHandler.getTableInfo(forceNewData);
737
618
  },
738
619
  _makeTitle: function(str){
739
620
  // Parses the commandName into a Title
740
621
  // based on camelCase
741
- var s = str.split(""), ns = [];
622
+ var ns = [];
742
623
  dojo.forEach(str, function(c, i){
743
624
  if(c.charCodeAt(0)<91 && i>0 && ns[i-1].charCodeAt(0)!=32){
744
625
  ns.push(" ");
745
626
  }
746
- if(i==0) c = c.toUpperCase();
627
+ if(i===0){ c = c.toUpperCase();}
747
628
  ns.push(c);
748
629
  });
749
630
  return ns.join("");
@@ -752,98 +633,193 @@ dojo.declare("dojox.editor.plugins.TablePlugins",
752
633
 
753
634
 
754
635
  getSelectedCells: function(){
755
- // summary
756
- // Gets the selected cells from the passed table
757
- // Returns: array of TDs or empty array
758
- //
759
-
636
+ // summary:
637
+ // Gets the selected cells from the passed table
638
+ // Returns: array of TDs or empty array
760
639
  var cells = [];
761
640
  var tbl = this.getTableInfo().tbl;
762
- var tds = tablePluginHandler._prepareTable(tbl);
641
+ this.editor._tablePluginHandler._prepareTable(tbl);
763
642
  var e = this.editor;
764
- var r;
765
-
766
- if(!dojo.isIE){
767
-
768
- r = dijit.range.getSelection(e.window);
769
-
770
- var foundFirst=false;
771
- var foundLast=false;
772
-
773
- if(r.anchorNode && r.anchorNode.tagName && r.anchorNode.tagName.toLowerCase()=="tr"){
774
- // Firefox
775
- // Geez - and I thought IE was hard....
776
- // In the Editor, FF refuses to grab a multiple cell selection at the TD level
777
- // in spite of multiple selection techniques
778
- // Resorting to going ahead with its TR selection and selecting
779
- // the entire row
780
- // Has no problem with individual cell selection though
781
- //
782
- var trs = dojo.query("tr", tbl);
783
- var rows = [];
784
- trs.forEach(function(tr, i){
785
-
786
- if(!foundFirst && (tr == r.anchorNode || tr == r.focusNode)){
787
- rows.push(tr);
788
- foundFirst = true;
789
- if(r.anchorNode == r.focusNode){
790
- foundLast = true;
791
- }
792
- }else if(foundFirst && !foundLast){
793
- rows.push(tr);
794
- if(tr == r.anchorNode || tr == r.focusNode){
795
- foundLast = true;
796
- }
797
- }
798
- });
799
- dojo.forEach(rows, function(tr){
800
- cells = cells.concat(dojo.query("td", tr));
801
- }, this);
802
- }else{
803
- // Safari
804
- // Yay! It works like expected
805
- // Getting the cells from anchorNode to focusNode
806
- //
807
- tds.forEach(function(td, i){
808
- if(!foundFirst && (td.id == r.anchorNode.parentNode.id || td.id == r.focusNode.parentNode.id)){
809
- cells.push(td);
810
- foundFirst = true;
811
- if(r.anchorNode.parentNode.id == r.focusNode.parentNode.id){
812
- foundLast = true;
813
- }
814
- }else if(foundFirst && !foundLast){
815
- cells.push(td)
816
- if(td.id == r.focusNode.parentNode.id || td.id == r.anchorNode.parentNode.id){
817
- foundLast = true;
643
+
644
+ // Lets do this the way IE originally was (Looking up ids). Walking the selection
645
+ // is inconsistent in the browsers (and painful), so going by ids is simpler.
646
+ var text = dojo.withGlobal(e.window, "getSelectedHtml",dijit._editor.selection, [null]);
647
+ var str = text.match(/id="*\w*"*/g);
648
+ dojo.forEach(str, function(a){
649
+ var id = a.substring(3, a.length);
650
+ if(id.charAt(0) == "\"" && id.charAt(id.length - 1) == "\""){
651
+ id = id.substring(1, id.length - 1);
652
+ }
653
+ var node = e.byId(id);
654
+ if(node && node.tagName.toLowerCase() == "td"){
655
+ cells.push(node);
656
+ }
657
+ }, this);
658
+
659
+ if(!cells.length){
660
+ //May just be in a cell (cursor point, or selection in a cell), so look upwards.
661
+ //for a cell container.
662
+ var sel = dijit.range.getSelection(e.window);
663
+ if(sel.rangeCount){
664
+ var r = sel.getRangeAt(0);
665
+ var node = r.startContainer;
666
+ while(node && node != e.editNode && node != e.document){
667
+ if(node.nodeType === 1){
668
+ var tg = node.tagName ? node.tagName.toLowerCase() : "";
669
+ if(tg === "td"){
670
+ return [node];
818
671
  }
819
672
  }
820
- });
821
- console.log("SAF CELLS:", cells);
673
+ node = node.parentNode;
674
+ }
822
675
  }
823
-
824
- }
825
-
826
- if(dojo.isIE){
827
- // IE
828
- // Although the code is tight - there's some funkiness here
829
- // Can only get the htmlText, so we add IDs to the cells (above)
830
- // And pull them from the htmlText, then search for those cells
831
- //
832
- r = document.selection.createRange()
833
-
834
- var str = r.htmlText.match(/id=\w*/g);
835
- dojo.forEach(str, function(a){
836
- var id = a.substring(3, a.length);
837
- cells.push(e.byId(id));
838
- }, this)
839
-
840
676
  }
841
677
  return cells;
678
+ },
679
+
680
+ destroy: function(){
681
+ // summary:
682
+ // Over-ridden destroy to do some cleanup.
683
+ this.inherited(arguments);
684
+ dojo.unsubscribe(this._availableTopic);
685
+
686
+ // Disconnect the editor from the handler
687
+ // to clean up refs. Moved to using a per-editor
688
+ // 'handler' to avoid collisions on the old global.
689
+ this.editor._tablePluginHandler.uninitialize(this.editor);
842
690
  }
843
691
 
844
692
  }
845
693
  );
846
694
 
695
+ dojo.declare("dojox.editor.plugins.TableContextMenu",
696
+ dojox.editor.plugins.TablePlugins,
697
+ {
698
+ constructor: function(){
699
+ // summary:
700
+ // Initialize certain plugins
701
+ //
702
+ this.connect(this, "setEditor", function(editor){
703
+ editor.onLoadDeferred.addCallback(dojo.hitch(this, function() {
704
+ this._createContextMenu();
705
+ }));
706
+ this.button.domNode.style.display = "none";
707
+ });
708
+ },
709
+
710
+ _initButton: function(){
711
+ this.inherited(arguments);
712
+ if(this.commandName=="tableContextMenu"){ this.button.domNode.display = "none";}
713
+ },
714
+
715
+ _createContextMenu: function(){
716
+ // summary
717
+ // Building context menu for right-click shortcuts within a table
718
+ //
719
+
720
+ var pMenu = new dijit.Menu({targetNodeIds:[this.editor.iframe]});
721
+ var messages = dojo.i18n.getLocalization("dojox.editor.plugins", "TableDialog", this.lang);
722
+ pMenu.addChild(new dijit.MenuItem({label: messages.selectTableLabel, onClick: dojo.hitch(this, "selectTable")}));
723
+ pMenu.addChild(new dijit.MenuSeparator());
724
+
725
+ pMenu.addChild(new dijit.MenuItem({label: messages.insertTableRowBeforeLabel, onClick: dojo.hitch(this, "modTable", "insertTableRowBefore" )}));
726
+ pMenu.addChild(new dijit.MenuItem({label: messages.insertTableRowAfterLabel, onClick: dojo.hitch(this, "modTable", "insertTableRowAfter" )}));
727
+ pMenu.addChild(new dijit.MenuItem({label: messages.insertTableColumnBeforeLabel, onClick: dojo.hitch(this, "modTable", "insertTableColumnBefore" )}));
728
+ pMenu.addChild(new dijit.MenuItem({label: messages.insertTableColumnAfterLabel, onClick: dojo.hitch(this, "modTable", "insertTableColumnAfter" )}));
729
+ pMenu.addChild(new dijit.MenuSeparator());
730
+ pMenu.addChild(new dijit.MenuItem({label: messages.deleteTableRowLabel, onClick: dojo.hitch(this, "modTable", "deleteTableRow" )}));
731
+ pMenu.addChild(new dijit.MenuItem({label: messages.deleteTableColumnLabel, onClick: dojo.hitch(this, "modTable", "deleteTableColumn" )}));
732
+
733
+ this.menu = pMenu;
734
+ }
735
+ });
736
+
737
+ dojo.declare("dojox.editor.plugins.InsertTable",
738
+ dojox.editor.plugins.TablePlugins,
739
+ {
740
+ alwaysAvailable: true,
741
+
742
+ modTable: function(){
743
+ var w = new dojox.editor.plugins.EditorTableDialog({});
744
+ w.show();
745
+ var c = dojo.connect(w, "onBuildTable", this, function(obj){
746
+ dojo.disconnect(c);
747
+
748
+ var res = this.editor.execCommand('inserthtml', obj.htmlText);
749
+
750
+ // commenting this line, due to msg below
751
+ //var td = this.editor.query("td", this.editor.byId(obj.id));
752
+
753
+ //HMMMM.... This throws a security error now. didn't used to.
754
+ //this.editor.selectElement(td);
755
+ });
756
+ }
757
+ });
758
+
759
+ dojo.declare("dojox.editor.plugins.ModifyTable",
760
+ dojox.editor.plugins.TablePlugins,
761
+ {
762
+ modTable: function(){
763
+ if (!this.editor._tablePluginHandler.checkAvailable()) {return;}
764
+ var o = this.getTableInfo();
765
+ //console.log("LAUNCH DIALOG");
766
+ var w = new dojox.editor.plugins.EditorModifyTableDialog({table:o.tbl});
767
+ w.show();
768
+ this.connect(w, "onSetTable", function(color){
769
+ // uhm... not sure whats going on here...
770
+ var o = this.getTableInfo();
771
+ //console.log("set color:", color);
772
+ dojo.attr(o.td, "bgcolor", color);
773
+ });
774
+ }
775
+ });
776
+
777
+ dojo.declare("dojox.editor.plugins.ColorTableCell",
778
+ dojox.editor.plugins.TablePlugins,
779
+ {
780
+
781
+ constructor: function(){
782
+ // summary:
783
+ // Initialize certain plugins
784
+ //
785
+ this.buttonClass = dijit.form.DropDownButton;
786
+ this.dropDown = new dijit.ColorPalette();
787
+ this.connect(this.dropDown, "onChange", function(color){
788
+ this.modTable(null, color);
789
+ });
790
+ },
791
+
792
+ _initButton: function(){
793
+ this.command = this.commandName;
794
+
795
+ this.label = this.editor.commands[this.command] = this._makeTitle(this.command);
796
+ this.inherited(arguments);
797
+ delete this.command;
798
+
799
+ this.onDisplayChanged(false);
800
+ },
801
+
802
+ modTable: function(cmd, args){
803
+ // summary
804
+ // Where each plugin performs its action
805
+ // Note: not using execCommand. In spite of their presence in the
806
+ // Editor as query-able plugins, I was not able to find any evidence
807
+ // that they are supported (especially in NOT IE). If they are
808
+ // supported in other browsers, it may help with the undo problem.
809
+ //
810
+ this.begEdit();
811
+ var o = this.getTableInfo();
812
+ // The one plugin that really needs use of the very verbose
813
+ // getSelectedCells()
814
+ var tds = this.getSelectedCells(o.tbl);
815
+ //console.debug("SELECTED CELLS ", tds , " FOR ", o);
816
+ dojo.forEach(tds, function(td){
817
+ dojo.style(td, "backgroundColor", args);
818
+ });
819
+ this.endEdit();
820
+ }
821
+ });
822
+
847
823
  dojo.provide("dojox.editor.plugins.EditorTableDialog");
848
824
  dojo.require("dijit.Dialog");
849
825
  dojo.require("dijit.form.TextBox");
@@ -851,8 +827,8 @@ dojo.require("dijit.form.FilteringSelect");
851
827
  dojo.require("dijit.form.Button");
852
828
 
853
829
  dojo.declare("dojox.editor.plugins.EditorTableDialog", [dijit.Dialog], {
854
- // summary
855
- // Dialog box with options for table creation
830
+ // summary:
831
+ // Dialog box with options for table creation
856
832
  //
857
833
  baseClass:"EditorTableDialog",
858
834
 
@@ -873,13 +849,13 @@ dojo.declare("dojox.editor.plugins.EditorTableDialog", [dijit.Dialog], {
873
849
  onInsert: function(){
874
850
  console.log("insert");
875
851
 
876
- var rows = this.selectRow.attr("value") || 1,
877
- cols = this.selectCol.attr("value") || 1,
878
- width = this.selectWidth.attr("value"),
879
- widthType = this.selectWidthType.attr("value"),
880
- border = this.selectBorder.attr("value"),
881
- pad = this.selectPad.attr("value"),
882
- space = this.selectSpace.attr("value"),
852
+ var rows = this.selectRow.get("value") || 1,
853
+ cols = this.selectCol.get("value") || 1,
854
+ width = this.selectWidth.get("value"),
855
+ widthType = this.selectWidthType.get("value"),
856
+ border = this.selectBorder.get("value"),
857
+ pad = this.selectPad.get("value"),
858
+ space = this.selectSpace.get("value"),
883
859
  _id = "tbl_"+(new Date().getTime()),
884
860
  t = '<table id="'+_id+'"width="'+width+((widthType=="percent")?'%':'')+'" border="'+border+'" cellspacing="'+space+'" cellpadding="'+pad+'">\n';
885
861
 
@@ -894,8 +870,29 @@ dojo.declare("dojox.editor.plugins.EditorTableDialog", [dijit.Dialog], {
894
870
 
895
871
  //console.log(t);
896
872
  this.onBuildTable({htmlText:t, id:_id});
873
+ var cl = dojo.connect(this, "onHide", function(){
874
+ dojo.disconnect(cl);
875
+ var self = this;
876
+ setTimeout(function(){
877
+ self.destroyRecursive();
878
+ }, 10);
879
+ });
897
880
  this.hide();
898
881
  },
882
+
883
+ onCancel: function(){
884
+ // summary:
885
+ // Function to clean up memory so that the dialog is destroyed
886
+ // when closed.
887
+ var c = dojo.connect(this, "onHide", function(){
888
+ dojo.disconnect(c);
889
+ var self = this;
890
+ setTimeout(function(){
891
+ self.destroyRecursive();
892
+ }, 10);
893
+ });
894
+ },
895
+
899
896
  onBuildTable: function(tableText){
900
897
  //stub
901
898
  }
@@ -907,8 +904,8 @@ dojo.require("dijit.ColorPalette");
907
904
 
908
905
  dojo.declare("dojox.editor.plugins.EditorModifyTableDialog", [dijit.Dialog], {
909
906
 
910
- // summary
911
- // Dialog box with options for editing a table
907
+ // summary:
908
+ // Dialog box with options for editing a table
912
909
  //
913
910
 
914
911
  baseClass:"EditorTableDialog",
@@ -927,42 +924,58 @@ dojo.declare("dojox.editor.plugins.EditorModifyTableDialog", [dijit.Dialog], {
927
924
  postCreate: function(){
928
925
  dojo.addClass(this.domNode, this.baseClass); //FIXME - why isn't Dialog accepting the baseClass?
929
926
  this.inherited(arguments);
930
-
927
+ this._cleanupWidgets = [];
928
+ var w1 = new dijit.ColorPalette({});
929
+ this.connect(w1, "onChange", function(color){
930
+ dijit.popup.close(w1);
931
+ this.setBrdColor(color);
932
+ });
933
+ this.connect(w1, "onBlur", function(){
934
+ dijit.popup.close(w1);
935
+ });
931
936
  this.connect(this.borderCol, "click", function(){
932
- var div = document.createElement("div");
933
- var w = new dijit.ColorPalette({}, div);
934
- dijit.popup.open({popup:w, around:this.borderCol});
935
- this.connect(w, "onChange", function(color){
936
- dijit.popup.close(w);
937
- this.setBrdColor(color);
938
- });
937
+ dijit.popup.open({popup:w1, around:this.borderCol});
938
+ w1.focus();
939
+ });
940
+ var w2 = new dijit.ColorPalette({});
941
+ this.connect(w2, "onChange", function(color){
942
+ dijit.popup.close(w2);
943
+ this.setBkColor(color);
944
+ });
945
+ this.connect(w2, "onBlur", function(){
946
+ dijit.popup.close(w2);
939
947
  });
940
948
  this.connect(this.backgroundCol, "click", function(){
941
- var div = document.createElement("div");
942
- var w = new dijit.ColorPalette({}, div);
943
- dijit.popup.open({popup:w, around:this.backgroundCol});
944
- this.connect(w, "onChange", function(color){
945
- dijit.popup.close(w);
946
- this.setBkColor(color);
947
- });
949
+ dijit.popup.open({popup:w2, around:this.backgroundCol});
950
+ w2.focus();
948
951
  });
952
+ this._cleanupWidgets.push(w1);
953
+ this._cleanupWidgets.push(w2);
949
954
 
950
955
  this.setBrdColor(dojo.attr(this.table, "bordercolor"));
951
956
  this.setBkColor(dojo.attr(this.table, "bgcolor"));
952
957
  var w = dojo.attr(this.table, "width");
958
+ if(!w){
959
+ w = this.table.style.width;
960
+ }
953
961
  var p = "pixels";
954
- if(w.indexOf("%")>-1){
955
- p = "percent"
962
+ if(dojo.isString(w) && w.indexOf("%")>-1){
963
+ p = "percent";
956
964
  w = w.replace(/%/, "");
957
965
  }
958
966
 
959
- this.selectWidth.attr("value", w);
960
- this.selectWidthType.attr("value", p);
967
+ if(w){
968
+ this.selectWidth.set("value", w);
969
+ this.selectWidthType.set("value", p);
970
+ }else{
971
+ this.selectWidth.set("value", "");
972
+ this.selectWidthType.set("value", "percent");
973
+ }
961
974
 
962
- this.selectBorder.attr("value", dojo.attr(this.table, "border"));
963
- this.selectPad.attr("value", dojo.attr(this.table, "cellpadding"));
964
- this.selectSpace.attr("value", dojo.attr(this.table, "cellspacing"));
965
- this.selectAlign.attr("value", dojo.attr(this.table, "align"));
975
+ this.selectBorder.set("value", dojo.attr(this.table, "border"));
976
+ this.selectPad.set("value", dojo.attr(this.table, "cellPadding"));
977
+ this.selectSpace.set("value", dojo.attr(this.table, "cellSpacing"));
978
+ this.selectAlign.set("value", dojo.attr(this.table, "align"));
966
979
  },
967
980
 
968
981
  setBrdColor: function(color){
@@ -975,18 +988,54 @@ dojo.declare("dojox.editor.plugins.EditorModifyTableDialog", [dijit.Dialog], {
975
988
  dojo.style(this.backgroundCol, "backgroundColor", color);
976
989
  },
977
990
  onSet: function(){
978
- dojo.attr(this.table, "bordercolor", this.brdColor);
979
- dojo.attr(this.table, "bgcolor", this.bkColor);
980
- dojo.attr(this.table, "width", (this.selectWidth.attr("value") + ((this.selectWidthType.attr("value")=="pixels")?"":"%") ));
981
- dojo.attr(this.table, "border", this.selectBorder.attr("value"));
982
- dojo.attr(this.table, "cellpadding", this.selectPad.attr("value"));
983
- dojo.attr(this.table, "cellspacing", this.selectSpace.attr("value"));
984
- dojo.attr(this.table, "align", this.selectAlign.attr("value"));
985
-
991
+ dojo.attr(this.table, "borderColor", this.brdColor);
992
+ dojo.attr(this.table, "bgColor", this.bkColor);
993
+ if(this.selectWidth.get("value")){
994
+ // Just in case, remove it from style since we're setting it as a table attribute.
995
+ dojo.style(this.table, "width", "");
996
+ dojo.attr(this.table, "width", (this.selectWidth.get("value") + ((this.selectWidthType.get("value")=="pixels")?"":"%") ));
997
+ }
998
+ dojo.attr(this.table, "border", this.selectBorder.get("value"));
999
+ dojo.attr(this.table, "cellPadding", this.selectPad.get("value"));
1000
+ dojo.attr(this.table, "cellSpacing", this.selectSpace.get("value"));
1001
+ dojo.attr(this.table, "align", this.selectAlign.get("value"));
1002
+ var c = dojo.connect(this, "onHide", function(){
1003
+ dojo.disconnect(c);
1004
+ var self = this;
1005
+ setTimeout(function(){
1006
+ self.destroyRecursive();
1007
+ }, 10);
1008
+ });
986
1009
  this.hide();
987
1010
  },
1011
+
1012
+ onCancel: function(){
1013
+ // summary:
1014
+ // Function to clean up memory so that the dialog is destroyed
1015
+ // when closed.
1016
+ var c = dojo.connect(this, "onHide", function(){
1017
+ dojo.disconnect(c);
1018
+ var self = this;
1019
+ setTimeout(function(){
1020
+ self.destroyRecursive();
1021
+ }, 10);
1022
+ });
1023
+ },
1024
+
988
1025
  onSetTable: function(tableText){
989
1026
  //stub
1027
+ },
1028
+
1029
+ destroy: function(){
1030
+ // summary:
1031
+ // Cleanup function.
1032
+ this.inherited(arguments);
1033
+ dojo.forEach(this._cleanupWidgets, function(w){
1034
+ if(w && w.destroy){
1035
+ w.destroy();
1036
+ }
1037
+ });
1038
+ delete this._cleanupWidgets;
990
1039
  }
991
1040
  });
992
1041
 
@@ -995,7 +1044,7 @@ dojo.declare("dojox.editor.plugins.EditorModifyTableDialog", [dijit.Dialog], {
995
1044
 
996
1045
  dojo.subscribe(dijit._scopeName + ".Editor.getPlugin",null,function(o){
997
1046
  if(o.plugin){ return; }
998
- // make first charcter lower case
1047
+ // make first character lower case
999
1048
  if(o.args && o.args.command){
1000
1049
  var cmd = o.args.command.charAt(0).toLowerCase()+o.args.command.substring(1,o.args.command.length);
1001
1050
 
@@ -1006,12 +1055,23 @@ dojo.subscribe(dijit._scopeName + ".Editor.getPlugin",null,function(o){
1006
1055
  case "insertTableColumnAfter":
1007
1056
  case "deleteTableRow":
1008
1057
  case "deleteTableColumn":
1058
+ o.plugin = new dojox.editor.plugins.TablePlugins({commandName: cmd});
1059
+ break;
1060
+
1009
1061
  case "colorTableCell":
1062
+ o.plugin = new dojox.editor.plugins.ColorTableCell({commandName: cmd});
1063
+ break;
1064
+
1010
1065
  case "modifyTable":
1066
+ o.plugin = new dojox.editor.plugins.ModifyTable({commandName: cmd});
1067
+ break;
1068
+
1011
1069
  case "insertTable":
1070
+ o.plugin = new dojox.editor.plugins.InsertTable({commandName: cmd});
1071
+ break;
1072
+
1012
1073
  case "tableContextMenu":
1013
-
1014
- o.plugin = new dojox.editor.plugins.TablePlugins({commandName: cmd});
1074
+ o.plugin = new dojox.editor.plugins.TableContextMenu({commandName: cmd});
1015
1075
  break;
1016
1076
  }
1017
1077
  }