@qooxdoo/framework 7.0.0-beta.1 → 7.0.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1599) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/Manifest.json +2 -2
  3. package/README.md +9 -3
  4. package/bin/deploy/qx +0 -0
  5. package/lib/compiler/compile-info.json +45 -44
  6. package/lib/compiler/index.js +6600 -11001
  7. package/lib/resource/qx/tool/cli/templates/loader/loader-node.tmpl.js +3 -1
  8. package/lib/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/css/custom.css +1 -1
  9. package/lib/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/css/custom.css.map +1 -1
  10. package/lib/resource/qx/tool/cli/templates/template_vars.js +1 -1
  11. package/lib/resource/qx/tool/loadsass.js +16 -21
  12. package/lib/resource/qx/tool/schema/Manifest-1-0-0.json +1 -2
  13. package/lib/resource/qx/tool/schema/Manifest-2-0-0.json +1 -2
  14. package/lib/resource/qx/tool/schema/compile-1-0-0.json +16 -20
  15. package/lib/resource/qx/tool/website/build/assets/bluebird.min.js +4593 -9
  16. package/lib/resource/qx/tool/website/build/assets/buttons.js +391 -1
  17. package/lib/resource/qx/tool/website/build/assets/fontawesome-all.js +8963 -1
  18. package/lib/resource/qx/tool/website/build/assets/jquery.js +5452 -3
  19. package/lib/resource/qx/tool/website/build/diagnostics/dependson.js +31 -31
  20. package/lib/resource/qx/tool/website/build/diagnostics/requiredby.js +32 -36
  21. package/lib/resource/qx/tool/website/build/scripts/serve.js +87 -66
  22. package/lib/resource/qx/tool/website/src/assets/bluebird.min.js +4593 -9
  23. package/lib/resource/qx/tool/website/src/assets/buttons.js +391 -1
  24. package/lib/resource/qx/tool/website/src/assets/fontawesome-all.js +8963 -1
  25. package/lib/resource/qx/tool/website/src/assets/jquery.js +5452 -3
  26. package/lib/resource/qx/tool/website/src/diagnostics/dependson.js +31 -31
  27. package/lib/resource/qx/tool/website/src/diagnostics/requiredby.js +32 -36
  28. package/lib/resource/qx/tool/website/src/scripts/serve.js +87 -66
  29. package/npm-shrinkwrap.json +7293 -0
  30. package/package.json +29 -14
  31. package/source/class/q.js +4 -2
  32. package/source/class/qx/Annotation.js +48 -57
  33. package/source/class/qx/Bootstrap.js +206 -207
  34. package/source/class/qx/Class.js +602 -504
  35. package/source/class/qx/Interface.js +169 -137
  36. package/source/class/qx/Mixin.js +162 -120
  37. package/source/class/qx/Part.js +48 -77
  38. package/source/class/qx/Promise.js +5891 -4655
  39. package/source/class/qx/Theme.js +200 -134
  40. package/source/class/qx/__init__.js +8 -8
  41. package/source/class/qx/application/AbstractGui.js +20 -32
  42. package/source/class/qx/application/Basic.js +9 -18
  43. package/source/class/qx/application/IApplication.js +6 -10
  44. package/source/class/qx/application/Inline.js +4 -7
  45. package/source/class/qx/application/Mobile.js +22 -45
  46. package/source/class/qx/application/Native.js +8 -19
  47. package/source/class/qx/application/Routing.js +88 -114
  48. package/source/class/qx/application/Standalone.js +4 -9
  49. package/source/class/qx/application/__init__.js +1 -1
  50. package/source/class/qx/bom/AnimationFrame.js +26 -25
  51. package/source/class/qx/bom/Blocker.js +92 -100
  52. package/source/class/qx/bom/Cookie.js +18 -22
  53. package/source/class/qx/bom/Document.js +24 -31
  54. package/source/class/qx/bom/Element.js +65 -51
  55. package/source/class/qx/bom/Event.js +68 -78
  56. package/source/class/qx/bom/FileReader.js +110 -115
  57. package/source/class/qx/bom/Font.js +82 -122
  58. package/source/class/qx/bom/FullScreen.js +32 -41
  59. package/source/class/qx/bom/GeoLocation.js +39 -44
  60. package/source/class/qx/bom/HashHistory.js +58 -64
  61. package/source/class/qx/bom/History.js +61 -89
  62. package/source/class/qx/bom/Html.js +75 -71
  63. package/source/class/qx/bom/IdleCallback.js +20 -23
  64. package/source/class/qx/bom/Iframe.js +37 -69
  65. package/source/class/qx/bom/IframeHistory.js +83 -88
  66. package/source/class/qx/bom/Input.js +50 -66
  67. package/source/class/qx/bom/Label.js +65 -86
  68. package/source/class/qx/bom/Lifecycle.js +7 -9
  69. package/source/class/qx/bom/MediaQuery.js +324 -307
  70. package/source/class/qx/bom/NativeHistory.js +51 -46
  71. package/source/class/qx/bom/Notification.js +41 -47
  72. package/source/class/qx/bom/PageVisibility.js +19 -25
  73. package/source/class/qx/bom/Range.js +20 -30
  74. package/source/class/qx/bom/Selection.js +163 -172
  75. package/source/class/qx/bom/Selector.js +2401 -2181
  76. package/source/class/qx/bom/Shortcut.js +103 -129
  77. package/source/class/qx/bom/Storage.js +9 -8
  78. package/source/class/qx/bom/String.js +285 -290
  79. package/source/class/qx/bom/Style.js +30 -31
  80. package/source/class/qx/bom/Stylesheet.js +36 -60
  81. package/source/class/qx/bom/Template.js +730 -657
  82. package/source/class/qx/bom/Viewport.js +40 -46
  83. package/source/class/qx/bom/Vml.js +43 -28
  84. package/source/class/qx/bom/WebWorker.js +61 -50
  85. package/source/class/qx/bom/Window.js +88 -105
  86. package/source/class/qx/bom/__init__.js +11 -11
  87. package/source/class/qx/bom/client/Browser.js +45 -47
  88. package/source/class/qx/bom/client/Css.js +85 -85
  89. package/source/class/qx/bom/client/CssAnimation.js +41 -49
  90. package/source/class/qx/bom/client/CssTransform.js +21 -29
  91. package/source/class/qx/bom/client/CssTransition.js +9 -12
  92. package/source/class/qx/bom/client/Device.js +45 -45
  93. package/source/class/qx/bom/client/EcmaScript.js +153 -96
  94. package/source/class/qx/bom/client/Engine.js +38 -35
  95. package/source/class/qx/bom/client/Event.js +75 -63
  96. package/source/class/qx/bom/client/Html.js +97 -97
  97. package/source/class/qx/bom/client/Idle.js +4 -6
  98. package/source/class/qx/bom/client/Locale.js +15 -15
  99. package/source/class/qx/bom/client/OperatingSystem.js +89 -106
  100. package/source/class/qx/bom/client/Pdfjs.js +1364 -1067
  101. package/source/class/qx/bom/client/PhoneGap.js +6 -9
  102. package/source/class/qx/bom/client/Plugin.js +93 -97
  103. package/source/class/qx/bom/client/Runtime.js +14 -12
  104. package/source/class/qx/bom/client/Scroll.js +20 -16
  105. package/source/class/qx/bom/client/Stylesheet.js +44 -32
  106. package/source/class/qx/bom/client/Transport.js +38 -41
  107. package/source/class/qx/bom/client/Xml.js +39 -41
  108. package/source/class/qx/bom/client/__init__.js +4 -4
  109. package/source/class/qx/bom/element/Animation.js +15 -12
  110. package/source/class/qx/bom/element/AnimationCss.js +95 -64
  111. package/source/class/qx/bom/element/AnimationHandle.js +22 -29
  112. package/source/class/qx/bom/element/AnimationJs.js +94 -71
  113. package/source/class/qx/bom/element/Attribute.js +119 -134
  114. package/source/class/qx/bom/element/Background.js +35 -35
  115. package/source/class/qx/bom/element/BoxSizing.js +43 -44
  116. package/source/class/qx/bom/element/Class.js +50 -72
  117. package/source/class/qx/bom/element/Clip.js +36 -60
  118. package/source/class/qx/bom/element/Cursor.js +13 -20
  119. package/source/class/qx/bom/element/Dataset.js +33 -31
  120. package/source/class/qx/bom/element/Decoration.js +178 -168
  121. package/source/class/qx/bom/element/Dimension.js +78 -60
  122. package/source/class/qx/bom/element/Location.js +87 -94
  123. package/source/class/qx/bom/element/Opacity.js +42 -44
  124. package/source/class/qx/bom/element/Scroll.js +78 -88
  125. package/source/class/qx/bom/element/Style.js +61 -101
  126. package/source/class/qx/bom/element/Transform.js +38 -56
  127. package/source/class/qx/bom/element/__init__.js +4 -4
  128. package/source/class/qx/bom/media/Abstract.js +136 -143
  129. package/source/class/qx/bom/media/Audio.js +7 -12
  130. package/source/class/qx/bom/media/Video.js +15 -27
  131. package/source/class/qx/bom/request/IRequest.js +18 -21
  132. package/source/class/qx/bom/request/Jsonp.js +34 -39
  133. package/source/class/qx/bom/request/Script.js +94 -90
  134. package/source/class/qx/bom/request/SimpleXhr.js +111 -79
  135. package/source/class/qx/bom/request/Xhr.js +196 -143
  136. package/source/class/qx/bom/request/__init__.js +1 -1
  137. package/source/class/qx/bom/rest/Resource.js +269 -203
  138. package/source/class/qx/bom/storage/Memory.js +18 -29
  139. package/source/class/qx/bom/storage/UserData.js +28 -35
  140. package/source/class/qx/bom/storage/Web.js +19 -30
  141. package/source/class/qx/bom/webfonts/Manager.js +199 -130
  142. package/source/class/qx/bom/webfonts/Validator.js +84 -118
  143. package/source/class/qx/bom/webfonts/WebFont.js +24 -28
  144. package/source/class/qx/bom/webfonts/__init__.js +1 -1
  145. package/source/class/qx/core/Aspect.js +15 -22
  146. package/source/class/qx/core/Assert.js +391 -333
  147. package/source/class/qx/core/AssertionError.js +6 -15
  148. package/source/class/qx/core/BaseInit.js +25 -28
  149. package/source/class/qx/core/Environment.js +72 -86
  150. package/source/class/qx/core/GlobalError.js +12 -20
  151. package/source/class/qx/core/IDisposable.js +6 -9
  152. package/source/class/qx/core/Id.js +25 -15
  153. package/source/class/qx/core/Init.js +20 -20
  154. package/source/class/qx/core/MAssert.js +54 -97
  155. package/source/class/qx/core/MBindTo.js +10 -14
  156. package/source/class/qx/core/MEvent.js +76 -65
  157. package/source/class/qx/core/MLogging.js +9 -18
  158. package/source/class/qx/core/MObjectId.js +104 -65
  159. package/source/class/qx/core/MProperty.js +18 -34
  160. package/source/class/qx/core/Object.js +93 -122
  161. package/source/class/qx/core/ObjectRegistry.js +58 -81
  162. package/source/class/qx/core/Property.js +974 -780
  163. package/source/class/qx/core/ValidationError.js +3 -4
  164. package/source/class/qx/core/WindowError.js +13 -24
  165. package/source/class/qx/core/Wrapper.js +8 -9
  166. package/source/class/qx/data/Array.js +178 -191
  167. package/source/class/qx/data/Conversion.js +11 -18
  168. package/source/class/qx/data/IListData.js +11 -20
  169. package/source/class/qx/data/MBinding.js +31 -26
  170. package/source/class/qx/data/SingleValueBinding.js +491 -225
  171. package/source/class/qx/data/__init__.js +1 -1
  172. package/source/class/qx/data/controller/CheckedList.js +82 -54
  173. package/source/class/qx/data/controller/Form.js +81 -69
  174. package/source/class/qx/data/controller/IControllerDelegate.js +7 -12
  175. package/source/class/qx/data/controller/ISelection.js +6 -10
  176. package/source/class/qx/data/controller/List.js +151 -167
  177. package/source/class/qx/data/controller/MSelection.js +53 -72
  178. package/source/class/qx/data/controller/Object.js +106 -77
  179. package/source/class/qx/data/controller/Tree.js +164 -142
  180. package/source/class/qx/data/controller/__init__.js +1 -1
  181. package/source/class/qx/data/controller/website/List.js +34 -43
  182. package/source/class/qx/data/controller/website/__init__.js +2 -2
  183. package/source/class/qx/data/marshal/IMarshaler.js +4 -7
  184. package/source/class/qx/data/marshal/IMarshalerDelegate.js +10 -18
  185. package/source/class/qx/data/marshal/Json.js +112 -85
  186. package/source/class/qx/data/marshal/MEventBubbling.js +44 -42
  187. package/source/class/qx/data/marshal/__init__.js +1 -1
  188. package/source/class/qx/data/store/IStoreDelegate.js +6 -9
  189. package/source/class/qx/data/store/Json.js +71 -85
  190. package/source/class/qx/data/store/Jsonp.js +19 -25
  191. package/source/class/qx/data/store/Offline.js +21 -29
  192. package/source/class/qx/data/store/Rest.js +25 -23
  193. package/source/class/qx/data/store/__init__.js +1 -1
  194. package/source/class/qx/dev/Debug.js +105 -124
  195. package/source/class/qx/dev/FakeServer.js +68 -65
  196. package/source/class/qx/dev/ObjectSummary.js +33 -39
  197. package/source/class/qx/dev/Profile.js +62 -63
  198. package/source/class/qx/dev/StackTrace.js +64 -70
  199. package/source/class/qx/dev/Tokenizer.js +114 -126
  200. package/source/class/qx/dev/unit/AbstractTestSuite.js +17 -31
  201. package/source/class/qx/dev/unit/AsyncWrapper.js +22 -26
  202. package/source/class/qx/dev/unit/JsUnitTestResult.js +9 -21
  203. package/source/class/qx/dev/unit/MMeasure.js +46 -37
  204. package/source/class/qx/dev/unit/MMock.js +236 -240
  205. package/source/class/qx/dev/unit/MRequirements.js +53 -79
  206. package/source/class/qx/dev/unit/MRequirementsBasic.js +24 -19
  207. package/source/class/qx/dev/unit/MTestLoader.js +52 -57
  208. package/source/class/qx/dev/unit/MeasurementResult.js +18 -22
  209. package/source/class/qx/dev/unit/RequirementError.js +8 -17
  210. package/source/class/qx/dev/unit/Sinon.js +18826 -4613
  211. package/source/class/qx/dev/unit/TestCase.js +40 -51
  212. package/source/class/qx/dev/unit/TestClass.js +22 -23
  213. package/source/class/qx/dev/unit/TestFunction.js +28 -48
  214. package/source/class/qx/dev/unit/TestLoader.js +11 -14
  215. package/source/class/qx/dev/unit/TestLoaderBasic.js +3 -6
  216. package/source/class/qx/dev/unit/TestLoaderInline.js +8 -14
  217. package/source/class/qx/dev/unit/TestLoaderMobile.js +8 -14
  218. package/source/class/qx/dev/unit/TestLoaderNative.js +7 -13
  219. package/source/class/qx/dev/unit/TestResult.js +140 -118
  220. package/source/class/qx/dev/unit/TestSuite.js +46 -55
  221. package/source/class/qx/dom/Element.js +29 -74
  222. package/source/class/qx/dom/Hierarchy.js +60 -95
  223. package/source/class/qx/dom/Node.js +54 -81
  224. package/source/class/qx/dom/__init__.js +9 -9
  225. package/source/class/qx/event/AcceleratingTimer.js +28 -46
  226. package/source/class/qx/event/Emitter.js +54 -49
  227. package/source/class/qx/event/GlobalError.js +22 -38
  228. package/source/class/qx/event/IEventDispatcher.js +4 -9
  229. package/source/class/qx/event/IEventHandler.js +7 -13
  230. package/source/class/qx/event/Idle.js +32 -47
  231. package/source/class/qx/event/Manager.js +222 -237
  232. package/source/class/qx/event/Messaging.js +55 -48
  233. package/source/class/qx/event/Pool.js +5 -8
  234. package/source/class/qx/event/Registration.js +128 -118
  235. package/source/class/qx/event/Timer.js +50 -96
  236. package/source/class/qx/event/Utils.js +41 -28
  237. package/source/class/qx/event/dispatch/AbstractBubbling.js +133 -93
  238. package/source/class/qx/event/dispatch/Direct.js +46 -51
  239. package/source/class/qx/event/dispatch/DomBubbling.js +8 -15
  240. package/source/class/qx/event/dispatch/MouseCapture.js +74 -91
  241. package/source/class/qx/event/handler/Appear.js +40 -77
  242. package/source/class/qx/event/handler/Application.js +100 -126
  243. package/source/class/qx/event/handler/Capture.js +15 -37
  244. package/source/class/qx/event/handler/DragDrop.js +342 -228
  245. package/source/class/qx/event/handler/Element.js +45 -72
  246. package/source/class/qx/event/handler/ElementResize.js +35 -70
  247. package/source/class/qx/event/handler/Focus.js +908 -637
  248. package/source/class/qx/event/handler/Gesture.js +144 -93
  249. package/source/class/qx/event/handler/GestureCore.js +214 -163
  250. package/source/class/qx/event/handler/Iframe.js +21 -35
  251. package/source/class/qx/event/handler/Input.js +332 -209
  252. package/source/class/qx/event/handler/Keyboard.js +325 -270
  253. package/source/class/qx/event/handler/Mouse.js +212 -173
  254. package/source/class/qx/event/handler/Object.js +13 -31
  255. package/source/class/qx/event/handler/Offline.js +52 -67
  256. package/source/class/qx/event/handler/Orientation.js +56 -62
  257. package/source/class/qx/event/handler/OrientationCore.js +33 -43
  258. package/source/class/qx/event/handler/Pointer.js +84 -72
  259. package/source/class/qx/event/handler/PointerCore.js +183 -105
  260. package/source/class/qx/event/handler/Touch.js +43 -59
  261. package/source/class/qx/event/handler/TouchCore.js +159 -120
  262. package/source/class/qx/event/handler/Transition.js +91 -100
  263. package/source/class/qx/event/handler/UserAction.js +18 -42
  264. package/source/class/qx/event/handler/Video.js +12 -12
  265. package/source/class/qx/event/handler/Window.js +53 -69
  266. package/source/class/qx/event/message/Bus.js +109 -128
  267. package/source/class/qx/event/message/Message.js +14 -29
  268. package/source/class/qx/event/type/Data.js +11 -22
  269. package/source/class/qx/event/type/Dom.js +37 -52
  270. package/source/class/qx/event/type/Drag.js +37 -56
  271. package/source/class/qx/event/type/Event.js +80 -104
  272. package/source/class/qx/event/type/Focus.js +5 -8
  273. package/source/class/qx/event/type/GeoPosition.js +32 -41
  274. package/source/class/qx/event/type/KeyInput.js +9 -19
  275. package/source/class/qx/event/type/KeySequence.js +10 -21
  276. package/source/class/qx/event/type/Mouse.js +69 -72
  277. package/source/class/qx/event/type/MouseWheel.js +5 -9
  278. package/source/class/qx/event/type/Native.js +16 -27
  279. package/source/class/qx/event/type/Orientation.js +18 -30
  280. package/source/class/qx/event/type/Pinch.js +21 -27
  281. package/source/class/qx/event/type/Pointer.js +38 -41
  282. package/source/class/qx/event/type/Rest.js +7 -10
  283. package/source/class/qx/event/type/Roll.js +49 -58
  284. package/source/class/qx/event/type/Rotate.js +21 -27
  285. package/source/class/qx/event/type/Swipe.js +75 -86
  286. package/source/class/qx/event/type/Tap.js +2 -4
  287. package/source/class/qx/event/type/Touch.js +262 -286
  288. package/source/class/qx/event/type/Track.js +23 -28
  289. package/source/class/qx/event/type/dom/Custom.js +24 -20
  290. package/source/class/qx/event/type/dom/Pointer.js +86 -60
  291. package/source/class/qx/event/util/Keyboard.js +94 -106
  292. package/source/class/qx/html/Blocker.js +17 -18
  293. package/source/class/qx/html/Canvas.js +13 -29
  294. package/source/class/qx/html/Element.js +372 -497
  295. package/source/class/qx/html/Factory.js +31 -26
  296. package/source/class/qx/html/Iframe.js +35 -69
  297. package/source/class/qx/html/Image.js +43 -55
  298. package/source/class/qx/html/Input.js +44 -57
  299. package/source/class/qx/html/Jsx.js +49 -41
  300. package/source/class/qx/html/JsxRef.js +3 -5
  301. package/source/class/qx/html/Label.js +20 -32
  302. package/source/class/qx/html/Node.js +362 -422
  303. package/source/class/qx/html/Root.js +7 -16
  304. package/source/class/qx/html/Text.js +34 -27
  305. package/source/class/qx/io/ImageLoader.js +66 -90
  306. package/source/class/qx/io/PartLoader.js +17 -30
  307. package/source/class/qx/io/__init__.js +5 -3
  308. package/source/class/qx/io/exception/Cancel.js +33 -0
  309. package/source/class/qx/io/exception/Exception.js +37 -0
  310. package/source/class/qx/{tool/compiler/Version.js → io/exception/Protocol.js} +12 -7
  311. package/source/class/qx/io/exception/Transport.js +38 -0
  312. package/source/class/qx/io/exception/__init__.js +4 -0
  313. package/source/class/qx/io/graphql/Client.js +122 -0
  314. package/source/class/qx/io/graphql/__init__.js +9 -0
  315. package/source/class/qx/io/graphql/protocol/Message.js +65 -0
  316. package/source/class/qx/io/graphql/protocol/Request.js +93 -0
  317. package/source/class/qx/io/graphql/protocol/Response.js +63 -0
  318. package/source/class/qx/io/graphql/protocol/__init__.js +6 -0
  319. package/source/class/qx/io/jsonrpc/Client.js +355 -0
  320. package/source/class/qx/io/jsonrpc/__init__.js +15 -0
  321. package/source/class/qx/io/jsonrpc/protocol/Batch.js +103 -0
  322. package/source/class/qx/io/jsonrpc/protocol/Error.js +65 -0
  323. package/source/class/qx/io/jsonrpc/protocol/Message.js +48 -0
  324. package/source/class/qx/io/jsonrpc/protocol/Notification.js +47 -0
  325. package/source/class/qx/io/jsonrpc/protocol/Parser.js +105 -0
  326. package/source/class/qx/io/jsonrpc/protocol/Request.js +94 -0
  327. package/source/class/qx/io/jsonrpc/protocol/Result.js +49 -0
  328. package/source/class/qx/io/jsonrpc/protocol/__init__.js +5 -0
  329. package/source/class/qx/io/part/ClosurePart.js +16 -35
  330. package/source/class/qx/io/part/Package.js +35 -63
  331. package/source/class/qx/io/part/Part.js +29 -53
  332. package/source/class/qx/io/part/__init__.js +4 -4
  333. package/source/class/qx/io/request/AbstractRequest.js +268 -201
  334. package/source/class/qx/io/request/Jsonp.js +16 -19
  335. package/source/class/qx/io/request/Xhr.js +38 -37
  336. package/source/class/qx/io/request/__init__.js +1 -1
  337. package/source/class/qx/io/request/authentication/Basic.js +7 -13
  338. package/source/class/qx/io/request/authentication/Bearer.js +46 -0
  339. package/source/class/qx/io/request/authentication/IAuthentication.js +3 -6
  340. package/source/class/qx/io/request/authentication/__init__.js +1 -1
  341. package/source/class/qx/io/rest/Resource.js +122 -90
  342. package/source/class/qx/io/transport/AbstractClient.js +121 -0
  343. package/source/class/qx/io/transport/AbstractTransport.js +40 -0
  344. package/source/class/qx/io/transport/Fetch.js +98 -0
  345. package/source/class/qx/io/transport/ITransport.js +42 -0
  346. package/source/class/qx/io/transport/PostMessage.js +54 -0
  347. package/source/class/qx/io/transport/Websocket.js +97 -0
  348. package/source/class/qx/io/transport/Xhr.js +138 -0
  349. package/source/class/qx/io/transport/__init__.js +18 -0
  350. package/source/class/qx/lang/Array.js +133 -170
  351. package/source/class/qx/lang/Function.js +101 -104
  352. package/source/class/qx/lang/Json.js +1041 -774
  353. package/source/class/qx/lang/Number.js +11 -16
  354. package/source/class/qx/lang/Object.js +129 -100
  355. package/source/class/qx/lang/String.js +86 -94
  356. package/source/class/qx/lang/Type.js +44 -65
  357. package/source/class/qx/lang/normalize/Array.js +39 -49
  358. package/source/class/qx/lang/normalize/Date.js +50 -32
  359. package/source/class/qx/lang/normalize/Error.js +4 -7
  360. package/source/class/qx/lang/normalize/Function.js +11 -19
  361. package/source/class/qx/lang/normalize/Number.js +3 -5
  362. package/source/class/qx/lang/normalize/Object.js +17 -18
  363. package/source/class/qx/lang/normalize/String.js +39 -40
  364. package/source/class/qx/locale/Date.js +175 -178
  365. package/source/class/qx/locale/Key.js +13 -11
  366. package/source/class/qx/locale/LocalizedString.js +18 -15
  367. package/source/class/qx/locale/MTranslation.js +22 -23
  368. package/source/class/qx/locale/Manager.js +62 -100
  369. package/source/class/qx/locale/Number.js +20 -12
  370. package/source/class/qx/locale/String.js +26 -15
  371. package/source/class/qx/log/Logger.js +128 -180
  372. package/source/class/qx/log/__init__.js +3 -3
  373. package/source/class/qx/log/appender/Console.js +100 -111
  374. package/source/class/qx/log/appender/Element.js +25 -39
  375. package/source/class/qx/log/appender/Formatter.js +117 -66
  376. package/source/class/qx/log/appender/Native.js +4 -10
  377. package/source/class/qx/log/appender/NodeConsole.js +20 -28
  378. package/source/class/qx/log/appender/PhoneGap.js +5 -13
  379. package/source/class/qx/log/appender/RhinoConsole.js +12 -23
  380. package/source/class/qx/log/appender/RhinoFile.js +19 -26
  381. package/source/class/qx/log/appender/RingBuffer.js +10 -19
  382. package/source/class/qx/log/appender/Util.js +11 -9
  383. package/source/class/qx/module/Animation.js +73 -63
  384. package/source/class/qx/module/Attribute.js +27 -46
  385. package/source/class/qx/module/Blocker.js +33 -41
  386. package/source/class/qx/module/Cookie.js +6 -10
  387. package/source/class/qx/module/Css.js +82 -97
  388. package/source/class/qx/module/Dataset.js +12 -24
  389. package/source/class/qx/module/Environment.js +4 -6
  390. package/source/class/qx/module/Event.js +124 -127
  391. package/source/class/qx/module/Io.js +5 -9
  392. package/source/class/qx/module/Manipulating.js +98 -117
  393. package/source/class/qx/module/MatchMedia.js +50 -24
  394. package/source/class/qx/module/Messaging.js +6 -10
  395. package/source/class/qx/module/Placeholder.js +54 -44
  396. package/source/class/qx/module/Placement.js +33 -33
  397. package/source/class/qx/module/Rest.js +3 -4
  398. package/source/class/qx/module/Storage.js +34 -48
  399. package/source/class/qx/module/Template.js +6 -9
  400. package/source/class/qx/module/TextSelection.js +13 -21
  401. package/source/class/qx/module/Transform.js +28 -45
  402. package/source/class/qx/module/Traversing.js +160 -154
  403. package/source/class/qx/module/__init__.js +1 -1
  404. package/source/class/qx/module/dev/FakeServer.js +19 -25
  405. package/source/class/qx/module/event/GestureHandler.js +25 -13
  406. package/source/class/qx/module/event/Keyboard.js +42 -31
  407. package/source/class/qx/module/event/Mouse.js +48 -46
  408. package/source/class/qx/module/event/Native.js +18 -30
  409. package/source/class/qx/module/event/Orientation.js +11 -18
  410. package/source/class/qx/module/event/OrientationHandler.js +19 -17
  411. package/source/class/qx/module/event/Pinch.js +13 -14
  412. package/source/class/qx/module/event/Pointer.js +22 -22
  413. package/source/class/qx/module/event/PointerHandler.js +14 -11
  414. package/source/class/qx/module/event/Rotate.js +13 -14
  415. package/source/class/qx/module/event/Swipe.js +18 -24
  416. package/source/class/qx/module/event/Tap.js +25 -25
  417. package/source/class/qx/module/event/Touch.js +4 -7
  418. package/source/class/qx/module/event/TouchHandler.js +16 -16
  419. package/source/class/qx/module/event/Track.js +13 -14
  420. package/source/class/qx/module/util/Array.js +30 -41
  421. package/source/class/qx/module/util/Function.js +1 -2
  422. package/source/class/qx/module/util/Object.js +8 -11
  423. package/source/class/qx/module/util/String.js +10 -18
  424. package/source/class/qx/module/util/Type.js +3 -4
  425. package/source/class/qx/test/Annotation.js +195 -89
  426. package/source/class/qx/test/Bootstrap.js +98 -124
  427. package/source/class/qx/test/Browser.js +8 -11
  428. package/source/class/qx/test/Class.js +164 -198
  429. package/source/class/qx/test/Dom.js +10 -28
  430. package/source/class/qx/test/EditDistance.js +16 -16
  431. package/source/class/qx/test/Interface.js +380 -383
  432. package/source/class/qx/test/MAppearance.js +10 -14
  433. package/source/class/qx/test/MDecoration.js +1 -3
  434. package/source/class/qx/test/Mixin.js +449 -173
  435. package/source/class/qx/test/Promise.js +422 -333
  436. package/source/class/qx/test/Theme.js +204 -179
  437. package/source/class/qx/test/Xml.js +155 -84
  438. package/source/class/qx/test/application/Routing.js +45 -44
  439. package/source/class/qx/test/bom/AnimationFrame.js +23 -21
  440. package/source/class/qx/test/bom/Attribute.js +66 -47
  441. package/source/class/qx/test/bom/Basic.js +52 -27
  442. package/source/class/qx/test/bom/Blocker.js +100 -70
  443. package/source/class/qx/test/bom/Class.js +19 -34
  444. package/source/class/qx/test/bom/Cookie.js +49 -28
  445. package/source/class/qx/test/bom/Dataset.js +12 -24
  446. package/source/class/qx/test/bom/Element.js +55 -47
  447. package/source/class/qx/test/bom/Event.js +68 -45
  448. package/source/class/qx/test/bom/FileReader.js +6 -12
  449. package/source/class/qx/test/bom/Font.js +256 -118
  450. package/source/class/qx/test/bom/GeoLocation.js +82 -64
  451. package/source/class/qx/test/bom/History.js +63 -84
  452. package/source/class/qx/test/bom/IdleCallback.js +51 -38
  453. package/source/class/qx/test/bom/Iframe.js +14 -18
  454. package/source/class/qx/test/bom/Label.js +74 -105
  455. package/source/class/qx/test/bom/Location.js +70 -99
  456. package/source/class/qx/test/bom/PageVisibility.js +13 -16
  457. package/source/class/qx/test/bom/Selector.js +16 -16
  458. package/source/class/qx/test/bom/String.js +19 -15
  459. package/source/class/qx/test/bom/Stylesheet.js +39 -48
  460. package/source/class/qx/test/bom/Template.js +49 -57
  461. package/source/class/qx/test/bom/Viewport.js +7 -11
  462. package/source/class/qx/test/bom/WebWorker.js +49 -37
  463. package/source/class/qx/test/bom/Window.js +6 -12
  464. package/source/class/qx/test/bom/client/Css.js +26 -19
  465. package/source/class/qx/test/bom/client/Device.js +29 -18
  466. package/source/class/qx/test/bom/client/OperatingSystem.js +17 -20
  467. package/source/class/qx/test/bom/client/Pdfjs.js +15 -13
  468. package/source/class/qx/test/bom/element/AnimationHandle.js +20 -17
  469. package/source/class/qx/test/bom/element/AnimationJs.js +48 -31
  470. package/source/class/qx/test/bom/element/Background.js +93 -46
  471. package/source/class/qx/test/bom/element/BoxSizing.js +66 -61
  472. package/source/class/qx/test/bom/element/Class.js +33 -58
  473. package/source/class/qx/test/bom/element/Dimension.js +58 -37
  474. package/source/class/qx/test/bom/element/Style.js +87 -83
  475. package/source/class/qx/test/bom/element/Transform.js +209 -86
  476. package/source/class/qx/test/bom/media/Audio.js +18 -14
  477. package/source/class/qx/test/bom/media/MediaTestCase.js +61 -66
  478. package/source/class/qx/test/bom/media/Video.js +39 -28
  479. package/source/class/qx/test/bom/request/Jsonp.js +60 -57
  480. package/source/class/qx/test/bom/request/Script.js +150 -138
  481. package/source/class/qx/test/bom/request/SimpleXhr.js +206 -134
  482. package/source/class/qx/test/bom/request/Xhr.js +179 -132
  483. package/source/class/qx/test/bom/request/XhrWithRemote.js +206 -160
  484. package/source/class/qx/test/bom/rest/Resource.js +345 -281
  485. package/source/class/qx/test/bom/rest/ResourceWithRemote.js +74 -57
  486. package/source/class/qx/test/bom/storage/Local.js +3 -4
  487. package/source/class/qx/test/bom/storage/Session.js +3 -4
  488. package/source/class/qx/test/bom/storage/WebStorageTestCase.js +28 -27
  489. package/source/class/qx/test/bom/webfonts/Abstract.js +8 -10
  490. package/source/class/qx/test/bom/webfonts/Manager.js +127 -80
  491. package/source/class/qx/test/bom/webfonts/Validator.js +36 -30
  492. package/source/class/qx/test/compiler/ClassFile.js +29 -11
  493. package/source/class/qx/test/compiler/jsdoc/Parser.js +122 -96
  494. package/source/class/qx/test/core/Assert.js +151 -86
  495. package/source/class/qx/test/core/Environment.js +162 -123
  496. package/source/class/qx/test/core/EventEmitterDummy.js +7 -8
  497. package/source/class/qx/test/core/InheritanceDummy.js +23 -33
  498. package/source/class/qx/test/core/MemoryManagement.js +13 -5
  499. package/source/class/qx/test/core/Object.js +106 -112
  500. package/source/class/qx/test/core/ObjectId.js +7 -6
  501. package/source/class/qx/test/core/Property.js +483 -387
  502. package/source/class/qx/test/core/PropertyHelper.js +49 -64
  503. package/source/class/qx/test/core/Target.js +9 -13
  504. package/source/class/qx/test/core/Validation.js +409 -136
  505. package/source/class/qx/test/data/DataArray.js +1059 -394
  506. package/source/class/qx/test/data/DataArrayWithChangeBubble.js +315 -172
  507. package/source/class/qx/test/data/__init__.js +4 -4
  508. package/source/class/qx/test/data/controller/Form.js +141 -99
  509. package/source/class/qx/test/data/controller/FormWithArrayAndModel.js +66 -51
  510. package/source/class/qx/test/data/controller/List.js +644 -336
  511. package/source/class/qx/test/data/controller/ListReverse.js +64 -63
  512. package/source/class/qx/test/data/controller/ListWithObjects.js +305 -149
  513. package/source/class/qx/test/data/controller/Object.js +252 -94
  514. package/source/class/qx/test/data/controller/Tree.js +1219 -383
  515. package/source/class/qx/test/data/controller/__init__.js +4 -4
  516. package/source/class/qx/test/data/marshal/Json.js +832 -447
  517. package/source/class/qx/test/data/marshal/__init__.js +4 -4
  518. package/source/class/qx/test/data/singlevalue/Array.js +383 -144
  519. package/source/class/qx/test/data/singlevalue/Deep.js +361 -175
  520. package/source/class/qx/test/data/singlevalue/Resolve.js +51 -29
  521. package/source/class/qx/test/data/singlevalue/Simple.js +530 -208
  522. package/source/class/qx/test/data/singlevalue/TextFieldDummy.js +32 -28
  523. package/source/class/qx/test/data/singlevalue/__init__.js +4 -4
  524. package/source/class/qx/test/data/store/Json.js +574 -313
  525. package/source/class/qx/test/data/store/Jsonp.js +103 -77
  526. package/source/class/qx/test/data/store/Offline.js +127 -110
  527. package/source/class/qx/test/data/store/Rest.js +58 -52
  528. package/source/class/qx/test/data/store/RestWithRemote.js +36 -30
  529. package/source/class/qx/test/data/store/__init__.js +4 -4
  530. package/source/class/qx/test/dev/Debug.js +9 -13
  531. package/source/class/qx/test/dev/StackTrace.js +51 -42
  532. package/source/class/qx/test/dev/unit/Requirements.js +36 -49
  533. package/source/class/qx/test/dev/unit/Sinon.js +85 -73
  534. package/source/class/qx/test/dev/unit/TestCase.js +12 -17
  535. package/source/class/qx/test/dom/Element.js +17 -12
  536. package/source/class/qx/test/dom/Hierarchy.js +53 -38
  537. package/source/class/qx/test/dom/Node.js +97 -43
  538. package/source/class/qx/test/event/Bubbling.js +258 -88
  539. package/source/class/qx/test/event/Emitter.js +38 -39
  540. package/source/class/qx/test/event/GlobalError.js +59 -87
  541. package/source/class/qx/test/event/GlobalEventMonitors.js +22 -25
  542. package/source/class/qx/test/event/Messaging.js +66 -49
  543. package/source/class/qx/test/event/MockBubblingHandler.js +10 -15
  544. package/source/class/qx/test/event/MockHandler.js +14 -33
  545. package/source/class/qx/test/event/Registration.js +38 -32
  546. package/source/class/qx/test/event/Timer.js +61 -39
  547. package/source/class/qx/test/event/Utils.js +164 -123
  548. package/source/class/qx/test/event/dispatch/MouseCapture.js +61 -51
  549. package/source/class/qx/test/event/dispatch/MouseEventOnDocument.js +22 -23
  550. package/source/class/qx/test/event/dispatch/TestingHandler.js +8 -10
  551. package/source/class/qx/test/event/dispatch/TestingWindow.js +9 -13
  552. package/source/class/qx/test/event/dispatch/__init__.js +4 -4
  553. package/source/class/qx/test/event/handler/Offline.js +7 -8
  554. package/source/class/qx/test/event/message/Bus.js +112 -72
  555. package/source/class/qx/test/event/message/__init__.js +4 -4
  556. package/source/class/qx/test/event/type/Dom.js +12 -11
  557. package/source/class/qx/test/event/type/Event.js +7 -16
  558. package/source/class/qx/test/event/type/Mouse.js +12 -11
  559. package/source/class/qx/test/event/type/Native.js +12 -11
  560. package/source/class/qx/test/event/type/__init__.js +4 -4
  561. package/source/class/qx/test/event/util/Keyboard.js +4 -3
  562. package/source/class/qx/test/html/Element.js +538 -239
  563. package/source/class/qx/test/html/Iframe.js +85 -73
  564. package/source/class/qx/test/html/jsx/TestJsx.js +15 -4
  565. package/source/class/qx/test/html/jsx/TestJsxBrowser.js +37 -19
  566. package/source/class/qx/test/html/jsx/TestWidget.js +26 -26
  567. package/source/class/qx/test/io/ImageLoader.js +256 -160
  568. package/source/class/qx/test/io/MAssert.js +46 -0
  569. package/source/class/qx/test/io/MRemoteTest.js +9 -11
  570. package/source/class/qx/test/io/__init__.js +4 -4
  571. package/source/class/qx/test/io/graphql/Client.js +190 -0
  572. package/source/class/qx/test/io/graphql/ClientFetch.js +34 -0
  573. package/source/class/qx/test/io/graphql/Request.js +41 -0
  574. package/source/class/qx/test/io/jsonrpc/Client.js +333 -0
  575. package/source/class/qx/test/io/jsonrpc/Protocol.js +108 -0
  576. package/source/class/qx/test/io/request/Jsonp.js +23 -20
  577. package/source/class/qx/test/io/request/JsonpWithRemote.js +25 -22
  578. package/source/class/qx/test/io/request/MRequest.js +137 -114
  579. package/source/class/qx/test/io/request/Xhr.js +367 -209
  580. package/source/class/qx/test/io/request/XhrWithRemote.js +133 -100
  581. package/source/class/qx/test/io/rest/Resource.js +325 -270
  582. package/source/class/qx/test/io/rest/ResourceWithRemote.js +75 -58
  583. package/source/class/qx/test/io/transport/PostMessage.js +56 -0
  584. package/source/class/qx/test/io/transport/Websocket.js +64 -0
  585. package/source/class/qx/test/lang/Array.js +79 -105
  586. package/source/class/qx/test/lang/Function.js +64 -53
  587. package/source/class/qx/test/lang/Json.js +51 -79
  588. package/source/class/qx/test/lang/Number.js +4 -6
  589. package/source/class/qx/test/lang/Object.js +143 -133
  590. package/source/class/qx/test/lang/String.js +151 -95
  591. package/source/class/qx/test/lang/Type.js +34 -44
  592. package/source/class/qx/test/lang/Webkit.js +8 -13
  593. package/source/class/qx/test/lang/normalize/Array.js +121 -68
  594. package/source/class/qx/test/lang/normalize/Date.js +232 -49
  595. package/source/class/qx/test/lang/normalize/Error.js +5 -8
  596. package/source/class/qx/test/lang/normalize/Function.js +7 -13
  597. package/source/class/qx/test/lang/normalize/Object.js +22 -29
  598. package/source/class/qx/test/lang/normalize/String.js +19 -28
  599. package/source/class/qx/test/locale/Date.js +91 -43
  600. package/source/class/qx/test/locale/Locale.js +52 -32
  601. package/source/class/qx/test/locale/LocalizedString.js +12 -12
  602. package/source/class/qx/test/log/DeprecationMethodOverriding.js +52 -31
  603. package/source/class/qx/test/log/Filters.js +6 -3
  604. package/source/class/qx/test/log/Formatter.js +13 -7
  605. package/source/class/qx/test/log/Logger.js +19 -29
  606. package/source/class/qx/test/log/RingBuffer.js +14 -25
  607. package/source/class/qx/test/log/__init__.js +4 -4
  608. package/source/class/qx/test/log/fixture/ClassA.js +22 -22
  609. package/source/class/qx/test/log/fixture/ClassB1.js +7 -9
  610. package/source/class/qx/test/log/fixture/ClassB2.js +5 -7
  611. package/source/class/qx/test/log/fixture/ClassC1.js +5 -7
  612. package/source/class/qx/test/log/fixture/ClassC2.js +7 -9
  613. package/source/class/qx/test/mobile/LocaleSwitch.js +29 -36
  614. package/source/class/qx/test/mobile/MobileTestCase.js +39 -49
  615. package/source/class/qx/test/mobile/basic/Atom.js +129 -53
  616. package/source/class/qx/test/mobile/basic/Image.js +41 -31
  617. package/source/class/qx/test/mobile/basic/Label.js +6 -10
  618. package/source/class/qx/test/mobile/container/Carousel.js +41 -45
  619. package/source/class/qx/test/mobile/container/Composite.js +48 -65
  620. package/source/class/qx/test/mobile/container/Drawer.js +42 -29
  621. package/source/class/qx/test/mobile/container/Navigation.js +14 -20
  622. package/source/class/qx/test/mobile/container/Scroll.js +23 -19
  623. package/source/class/qx/test/mobile/core/Widget.js +150 -86
  624. package/source/class/qx/test/mobile/dialog/Menu.js +47 -26
  625. package/source/class/qx/test/mobile/dialog/Popup.js +30 -19
  626. package/source/class/qx/test/mobile/embed/Html.js +5 -8
  627. package/source/class/qx/test/mobile/form/Button.js +15 -13
  628. package/source/class/qx/test/mobile/form/CheckBox.js +21 -17
  629. package/source/class/qx/test/mobile/form/Form.js +37 -24
  630. package/source/class/qx/test/mobile/form/Group.js +5 -9
  631. package/source/class/qx/test/mobile/form/Label.js +11 -13
  632. package/source/class/qx/test/mobile/form/NumberField.js +49 -45
  633. package/source/class/qx/test/mobile/form/RadioButton.js +30 -19
  634. package/source/class/qx/test/mobile/form/SelectBox.js +39 -25
  635. package/source/class/qx/test/mobile/form/SingleRenderer.js +31 -27
  636. package/source/class/qx/test/mobile/form/Slider.js +55 -35
  637. package/source/class/qx/test/mobile/form/TextArea.js +34 -24
  638. package/source/class/qx/test/mobile/form/TextField.js +34 -24
  639. package/source/class/qx/test/mobile/form/ToggleButton.js +10 -14
  640. package/source/class/qx/test/mobile/layout/Card.js +21 -17
  641. package/source/class/qx/test/mobile/layout/HBox.js +25 -20
  642. package/source/class/qx/test/mobile/layout/VBox.js +25 -21
  643. package/source/class/qx/test/mobile/list/List.js +114 -83
  644. package/source/class/qx/test/mobile/navigationbar/NavigationBar.js +5 -9
  645. package/source/class/qx/test/mobile/page/Manager.js +7 -13
  646. package/source/class/qx/test/mobile/page/NavigationPage.js +7 -17
  647. package/source/class/qx/test/mobile/page/Page.js +101 -68
  648. package/source/class/qx/test/mobile/tabbar/TabBar.js +11 -21
  649. package/source/class/qx/test/mobile/toolbar/Toolbar.js +16 -16
  650. package/source/class/qx/test/performance/BaseCall.js +31 -36
  651. package/source/class/qx/test/performance/Event.js +60 -53
  652. package/source/class/qx/test/performance/Object.js +16 -22
  653. package/source/class/qx/test/performance/Property.js +20 -22
  654. package/source/class/qx/test/performance/data/Marshaling.js +25 -30
  655. package/source/class/qx/test/performance/decorator/AbstractDecorator.js +22 -34
  656. package/source/class/qx/test/performance/decorator/Background.js +4 -6
  657. package/source/class/qx/test/performance/decorator/BackgroundScale.js +6 -8
  658. package/source/class/qx/test/performance/decorator/Single.js +4 -6
  659. package/source/class/qx/test/performance/element/Element.js +50 -67
  660. package/source/class/qx/test/performance/widget/AbstractWidget.js +31 -44
  661. package/source/class/qx/test/performance/widget/Button.js +5 -7
  662. package/source/class/qx/test/performance/widget/Label.js +5 -7
  663. package/source/class/qx/test/performance/widget/RichLabel.js +6 -8
  664. package/source/class/qx/test/performance/widget/Widget.js +5 -7
  665. package/source/class/qx/test/performance/widget/WidgetWithDecorator.js +7 -9
  666. package/source/class/qx/test/performance/widget/WidgetWithSingle.js +9 -11
  667. package/source/class/qx/test/renderer/Color.js +22 -49
  668. package/source/class/qx/test/testclasses/BaseClassBoth.js +11 -8
  669. package/source/class/qx/test/testclasses/BaseClassIncluded.js +5 -6
  670. package/source/class/qx/test/testclasses/BaseClassPatched.js +15 -8
  671. package/source/class/qx/test/testclasses/DerivedClassBoth.js +7 -7
  672. package/source/class/qx/test/testclasses/DerivedClassIncluded.js +7 -7
  673. package/source/class/qx/test/testclasses/DerivedClassPatched.js +7 -7
  674. package/source/class/qx/test/testclasses/MMixinOne.js +4 -4
  675. package/source/class/qx/test/testclasses/MMixinTwo.js +2 -2
  676. package/source/class/qx/test/testclasses/RootClass.js +8 -8
  677. package/source/class/qx/test/theme/__init__.js +4 -4
  678. package/source/class/qx/test/theme/manager/Color.js +52 -66
  679. package/source/class/qx/test/theme/manager/Decoration.js +177 -154
  680. package/source/class/qx/test/theme/manager/Font.js +68 -39
  681. package/source/class/qx/test/theme/manager/Icon.js +46 -43
  682. package/source/class/qx/test/theme/manager/Meta.js +121 -110
  683. package/source/class/qx/test/theme/manager/__init__.js +4 -4
  684. package/source/class/qx/test/theme/manager/mock/Appearance.js +17 -23
  685. package/source/class/qx/test/theme/manager/mock/Color.js +7 -9
  686. package/source/class/qx/test/theme/manager/mock/Decoration.js +7 -10
  687. package/source/class/qx/test/theme/manager/mock/Font.js +6 -10
  688. package/source/class/qx/test/theme/simple/Appearance.js +268 -210
  689. package/source/class/qx/test/tool/utils/Utils.js +10 -8
  690. package/source/class/qx/test/toolchain/PrivateOptimization.js +20 -13
  691. package/source/class/qx/test/toolchain/TestRunner.js +12 -12
  692. package/source/class/qx/test/toolchain/VariantOptimization.js +37 -26
  693. package/source/class/qx/test/toolchain/__init__.js +4 -4
  694. package/source/class/qx/test/type/Array.js +8 -12
  695. package/source/class/qx/test/type/BaseArray.js +58 -78
  696. package/source/class/qx/test/type/BaseString.js +30 -61
  697. package/source/class/qx/test/type/__init__.js +4 -4
  698. package/source/class/qx/test/ui/BackgroundColor.js +20 -21
  699. package/source/class/qx/test/ui/ChildrenHandling.js +136 -81
  700. package/source/class/qx/test/ui/Destroy.js +310 -248
  701. package/source/class/qx/test/ui/Focus.js +40 -87
  702. package/source/class/qx/test/ui/Insets.js +14 -18
  703. package/source/class/qx/test/ui/LayoutTestCase.js +99 -92
  704. package/source/class/qx/test/ui/LocaleSwitch.js +37 -41
  705. package/source/class/qx/test/ui/RadioItems.js +11 -22
  706. package/source/class/qx/test/ui/Widget.js +13 -17
  707. package/source/class/qx/test/ui/Window.js +26 -39
  708. package/source/class/qx/test/ui/basic/Atom.js +37 -25
  709. package/source/class/qx/test/ui/basic/Image.js +179 -138
  710. package/source/class/qx/test/ui/basic/Label.js +147 -65
  711. package/source/class/qx/test/ui/basic/__init__.js +4 -4
  712. package/source/class/qx/test/ui/command/Command.js +105 -69
  713. package/source/class/qx/test/ui/command/Group.js +24 -21
  714. package/source/class/qx/test/ui/command/GroupManager.js +7 -12
  715. package/source/class/qx/test/ui/container/Stack.js +26 -36
  716. package/source/class/qx/test/ui/core/AbstractScrollArea.js +84 -67
  717. package/source/class/qx/test/ui/core/Appearance.js +53 -54
  718. package/source/class/qx/test/ui/core/Blocker.js +80 -44
  719. package/source/class/qx/test/ui/core/DragDropScrolling.js +69 -55
  720. package/source/class/qx/test/ui/core/Placement.js +22 -34
  721. package/source/class/qx/test/ui/core/Queues.js +28 -39
  722. package/source/class/qx/test/ui/core/SizeHint.js +32 -76
  723. package/source/class/qx/test/ui/core/SizeHintX.js +8 -15
  724. package/source/class/qx/test/ui/core/SizeHintY.js +8 -15
  725. package/source/class/qx/test/ui/core/Spacer.js +11 -18
  726. package/source/class/qx/test/ui/core/Widget.js +117 -112
  727. package/source/class/qx/test/ui/core/__init__.js +4 -4
  728. package/source/class/qx/test/ui/decoration/LinearGradient.js +18 -14
  729. package/source/class/qx/test/ui/embed/Iframe.js +70 -65
  730. package/source/class/qx/test/ui/embed/__init__.js +4 -4
  731. package/source/class/qx/test/ui/form/AbstractSelectBox.js +11 -16
  732. package/source/class/qx/test/ui/form/AbstractVirtualBox.js +12 -19
  733. package/source/class/qx/test/ui/form/BooleanFormat.js +40 -25
  734. package/source/class/qx/test/ui/form/Color.js +29 -19
  735. package/source/class/qx/test/ui/form/ComboBox.js +39 -67
  736. package/source/class/qx/test/ui/form/Date.js +34 -21
  737. package/source/class/qx/test/ui/form/DateField.js +16 -19
  738. package/source/class/qx/test/ui/form/Executable.js +98 -68
  739. package/source/class/qx/test/ui/form/Field.js +65 -54
  740. package/source/class/qx/test/ui/form/Form.js +211 -123
  741. package/source/class/qx/test/ui/form/FormManager.js +72 -100
  742. package/source/class/qx/test/ui/form/FormValidator.js +549 -399
  743. package/source/class/qx/test/ui/form/Label.js +87 -65
  744. package/source/class/qx/test/ui/form/List.js +19 -19
  745. package/source/class/qx/test/ui/form/MenuButton.js +26 -20
  746. package/source/class/qx/test/ui/form/ModelProperty.js +40 -36
  747. package/source/class/qx/test/ui/form/ModelSelection.js +39 -84
  748. package/source/class/qx/test/ui/form/NumberFormat.js +30 -19
  749. package/source/class/qx/test/ui/form/Placeholder.js +147 -87
  750. package/source/class/qx/test/ui/form/RadioButtonGroup.js +31 -26
  751. package/source/class/qx/test/ui/form/RadioGroup.js +58 -54
  752. package/source/class/qx/test/ui/form/Range.js +63 -28
  753. package/source/class/qx/test/ui/form/Renderer.js +39 -33
  754. package/source/class/qx/test/ui/form/Resetter.js +21 -35
  755. package/source/class/qx/test/ui/form/Slider.js +37 -21
  756. package/source/class/qx/test/ui/form/Spinner.js +9 -5
  757. package/source/class/qx/test/ui/form/SplitButton.js +7 -11
  758. package/source/class/qx/test/ui/form/StringFormat.js +60 -30
  759. package/source/class/qx/test/ui/form/TextArea.js +59 -41
  760. package/source/class/qx/test/ui/form/TextField.js +14 -16
  761. package/source/class/qx/test/ui/form/ToggleButton.js +20 -24
  762. package/source/class/qx/test/ui/form/VirtualSelectBox.js +66 -40
  763. package/source/class/qx/test/ui/form/__init__.js +4 -4
  764. package/source/class/qx/test/ui/form/virtual/VirtualComboBox.js +58 -60
  765. package/source/class/qx/test/ui/form/virtual/VirtualDropDownList.js +120 -110
  766. package/source/class/qx/test/ui/form/virtual/VirtualSelectBox.js +43 -27
  767. package/source/class/qx/test/ui/groupbox/CheckGroupBox.js +13 -18
  768. package/source/class/qx/test/ui/indicator/ProgressBar.js +73 -48
  769. package/source/class/qx/test/ui/layout/Box.js +23 -22
  770. package/source/class/qx/test/ui/layout/Flow.js +233 -153
  771. package/source/class/qx/test/ui/layout/Grid.js +88 -101
  772. package/source/class/qx/test/ui/layout/LayoutItem.js +57 -83
  773. package/source/class/qx/test/ui/layout/LayoutRoot.js +7 -11
  774. package/source/class/qx/test/ui/layout/Util.js +30 -31
  775. package/source/class/qx/test/ui/layout/__init__.js +4 -4
  776. package/source/class/qx/test/ui/list/AbstractListTest.js +13 -21
  777. package/source/class/qx/test/ui/list/Group.js +191 -114
  778. package/source/class/qx/test/ui/list/List.js +189 -132
  779. package/source/class/qx/test/ui/list/MAssert.js +14 -9
  780. package/source/class/qx/test/ui/list/ObjectGroup.js +131 -109
  781. package/source/class/qx/test/ui/list/core/MultiSelection.js +58 -44
  782. package/source/class/qx/test/ui/list/core/SingleSelection.js +43 -43
  783. package/source/class/qx/test/ui/list/fixture/GroupMock.js +6 -9
  784. package/source/class/qx/test/ui/list/fixture/ItemMock.js +9 -13
  785. package/source/class/qx/test/ui/root/Inline.js +22 -20
  786. package/source/class/qx/test/ui/selection/AbstractMultiSelectonTest.js +188 -105
  787. package/source/class/qx/test/ui/selection/AbstractSingleSelectonTest.js +173 -125
  788. package/source/class/qx/test/ui/selection/ListMultiSelection.js +19 -21
  789. package/source/class/qx/test/ui/selection/ListSingleSelection.js +19 -21
  790. package/source/class/qx/test/ui/selection/RadioGroup.js +41 -29
  791. package/source/class/qx/test/ui/selection/SelectBox.js +11 -17
  792. package/source/class/qx/test/ui/selection/Stack.js +22 -27
  793. package/source/class/qx/test/ui/selection/TabView.js +35 -26
  794. package/source/class/qx/test/ui/selection/TreeMultiSelection.js +14 -19
  795. package/source/class/qx/test/ui/selection/TreeSingleSelection.js +20 -24
  796. package/source/class/qx/test/ui/selection/__init__.js +4 -4
  797. package/source/class/qx/test/ui/table/Dispose.js +46 -46
  798. package/source/class/qx/test/ui/table/Table.js +74 -69
  799. package/source/class/qx/test/ui/table/__init__.js +4 -4
  800. package/source/class/qx/test/ui/table/celleditor/AbstractField.js +14 -28
  801. package/source/class/qx/test/ui/table/celleditor/ComboBox.js +11 -18
  802. package/source/class/qx/test/ui/table/celleditor/PasswordField.js +6 -10
  803. package/source/class/qx/test/ui/table/celleditor/SelectBox.js +16 -32
  804. package/source/class/qx/test/ui/table/celleditor/TextField.js +6 -9
  805. package/source/class/qx/test/ui/table/celleditor/__init__.js +4 -4
  806. package/source/class/qx/test/ui/table/columnmodel/Basic.js +130 -129
  807. package/source/class/qx/test/ui/table/model/Filtered.js +51 -36
  808. package/source/class/qx/test/ui/table/model/Simple.js +43 -45
  809. package/source/class/qx/test/ui/table/selection/Model.js +70 -22
  810. package/source/class/qx/test/ui/toolbar/OverflowHandling.js +145 -123
  811. package/source/class/qx/test/ui/toolbar/ToolBar.js +20 -30
  812. package/source/class/qx/test/ui/tree/Tree.js +63 -42
  813. package/source/class/qx/test/ui/tree/TreeFolder.js +44 -46
  814. package/source/class/qx/test/ui/tree/virtual/AbstractTreeTest.js +61 -96
  815. package/source/class/qx/test/ui/tree/virtual/MultiSelection.js +68 -39
  816. package/source/class/qx/test/ui/tree/virtual/OneSelection.js +82 -42
  817. package/source/class/qx/test/ui/tree/virtual/OpenCloseController.js +80 -101
  818. package/source/class/qx/test/ui/tree/virtual/SingleSelection.js +40 -32
  819. package/source/class/qx/test/ui/tree/virtual/Sorting.js +46 -47
  820. package/source/class/qx/test/ui/tree/virtual/Tree.js +267 -191
  821. package/source/class/qx/test/ui/tree/virtual/TreeItem.js +60 -63
  822. package/source/class/qx/test/ui/tree/virtual/UtilTest.js +65 -50
  823. package/source/class/qx/test/ui/tree/virtual/WidgetProvider.js +127 -132
  824. package/source/class/qx/test/ui/virtual/Axis.js +210 -193
  825. package/source/class/qx/test/ui/virtual/Pane.js +287 -190
  826. package/source/class/qx/test/ui/virtual/PaneUpdate.js +71 -77
  827. package/source/class/qx/test/ui/virtual/PointerEventMock.js +10 -13
  828. package/source/class/qx/test/ui/virtual/Scroller.js +29 -39
  829. package/source/class/qx/test/ui/virtual/__init__.js +4 -4
  830. package/source/class/qx/test/ui/virtual/cell/WidgetCell.js +39 -40
  831. package/source/class/qx/test/ui/virtual/layer/CellSpanManager.js +157 -127
  832. package/source/class/qx/test/ui/virtual/layer/Column.js +6 -10
  833. package/source/class/qx/test/ui/virtual/layer/GridLines.js +6 -10
  834. package/source/class/qx/test/ui/virtual/layer/GridLinesHorizontal.js +6 -9
  835. package/source/class/qx/test/ui/virtual/layer/GridLinesVertical.js +6 -9
  836. package/source/class/qx/test/ui/virtual/layer/HtmlCell.js +12 -19
  837. package/source/class/qx/test/ui/virtual/layer/HtmlCellSpan.js +13 -21
  838. package/source/class/qx/test/ui/virtual/layer/LayerMock.js +31 -43
  839. package/source/class/qx/test/ui/virtual/layer/LayerSimple.js +26 -26
  840. package/source/class/qx/test/ui/virtual/layer/LayerTestCase.js +52 -50
  841. package/source/class/qx/test/ui/virtual/layer/Row.js +6 -10
  842. package/source/class/qx/test/ui/virtual/layer/WidgetCell.js +45 -52
  843. package/source/class/qx/test/ui/virtual/layer/WidgetCellSpan.js +71 -48
  844. package/source/class/qx/test/ui/virtual/layer/__init__.js +4 -4
  845. package/source/class/qx/test/ui/virtual/performance/AbstractLayerTest.js +84 -68
  846. package/source/class/qx/test/ui/virtual/performance/DomCell.js +6 -9
  847. package/source/class/qx/test/ui/virtual/performance/DomPoolCell.js +6 -9
  848. package/source/class/qx/test/ui/virtual/performance/HtmlDivCell.js +7 -11
  849. package/source/class/qx/test/ui/virtual/performance/HtmlDivRelative.js +6 -9
  850. package/source/class/qx/test/ui/virtual/performance/HtmlTableCell.js +8 -13
  851. package/source/class/qx/test/ui/virtual/performance/HtmlTableCellNaive.js +8 -13
  852. package/source/class/qx/test/ui/virtual/performance/HtmlTableCssCell.js +8 -19
  853. package/source/class/qx/test/ui/virtual/performance/WidgetCell.js +10 -15
  854. package/source/class/qx/test/ui/virtual/performance/__init__.js +4 -4
  855. package/source/class/qx/test/ui/virtual/performance/layer/DomCell.js +24 -18
  856. package/source/class/qx/test/ui/virtual/performance/layer/DomPoolCell.js +28 -26
  857. package/source/class/qx/test/ui/virtual/performance/layer/HtmlDivRelative.js +13 -17
  858. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCell.js +29 -28
  859. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCellNaive.js +22 -24
  860. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCssCell.js +32 -47
  861. package/source/class/qx/test/ui/virtual/performance/layer/__init__.js +4 -4
  862. package/source/class/qx/test/ui/window/Desktop.js +21 -12
  863. package/source/class/qx/test/util/Base64.js +10 -13
  864. package/source/class/qx/test/util/ColorUtil.js +121 -54
  865. package/source/class/qx/test/util/DateFormat.js +569 -299
  866. package/source/class/qx/test/util/DateMock.js +16 -19
  867. package/source/class/qx/test/util/DeferredCall.js +12 -13
  868. package/source/class/qx/test/util/Delegate.js +28 -26
  869. package/source/class/qx/test/util/DisposeUtil.js +32 -14
  870. package/source/class/qx/test/util/DynamicScriptLoader.js +99 -64
  871. package/source/class/qx/test/util/Fsm.js +16 -18
  872. package/source/class/qx/test/util/Function.js +23 -19
  873. package/source/class/qx/test/util/LibraryManager.js +15 -22
  874. package/source/class/qx/test/util/NumberFormat.js +53 -64
  875. package/source/class/qx/test/util/PropertyUtil.js +35 -35
  876. package/source/class/qx/test/util/Request.js +26 -18
  877. package/source/class/qx/test/util/ResourceManager.js +50 -35
  878. package/source/class/qx/test/util/ResponseParser.js +45 -35
  879. package/source/class/qx/test/util/RingBuffer.js +15 -28
  880. package/source/class/qx/test/util/Serializer.js +210 -153
  881. package/source/class/qx/test/util/StringBuilder.js +7 -13
  882. package/source/class/qx/test/util/StringSplit.js +114 -69
  883. package/source/class/qx/test/util/Uri.js +74 -78
  884. package/source/class/qx/test/util/Validate.js +95 -64
  885. package/source/class/qx/test/util/placement/BestFitAxis.js +17 -26
  886. package/source/class/qx/test/util/placement/DirectAxis.js +8 -11
  887. package/source/class/qx/test/util/placement/KeepAlignAxis.js +17 -26
  888. package/source/class/qx/test/util/placement/Placement.js +607 -244
  889. package/source/class/qx/test/util/placement/__init__.js +4 -4
  890. package/source/class/qx/theme/Classic.js +9 -11
  891. package/source/class/qx/theme/Indigo.js +9 -11
  892. package/source/class/qx/theme/Modern.js +9 -11
  893. package/source/class/qx/theme/Simple.js +9 -11
  894. package/source/class/qx/theme/TangibleDark.js +1 -1
  895. package/source/class/qx/theme/TangibleLight.js +1 -1
  896. package/source/class/qx/theme/__init__.js +4 -4
  897. package/source/class/qx/theme/classic/Appearance.js +995 -1336
  898. package/source/class/qx/theme/classic/Color.js +83 -83
  899. package/source/class/qx/theme/classic/Decoration.js +318 -299
  900. package/source/class/qx/theme/classic/Font.js +38 -25
  901. package/source/class/qx/theme/icon/Oxygen.js +4 -5
  902. package/source/class/qx/theme/icon/Tango.js +4 -5
  903. package/source/class/qx/theme/indigo/Appearance.js +66 -85
  904. package/source/class/qx/theme/indigo/Color.js +65 -66
  905. package/source/class/qx/theme/indigo/Decoration.js +31 -45
  906. package/source/class/qx/theme/indigo/Font.js +20 -29
  907. package/source/class/qx/theme/manager/Appearance.js +58 -91
  908. package/source/class/qx/theme/manager/Color.js +20 -41
  909. package/source/class/qx/theme/manager/Decoration.js +72 -100
  910. package/source/class/qx/theme/manager/Font.js +51 -67
  911. package/source/class/qx/theme/manager/Icon.js +13 -27
  912. package/source/class/qx/theme/manager/Meta.js +27 -44
  913. package/source/class/qx/theme/modern/Appearance.js +1049 -1440
  914. package/source/class/qx/theme/modern/Color.js +155 -166
  915. package/source/class/qx/theme/modern/Decoration.js +471 -598
  916. package/source/class/qx/theme/modern/Font.js +59 -52
  917. package/source/class/qx/theme/simple/Appearance.js +936 -1207
  918. package/source/class/qx/theme/simple/Color.js +62 -62
  919. package/source/class/qx/theme/simple/Decoration.js +456 -678
  920. package/source/class/qx/theme/simple/Font.js +18 -25
  921. package/source/class/qx/theme/simple/Image.js +49 -52
  922. package/source/class/qx/theme/tangible/Appearance.js +1575 -1743
  923. package/source/class/qx/theme/tangible/ColorDark.js +5 -5
  924. package/source/class/qx/theme/tangible/ColorEngine.js +38 -35
  925. package/source/class/qx/theme/tangible/ColorLight.js +7 -7
  926. package/source/class/qx/theme/tangible/Decoration.js +1108 -1300
  927. package/source/class/qx/theme/tangible/Font.js +66 -70
  928. package/source/class/qx/theme/tangible/Image.js +44 -48
  929. package/source/class/qx/tool/cli/Application.js +5 -5
  930. package/source/class/qx/tool/cli/Cli.js +107 -54
  931. package/source/class/qx/tool/cli/ConfigDb.js +18 -15
  932. package/source/class/qx/tool/cli/LibraryApplication.js +1 -1
  933. package/source/class/qx/tool/cli/Watch.js +174 -102
  934. package/source/class/qx/tool/cli/api/AbstractApi.js +17 -18
  935. package/source/class/qx/tool/cli/api/CompilerApi.js +29 -12
  936. package/source/class/qx/tool/cli/api/LibraryApi.js +4 -6
  937. package/source/class/qx/tool/cli/api/Test.js +12 -9
  938. package/source/class/qx/tool/cli/commands/Add.js +12 -15
  939. package/source/class/qx/tool/cli/commands/Clean.js +10 -9
  940. package/source/class/qx/tool/cli/commands/Command.js +25 -13
  941. package/source/class/qx/tool/cli/commands/Compile.js +635 -269
  942. package/source/class/qx/tool/cli/commands/Config.js +75 -42
  943. package/source/class/qx/tool/cli/commands/Create.js +108 -59
  944. package/source/class/qx/tool/cli/commands/Deploy.js +138 -86
  945. package/source/class/qx/tool/cli/commands/Es6ify.js +118 -0
  946. package/source/class/qx/tool/cli/commands/Lint.js +101 -41
  947. package/source/class/qx/tool/cli/commands/Migrate.js +13 -7
  948. package/source/class/qx/tool/cli/commands/Package.js +67 -46
  949. package/source/class/qx/tool/cli/commands/Pkg.js +21 -18
  950. package/source/class/qx/tool/cli/commands/Run.js +57 -37
  951. package/source/class/qx/tool/cli/commands/Serve.js +62 -37
  952. package/source/class/qx/tool/cli/commands/Test.js +40 -18
  953. package/source/class/qx/tool/cli/commands/add/Class.js +66 -28
  954. package/source/class/qx/tool/cli/commands/add/Script.js +54 -27
  955. package/source/class/qx/tool/cli/commands/package/Install.js +265 -103
  956. package/source/class/qx/tool/cli/commands/package/List.js +199 -75
  957. package/source/class/qx/tool/cli/commands/package/Migrate.js +7 -3
  958. package/source/class/qx/tool/cli/commands/package/Publish.js +230 -115
  959. package/source/class/qx/tool/cli/commands/package/Remove.js +40 -17
  960. package/source/class/qx/tool/cli/commands/package/Update.js +115 -48
  961. package/source/class/qx/tool/cli/commands/package/Upgrade.js +41 -20
  962. package/source/class/qx/tool/compiler/Analyser.js +443 -239
  963. package/source/class/qx/tool/compiler/ClassFile.js +831 -401
  964. package/source/class/qx/tool/compiler/Console.js +136 -87
  965. package/source/class/qx/tool/compiler/Es6ify.js +404 -0
  966. package/source/class/qx/tool/compiler/Preprocess.js +28 -25
  967. package/source/class/qx/tool/compiler/app/Application.js +149 -72
  968. package/source/class/qx/tool/compiler/app/Cldr.js +506 -106
  969. package/source/class/qx/tool/compiler/app/Library.js +62 -27
  970. package/source/class/qx/tool/compiler/app/Part.js +10 -12
  971. package/source/class/qx/tool/compiler/app/Translation.js +189 -162
  972. package/source/class/qx/tool/compiler/app/WebFont.js +216 -162
  973. package/source/class/qx/tool/compiler/jsdoc/ChildControlParser.js +3 -3
  974. package/source/class/qx/tool/compiler/jsdoc/CommandParser.js +8 -9
  975. package/source/class/qx/tool/compiler/jsdoc/ParamParser.js +7 -6
  976. package/source/class/qx/tool/compiler/jsdoc/Parser.js +27 -18
  977. package/source/class/qx/tool/compiler/jsdoc/ReturnParser.js +3 -3
  978. package/source/class/qx/tool/compiler/jsdoc/ThrowsParser.js +4 -4
  979. package/source/class/qx/tool/compiler/makers/AbstractAppMaker.js +5 -6
  980. package/source/class/qx/tool/compiler/makers/AppMaker.js +53 -32
  981. package/source/class/qx/tool/compiler/makers/Maker.js +29 -21
  982. package/source/class/qx/tool/compiler/resources/AbstractMatcher.js +8 -8
  983. package/source/class/qx/tool/compiler/resources/Asset.js +123 -61
  984. package/source/class/qx/tool/compiler/resources/ImageLoader.js +18 -8
  985. package/source/class/qx/tool/compiler/resources/Manager.js +156 -93
  986. package/source/class/qx/tool/compiler/resources/MetaLoader.js +5 -3
  987. package/source/class/qx/tool/compiler/resources/ResourceConverter.js +8 -8
  988. package/source/class/qx/tool/compiler/resources/ResourceLoader.js +8 -9
  989. package/source/class/qx/tool/compiler/resources/ScssConverter.js +54 -18
  990. package/source/class/qx/tool/compiler/resources/ScssFile.js +157 -80
  991. package/source/class/qx/tool/compiler/resources/ScssIncludeConverter.js +3 -3
  992. package/source/class/qx/tool/compiler/targets/BuildTarget.js +23 -13
  993. package/source/class/qx/tool/compiler/targets/SourceCodeCopier.js +29 -9
  994. package/source/class/qx/tool/compiler/targets/SourceTarget.js +2 -2
  995. package/source/class/qx/tool/compiler/targets/Target.js +292 -187
  996. package/source/class/qx/tool/compiler/targets/TypeScriptWriter.js +163 -104
  997. package/source/class/qx/tool/compiler/targets/meta/AbstractJavascriptMeta.js +48 -23
  998. package/source/class/qx/tool/compiler/targets/meta/ApplicationMeta.js +75 -62
  999. package/source/class/qx/tool/compiler/targets/meta/BootJs.js +49 -29
  1000. package/source/class/qx/tool/compiler/targets/meta/Javascript.js +6 -7
  1001. package/source/class/qx/tool/compiler/targets/meta/Package.js +54 -51
  1002. package/source/class/qx/tool/compiler/targets/meta/PackageJavascript.js +41 -21
  1003. package/source/class/qx/tool/compiler/targets/meta/Part.js +9 -10
  1004. package/source/class/qx/tool/compiler/targets/meta/PolyfillJs.js +23 -10
  1005. package/source/class/qx/tool/compiler/targets/meta/Uglify.js +35 -23
  1006. package/source/class/qx/tool/config/Abstract.js +61 -25
  1007. package/source/class/qx/tool/config/Compile.js +3 -2
  1008. package/source/class/qx/tool/config/Lockfile.js +3 -2
  1009. package/source/class/qx/tool/config/Manifest.js +3 -2
  1010. package/source/class/qx/tool/config/Registry.js +4 -3
  1011. package/source/class/qx/tool/config/Utils.js +97 -37
  1012. package/source/class/qx/tool/migration/BaseMigration.js +67 -25
  1013. package/source/class/qx/tool/migration/M6_0_0.js +96 -46
  1014. package/source/class/qx/tool/migration/M7_0_0.js +12 -6
  1015. package/source/class/qx/tool/migration/Runner.js +28 -14
  1016. package/source/class/qx/tool/utils/IndexedArray.js +15 -18
  1017. package/source/class/qx/tool/utils/Json.js +36 -15
  1018. package/source/class/qx/tool/utils/LogManager.js +50 -26
  1019. package/source/class/qx/tool/utils/Logger.js +11 -12
  1020. package/source/class/qx/tool/utils/Promisify.js +45 -49
  1021. package/source/class/qx/tool/utils/Utils.js +63 -48
  1022. package/source/class/qx/tool/utils/Values.js +4 -7
  1023. package/source/class/qx/tool/utils/Website.js +82 -29
  1024. package/source/class/qx/tool/utils/files/FindFiles.js +37 -33
  1025. package/source/class/qx/tool/utils/files/Utils.js +74 -54
  1026. package/source/class/qx/tool/utils/json/Parser.js +163 -54
  1027. package/source/class/qx/tool/utils/json/Stringify.js +87 -72
  1028. package/source/class/qx/tool/utils/json/Tokenizer.js +64 -39
  1029. package/source/class/qx/tool/utils/json/Writer.js +20 -21
  1030. package/source/class/qx/type/Array.js +19 -41
  1031. package/source/class/qx/type/BaseArray.js +136 -151
  1032. package/source/class/qx/type/BaseError.js +17 -34
  1033. package/source/class/qx/type/BaseString.js +104 -120
  1034. package/source/class/qx/type/__init__.js +3 -3
  1035. package/source/class/qx/ui/basic/Atom.js +75 -109
  1036. package/source/class/qx/ui/basic/Image.js +283 -319
  1037. package/source/class/qx/ui/basic/Label.js +161 -208
  1038. package/source/class/qx/ui/command/Command.js +51 -86
  1039. package/source/class/qx/ui/command/Group.js +43 -50
  1040. package/source/class/qx/ui/command/GroupManager.js +50 -53
  1041. package/source/class/qx/ui/container/Composite.js +15 -29
  1042. package/source/class/qx/ui/container/Resizer.js +7 -11
  1043. package/source/class/qx/ui/container/Scroll.js +10 -21
  1044. package/source/class/qx/ui/container/SlideBar.js +78 -118
  1045. package/source/class/qx/ui/container/Stack.js +27 -54
  1046. package/source/class/qx/ui/control/ColorPopup.js +109 -130
  1047. package/source/class/qx/ui/control/ColorSelector.js +334 -301
  1048. package/source/class/qx/ui/control/DateChooser.js +143 -177
  1049. package/source/class/qx/ui/core/Blocker.js +91 -127
  1050. package/source/class/qx/ui/core/ColumnData.js +16 -34
  1051. package/source/class/qx/ui/core/DragDropCursor.js +17 -30
  1052. package/source/class/qx/ui/core/DragDropScrolling.js +8 -14
  1053. package/source/class/qx/ui/core/EventHandler.js +108 -132
  1054. package/source/class/qx/ui/core/FocusHandler.js +78 -127
  1055. package/source/class/qx/ui/core/IMultiSelection.js +5 -9
  1056. package/source/class/qx/ui/core/ISingleSelection.js +10 -16
  1057. package/source/class/qx/ui/core/ISingleSelectionProvider.js +4 -6
  1058. package/source/class/qx/ui/core/LayoutItem.js +190 -306
  1059. package/source/class/qx/ui/core/MBlocker.js +22 -38
  1060. package/source/class/qx/ui/core/MChildrenHandling.js +14 -29
  1061. package/source/class/qx/ui/core/MContentPadding.js +50 -69
  1062. package/source/class/qx/ui/core/MDragDropScrolling.js +82 -80
  1063. package/source/class/qx/ui/core/MExecutable.js +27 -52
  1064. package/source/class/qx/ui/core/MLayoutHandling.js +6 -14
  1065. package/source/class/qx/ui/core/MMovable.js +64 -80
  1066. package/source/class/qx/ui/core/MMultiSelectionHandling.js +68 -87
  1067. package/source/class/qx/ui/core/MNativeOverflow.js +16 -26
  1068. package/source/class/qx/ui/core/MPlacement.js +171 -170
  1069. package/source/class/qx/ui/core/MRemoteChildrenHandling.js +14 -27
  1070. package/source/class/qx/ui/core/MRemoteLayoutHandling.js +4 -7
  1071. package/source/class/qx/ui/core/MResizable.js +142 -175
  1072. package/source/class/qx/ui/core/MSingleSelectionHandling.js +40 -45
  1073. package/source/class/qx/ui/core/SingleSelectionManager.js +41 -60
  1074. package/source/class/qx/ui/core/Spacer.js +12 -22
  1075. package/source/class/qx/ui/core/Widget.js +688 -973
  1076. package/source/class/qx/ui/core/queue/Appearance.js +15 -24
  1077. package/source/class/qx/ui/core/queue/Dispose.js +7 -16
  1078. package/source/class/qx/ui/core/queue/Layout.js +44 -71
  1079. package/source/class/qx/ui/core/queue/Manager.js +140 -133
  1080. package/source/class/qx/ui/core/queue/Visibility.js +21 -39
  1081. package/source/class/qx/ui/core/queue/Widget.js +15 -26
  1082. package/source/class/qx/ui/core/scroll/AbstractScrollArea.js +124 -162
  1083. package/source/class/qx/ui/core/scroll/IScrollBar.js +13 -24
  1084. package/source/class/qx/ui/core/scroll/MRoll.js +14 -19
  1085. package/source/class/qx/ui/core/scroll/MScrollBarFactory.js +3 -6
  1086. package/source/class/qx/ui/core/scroll/MWheelHandling.js +10 -12
  1087. package/source/class/qx/ui/core/scroll/NativeScrollBar.js +103 -124
  1088. package/source/class/qx/ui/core/scroll/ScrollBar.js +89 -130
  1089. package/source/class/qx/ui/core/scroll/ScrollPane.js +95 -134
  1090. package/source/class/qx/ui/core/scroll/ScrollSlider.js +13 -19
  1091. package/source/class/qx/ui/core/scroll/__init__.js +4 -4
  1092. package/source/class/qx/ui/core/selection/Abstract.js +255 -456
  1093. package/source/class/qx/ui/core/selection/ScrollArea.js +35 -73
  1094. package/source/class/qx/ui/core/selection/Widget.js +57 -120
  1095. package/source/class/qx/ui/decoration/Abstract.js +11 -20
  1096. package/source/class/qx/ui/decoration/Decorator.js +56 -55
  1097. package/source/class/qx/ui/decoration/IDecorator.js +5 -11
  1098. package/source/class/qx/ui/decoration/MBackgroundColor.js +13 -20
  1099. package/source/class/qx/ui/decoration/MBackgroundImage.js +82 -77
  1100. package/source/class/qx/ui/decoration/MBorderImage.js +72 -94
  1101. package/source/class/qx/ui/decoration/MBorderRadius.js +35 -38
  1102. package/source/class/qx/ui/decoration/MBoxShadow.js +61 -55
  1103. package/source/class/qx/ui/decoration/MDoubleBorder.js +157 -155
  1104. package/source/class/qx/ui/decoration/MLinearBackgroundGradient.js +169 -89
  1105. package/source/class/qx/ui/decoration/MSingleBorder.js +138 -124
  1106. package/source/class/qx/ui/decoration/MTransition.js +46 -42
  1107. package/source/class/qx/ui/decoration/__init__.js +2 -2
  1108. package/source/class/qx/ui/embed/AbstractIframe.js +37 -55
  1109. package/source/class/qx/ui/embed/Canvas.js +34 -66
  1110. package/source/class/qx/ui/embed/Html.js +46 -70
  1111. package/source/class/qx/ui/embed/Iframe.js +178 -158
  1112. package/source/class/qx/ui/embed/ThemedIframe.js +91 -135
  1113. package/source/class/qx/ui/form/AbstractField.js +262 -303
  1114. package/source/class/qx/ui/form/AbstractSelectBox.js +98 -88
  1115. package/source/class/qx/ui/form/Button.js +38 -73
  1116. package/source/class/qx/ui/form/CheckBox.js +47 -45
  1117. package/source/class/qx/ui/form/CheckedList.js +41 -25
  1118. package/source/class/qx/ui/form/CheckedSelectBox.js +97 -62
  1119. package/source/class/qx/ui/form/ComboBox.js +129 -143
  1120. package/source/class/qx/ui/form/DateField.js +150 -176
  1121. package/source/class/qx/ui/form/Form.js +50 -69
  1122. package/source/class/qx/ui/form/HoverButton.js +37 -54
  1123. package/source/class/qx/ui/form/IArrayForm.js +8 -16
  1124. package/source/class/qx/ui/form/IBooleanForm.js +8 -16
  1125. package/source/class/qx/ui/form/IColorForm.js +8 -16
  1126. package/source/class/qx/ui/form/IDateForm.js +8 -16
  1127. package/source/class/qx/ui/form/IExecutable.js +7 -14
  1128. package/source/class/qx/ui/form/IField.js +7 -14
  1129. package/source/class/qx/ui/form/IForm.js +17 -32
  1130. package/source/class/qx/ui/form/IListItem.js +1 -4
  1131. package/source/class/qx/ui/form/IModel.js +7 -15
  1132. package/source/class/qx/ui/form/IModelForm.js +8 -16
  1133. package/source/class/qx/ui/form/IModelSelection.js +4 -8
  1134. package/source/class/qx/ui/form/INumberForm.js +8 -15
  1135. package/source/class/qx/ui/form/IRadioItem.js +8 -17
  1136. package/source/class/qx/ui/form/IRange.js +10 -20
  1137. package/source/class/qx/ui/form/IStringForm.js +8 -16
  1138. package/source/class/qx/ui/form/List.js +85 -122
  1139. package/source/class/qx/ui/form/ListItem.js +21 -38
  1140. package/source/class/qx/ui/form/MForm.js +35 -41
  1141. package/source/class/qx/ui/form/MModelProperty.js +9 -14
  1142. package/source/class/qx/ui/form/MModelSelection.js +30 -32
  1143. package/source/class/qx/ui/form/MenuButton.js +68 -73
  1144. package/source/class/qx/ui/form/PasswordField.js +4 -6
  1145. package/source/class/qx/ui/form/RadioButton.js +43 -72
  1146. package/source/class/qx/ui/form/RadioButtonGroup.js +70 -82
  1147. package/source/class/qx/ui/form/RadioGroup.js +110 -126
  1148. package/source/class/qx/ui/form/RepeatButton.js +57 -106
  1149. package/source/class/qx/ui/form/Resetter.js +19 -29
  1150. package/source/class/qx/ui/form/SelectBox.js +80 -101
  1151. package/source/class/qx/ui/form/Slider.js +216 -268
  1152. package/source/class/qx/ui/form/Spinner.js +173 -217
  1153. package/source/class/qx/ui/form/SplitButton.js +76 -115
  1154. package/source/class/qx/ui/form/Tag.js +7 -8
  1155. package/source/class/qx/ui/form/TextArea.js +147 -153
  1156. package/source/class/qx/ui/form/TextField.js +37 -46
  1157. package/source/class/qx/ui/form/ToggleButton.js +62 -90
  1158. package/source/class/qx/ui/form/VirtualComboBox.js +73 -113
  1159. package/source/class/qx/ui/form/VirtualSelectBox.js +264 -274
  1160. package/source/class/qx/ui/form/core/AbstractVirtualBox.js +117 -157
  1161. package/source/class/qx/ui/form/core/VirtualDropDownList.js +101 -144
  1162. package/source/class/qx/ui/form/renderer/AbstractRenderer.js +48 -55
  1163. package/source/class/qx/ui/form/renderer/Double.js +25 -34
  1164. package/source/class/qx/ui/form/renderer/IFormRenderer.js +4 -8
  1165. package/source/class/qx/ui/form/renderer/Single.js +25 -35
  1166. package/source/class/qx/ui/form/renderer/SinglePlaceholder.js +12 -11
  1167. package/source/class/qx/ui/form/renderer/__init__.js +5 -5
  1168. package/source/class/qx/ui/form/validation/AsyncValidator.js +13 -19
  1169. package/source/class/qx/ui/form/validation/Manager.js +74 -108
  1170. package/source/class/qx/ui/form/validation/__init__.js +6 -6
  1171. package/source/class/qx/ui/groupbox/CheckGroupBox.js +30 -47
  1172. package/source/class/qx/ui/groupbox/GroupBox.js +36 -75
  1173. package/source/class/qx/ui/groupbox/RadioGroupBox.js +29 -59
  1174. package/source/class/qx/ui/groupbox/__init__.js +3 -3
  1175. package/source/class/qx/ui/indicator/ProgressBar.js +29 -46
  1176. package/source/class/qx/ui/layout/Abstract.js +28 -53
  1177. package/source/class/qx/ui/layout/Atom.js +95 -111
  1178. package/source/class/qx/ui/layout/Basic.js +29 -30
  1179. package/source/class/qx/ui/layout/Canvas.js +62 -99
  1180. package/source/class/qx/ui/layout/Dock.js +266 -250
  1181. package/source/class/qx/ui/layout/Flow.js +50 -76
  1182. package/source/class/qx/ui/layout/Grid.js +268 -343
  1183. package/source/class/qx/ui/layout/Grow.js +26 -32
  1184. package/source/class/qx/ui/layout/HBox.js +137 -153
  1185. package/source/class/qx/ui/layout/LineSizeIterator.js +19 -28
  1186. package/source/class/qx/ui/layout/Util.js +91 -120
  1187. package/source/class/qx/ui/layout/VBox.js +125 -147
  1188. package/source/class/qx/ui/list/List.js +148 -262
  1189. package/source/class/qx/ui/list/core/IListDelegate.js +13 -26
  1190. package/source/class/qx/ui/list/core/MWidgetController.js +51 -78
  1191. package/source/class/qx/ui/list/provider/IListProvider.js +15 -28
  1192. package/source/class/qx/ui/list/provider/WidgetProvider.js +52 -84
  1193. package/source/class/qx/ui/menu/AbstractButton.js +141 -122
  1194. package/source/class/qx/ui/menu/Button.js +14 -25
  1195. package/source/class/qx/ui/menu/ButtonLayout.js +49 -37
  1196. package/source/class/qx/ui/menu/CheckBox.js +28 -45
  1197. package/source/class/qx/ui/menu/Layout.js +45 -51
  1198. package/source/class/qx/ui/menu/Manager.js +132 -208
  1199. package/source/class/qx/ui/menu/Menu.js +227 -250
  1200. package/source/class/qx/ui/menu/MenuSlideBar.js +13 -20
  1201. package/source/class/qx/ui/menu/RadioButton.js +38 -51
  1202. package/source/class/qx/ui/menu/Separator.js +9 -16
  1203. package/source/class/qx/ui/menubar/Button.js +22 -67
  1204. package/source/class/qx/ui/menubar/MenuBar.js +17 -9
  1205. package/source/class/qx/ui/mobile/__init__.js +5 -5
  1206. package/source/class/qx/ui/mobile/basic/Atom.js +79 -101
  1207. package/source/class/qx/ui/mobile/basic/Image.js +80 -86
  1208. package/source/class/qx/ui/mobile/basic/Label.js +38 -54
  1209. package/source/class/qx/ui/mobile/container/Carousel.js +281 -188
  1210. package/source/class/qx/ui/mobile/container/Collapsible.js +57 -77
  1211. package/source/class/qx/ui/mobile/container/Composite.js +9 -13
  1212. package/source/class/qx/ui/mobile/container/Drawer.js +167 -164
  1213. package/source/class/qx/ui/mobile/container/INavigation.js +6 -10
  1214. package/source/class/qx/ui/mobile/container/IScrollDelegate.js +4 -6
  1215. package/source/class/qx/ui/mobile/container/MIScroll.js +108 -100
  1216. package/source/class/qx/ui/mobile/container/MNativeScroll.js +118 -102
  1217. package/source/class/qx/ui/mobile/container/MScrollHandling.js +8 -7
  1218. package/source/class/qx/ui/mobile/container/Navigation.js +46 -65
  1219. package/source/class/qx/ui/mobile/container/Scroll.js +140 -151
  1220. package/source/class/qx/ui/mobile/control/Picker.js +125 -112
  1221. package/source/class/qx/ui/mobile/core/Blocker.js +62 -71
  1222. package/source/class/qx/ui/mobile/core/DomUpdatedHandler.js +24 -60
  1223. package/source/class/qx/ui/mobile/core/EventHandler.js +158 -138
  1224. package/source/class/qx/ui/mobile/core/MChildrenHandling.js +14 -30
  1225. package/source/class/qx/ui/mobile/core/MLayoutHandling.js +6 -14
  1226. package/source/class/qx/ui/mobile/core/MResize.js +16 -30
  1227. package/source/class/qx/ui/mobile/core/Root.js +90 -80
  1228. package/source/class/qx/ui/mobile/core/Widget.js +351 -479
  1229. package/source/class/qx/ui/mobile/dialog/BusyIndicator.js +31 -46
  1230. package/source/class/qx/ui/mobile/dialog/Manager.js +127 -89
  1231. package/source/class/qx/ui/mobile/dialog/Menu.js +111 -122
  1232. package/source/class/qx/ui/mobile/dialog/Popup.js +202 -194
  1233. package/source/class/qx/ui/mobile/embed/Canvas.js +12 -25
  1234. package/source/class/qx/ui/mobile/embed/Html.js +13 -27
  1235. package/source/class/qx/ui/mobile/form/Button.js +12 -18
  1236. package/source/class/qx/ui/mobile/form/CheckBox.js +20 -35
  1237. package/source/class/qx/ui/mobile/form/Form.js +31 -51
  1238. package/source/class/qx/ui/mobile/form/Group.js +18 -30
  1239. package/source/class/qx/ui/mobile/form/Input.js +30 -35
  1240. package/source/class/qx/ui/mobile/form/Label.js +76 -79
  1241. package/source/class/qx/ui/mobile/form/MState.js +20 -27
  1242. package/source/class/qx/ui/mobile/form/MText.js +27 -47
  1243. package/source/class/qx/ui/mobile/form/MValue.js +66 -94
  1244. package/source/class/qx/ui/mobile/form/NumberField.js +30 -47
  1245. package/source/class/qx/ui/mobile/form/PasswordField.js +8 -14
  1246. package/source/class/qx/ui/mobile/form/RadioButton.js +25 -46
  1247. package/source/class/qx/ui/mobile/form/RadioGroup.js +2 -4
  1248. package/source/class/qx/ui/mobile/form/Row.js +14 -29
  1249. package/source/class/qx/ui/mobile/form/SelectBox.js +77 -104
  1250. package/source/class/qx/ui/mobile/form/Slider.js +116 -144
  1251. package/source/class/qx/ui/mobile/form/TextArea.js +26 -39
  1252. package/source/class/qx/ui/mobile/form/TextField.js +18 -28
  1253. package/source/class/qx/ui/mobile/form/Title.js +11 -19
  1254. package/source/class/qx/ui/mobile/form/ToggleButton.js +35 -58
  1255. package/source/class/qx/ui/mobile/form/__init__.js +1 -1
  1256. package/source/class/qx/ui/mobile/form/renderer/AbstractRenderer.js +24 -31
  1257. package/source/class/qx/ui/mobile/form/renderer/Single.js +59 -85
  1258. package/source/class/qx/ui/mobile/form/renderer/SinglePlaceholder.js +8 -16
  1259. package/source/class/qx/ui/mobile/layout/Abstract.js +48 -85
  1260. package/source/class/qx/ui/mobile/layout/AbstractBox.js +93 -125
  1261. package/source/class/qx/ui/mobile/layout/Card.js +133 -116
  1262. package/source/class/qx/ui/mobile/layout/CardAnimation.js +95 -72
  1263. package/source/class/qx/ui/mobile/layout/HBox.js +9 -12
  1264. package/source/class/qx/ui/mobile/layout/VBox.js +9 -12
  1265. package/source/class/qx/ui/mobile/list/IListDelegate.js +5 -9
  1266. package/source/class/qx/ui/mobile/list/List.js +172 -183
  1267. package/source/class/qx/ui/mobile/list/provider/Provider.js +58 -65
  1268. package/source/class/qx/ui/mobile/list/renderer/Abstract.js +54 -82
  1269. package/source/class/qx/ui/mobile/list/renderer/Default.js +39 -55
  1270. package/source/class/qx/ui/mobile/list/renderer/group/Abstract.js +20 -33
  1271. package/source/class/qx/ui/mobile/list/renderer/group/Default.js +29 -45
  1272. package/source/class/qx/ui/mobile/navigationbar/BackButton.js +11 -15
  1273. package/source/class/qx/ui/mobile/navigationbar/Button.js +11 -15
  1274. package/source/class/qx/ui/mobile/navigationbar/NavigationBar.js +23 -29
  1275. package/source/class/qx/ui/mobile/navigationbar/Title.js +12 -20
  1276. package/source/class/qx/ui/mobile/page/Manager.js +195 -169
  1277. package/source/class/qx/ui/mobile/page/NavigationPage.js +132 -196
  1278. package/source/class/qx/ui/mobile/page/Page.js +109 -148
  1279. package/source/class/qx/ui/mobile/tabbar/TabBar.js +41 -62
  1280. package/source/class/qx/ui/mobile/tabbar/TabButton.js +19 -28
  1281. package/source/class/qx/ui/mobile/toolbar/Button.js +7 -11
  1282. package/source/class/qx/ui/mobile/toolbar/Separator.js +11 -15
  1283. package/source/class/qx/ui/mobile/toolbar/ToolBar.js +30 -39
  1284. package/source/class/qx/ui/popup/Manager.js +41 -53
  1285. package/source/class/qx/ui/popup/Popup.js +22 -47
  1286. package/source/class/qx/ui/popup/__init__.js +32 -32
  1287. package/source/class/qx/ui/progressive/Progressive.js +96 -137
  1288. package/source/class/qx/ui/progressive/State.js +12 -19
  1289. package/source/class/qx/ui/progressive/headfoot/Abstract.js +10 -15
  1290. package/source/class/qx/ui/progressive/headfoot/Null.js +4 -7
  1291. package/source/class/qx/ui/progressive/headfoot/Progress.js +67 -69
  1292. package/source/class/qx/ui/progressive/headfoot/TableHeading.js +42 -54
  1293. package/source/class/qx/ui/progressive/model/Abstract.js +8 -15
  1294. package/source/class/qx/ui/progressive/model/Default.js +17 -29
  1295. package/source/class/qx/ui/progressive/renderer/Abstract.js +6 -11
  1296. package/source/class/qx/ui/progressive/renderer/FunctionCaller.js +4 -7
  1297. package/source/class/qx/ui/progressive/renderer/table/Row.js +215 -242
  1298. package/source/class/qx/ui/progressive/renderer/table/Widths.js +32 -47
  1299. package/source/class/qx/ui/progressive/renderer/table/cell/Abstract.js +17 -24
  1300. package/source/class/qx/ui/progressive/renderer/table/cell/Boolean.js +68 -79
  1301. package/source/class/qx/ui/progressive/renderer/table/cell/Conditional.js +146 -199
  1302. package/source/class/qx/ui/progressive/renderer/table/cell/Default.js +14 -32
  1303. package/source/class/qx/ui/progressive/renderer/table/cell/Html.js +2 -3
  1304. package/source/class/qx/ui/progressive/renderer/table/cell/Icon.js +38 -53
  1305. package/source/class/qx/ui/progressive/renderer/table/cell/Image.js +20 -42
  1306. package/source/class/qx/ui/progressive/renderer/table/cell/String.js +6 -12
  1307. package/source/class/qx/ui/progressive/structure/Abstract.js +14 -26
  1308. package/source/class/qx/ui/progressive/structure/Default.js +20 -40
  1309. package/source/class/qx/ui/root/Abstract.js +73 -90
  1310. package/source/class/qx/ui/root/Application.js +57 -61
  1311. package/source/class/qx/ui/root/Inline.js +78 -64
  1312. package/source/class/qx/ui/root/Page.js +25 -46
  1313. package/source/class/qx/ui/splitpane/Blocker.js +23 -30
  1314. package/source/class/qx/ui/splitpane/HLayout.js +53 -49
  1315. package/source/class/qx/ui/splitpane/Pane.js +115 -150
  1316. package/source/class/qx/ui/splitpane/Slider.js +9 -15
  1317. package/source/class/qx/ui/splitpane/Splitter.js +27 -46
  1318. package/source/class/qx/ui/splitpane/VLayout.js +53 -49
  1319. package/source/class/qx/ui/style/Stylesheet.js +12 -19
  1320. package/source/class/qx/ui/table/ICellEditorFactory.js +4 -8
  1321. package/source/class/qx/ui/table/ICellRenderer.js +3 -7
  1322. package/source/class/qx/ui/table/IColumnMenuButton.js +6 -11
  1323. package/source/class/qx/ui/table/IColumnMenuItem.js +5 -8
  1324. package/source/class/qx/ui/table/IHeaderRenderer.js +4 -8
  1325. package/source/class/qx/ui/table/IRowRenderer.js +6 -12
  1326. package/source/class/qx/ui/table/ITableModel.js +23 -41
  1327. package/source/class/qx/ui/table/MTableContextMenu.js +25 -28
  1328. package/source/class/qx/ui/table/Table.js +573 -743
  1329. package/source/class/qx/ui/table/celleditor/AbstractField.js +16 -26
  1330. package/source/class/qx/ui/table/celleditor/CheckBox.js +15 -16
  1331. package/source/class/qx/ui/table/celleditor/ComboBox.js +24 -34
  1332. package/source/class/qx/ui/table/celleditor/Dynamic.js +25 -32
  1333. package/source/class/qx/ui/table/celleditor/PasswordField.js +4 -8
  1334. package/source/class/qx/ui/table/celleditor/SelectBox.js +29 -38
  1335. package/source/class/qx/ui/table/celleditor/TextField.js +9 -14
  1336. package/source/class/qx/ui/table/cellrenderer/Abstract.js +79 -72
  1337. package/source/class/qx/ui/table/cellrenderer/AbstractImage.js +71 -86
  1338. package/source/class/qx/ui/table/cellrenderer/Boolean.js +36 -50
  1339. package/source/class/qx/ui/table/cellrenderer/Conditional.js +74 -63
  1340. package/source/class/qx/ui/table/cellrenderer/Date.js +12 -22
  1341. package/source/class/qx/ui/table/cellrenderer/Debug.js +9 -9
  1342. package/source/class/qx/ui/table/cellrenderer/Default.js +30 -52
  1343. package/source/class/qx/ui/table/cellrenderer/Dynamic.js +13 -24
  1344. package/source/class/qx/ui/table/cellrenderer/Html.js +6 -8
  1345. package/source/class/qx/ui/table/cellrenderer/Image.js +13 -26
  1346. package/source/class/qx/ui/table/cellrenderer/Number.js +13 -24
  1347. package/source/class/qx/ui/table/cellrenderer/Password.js +8 -11
  1348. package/source/class/qx/ui/table/cellrenderer/Replace.js +27 -42
  1349. package/source/class/qx/ui/table/cellrenderer/String.js +5 -7
  1350. package/source/class/qx/ui/table/columnmenu/Button.js +19 -29
  1351. package/source/class/qx/ui/table/columnmenu/MenuItem.js +11 -19
  1352. package/source/class/qx/ui/table/columnmenu/__init__.js +4 -4
  1353. package/source/class/qx/ui/table/columnmenu/grid/__init__.js +4 -4
  1354. package/source/class/qx/ui/table/columnmenu/simple/__init__.js +4 -4
  1355. package/source/class/qx/ui/table/columnmodel/Basic.js +193 -215
  1356. package/source/class/qx/ui/table/columnmodel/Resize.js +65 -111
  1357. package/source/class/qx/ui/table/columnmodel/resizebehavior/Abstract.js +17 -24
  1358. package/source/class/qx/ui/table/columnmodel/resizebehavior/Default.js +66 -117
  1359. package/source/class/qx/ui/table/headerrenderer/Default.js +25 -46
  1360. package/source/class/qx/ui/table/headerrenderer/HeaderCell.js +39 -51
  1361. package/source/class/qx/ui/table/headerrenderer/Icon.js +11 -27
  1362. package/source/class/qx/ui/table/model/Abstract.js +52 -62
  1363. package/source/class/qx/ui/table/model/Filtered.js +121 -153
  1364. package/source/class/qx/ui/table/model/Remote.js +166 -271
  1365. package/source/class/qx/ui/table/model/Simple.js +215 -250
  1366. package/source/class/qx/ui/table/pane/CellEvent.js +25 -32
  1367. package/source/class/qx/ui/table/pane/Clipper.js +8 -12
  1368. package/source/class/qx/ui/table/pane/FocusIndicator.js +42 -48
  1369. package/source/class/qx/ui/table/pane/Header.js +48 -86
  1370. package/source/class/qx/ui/table/pane/Model.js +80 -97
  1371. package/source/class/qx/ui/table/pane/Pane.js +129 -189
  1372. package/source/class/qx/ui/table/pane/Scroller.js +542 -663
  1373. package/source/class/qx/ui/table/rowrenderer/Default.js +76 -87
  1374. package/source/class/qx/ui/table/selection/Manager.js +23 -57
  1375. package/source/class/qx/ui/table/selection/Model.js +89 -179
  1376. package/source/class/qx/ui/tabview/Page.js +69 -74
  1377. package/source/class/qx/ui/tabview/TabButton.js +45 -72
  1378. package/source/class/qx/ui/tabview/TabView.js +96 -140
  1379. package/source/class/qx/ui/toolbar/Button.js +13 -43
  1380. package/source/class/qx/ui/toolbar/CheckBox.js +12 -43
  1381. package/source/class/qx/ui/toolbar/MenuButton.js +18 -34
  1382. package/source/class/qx/ui/toolbar/Part.js +42 -64
  1383. package/source/class/qx/ui/toolbar/PartContainer.js +19 -28
  1384. package/source/class/qx/ui/toolbar/RadioButton.js +29 -15
  1385. package/source/class/qx/ui/toolbar/Separator.js +15 -25
  1386. package/source/class/qx/ui/toolbar/SplitButton.js +18 -55
  1387. package/source/class/qx/ui/toolbar/ToolBar.js +185 -232
  1388. package/source/class/qx/ui/tooltip/Manager.js +125 -123
  1389. package/source/class/qx/ui/tooltip/ToolTip.js +49 -79
  1390. package/source/class/qx/ui/tooltip/__init__.js +23 -23
  1391. package/source/class/qx/ui/tree/Tree.js +95 -148
  1392. package/source/class/qx/ui/tree/TreeFile.js +8 -15
  1393. package/source/class/qx/ui/tree/TreeFolder.js +8 -15
  1394. package/source/class/qx/ui/tree/VirtualTree.js +207 -333
  1395. package/source/class/qx/ui/tree/VirtualTreeItem.js +30 -45
  1396. package/source/class/qx/ui/tree/__init__.js +50 -50
  1397. package/source/class/qx/ui/tree/core/AbstractItem.js +98 -152
  1398. package/source/class/qx/ui/tree/core/AbstractTreeItem.js +83 -137
  1399. package/source/class/qx/ui/tree/core/FolderOpenButton.js +15 -34
  1400. package/source/class/qx/ui/tree/core/IVirtualTree.js +13 -33
  1401. package/source/class/qx/ui/tree/core/IVirtualTreeDelegate.js +9 -16
  1402. package/source/class/qx/ui/tree/core/MWidgetController.js +58 -69
  1403. package/source/class/qx/ui/tree/core/OpenCloseController.js +29 -35
  1404. package/source/class/qx/ui/tree/core/Util.js +12 -16
  1405. package/source/class/qx/ui/tree/provider/IVirtualTreeProvider.js +10 -23
  1406. package/source/class/qx/ui/tree/provider/WidgetProvider.js +39 -67
  1407. package/source/class/qx/ui/tree/selection/SelectionManager.js +27 -41
  1408. package/source/class/qx/ui/treevirtual/DefaultDataCellRenderer.js +2 -3
  1409. package/source/class/qx/ui/treevirtual/MFamily.js +26 -63
  1410. package/source/class/qx/ui/treevirtual/MNode.js +43 -103
  1411. package/source/class/qx/ui/treevirtual/MTreePrimitive.js +41 -52
  1412. package/source/class/qx/ui/treevirtual/SelectionManager.js +44 -58
  1413. package/source/class/qx/ui/treevirtual/SimpleTreeDataCellRenderer.js +172 -229
  1414. package/source/class/qx/ui/treevirtual/SimpleTreeDataModel.js +256 -367
  1415. package/source/class/qx/ui/treevirtual/SimpleTreeDataRowRenderer.js +8 -18
  1416. package/source/class/qx/ui/treevirtual/TreeVirtual.js +155 -250
  1417. package/source/class/qx/ui/treevirtual/celleditor/NodeEditor.js +10 -16
  1418. package/source/class/qx/ui/treevirtual/pane/Scroller.js +14 -11
  1419. package/source/class/qx/ui/virtual/__init__.js +4 -4
  1420. package/source/class/qx/ui/virtual/behavior/Prefetch.js +71 -86
  1421. package/source/class/qx/ui/virtual/cell/Abstract.js +18 -27
  1422. package/source/class/qx/ui/virtual/cell/AbstractImage.js +42 -51
  1423. package/source/class/qx/ui/virtual/cell/AbstractWidget.js +25 -49
  1424. package/source/class/qx/ui/virtual/cell/Boolean.js +31 -44
  1425. package/source/class/qx/ui/virtual/cell/Cell.js +143 -183
  1426. package/source/class/qx/ui/virtual/cell/CellStylesheet.js +31 -38
  1427. package/source/class/qx/ui/virtual/cell/Date.js +15 -24
  1428. package/source/class/qx/ui/virtual/cell/Html.js +9 -20
  1429. package/source/class/qx/ui/virtual/cell/ICell.js +4 -6
  1430. package/source/class/qx/ui/virtual/cell/IWidgetCell.js +7 -12
  1431. package/source/class/qx/ui/virtual/cell/IWidgetCellDelegate.js +4 -6
  1432. package/source/class/qx/ui/virtual/cell/Image.js +8 -14
  1433. package/source/class/qx/ui/virtual/cell/Number.js +14 -23
  1434. package/source/class/qx/ui/virtual/cell/String.js +11 -20
  1435. package/source/class/qx/ui/virtual/cell/WidgetCell.js +13 -16
  1436. package/source/class/qx/ui/virtual/cell/__init__.js +4 -4
  1437. package/source/class/qx/ui/virtual/core/Axis.js +75 -103
  1438. package/source/class/qx/ui/virtual/core/CellEvent.js +23 -31
  1439. package/source/class/qx/ui/virtual/core/IHtmlCellProvider.js +4 -6
  1440. package/source/class/qx/ui/virtual/core/ILayer.js +5 -15
  1441. package/source/class/qx/ui/virtual/core/IWidgetCellProvider.js +5 -7
  1442. package/source/class/qx/ui/virtual/core/Pane.js +199 -242
  1443. package/source/class/qx/ui/virtual/core/Scroller.js +25 -43
  1444. package/source/class/qx/ui/virtual/layer/Abstract.js +44 -83
  1445. package/source/class/qx/ui/virtual/layer/AbstractBackground.js +47 -68
  1446. package/source/class/qx/ui/virtual/layer/CellSpanManager.js +74 -96
  1447. package/source/class/qx/ui/virtual/layer/Column.js +26 -36
  1448. package/source/class/qx/ui/virtual/layer/GridLines.js +43 -70
  1449. package/source/class/qx/ui/virtual/layer/HtmlCell.js +34 -32
  1450. package/source/class/qx/ui/virtual/layer/HtmlCellSpan.js +54 -56
  1451. package/source/class/qx/ui/virtual/layer/Row.js +28 -36
  1452. package/source/class/qx/ui/virtual/layer/WidgetCell.js +87 -123
  1453. package/source/class/qx/ui/virtual/layer/WidgetCellSpan.js +123 -124
  1454. package/source/class/qx/ui/virtual/selection/Abstract.js +26 -54
  1455. package/source/class/qx/ui/virtual/selection/CellLines.js +11 -21
  1456. package/source/class/qx/ui/virtual/selection/CellRectangle.js +45 -73
  1457. package/source/class/qx/ui/virtual/selection/Column.js +16 -35
  1458. package/source/class/qx/ui/virtual/selection/ISelectionDelegate.js +5 -9
  1459. package/source/class/qx/ui/virtual/selection/MModel.js +84 -122
  1460. package/source/class/qx/ui/virtual/selection/Row.js +29 -61
  1461. package/source/class/qx/ui/website/Accordion.js +39 -42
  1462. package/source/class/qx/ui/website/Button.js +17 -25
  1463. package/source/class/qx/ui/website/Calendar.js +243 -172
  1464. package/source/class/qx/ui/website/Carousel.js +169 -155
  1465. package/source/class/qx/ui/website/DatePicker.js +99 -85
  1466. package/source/class/qx/ui/website/Rating.js +35 -53
  1467. package/source/class/qx/ui/website/Slider.js +174 -153
  1468. package/source/class/qx/ui/website/Table.js +482 -456
  1469. package/source/class/qx/ui/website/Tabs.js +225 -180
  1470. package/source/class/qx/ui/website/Widget.js +39 -52
  1471. package/source/class/qx/ui/window/Desktop.js +14 -12
  1472. package/source/class/qx/ui/window/IDesktop.js +8 -10
  1473. package/source/class/qx/ui/window/IWindowManager.js +7 -9
  1474. package/source/class/qx/ui/window/MDesktop.js +34 -62
  1475. package/source/class/qx/ui/window/Manager.js +31 -57
  1476. package/source/class/qx/ui/window/Window.js +256 -349
  1477. package/source/class/qx/util/AliasManager.js +23 -42
  1478. package/source/class/qx/util/Animation.js +248 -191
  1479. package/source/class/qx/util/Base64.js +144 -89
  1480. package/source/class/qx/util/ColorUtil.js +253 -287
  1481. package/source/class/qx/util/DeferredCall.js +21 -30
  1482. package/source/class/qx/util/DeferredCallManager.js +23 -44
  1483. package/source/class/qx/util/Delegate.js +4 -10
  1484. package/source/class/qx/util/DisposeUtil.js +76 -70
  1485. package/source/class/qx/util/DynamicScriptLoader.js +83 -66
  1486. package/source/class/qx/util/EditDistance.js +64 -58
  1487. package/source/class/qx/util/ExtendedColor.js +157 -163
  1488. package/source/class/qx/util/Function.js +8 -8
  1489. package/source/class/qx/util/LibraryManager.js +11 -18
  1490. package/source/class/qx/util/OOUtil.js +17 -36
  1491. package/source/class/qx/util/ObjectPool.js +19 -45
  1492. package/source/class/qx/util/Permutation.js +9 -16
  1493. package/source/class/qx/util/PropertyUtil.js +58 -70
  1494. package/source/class/qx/util/Request.js +27 -16
  1495. package/source/class/qx/util/ResourceManager.js +103 -104
  1496. package/source/class/qx/util/ResponseParser.js +14 -21
  1497. package/source/class/qx/util/RingBuffer.js +46 -48
  1498. package/source/class/qx/util/Serializer.js +103 -68
  1499. package/source/class/qx/util/StringBuilder.js +11 -22
  1500. package/source/class/qx/util/StringEscape.js +15 -29
  1501. package/source/class/qx/util/StringSplit.js +18 -21
  1502. package/source/class/qx/util/TimerManager.js +61 -70
  1503. package/source/class/qx/util/Uri.js +42 -30
  1504. package/source/class/qx/util/Uuid.js +50 -35
  1505. package/source/class/qx/util/Validate.js +88 -73
  1506. package/source/class/qx/util/ValueManager.js +17 -29
  1507. package/source/class/qx/util/Wheel.js +22 -16
  1508. package/source/class/qx/util/format/DateFormat.js +853 -763
  1509. package/source/class/qx/util/format/IFormat.js +4 -8
  1510. package/source/class/qx/util/format/NumberFormat.js +84 -91
  1511. package/source/class/qx/util/fsm/FiniteStateMachine.js +323 -382
  1512. package/source/class/qx/util/fsm/State.js +210 -249
  1513. package/source/class/qx/util/fsm/Transition.js +138 -160
  1514. package/source/class/qx/util/placement/AbstractAxis.js +12 -14
  1515. package/source/class/qx/util/placement/BestFitAxis.js +5 -8
  1516. package/source/class/qx/util/placement/DirectAxis.js +5 -7
  1517. package/source/class/qx/util/placement/KeepAlignAxis.js +8 -14
  1518. package/source/class/qx/util/placement/Placement.js +39 -56
  1519. package/source/class/qx/util/placement/__init__.js +4 -4
  1520. package/source/class/qx/xml/Document.js +21 -34
  1521. package/source/class/qx/xml/Element.js +90 -73
  1522. package/source/class/qx/xml/String.js +15 -21
  1523. package/source/class/qxWeb.js +104 -69
  1524. package/source/resource/qx/decoration/Indigo/font/JosefinSlab-SemiBold.ttf +0 -0
  1525. package/source/resource/qx/decoration/Indigo/font/SIL Open Font License 1.1.txt +0 -0
  1526. package/source/resource/qx/iconfont/MaterialIcons/fetch-fonts.sh +0 -0
  1527. package/source/resource/qx/mobile/js/iscroll.js +1328 -982
  1528. package/source/resource/qx/mobile/js/iscroll.min.js +1081 -1
  1529. package/source/resource/qx/mobile/scss/common/_gradients.scss +3 -1
  1530. package/source/resource/qx/mobile/scss/theme/indigo/_styles.scss +1 -1
  1531. package/source/resource/qx/mobile/scss/ui/_carousel.scss +2 -2
  1532. package/source/resource/qx/mobile/scss/ui/_checkbox.scss +3 -3
  1533. package/source/resource/qx/mobile/scss/ui/_collapsible.scss +2 -2
  1534. package/source/resource/qx/mobile/scss/ui/_picker.scss +4 -4
  1535. package/source/resource/qx/mobile/scss/ui/_radiobutton.scss +4 -4
  1536. package/source/resource/qx/mobile/scss/ui/_slider.scss +7 -7
  1537. package/source/resource/qx/scss/_gradients.scss +3 -1
  1538. package/source/resource/qx/scss/_mixins.scss +4 -2
  1539. package/source/resource/qx/test/dynamicscriptloader/first.js +1 -1
  1540. package/source/resource/qx/test/dynamicscriptloader/second.js +1 -1
  1541. package/source/resource/qx/test/dynamicscriptloader/third.js +1 -1
  1542. package/source/resource/qx/test/script.js +1 -1
  1543. package/source/resource/qx/test/webworker.js +2 -2
  1544. package/source/resource/qx/tool/bin/build-devtools +0 -0
  1545. package/source/resource/qx/tool/bin/build-website +0 -0
  1546. package/source/resource/qx/tool/bin/download-assets +0 -0
  1547. package/source/resource/qx/tool/cli/templates/loader/loader-node.tmpl.js +3 -1
  1548. package/source/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/scss/_styles.scss +1 -1
  1549. package/source/resource/qx/tool/cli/templates/template_vars.js +1 -1
  1550. package/source/resource/qx/tool/loadsass.js +16 -21
  1551. package/source/resource/qx/tool/schema/Manifest-1-0-0.json +1 -2
  1552. package/source/resource/qx/tool/schema/Manifest-2-0-0.json +1 -2
  1553. package/source/resource/qx/tool/schema/compile-1-0-0.json +16 -20
  1554. package/source/resource/qx/tool/website/build/assets/bluebird.min.js +4593 -9
  1555. package/source/resource/qx/tool/website/build/assets/buttons.js +391 -1
  1556. package/source/resource/qx/tool/website/build/assets/fontawesome-all.js +8963 -1
  1557. package/source/resource/qx/tool/website/build/assets/jquery.js +5452 -3
  1558. package/source/resource/qx/tool/website/build/diagnostics/dependson.js +31 -31
  1559. package/source/resource/qx/tool/website/build/diagnostics/requiredby.js +32 -36
  1560. package/source/resource/qx/tool/website/build/scripts/serve.js +87 -66
  1561. package/source/resource/qx/tool/website/src/assets/bluebird.min.js +4593 -9
  1562. package/source/resource/qx/tool/website/src/assets/buttons.js +391 -1
  1563. package/source/resource/qx/tool/website/src/assets/fontawesome-all.js +8963 -1
  1564. package/source/resource/qx/tool/website/src/assets/jquery.js +5452 -3
  1565. package/source/resource/qx/tool/website/src/diagnostics/dependson.js +31 -31
  1566. package/source/resource/qx/tool/website/src/diagnostics/requiredby.js +32 -36
  1567. package/source/resource/qx/tool/website/src/scripts/serve.js +87 -66
  1568. package/source/resource/qx/website/scss/ui/_carousel.scss +2 -2
  1569. package/source/translation/hr.po +297 -0
  1570. package/lib/resource/qx/static/blank.gif +0 -0
  1571. package/lib/resource/qx/tool/website/.gitignore +0 -2
  1572. package/source/class/qx/io/remote/Exchange.js +0 -1063
  1573. package/source/class/qx/io/remote/Request.js +0 -1021
  1574. package/source/class/qx/io/remote/RequestQueue.js +0 -521
  1575. package/source/class/qx/io/remote/Response.js +0 -137
  1576. package/source/class/qx/io/remote/Rpc.js +0 -1075
  1577. package/source/class/qx/io/remote/RpcError.js +0 -198
  1578. package/source/class/qx/io/remote/__init__.js +0 -88
  1579. package/source/class/qx/io/remote/transport/Abstract.js +0 -513
  1580. package/source/class/qx/io/remote/transport/Iframe.js +0 -652
  1581. package/source/class/qx/io/remote/transport/Script.js +0 -475
  1582. package/source/class/qx/io/remote/transport/XmlHttp.js +0 -1019
  1583. package/source/class/qx/io/remote/transport/__init__.js +0 -3
  1584. package/source/class/qx/io/request/auth/.gitignore +0 -0
  1585. package/source/class/qx/test/bom/client/.gitignore +0 -0
  1586. package/source/class/qx/test/io/remote/AbstractRequest.js +0 -150
  1587. package/source/class/qx/test/io/remote/RequestIframe.js +0 -105
  1588. package/source/class/qx/test/io/remote/RequestXhr.js +0 -151
  1589. package/source/class/qx/test/io/remote/Rpc.js +0 -205
  1590. package/source/class/qx/test/io/remote/__init__.js +0 -4
  1591. package/source/class/qx/test/io/remote/transport/Iframe.js +0 -67
  1592. package/source/class/qx/test/io/remote/transport/XmlHttp.js +0 -133
  1593. package/source/class/qx/test/io/remote/transport/__init__.js +0 -4
  1594. package/source/class/qx/test/ui/control/.gitignore +0 -0
  1595. package/source/resource/qx/decoration/Modern/treevirtual/.gitignore +0 -0
  1596. package/source/resource/qx/mobile/css/.gitignore +0 -3
  1597. package/source/resource/qx/tool/website/.gitignore +0 -2
  1598. package/source/resource/qx/website/.gitignore +0 -1
  1599. package/source/resource/qx/website/scss/.gitignore +0 -1
@@ -24,26 +24,23 @@
24
24
  * @ignore(qx.Test)
25
25
  * @ignore(qx.test.Array)
26
26
  */
27
- qx.Class.define("qx.test.data.marshal.Json",
28
- {
29
- extend : qx.dev.unit.TestCase,
30
- include : qx.dev.unit.MMock,
31
-
32
- members :
33
- {
34
- __marshaler : null,
35
- __data : null,
36
- __propertyNames : null,
37
-
38
- setUp : function() {
27
+ qx.Class.define("qx.test.data.marshal.Json", {
28
+ extend: qx.dev.unit.TestCase,
29
+ include: qx.dev.unit.MMock,
30
+
31
+ members: {
32
+ __marshaler: null,
33
+ __data: null,
34
+ __propertyNames: null,
35
+
36
+ setUp() {
39
37
  this.__marshaler = new qx.data.marshal.Json();
40
38
 
41
- this.__data = {s: 'String', n: 12, b: true};
39
+ this.__data = { s: "String", n: 12, b: true };
42
40
  this.__propertyNames = ["s", "n", "b"];
43
41
  },
44
42
 
45
-
46
- tearDown : function() {
43
+ tearDown() {
47
44
  this.__marshaler.dispose();
48
45
 
49
46
  // remove the former created classes
@@ -55,28 +52,38 @@ qx.Class.define("qx.test.data.marshal.Json",
55
52
  }
56
53
  },
57
54
 
58
-
59
- "test$$member" : function() {
60
- var data = {$$a : "b"};
55
+ test$$member() {
56
+ var data = { $$a: "b" };
61
57
  this.__marshaler.toClass(data);
62
58
 
63
59
  // check if the class is defined
64
- this.assertTrue(qx.Class.isDefined('qx.data.model.$$a'), "Class not created.");
60
+ this.assertTrue(
61
+ qx.Class.isDefined("qx.data.model.$$a"),
62
+ "Class not created."
63
+ );
65
64
 
66
- var clazz = qx.Class.getByName('qx.data.model.$$a');
65
+ var clazz = qx.Class.getByName("qx.data.model.$$a");
67
66
  // check for the property
68
67
  for (var name in clazz.$$properties) {
69
- this.assertEquals("$$a", name, "Property $$a does have the wrong name.");
70
- this.assertEquals("change" + qx.lang.String.firstUp("$$a"), clazz.$$properties[name].event, "event has a wrong name.");
68
+ this.assertEquals(
69
+ "$$a",
70
+ name,
71
+ "Property $$a does have the wrong name."
72
+ );
73
+
74
+ this.assertEquals(
75
+ "change" + qx.lang.String.firstUp("$$a"),
76
+ clazz.$$properties[name].event,
77
+ "event has a wrong name."
78
+ );
71
79
  }
72
80
 
73
- qx.Class.undefine('qx.data.model.$$a');
81
+ qx.Class.undefine("qx.data.model.$$a");
74
82
  },
75
83
 
76
-
77
- testLocalizedString : function () {
84
+ testLocalizedString() {
78
85
  var str = qx.locale.Manager.tr("test one");
79
- var data = {a : str};
86
+ var data = { a: str };
80
87
  this.__marshaler.toClass(data);
81
88
 
82
89
  var model = this.__marshaler.toModel(data);
@@ -84,50 +91,69 @@ qx.Class.define("qx.test.data.marshal.Json",
84
91
  this.assertEquals(str, model.getA());
85
92
 
86
93
  model.dispose();
87
- qx.Class.undefine('qx.data.model.a');
94
+ qx.Class.undefine("qx.data.model.a");
88
95
  },
89
96
 
90
-
91
- testClassCreationSingle: function() {
97
+ testClassCreationSingle() {
92
98
  this.__marshaler.toClass(this.__data);
93
99
 
94
100
  // check if the class is defined
95
- this.assertTrue(qx.Class.isDefined('qx.data.model.b|n|s'), "Class not created.");
101
+ this.assertTrue(
102
+ qx.Class.isDefined("qx.data.model.b|n|s"),
103
+ "Class not created."
104
+ );
96
105
 
97
- var clazz = qx.Class.getByName('qx.data.model.b|n|s');
106
+ var clazz = qx.Class.getByName("qx.data.model.b|n|s");
98
107
  // check for the properties
99
108
  var i = 0;
100
109
  for (var name in clazz.$$properties) {
101
- this.assertEquals(this.__propertyNames[i], name, "Property " + i + "does have the wrong name.");
102
- this.assertEquals("change" + qx.lang.String.firstUp(this.__propertyNames[i]), clazz.$$properties[name].event, "event has a wrong name.");
110
+ this.assertEquals(
111
+ this.__propertyNames[i],
112
+ name,
113
+ "Property " + i + "does have the wrong name."
114
+ );
115
+
116
+ this.assertEquals(
117
+ "change" + qx.lang.String.firstUp(this.__propertyNames[i]),
118
+ clazz.$$properties[name].event,
119
+ "event has a wrong name."
120
+ );
121
+
103
122
  i++;
104
123
  }
105
124
  },
106
125
 
107
-
108
- testClassCreationArray: function() {
109
- this.__data = {a: ['a', 'b', 'c']};
126
+ testClassCreationArray() {
127
+ this.__data = { a: ["a", "b", "c"] };
110
128
 
111
129
  this.__marshaler.toClass(this.__data);
112
130
 
113
131
  // check if the class is defined
114
- this.assertTrue(qx.Class.isDefined("qx.data.model.a"), "Class not created.");
132
+ this.assertTrue(
133
+ qx.Class.isDefined("qx.data.model.a"),
134
+ "Class not created."
135
+ );
115
136
 
116
137
  var clazz = qx.Class.getByName("qx.data.model.a");
117
138
  // check for the property
118
139
  this.assertNotNull(clazz.$$properties.a, "Property does not exist.");
119
140
  },
120
141
 
121
-
122
- testClassCreationObject: function() {
123
- this.__data = {a: {b: 'test'}};
142
+ testClassCreationObject() {
143
+ this.__data = { a: { b: "test" } };
124
144
 
125
145
  this.__marshaler.toClass(this.__data);
126
146
 
127
147
  // check if the classes are defined
128
- this.assertTrue(qx.Class.isDefined("qx.data.model.a"), "Class not created.");
129
- this.assertTrue(qx.Class.isDefined("qx.data.model.b"), "Class not created.");
148
+ this.assertTrue(
149
+ qx.Class.isDefined("qx.data.model.a"),
150
+ "Class not created."
151
+ );
130
152
 
153
+ this.assertTrue(
154
+ qx.Class.isDefined("qx.data.model.b"),
155
+ "Class not created."
156
+ );
131
157
 
132
158
  var clazz = qx.Class.getByName("qx.data.model.a");
133
159
  var clazz2 = qx.Class.getByName("qx.data.model.b");
@@ -136,15 +162,21 @@ qx.Class.define("qx.test.data.marshal.Json",
136
162
  this.assertNotNull(clazz2.$$properties.b, "Property does not exist.");
137
163
  },
138
164
 
139
-
140
- testClassCreationArrayWithObject: function() {
141
- this.__data = {a: [{b: 'test'}, {b: 'test'}]};
165
+ testClassCreationArrayWithObject() {
166
+ this.__data = { a: [{ b: "test" }, { b: "test" }] };
142
167
 
143
168
  this.__marshaler.toClass(this.__data);
144
169
 
145
170
  // check if the classes are defined
146
- this.assertTrue(qx.Class.isDefined("qx.data.model.a"), "Class not created.");
147
- this.assertTrue(qx.Class.isDefined("qx.data.model.b"), "Class not created.");
171
+ this.assertTrue(
172
+ qx.Class.isDefined("qx.data.model.a"),
173
+ "Class not created."
174
+ );
175
+
176
+ this.assertTrue(
177
+ qx.Class.isDefined("qx.data.model.b"),
178
+ "Class not created."
179
+ );
148
180
 
149
181
  var clazz = qx.Class.getByName("qx.data.model.a");
150
182
  var clazz2 = qx.Class.getByName("qx.data.model.b");
@@ -153,15 +185,21 @@ qx.Class.define("qx.test.data.marshal.Json",
153
185
  this.assertNotNull(clazz2.$$properties.b, "Property does not exist.");
154
186
  },
155
187
 
188
+ testClassCreationAllSmoke() {
189
+ this.__data = {
190
+ a: [
191
+ { b: "test", c: ["f", "x", "e"] },
192
+ { b: "test", affe: false }
193
+ ],
194
+
195
+ t: { f: null, r: 152, q: true }
196
+ };
156
197
 
157
- testClassCreationAllSmoke: function() {
158
- this.__data = {a: [{b: 'test', c: ['f', 'x', 'e']}, {b: 'test', affe: false}], t: {f: null, r: 152, q: true}};
159
198
  this.__marshaler.toClass(this.__data);
160
199
  },
161
200
 
162
-
163
- testModelWithNumber: function() {
164
- this.__data = {a: 10, b: -15, c: 10.5e10};
201
+ testModelWithNumber() {
202
+ this.__data = { a: 10, b: -15, c: 10.5e10 };
165
203
  // first create the classes before setting the data
166
204
  this.__marshaler.toClass(this.__data);
167
205
  // set the data
@@ -174,9 +212,8 @@ qx.Class.define("qx.test.data.marshal.Json",
174
212
  model.dispose();
175
213
  },
176
214
 
177
-
178
- testModelWithBoolean: function() {
179
- this.__data = {a: true, b: false};
215
+ testModelWithBoolean() {
216
+ this.__data = { a: true, b: false };
180
217
  // first create the classes before setting the data
181
218
  this.__marshaler.toClass(this.__data);
182
219
  // set the data
@@ -188,9 +225,8 @@ qx.Class.define("qx.test.data.marshal.Json",
188
225
  model.dispose();
189
226
  },
190
227
 
191
-
192
- testModelWithString: function() {
193
- this.__data = {a: 'affe', b: 'AFFE'};
228
+ testModelWithString() {
229
+ this.__data = { a: "affe", b: "AFFE" };
194
230
  // first create the classes before setting the data
195
231
  this.__marshaler.toClass(this.__data);
196
232
  // set the data
@@ -202,9 +238,8 @@ qx.Class.define("qx.test.data.marshal.Json",
202
238
  model.dispose();
203
239
  },
204
240
 
205
-
206
- testModelWithPrimitive: function() {
207
- this.__data = {a: 'affe', b: true, c: 156};
241
+ testModelWithPrimitive() {
242
+ this.__data = { a: "affe", b: true, c: 156 };
208
243
  // first create the classes before setting the data
209
244
  this.__marshaler.toClass(this.__data);
210
245
  // set the data
@@ -217,9 +252,8 @@ qx.Class.define("qx.test.data.marshal.Json",
217
252
  model.dispose();
218
253
  },
219
254
 
220
-
221
- testModelWithArrayPrimitive: function() {
222
- this.__data = {a: ['affe', 'affen', 'AFFE']};
255
+ testModelWithArrayPrimitive() {
256
+ this.__data = { a: ["affe", "affen", "AFFE"] };
223
257
  // first create the classes before setting the data
224
258
  this.__marshaler.toClass(this.__data);
225
259
  // set the data
@@ -235,9 +269,14 @@ qx.Class.define("qx.test.data.marshal.Json",
235
269
  model.dispose();
236
270
  },
237
271
 
272
+ testModelWithArrayArray() {
273
+ this.__data = {
274
+ a: [
275
+ [true, false],
276
+ [10, 15]
277
+ ]
278
+ };
238
279
 
239
- testModelWithArrayArray: function() {
240
- this.__data = {a: [[true, false], [10, 15]]};
241
280
  // first create the classes before setting the data
242
281
  this.__marshaler.toClass(this.__data);
243
282
  // set the data
@@ -249,20 +288,29 @@ qx.Class.define("qx.test.data.marshal.Json",
249
288
  this.assertEquals("qx.data.Array", a.classname, "Its not an data array.");
250
289
 
251
290
  var a0 = a.getItem(0);
252
- this.assertEquals("qx.data.Array", a0.classname, "Its not an data array.");
291
+ this.assertEquals(
292
+ "qx.data.Array",
293
+ a0.classname,
294
+ "Its not an data array."
295
+ );
296
+
253
297
  this.assertEquals(true, a0.getItem(0), "Item 0 is wrong");
254
298
  this.assertEquals(false, a0.getItem(1), "Item 1 is wrong");
255
299
 
256
300
  var a1 = a.getItem(1);
257
- this.assertEquals("qx.data.Array", a1.classname, "Its not an data array.");
301
+ this.assertEquals(
302
+ "qx.data.Array",
303
+ a1.classname,
304
+ "Its not an data array."
305
+ );
306
+
258
307
  this.assertEquals(10, a1.getItem(0), "Item 0 is wrong");
259
308
  this.assertEquals(15, a1.getItem(1), "Item 1 is wrong");
260
309
  model.dispose();
261
310
  },
262
311
 
263
-
264
- testModelWithObjectPrimitive: function() {
265
- this.__data = {a: {b: true, bb: false}, aa: {c: 15, cc: -89}};
312
+ testModelWithObjectPrimitive() {
313
+ this.__data = { a: { b: true, bb: false }, aa: { c: 15, cc: -89 } };
266
314
  // first create the classes before setting the data
267
315
  this.__marshaler.toClass(this.__data);
268
316
  // set the data
@@ -281,9 +329,8 @@ qx.Class.define("qx.test.data.marshal.Json",
281
329
  model.dispose();
282
330
  },
283
331
 
284
-
285
- testModelWithObjectArray: function() {
286
- this.__data = {a: {b: ['affe', 'AFFE']}};
332
+ testModelWithObjectArray() {
333
+ this.__data = { a: { b: ["affe", "AFFE"] } };
287
334
  // first create the classes before setting the data
288
335
  this.__marshaler.toClass(this.__data);
289
336
  // set the data
@@ -300,9 +347,8 @@ qx.Class.define("qx.test.data.marshal.Json",
300
347
  model.dispose();
301
348
  },
302
349
 
303
-
304
- testModelWithArrayObject: function() {
305
- this.__data = {a: [{a: 15}, {a: true}]};
350
+ testModelWithArrayObject() {
351
+ this.__data = { a: [{ a: 15 }, { a: true }] };
306
352
  // first create the classes before setting the data
307
353
  this.__marshaler.toClass(this.__data);
308
354
  // set the data
@@ -317,28 +363,51 @@ qx.Class.define("qx.test.data.marshal.Json",
317
363
  this.assertEquals(true, a.getItem(1).getA(), "Item 1 is wrong.");
318
364
 
319
365
  // check if only one class is created and used
320
- this.assertEquals(model.classname, a.getItem(0).classname, "Differen classes");
321
- this.assertEquals(model.classname, a.getItem(1).classname, "Differen classes");
322
- this.assertEquals(a.getItem(0).classname, a.getItem(1).classname, "Differen classes");
366
+ this.assertEquals(
367
+ model.classname,
368
+ a.getItem(0).classname,
369
+ "Differen classes"
370
+ );
371
+
372
+ this.assertEquals(
373
+ model.classname,
374
+ a.getItem(1).classname,
375
+ "Differen classes"
376
+ );
377
+
378
+ this.assertEquals(
379
+ a.getItem(0).classname,
380
+ a.getItem(1).classname,
381
+ "Differen classes"
382
+ );
383
+
323
384
  model.dispose();
324
385
  },
325
386
 
326
-
327
- testModelWithObjectObject: function() {
328
- this.__data = {a: {a: {a: 'affe'}}};
387
+ testModelWithObjectObject() {
388
+ this.__data = { a: { a: { a: "affe" } } };
329
389
  // first create the classes before setting the data
330
390
  this.__marshaler.toClass(this.__data);
331
391
  // set the data
332
392
  var model = this.__marshaler.toModel(this.__data);
333
393
 
334
394
  // check the model
335
- this.assertEquals("affe", model.getA().getA().getA(), "No affe is there!");
395
+ this.assertEquals(
396
+ "affe",
397
+ model.getA().getA().getA(),
398
+ "No affe is there!"
399
+ );
400
+
336
401
  model.dispose();
337
402
  },
338
403
 
404
+ testModelWithAllSmoke() {
405
+ this.__data = {
406
+ a: [{ aa: ["affe"], ab: false, ac: [] }, {}, true, 15, "affe"],
407
+ b: "Affe",
408
+ c: { ca: 156, cb: [null, null], cc: true }
409
+ };
339
410
 
340
- testModelWithAllSmoke: function() {
341
- this.__data = {a: [{aa: ['affe'], ab: false, ac: []}, {}, true, 15, 'affe'], b: 'Affe', c: {ca: 156, cb: [null, null], cc: true}};
342
411
  // first create the classes before setting the data
343
412
  this.__marshaler.toClass(this.__data);
344
413
  // set the data
@@ -348,9 +417,8 @@ qx.Class.define("qx.test.data.marshal.Json",
348
417
  model.dispose();
349
418
  },
350
419
 
351
-
352
- testBubbleEventsDepth1: function() {
353
- this.__data = {a: 10, b: -15, c: 10.5e10};
420
+ testBubbleEventsDepth1() {
421
+ this.__data = { a: 10, b: -15, c: 10.5e10 };
354
422
  // first create the classes before setting the data
355
423
  this.__marshaler.toClass(this.__data, true);
356
424
  // set the data
@@ -358,32 +426,82 @@ qx.Class.define("qx.test.data.marshal.Json",
358
426
 
359
427
  // check the event for a
360
428
  var self = this;
361
- this.assertEventFired(model, "changeBubble", function() {
362
- model.setA(0);
363
- }, function(e) {
364
- self.assertEquals(0, e.getData().value, "Not the right value in the event.");
365
- self.assertEquals(10, e.getData().old, "Not the right old value in the event.");
366
- self.assertEquals("a", e.getData().name, "Not the right name in the event.");
367
- self.assertString(e.getData().name, "name is not a String.");
368
- self.assertEquals(model, e.getData().item, "Not the right item in the event.");
369
- }, "Change event not fired!");
429
+ this.assertEventFired(
430
+ model,
431
+ "changeBubble",
432
+ function () {
433
+ model.setA(0);
434
+ },
435
+ function (e) {
436
+ self.assertEquals(
437
+ 0,
438
+ e.getData().value,
439
+ "Not the right value in the event."
440
+ );
441
+
442
+ self.assertEquals(
443
+ 10,
444
+ e.getData().old,
445
+ "Not the right old value in the event."
446
+ );
447
+
448
+ self.assertEquals(
449
+ "a",
450
+ e.getData().name,
451
+ "Not the right name in the event."
452
+ );
453
+
454
+ self.assertString(e.getData().name, "name is not a String.");
455
+ self.assertEquals(
456
+ model,
457
+ e.getData().item,
458
+ "Not the right item in the event."
459
+ );
460
+ },
461
+ "Change event not fired!"
462
+ );
370
463
 
371
464
  // check the event for b
372
- this.assertEventFired(model, "changeBubble", function() {
373
- model.setB(0);
374
- }, function(e) {
375
- self.assertEquals(0, e.getData().value, "Not the right value in the event.");
376
- self.assertEquals(-15, e.getData().old, "Not the right old value in the event.");
377
- self.assertEquals("b", e.getData().name, "Not the right name in the event.");
378
- self.assertString(e.getData().name, "name is not a String.");
379
- self.assertEquals(model, e.getData().item, "Not the right item in the event.");
380
- }, "Change event not fired!");
465
+ this.assertEventFired(
466
+ model,
467
+ "changeBubble",
468
+ function () {
469
+ model.setB(0);
470
+ },
471
+ function (e) {
472
+ self.assertEquals(
473
+ 0,
474
+ e.getData().value,
475
+ "Not the right value in the event."
476
+ );
477
+
478
+ self.assertEquals(
479
+ -15,
480
+ e.getData().old,
481
+ "Not the right old value in the event."
482
+ );
483
+
484
+ self.assertEquals(
485
+ "b",
486
+ e.getData().name,
487
+ "Not the right name in the event."
488
+ );
489
+
490
+ self.assertString(e.getData().name, "name is not a String.");
491
+ self.assertEquals(
492
+ model,
493
+ e.getData().item,
494
+ "Not the right item in the event."
495
+ );
496
+ },
497
+ "Change event not fired!"
498
+ );
499
+
381
500
  model.dispose();
382
501
  },
383
502
 
384
-
385
- testBubbleEventsDepth2: function() {
386
- this.__data = {a: {b: 10, c: 20}};
503
+ testBubbleEventsDepth2() {
504
+ this.__data = { a: { b: 10, c: 20 } };
387
505
  // first create the classes before setting the data
388
506
  this.__marshaler.toClass(this.__data, true);
389
507
  // set the data
@@ -391,32 +509,77 @@ qx.Class.define("qx.test.data.marshal.Json",
391
509
 
392
510
  // check the event for b
393
511
  var self = this;
394
- this.assertEventFired(model, "changeBubble", function() {
395
- model.getA().setB(0);
396
- }, function(e) {
397
- self.assertEquals(0, e.getData().value, "Not the right value in the event.");
398
- self.assertEquals(10, e.getData().old, "Not the right old value in the event.");
399
- self.assertEquals("a.b", e.getData().name, "Not the right name in the event.");
400
- self.assertString(e.getData().name, "name is not a String.");
401
- self.assertEquals(model.getA(), e.getData().item, "Not the right item in the event.");
402
- }, "Change event not fired!");
512
+ this.assertEventFired(
513
+ model,
514
+ "changeBubble",
515
+ function () {
516
+ model.getA().setB(0);
517
+ },
518
+ function (e) {
519
+ self.assertEquals(
520
+ 0,
521
+ e.getData().value,
522
+ "Not the right value in the event."
523
+ );
524
+
525
+ self.assertEquals(
526
+ 10,
527
+ e.getData().old,
528
+ "Not the right old value in the event."
529
+ );
530
+
531
+ self.assertEquals(
532
+ "a.b",
533
+ e.getData().name,
534
+ "Not the right name in the event."
535
+ );
536
+
537
+ self.assertString(e.getData().name, "name is not a String.");
538
+ self.assertEquals(
539
+ model.getA(),
540
+ e.getData().item,
541
+ "Not the right item in the event."
542
+ );
543
+ },
544
+ "Change event not fired!"
545
+ );
403
546
 
404
547
  model.getA().dispose();
405
548
  // check the event for a
406
- this.assertEventFired(model, "changeBubble", function() {
407
- model.setA(true);
408
- }, function(e) {
409
- self.assertEquals(true, e.getData().value, "Not the right value in the event.");
410
- self.assertEquals("a", e.getData().name, "Not the right name in the event.");
411
- self.assertString(e.getData().name, "name is not a String.");
412
- self.assertEquals(model, e.getData().item, "Not the right item in the event.");
413
- }, "Change event not fired!");
549
+ this.assertEventFired(
550
+ model,
551
+ "changeBubble",
552
+ function () {
553
+ model.setA(true);
554
+ },
555
+ function (e) {
556
+ self.assertEquals(
557
+ true,
558
+ e.getData().value,
559
+ "Not the right value in the event."
560
+ );
561
+
562
+ self.assertEquals(
563
+ "a",
564
+ e.getData().name,
565
+ "Not the right name in the event."
566
+ );
567
+
568
+ self.assertString(e.getData().name, "name is not a String.");
569
+ self.assertEquals(
570
+ model,
571
+ e.getData().item,
572
+ "Not the right item in the event."
573
+ );
574
+ },
575
+ "Change event not fired!"
576
+ );
577
+
414
578
  model.dispose();
415
579
  },
416
580
 
417
-
418
- testBubbleEventsDepth3: function() {
419
- this.__data = {a: {b: {c: 10}}};
581
+ testBubbleEventsDepth3() {
582
+ this.__data = { a: { b: { c: 10 } } };
420
583
  // first create the classes before setting the data
421
584
  this.__marshaler.toClass(this.__data, true);
422
585
  // set the data
@@ -424,21 +587,46 @@ qx.Class.define("qx.test.data.marshal.Json",
424
587
 
425
588
  // check the event for c
426
589
  var self = this;
427
- this.assertEventFired(model, "changeBubble", function() {
428
- model.getA().getB().setC(0);
429
- }, function(e) {
430
- self.assertEquals(0, e.getData().value, "Not the right value in the event.");
431
- self.assertEquals(10, e.getData().old, "Not the right old value in the event.");
432
- self.assertEquals("a.b.c", e.getData().name, "Not the right name in the event.");
433
- self.assertString(e.getData().name, "name is not a String.");
434
- self.assertEquals(model.getA().getB(), e.getData().item, "Not the right item in the event.");
435
- }, "Change event not fired!");
590
+ this.assertEventFired(
591
+ model,
592
+ "changeBubble",
593
+ function () {
594
+ model.getA().getB().setC(0);
595
+ },
596
+ function (e) {
597
+ self.assertEquals(
598
+ 0,
599
+ e.getData().value,
600
+ "Not the right value in the event."
601
+ );
602
+
603
+ self.assertEquals(
604
+ 10,
605
+ e.getData().old,
606
+ "Not the right old value in the event."
607
+ );
608
+
609
+ self.assertEquals(
610
+ "a.b.c",
611
+ e.getData().name,
612
+ "Not the right name in the event."
613
+ );
614
+
615
+ self.assertString(e.getData().name, "name is not a String.");
616
+ self.assertEquals(
617
+ model.getA().getB(),
618
+ e.getData().item,
619
+ "Not the right item in the event."
620
+ );
621
+ },
622
+ "Change event not fired!"
623
+ );
624
+
436
625
  model.dispose();
437
626
  },
438
627
 
439
-
440
- testBubbleEventsArrayDepth1: function() {
441
- this.__data = {a: [12, 23, 34]};
628
+ testBubbleEventsArrayDepth1() {
629
+ this.__data = { a: [12, 23, 34] };
442
630
  // first create the classes before setting the data
443
631
  this.__marshaler.toClass(this.__data, true);
444
632
  // set the data
@@ -446,21 +634,40 @@ qx.Class.define("qx.test.data.marshal.Json",
446
634
 
447
635
  // check the event for the first array element
448
636
  var self = this;
449
- this.assertEventFired(model, "changeBubble", function() {
450
- model.getA().setItem(0, 1);
451
- }, function(e) {
452
- self.assertEquals(1, e.getData().value, "Not the right value in the event.");
453
- self.assertEquals("a[0]", e.getData().name, "Not the right name in the event.");
454
- self.assertString(e.getData().name, "name is not a String.");
455
- self.assertEquals(model.getA(), e.getData().item, "Not the right item in the event.");
456
- }, "Change event not fired!");
637
+ this.assertEventFired(
638
+ model,
639
+ "changeBubble",
640
+ function () {
641
+ model.getA().setItem(0, 1);
642
+ },
643
+ function (e) {
644
+ self.assertEquals(
645
+ 1,
646
+ e.getData().value,
647
+ "Not the right value in the event."
648
+ );
649
+
650
+ self.assertEquals(
651
+ "a[0]",
652
+ e.getData().name,
653
+ "Not the right name in the event."
654
+ );
655
+
656
+ self.assertString(e.getData().name, "name is not a String.");
657
+ self.assertEquals(
658
+ model.getA(),
659
+ e.getData().item,
660
+ "Not the right item in the event."
661
+ );
662
+ },
663
+ "Change event not fired!"
664
+ );
457
665
 
458
666
  model.dispose();
459
667
  },
460
668
 
461
-
462
- testBubbleEventsArrayDepth2: function() {
463
- this.__data = {a: [{b: 10}, {b: 11}]};
669
+ testBubbleEventsArrayDepth2() {
670
+ this.__data = { a: [{ b: 10 }, { b: 11 }] };
464
671
  // first create the classes before setting the data
465
672
  this.__marshaler.toClass(this.__data, true);
466
673
  // set the data
@@ -468,20 +675,40 @@ qx.Class.define("qx.test.data.marshal.Json",
468
675
 
469
676
  // check the event for the first array element
470
677
  var self = this;
471
- this.assertEventFired(model, "changeBubble", function() {
472
- model.getA().getItem(0).setB(0);
473
- }, function(e) {
474
- self.assertEquals(0, e.getData().value, "Not the right value in the event.");
475
- self.assertEquals("a[0].b", e.getData().name, "Not the right name in the event.");
476
- self.assertString(e.getData().name, "name is not a String.");
477
- self.assertEquals(model.getA().getItem(0), e.getData().item, "Not the right item in the event.");
478
- }, "Change event not fired!");
678
+ this.assertEventFired(
679
+ model,
680
+ "changeBubble",
681
+ function () {
682
+ model.getA().getItem(0).setB(0);
683
+ },
684
+ function (e) {
685
+ self.assertEquals(
686
+ 0,
687
+ e.getData().value,
688
+ "Not the right value in the event."
689
+ );
690
+
691
+ self.assertEquals(
692
+ "a[0].b",
693
+ e.getData().name,
694
+ "Not the right name in the event."
695
+ );
696
+
697
+ self.assertString(e.getData().name, "name is not a String.");
698
+ self.assertEquals(
699
+ model.getA().getItem(0),
700
+ e.getData().item,
701
+ "Not the right item in the event."
702
+ );
703
+ },
704
+ "Change event not fired!"
705
+ );
706
+
479
707
  model.dispose();
480
708
  },
481
709
 
482
-
483
- testBubbleEventsArrayDepthAlot: function() {
484
- this.__data = {a: [[[[{b:10}]]]]};
710
+ testBubbleEventsArrayDepthAlot() {
711
+ this.__data = { a: [[[[{ b: 10 }]]]] };
485
712
  // first create the classes before setting the data
486
713
  this.__marshaler.toClass(this.__data, true);
487
714
  // set the data
@@ -489,20 +716,40 @@ qx.Class.define("qx.test.data.marshal.Json",
489
716
 
490
717
  // check the event for the first array element
491
718
  var self = this;
492
- this.assertEventFired(model, "changeBubble", function() {
493
- model.getA().getItem(0).getItem(0).getItem(0).getItem(0).setB(0);
494
- }, function(e) {
495
- self.assertEquals(0, e.getData().value, "Not the right value in the event.");
496
- self.assertEquals("a[0][0][0][0].b", e.getData().name, "Not the right name in the event.");
497
- self.assertString(e.getData().name, "name is not a String.");
498
- self.assertEquals(model.getA().getItem(0).getItem(0).getItem(0).getItem(0), e.getData().item, "Not the right item in the event.");
499
- }, "Change event not fired!");
719
+ this.assertEventFired(
720
+ model,
721
+ "changeBubble",
722
+ function () {
723
+ model.getA().getItem(0).getItem(0).getItem(0).getItem(0).setB(0);
724
+ },
725
+ function (e) {
726
+ self.assertEquals(
727
+ 0,
728
+ e.getData().value,
729
+ "Not the right value in the event."
730
+ );
731
+
732
+ self.assertEquals(
733
+ "a[0][0][0][0].b",
734
+ e.getData().name,
735
+ "Not the right name in the event."
736
+ );
737
+
738
+ self.assertString(e.getData().name, "name is not a String.");
739
+ self.assertEquals(
740
+ model.getA().getItem(0).getItem(0).getItem(0).getItem(0),
741
+ e.getData().item,
742
+ "Not the right item in the event."
743
+ );
744
+ },
745
+ "Change event not fired!"
746
+ );
747
+
500
748
  model.dispose();
501
749
  },
502
750
 
503
-
504
- testBubbleEventsArrayDepthAlotMix: function() {
505
- this.__data = {a: [ {b: [ [{c: {d: [0, 1]}}] ]} ]};
751
+ testBubbleEventsArrayDepthAlotMix() {
752
+ this.__data = { a: [{ b: [[{ c: { d: [0, 1] } }]] }] };
506
753
  // first create the classes before setting the data
507
754
  this.__marshaler.toClass(this.__data, true);
508
755
  // set the data
@@ -510,20 +757,48 @@ qx.Class.define("qx.test.data.marshal.Json",
510
757
 
511
758
  // check the event for the first array element
512
759
  var self = this;
513
- this.assertEventFired(model, "changeBubble", function() {
514
- model.getA().getItem(0).getB().getItem(0).getItem(0).getC().getD().setItem(1, 12);
515
- }, function(e) {
516
- self.assertEquals(12, e.getData().value, "Not the right value in the event.");
517
- self.assertEquals("a[0].b[0][0].c.d[1]", e.getData().name, "Not the right name in the event.");
518
- self.assertString(e.getData().name, "name is not a String.");
519
- self.assertEquals(model.getA().getItem(0).getB().getItem(0).getItem(0).getC().getD(), e.getData().item, "Not the right item in the event.");
520
- }, "Change event not fired!");
760
+ this.assertEventFired(
761
+ model,
762
+ "changeBubble",
763
+ function () {
764
+ model
765
+ .getA()
766
+ .getItem(0)
767
+ .getB()
768
+ .getItem(0)
769
+ .getItem(0)
770
+ .getC()
771
+ .getD()
772
+ .setItem(1, 12);
773
+ },
774
+ function (e) {
775
+ self.assertEquals(
776
+ 12,
777
+ e.getData().value,
778
+ "Not the right value in the event."
779
+ );
780
+
781
+ self.assertEquals(
782
+ "a[0].b[0][0].c.d[1]",
783
+ e.getData().name,
784
+ "Not the right name in the event."
785
+ );
786
+
787
+ self.assertString(e.getData().name, "name is not a String.");
788
+ self.assertEquals(
789
+ model.getA().getItem(0).getB().getItem(0).getItem(0).getC().getD(),
790
+ e.getData().item,
791
+ "Not the right item in the event."
792
+ );
793
+ },
794
+ "Change event not fired!"
795
+ );
796
+
521
797
  model.dispose();
522
798
  },
523
799
 
524
-
525
- testBubbleEventsArrayLong: function() {
526
- this.__data = {a: [0, 1, 2, 3, 4, 5, 6 , 7, 8, 9, 10]};
800
+ testBubbleEventsArrayLong() {
801
+ this.__data = { a: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] };
527
802
  // first create the classes before setting the data
528
803
  this.__marshaler.toClass(this.__data, true);
529
804
  // set the data
@@ -531,20 +806,40 @@ qx.Class.define("qx.test.data.marshal.Json",
531
806
 
532
807
  // check the event for the first array element
533
808
  var self = this;
534
- this.assertEventFired(model, "changeBubble", function() {
535
- model.getA().setItem(10, "AFFE");
536
- }, function(e) {
537
- self.assertEquals("AFFE", e.getData().value, "Not the right value in the event.");
538
- self.assertEquals("a[10]", e.getData().name, "Not the right name in the event.");
539
- self.assertString(e.getData().name, "name is not a String.");
540
- self.assertEquals(model.getA(), e.getData().item, "Not the right item in the event.");
541
- }, "Change event not fired!");
809
+ this.assertEventFired(
810
+ model,
811
+ "changeBubble",
812
+ function () {
813
+ model.getA().setItem(10, "AFFE");
814
+ },
815
+ function (e) {
816
+ self.assertEquals(
817
+ "AFFE",
818
+ e.getData().value,
819
+ "Not the right value in the event."
820
+ );
821
+
822
+ self.assertEquals(
823
+ "a[10]",
824
+ e.getData().name,
825
+ "Not the right name in the event."
826
+ );
827
+
828
+ self.assertString(e.getData().name, "name is not a String.");
829
+ self.assertEquals(
830
+ model.getA(),
831
+ e.getData().item,
832
+ "Not the right item in the event."
833
+ );
834
+ },
835
+ "Change event not fired!"
836
+ );
837
+
542
838
  model.dispose();
543
839
  },
544
840
 
545
-
546
- testBubbleEventsArrayReorder: function() {
547
- this.__data = {a: [11, 1, 2, 3, 4, 5, 6 , 7, 8, 9, 10]};
841
+ testBubbleEventsArrayReorder() {
842
+ this.__data = { a: [11, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] };
548
843
  // first create the classes before setting the data
549
844
  this.__marshaler.toClass(this.__data, true);
550
845
  // set the data
@@ -554,27 +849,47 @@ qx.Class.define("qx.test.data.marshal.Json",
554
849
 
555
850
  // check the event for the first array element
556
851
  var self = this;
557
- this.assertEventFired(model, "changeBubble", function() {
558
- model.getA().setItem(0, "AFFE");
559
- }, function(e) {
560
- self.assertEquals("AFFE", e.getData().value, "Not the right value in the event.");
561
- self.assertEquals("a[0]", e.getData().name, "Not the right name in the event.");
562
- self.assertString(e.getData().name, "name is not a String.");
563
- self.assertEquals(model.getA(), e.getData().item, "Not the right item in the event.");
564
- }, "Change event not fired!");
852
+ this.assertEventFired(
853
+ model,
854
+ "changeBubble",
855
+ function () {
856
+ model.getA().setItem(0, "AFFE");
857
+ },
858
+ function (e) {
859
+ self.assertEquals(
860
+ "AFFE",
861
+ e.getData().value,
862
+ "Not the right value in the event."
863
+ );
864
+
865
+ self.assertEquals(
866
+ "a[0]",
867
+ e.getData().name,
868
+ "Not the right name in the event."
869
+ );
870
+
871
+ self.assertString(e.getData().name, "name is not a String.");
872
+ self.assertEquals(
873
+ model.getA(),
874
+ e.getData().item,
875
+ "Not the right item in the event."
876
+ );
877
+ },
878
+ "Change event not fired!"
879
+ );
880
+
565
881
  model.dispose();
566
882
  },
567
883
 
568
-
569
- testBubbleEventsWithRemove: function() {
884
+ testBubbleEventsWithRemove() {
570
885
  qx.Class.define("qx.Test", {
571
- extend : qx.core.Object,
572
- include : qx.data.marshal.MEventBubbling,
573
- properties : {
886
+ extend: qx.core.Object,
887
+ include: qx.data.marshal.MEventBubbling,
888
+ properties: {
574
889
  fonts: {
575
- "event": "changeFonts",
576
- "check": "qx.data.Array",
577
- "apply": "_applyEventPropagation"
890
+ event: "changeFonts",
891
+ check: "qx.data.Array",
892
+ apply: "_applyEventPropagation"
578
893
  }
579
894
  }
580
895
  });
@@ -584,12 +899,21 @@ qx.Class.define("qx.test.data.marshal.Json",
584
899
  model.setFonts(fonts);
585
900
  model.getFonts().push("one", "two", "three");
586
901
 
587
- model.addListener("changeBubble", function(e) {
588
- this.assertEquals("fonts[0-2]", e.getData().name, "Wrong name");
589
- this.assertString(e.getData().name, "name is not a String.");
590
- this.assertArrayEquals(["one", "two", "three"], e.getData().old, "Wrong old data");
591
- this.assertEquals(0, e.getData().value.length, "Wrong data");
592
- }, this);
902
+ model.addListener(
903
+ "changeBubble",
904
+ function (e) {
905
+ this.assertEquals("fonts[0-2]", e.getData().name, "Wrong name");
906
+ this.assertString(e.getData().name, "name is not a String.");
907
+ this.assertArrayEquals(
908
+ ["one", "two", "three"],
909
+ e.getData().old,
910
+ "Wrong old data"
911
+ );
912
+
913
+ this.assertEquals(0, e.getData().value.length, "Wrong data");
914
+ },
915
+ this
916
+ );
593
917
 
594
918
  // remove all
595
919
  model.getFonts().removeAll();
@@ -599,9 +923,7 @@ qx.Class.define("qx.test.data.marshal.Json",
599
923
  model.dispose();
600
924
  },
601
925
 
602
-
603
- "test model with and without bubble" : function ()
604
- {
926
+ "test model with and without bubble"() {
605
927
  var data = { pi: 1 };
606
928
 
607
929
  // 1st create explicit *without* changeBubble
@@ -615,31 +937,51 @@ qx.Class.define("qx.test.data.marshal.Json",
615
937
  var model4 = qx.data.marshal.Json.createModel(data, false);
616
938
 
617
939
  // Check whether the above assumptions are correct
618
- this.assertFalse( qx.util.OOUtil.supportsEvent(model1, "changeBubble") );
619
- this.assertFalse( qx.util.OOUtil.supportsEvent(model2, "changeBubble") );
620
- this.assertTrue ( qx.util.OOUtil.supportsEvent(model3, "changeBubble") );
621
- this.assertTrue ( qx.util.OOUtil.supportsEvent(model4, "changeBubble") );
940
+ this.assertFalse(qx.util.OOUtil.supportsEvent(model1, "changeBubble"));
941
+ this.assertFalse(qx.util.OOUtil.supportsEvent(model2, "changeBubble"));
942
+ this.assertTrue(qx.util.OOUtil.supportsEvent(model3, "changeBubble"));
943
+ this.assertTrue(qx.util.OOUtil.supportsEvent(model4, "changeBubble"));
622
944
 
623
945
  // Check if bubble event really fires for models 3 & 4
624
- [ model3, model4 ].forEach(function (model) {
625
-
626
- this.assertEventFired(model, "changeBubble", function () {
627
- model.setPi(0);
628
- }, function (e) {
629
- var data = e.getData();
630
- this.assertEquals(0, data.value, "Not the right value in the event.");
631
- this.assertEquals(1, data.old, "Not the right old value in the event.");
632
- this.assertEquals("pi", data.name, "Not the right name in the event.");
633
- this.assertEquals(model, data.item, "Not the right item in the event.");
634
- }.bind(this), "Change event not fired!");
635
-
946
+ [model3, model4].forEach(function (model) {
947
+ this.assertEventFired(
948
+ model,
949
+ "changeBubble",
950
+ function () {
951
+ model.setPi(0);
952
+ },
953
+ function (e) {
954
+ var data = e.getData();
955
+ this.assertEquals(
956
+ 0,
957
+ data.value,
958
+ "Not the right value in the event."
959
+ );
960
+
961
+ this.assertEquals(
962
+ 1,
963
+ data.old,
964
+ "Not the right old value in the event."
965
+ );
966
+
967
+ this.assertEquals(
968
+ "pi",
969
+ data.name,
970
+ "Not the right name in the event."
971
+ );
972
+
973
+ this.assertEquals(
974
+ model,
975
+ data.item,
976
+ "Not the right item in the event."
977
+ );
978
+ }.bind(this),
979
+ "Change event not fired!"
980
+ );
636
981
  }, this);
637
-
638
982
  },
639
983
 
640
-
641
- "test toClass() toModel() match/mismatch" : function ()
642
- {
984
+ "test toClass() toModel() match/mismatch"() {
643
985
  var data = { foo: "foo", bar: "bar" };
644
986
 
645
987
  var marshaler = new qx.data.marshal.Json();
@@ -649,7 +991,9 @@ qx.Class.define("qx.test.data.marshal.Json",
649
991
  //
650
992
  marshaler.toClass(data, false);
651
993
  this.assertException(
652
- function () { marshaler.toModel(data, true); },
994
+ function () {
995
+ marshaler.toModel(data, true);
996
+ },
653
997
  Error,
654
998
  "Class 'qx.data.model.bar|foo' found, but it does not support changeBubble event."
655
999
  );
@@ -670,33 +1014,39 @@ qx.Class.define("qx.test.data.marshal.Json",
670
1014
  marshaler.toModel(data2, false);
671
1015
 
672
1016
  this.assertException(
673
- function () { marshaler.toModel(data2, true); },
1017
+ function () {
1018
+ marshaler.toModel(data2, true);
1019
+ },
674
1020
  Error,
675
1021
  "Class 'qx.data.model.bar2|foo2' found, but it does not support changeBubble event."
676
1022
  );
677
1023
  },
678
1024
 
679
-
680
- testAddValidationRule : function()
681
- {
1025
+ testAddValidationRule() {
682
1026
  var propertiesSaved;
683
1027
 
684
- var valN = function(data) {
685
- if (data < 10) { throw new qx.core.ValidationError("NNN");}
1028
+ var valN = function (data) {
1029
+ if (data < 10) {
1030
+ throw new qx.core.ValidationError("NNN");
1031
+ }
686
1032
  };
687
1033
 
688
- var valS = function(data) {
689
- if (data.length > 10) {throw new qx.core.ValidationError("SSS");}
1034
+ var valS = function (data) {
1035
+ if (data.length > 10) {
1036
+ throw new qx.core.ValidationError("SSS");
1037
+ }
690
1038
  };
691
1039
 
692
- var delegate = {getValidationRule : function(properties, propertyName) {
693
- if (propertyName == "n") {
694
- return valN;
695
- } else if (propertyName == "s") {
696
- return valS;
1040
+ var delegate = {
1041
+ getValidationRule(properties, propertyName) {
1042
+ if (propertyName == "n") {
1043
+ return valN;
1044
+ } else if (propertyName == "s") {
1045
+ return valS;
1046
+ }
1047
+ propertiesSaved = properties;
697
1048
  }
698
- propertiesSaved = properties;
699
- }};
1049
+ };
700
1050
 
701
1051
  this.__marshaler.dispose();
702
1052
  this.__marshaler = new qx.data.marshal.Json(delegate);
@@ -704,31 +1054,37 @@ qx.Class.define("qx.test.data.marshal.Json",
704
1054
  var model = this.__marshaler.toModel(this.__data);
705
1055
 
706
1056
  // check for the right class hash
707
- this.assertEquals('b|n|s', propertiesSaved);
1057
+ this.assertEquals("b|n|s", propertiesSaved);
708
1058
 
709
1059
  // set working values
710
1060
  model.setS("123456789");
711
1061
  model.setN(20);
712
1062
 
713
1063
  // set not working values
714
- this.assertException(function() {
1064
+ this.assertException(function () {
715
1065
  model.setS("01234567890123456789");
716
1066
  }, qx.core.ValidationError);
717
1067
 
718
- this.assertException(function() {
1068
+ this.assertException(function () {
719
1069
  model.setN(1);
720
1070
  }, qx.core.ValidationError);
721
1071
 
722
1072
  model.dispose();
723
1073
  },
724
1074
 
725
- testCustomValidator : function()
726
- {
1075
+ testCustomValidator() {
727
1076
  var delegate = {
728
- getJsonHash: function (data, includeBubbleEvents) {
729
- return Object.keys(data).sort().map(function (name) { return qx.lang.String.firstUp(name); }).join('') +
730
- (includeBubbleEvents === true ? '#' : '');
731
- }};
1077
+ getJsonHash(data, includeBubbleEvents) {
1078
+ return (
1079
+ Object.keys(data)
1080
+ .sort()
1081
+ .map(function (name) {
1082
+ return qx.lang.String.firstUp(name);
1083
+ })
1084
+ .join("") + (includeBubbleEvents === true ? "#" : "")
1085
+ );
1086
+ }
1087
+ };
732
1088
 
733
1089
  this.__marshaler.dispose();
734
1090
  this.__marshaler = new qx.data.marshal.Json(delegate);
@@ -737,14 +1093,15 @@ qx.Class.define("qx.test.data.marshal.Json",
737
1093
  props: true
738
1094
  });
739
1095
 
740
- this.assertTrue(qx.Class.isDefined('qx.data.model.CustomProps'), "Class not created.");
1096
+ this.assertTrue(
1097
+ qx.Class.isDefined("qx.data.model.CustomProps"),
1098
+ "Class not created."
1099
+ );
741
1100
  },
742
1101
 
743
-
744
- testQooxdooObject : function()
745
- {
1102
+ testQooxdooObject() {
746
1103
  var qxObject = new qx.core.Object();
747
- this.__data = ({a: {b: qxObject}});
1104
+ this.__data = { a: { b: qxObject } };
748
1105
 
749
1106
  this.__marshaler.toClass(this.__data);
750
1107
 
@@ -756,67 +1113,86 @@ qx.Class.define("qx.test.data.marshal.Json",
756
1113
  model.dispose();
757
1114
  },
758
1115
 
759
-
760
- testDisposeListModel : function() {
761
- var model = qx.data.marshal.Json.createModel([{name: "a"}]);
1116
+ testDisposeListModel() {
1117
+ var model = qx.data.marshal.Json.createModel([{ name: "a" }]);
762
1118
  var item = model.getItem(0);
763
1119
  model.dispose();
764
1120
  this.assertTrue(item.isDisposed());
765
1121
  },
766
1122
 
767
-
768
- testValidIdentifier: function() {
1123
+ testValidIdentifier() {
769
1124
  // its a debug warning so only check on debug
770
1125
  if (qx.core.Environment.get("qx.debug")) {
771
- var data = {"#affe" : 1};
772
- this.assertException(function() {
773
- // just check if the creation worked
774
- qx.data.marshal.Json.createModel(data).dispose();
775
- }, null, "The key '#affe' is not a valid JavaScript identifier.", "1");
776
-
777
- data = {"1" : 1, "true": false};
1126
+ var data = { "#affe": 1 };
1127
+ this.assertException(
1128
+ function () {
1129
+ // just check if the creation worked
1130
+ qx.data.marshal.Json.createModel(data).dispose();
1131
+ },
1132
+ null,
1133
+ "The key '#affe' is not a valid JavaScript identifier.",
1134
+ "1"
1135
+ );
1136
+
1137
+ data = { 1: 1, true: false };
778
1138
  // just check if the creation worked
779
1139
  qx.data.marshal.Json.createModel(data).dispose();
780
1140
 
781
- data = {"''''" : 1};
782
- this.assertException(function() {
783
- // just check if the creation worked
784
- qx.data.marshal.Json.createModel(data).dispose();
785
- }, null, "The key '''''' is not a valid JavaScript identifier.", "3");
786
-
787
- data = {"§AFFE" : 1};
788
- this.assertException(function() {
789
- // just check if the creation worked
790
- qx.data.marshal.Json.createModel(data).dispose();
791
- }, null, "The key '§AFFE' is not a valid JavaScript identifier.", "4");
792
-
793
- data = {"ja!" : 1};
794
- this.assertException(function() {
795
- // just check if the creation worked
796
- qx.data.marshal.Json.createModel(data).dispose();
797
- }, null, "The key 'ja!' is not a valid JavaScript identifier.", "5");
1141
+ data = { "''''": 1 };
1142
+ this.assertException(
1143
+ function () {
1144
+ // just check if the creation worked
1145
+ qx.data.marshal.Json.createModel(data).dispose();
1146
+ },
1147
+ null,
1148
+ "The key '''''' is not a valid JavaScript identifier.",
1149
+ "3"
1150
+ );
1151
+
1152
+ data = { "§AFFE": 1 };
1153
+ this.assertException(
1154
+ function () {
1155
+ // just check if the creation worked
1156
+ qx.data.marshal.Json.createModel(data).dispose();
1157
+ },
1158
+ null,
1159
+ "The key '§AFFE' is not a valid JavaScript identifier.",
1160
+ "4"
1161
+ );
1162
+
1163
+ data = { "ja!": 1 };
1164
+ this.assertException(
1165
+ function () {
1166
+ // just check if the creation worked
1167
+ qx.data.marshal.Json.createModel(data).dispose();
1168
+ },
1169
+ null,
1170
+ "The key 'ja!' is not a valid JavaScript identifier.",
1171
+ "5"
1172
+ );
798
1173
  }
799
1174
  },
800
1175
 
801
-
802
1176
  /**
803
1177
  * @ignore(qx.test.model)
804
1178
  */
805
- testGetModelClass: function() {
1179
+ testGetModelClass() {
806
1180
  qx.Class.define("qx.test.model.C", {
807
- extend : qx.core.Object,
808
- properties : {
809
- s : {event : "s"},
810
- b : {event : "b"},
811
- n : {event : "n"}
1181
+ extend: qx.core.Object,
1182
+ properties: {
1183
+ s: { event: "s" },
1184
+ b: { event: "b" },
1185
+ n: { event: "n" }
812
1186
  }
813
1187
  });
814
1188
 
815
1189
  var self = this;
816
- var delegate = {getModelClass : function(properties) {
817
- self.assertEquals('b|n|s', properties);
818
- return qx.test.model.C;
819
- }};
1190
+ var delegate = {
1191
+ getModelClass(properties) {
1192
+ self.assertEquals("b|n|s", properties);
1193
+ return qx.test.model.C;
1194
+ }
1195
+ };
820
1196
 
821
1197
  this.__marshaler.dispose();
822
1198
  this.__marshaler = new qx.data.marshal.Json(delegate);
@@ -832,30 +1208,31 @@ qx.Class.define("qx.test.data.marshal.Json",
832
1208
  qx.Class.undefine("qx.test.model.C");
833
1209
  },
834
1210
 
835
-
836
- testGetModelClassDepth: function() {
1211
+ testGetModelClassDepth() {
837
1212
  var called = 0;
838
- var delegate = {getModelClass : function(properties, object, parentProperty, depth) {
839
- called++;
840
- if (properties == "a") {
841
- this.assertEquals(data, object);
842
- this.assertNull(parentProperty);
843
- this.assertEquals(0, depth);
844
- } else if (properties == "b") {
845
- this.assertEquals(data.a, object);
846
- this.assertEquals("a", parentProperty);
847
- this.assertEquals(1, depth);
848
- } else if (properties == "c") {
849
- this.assertEquals(data.a.b[0], object);
850
- this.assertEquals("b[0]", parentProperty);
851
- this.assertEquals(3, depth);
852
- } else {
853
- this.fail("Unknown property in the marshaler.");
854
- }
855
- }.bind(this)};
1213
+ var delegate = {
1214
+ getModelClass: function (properties, object, parentProperty, depth) {
1215
+ called++;
1216
+ if (properties == "a") {
1217
+ this.assertEquals(data, object);
1218
+ this.assertNull(parentProperty);
1219
+ this.assertEquals(0, depth);
1220
+ } else if (properties == "b") {
1221
+ this.assertEquals(data.a, object);
1222
+ this.assertEquals("a", parentProperty);
1223
+ this.assertEquals(1, depth);
1224
+ } else if (properties == "c") {
1225
+ this.assertEquals(data.a.b[0], object);
1226
+ this.assertEquals("b[0]", parentProperty);
1227
+ this.assertEquals(3, depth);
1228
+ } else {
1229
+ this.fail("Unknown property in the marshaler.");
1230
+ }
1231
+ }.bind(this)
1232
+ };
856
1233
 
857
1234
  this.__marshaler.dispose();
858
- var data = {a: {b: [{c: 1}]}};
1235
+ var data = { a: { b: [{ c: 1 }] } };
859
1236
  this.__marshaler = new qx.data.marshal.Json(delegate);
860
1237
  this.__marshaler.toClass(data);
861
1238
  this.assertEquals(3, called);
@@ -865,20 +1242,21 @@ qx.Class.define("qx.test.data.marshal.Json",
865
1242
  model.dispose();
866
1243
  },
867
1244
 
868
-
869
- testGetModelClassIgnore: function() {
1245
+ testGetModelClassIgnore() {
870
1246
  qx.Class.define("qx.test.model.C", {
871
- extend : qx.core.Object,
872
- properties : {
873
- b : {event : "b"}
1247
+ extend: qx.core.Object,
1248
+ properties: {
1249
+ b: { event: "b" }
874
1250
  }
875
1251
  });
876
1252
 
877
1253
  var self = this;
878
- var delegate = {getModelClass : function(properties) {
879
- self.assertEquals('b|n|s', properties);
880
- return qx.test.model.C;
881
- }};
1254
+ var delegate = {
1255
+ getModelClass(properties) {
1256
+ self.assertEquals("b|n|s", properties);
1257
+ return qx.test.model.C;
1258
+ }
1259
+ };
882
1260
 
883
1261
  this.__marshaler.dispose();
884
1262
  this.__marshaler = new qx.data.marshal.Json(delegate);
@@ -895,63 +1273,66 @@ qx.Class.define("qx.test.data.marshal.Json",
895
1273
  qx.Class.undefine("qx.test.model.C");
896
1274
  },
897
1275
 
898
-
899
- testGetModelSuperClass: function() {
1276
+ testGetModelSuperClass() {
900
1277
  var called = 0;
901
- var delegate = {getModelSuperClass : function(properties, parentProperty, depth) {
902
- called++;
903
- if (properties == "a") {
904
- this.assertNull(parentProperty);
905
- this.assertEquals(0, depth);
906
- } else if (properties == "b") {
907
- this.assertEquals("a", parentProperty);
908
- this.assertEquals(1, depth);
909
- } else if (properties == "c") {
910
- this.assertEquals("b[0]", parentProperty);
911
- this.assertEquals(3, depth);
912
- } else {
913
- this.fail("Unknown property in the marshaler.");
914
- }
915
- }.bind(this)};
1278
+ var delegate = {
1279
+ getModelSuperClass: function (properties, parentProperty, depth) {
1280
+ called++;
1281
+ if (properties == "a") {
1282
+ this.assertNull(parentProperty);
1283
+ this.assertEquals(0, depth);
1284
+ } else if (properties == "b") {
1285
+ this.assertEquals("a", parentProperty);
1286
+ this.assertEquals(1, depth);
1287
+ } else if (properties == "c") {
1288
+ this.assertEquals("b[0]", parentProperty);
1289
+ this.assertEquals(3, depth);
1290
+ } else {
1291
+ this.fail("Unknown property in the marshaler.");
1292
+ }
1293
+ }.bind(this)
1294
+ };
916
1295
 
917
1296
  this.__marshaler.dispose();
918
- var data = {a: {b: [{c: 1}]}};
1297
+ var data = { a: { b: [{ c: 1 }] } };
919
1298
  this.__marshaler = new qx.data.marshal.Json(delegate);
920
1299
  this.__marshaler.toClass(data);
921
1300
  this.assertEquals(3, called);
922
1301
  },
923
1302
 
924
-
925
- testGetModelMixins: function() {
1303
+ testGetModelMixins() {
926
1304
  var called = 0;
927
- var delegate = {getModelMixins : function(properties, parentProperty, depth) {
928
- called++;
929
- if (properties == "a") {
930
- this.assertNull(parentProperty);
931
- this.assertEquals(0, depth);
932
- } else if (properties == "b") {
933
- this.assertEquals("a", parentProperty);
934
- this.assertEquals(1, depth);
935
- } else if (properties == "c") {
936
- this.assertEquals("b[0]", parentProperty);
937
- this.assertEquals(3, depth);
938
- } else {
939
- this.fail("Unknown property in the marshaler.");
940
- }
941
- }.bind(this)};
1305
+ var delegate = {
1306
+ getModelMixins: function (properties, parentProperty, depth) {
1307
+ called++;
1308
+ if (properties == "a") {
1309
+ this.assertNull(parentProperty);
1310
+ this.assertEquals(0, depth);
1311
+ } else if (properties == "b") {
1312
+ this.assertEquals("a", parentProperty);
1313
+ this.assertEquals(1, depth);
1314
+ } else if (properties == "c") {
1315
+ this.assertEquals("b[0]", parentProperty);
1316
+ this.assertEquals(3, depth);
1317
+ } else {
1318
+ this.fail("Unknown property in the marshaler.");
1319
+ }
1320
+ }.bind(this)
1321
+ };
942
1322
 
943
1323
  this.__marshaler.dispose();
944
- var data = {a: {b: [{c: 1}]}};
1324
+ var data = { a: { b: [{ c: 1 }] } };
945
1325
  this.__marshaler = new qx.data.marshal.Json(delegate);
946
1326
  this.__marshaler.toClass(data);
947
1327
  this.assertEquals(3, called);
948
1328
  },
949
1329
 
950
-
951
- testGetPropertyMapping: function() {
952
- var delegate = {getPropertyMapping : function(property, properties) {
953
- return property + property + property;
954
- }};
1330
+ testGetPropertyMapping() {
1331
+ var delegate = {
1332
+ getPropertyMapping(property, properties) {
1333
+ return property + property + property;
1334
+ }
1335
+ };
955
1336
 
956
1337
  this.__marshaler.dispose();
957
1338
  this.__marshaler = new qx.data.marshal.Json(delegate);
@@ -965,42 +1346,44 @@ qx.Class.define("qx.test.data.marshal.Json",
965
1346
  model.dispose();
966
1347
  },
967
1348
 
968
-
969
- testIgnoreParent: function() {
1349
+ testIgnoreParent() {
970
1350
  var called = 0;
971
- var delegate = {ignore : function(properties, parentProperty, depth) {
972
- called++;
973
- if (properties == "a") {
974
- this.assertNull(parentProperty);
975
- this.assertEquals(0, depth);
976
- } else if (properties == "b") {
977
- this.assertEquals("a", parentProperty);
978
- this.assertEquals(1, depth);
979
- } else if (properties == "c") {
980
- this.assertEquals("b[0]", parentProperty);
981
- this.assertEquals(3, depth);
982
- } else {
983
- this.fail("Unknown property in the marshaler.");
984
- }
985
- }.bind(this)};
1351
+ var delegate = {
1352
+ ignore: function (properties, parentProperty, depth) {
1353
+ called++;
1354
+ if (properties == "a") {
1355
+ this.assertNull(parentProperty);
1356
+ this.assertEquals(0, depth);
1357
+ } else if (properties == "b") {
1358
+ this.assertEquals("a", parentProperty);
1359
+ this.assertEquals(1, depth);
1360
+ } else if (properties == "c") {
1361
+ this.assertEquals("b[0]", parentProperty);
1362
+ this.assertEquals(3, depth);
1363
+ } else {
1364
+ this.fail("Unknown property in the marshaler.");
1365
+ }
1366
+ }.bind(this)
1367
+ };
986
1368
 
987
1369
  this.__marshaler.dispose();
988
- var data = {a: {b: [{c: 1}]}};
1370
+ var data = { a: { b: [{ c: 1 }] } };
989
1371
  this.__marshaler = new qx.data.marshal.Json(delegate);
990
1372
  this.__marshaler.toClass(data);
991
1373
  this.assertEquals(3, called);
992
1374
  },
993
1375
 
994
-
995
- testIgnoreDepth: function() {
996
- var delegate = {ignore : function(properties, parentProperty, depth) {
997
- return depth >= 1;
998
- }};
1376
+ testIgnoreDepth() {
1377
+ var delegate = {
1378
+ ignore(properties, parentProperty, depth) {
1379
+ return depth >= 1;
1380
+ }
1381
+ };
999
1382
 
1000
1383
  this.__marshaler.dispose();
1001
1384
  this.__marshaler = new qx.data.marshal.Json(delegate);
1002
1385
 
1003
- var data = {a: [0], b: {x: 1}, c: {y: 2}};
1386
+ var data = { a: [0], b: { x: 1 }, c: { y: 2 } };
1004
1387
 
1005
1388
  this.__marshaler.toClass(data);
1006
1389
  var model = this.__marshaler.toModel(data);
@@ -1012,17 +1395,17 @@ qx.Class.define("qx.test.data.marshal.Json",
1012
1395
  model.dispose();
1013
1396
  },
1014
1397
 
1015
-
1016
-
1017
- testIgnoreProperties: function() {
1018
- var delegate = {ignore : function(properties, parentProperty, depth) {
1019
- return properties == "x";
1020
- }};
1398
+ testIgnoreProperties() {
1399
+ var delegate = {
1400
+ ignore(properties, parentProperty, depth) {
1401
+ return properties == "x";
1402
+ }
1403
+ };
1021
1404
 
1022
1405
  this.__marshaler.dispose();
1023
1406
  this.__marshaler = new qx.data.marshal.Json(delegate);
1024
1407
 
1025
- var data = {a: [], b: {x: 1}, c: {y: 2}};
1408
+ var data = { a: [], b: { x: 1 }, c: { y: 2 } };
1026
1409
 
1027
1410
  this.__marshaler.toClass(data);
1028
1411
  var model = this.__marshaler.toModel(data);
@@ -1035,9 +1418,8 @@ qx.Class.define("qx.test.data.marshal.Json",
1035
1418
  model.dispose();
1036
1419
  },
1037
1420
 
1038
-
1039
- testBubbleSpliceRemoveAndAdd : function() {
1040
- var data = [{label: "Desktop"}];
1421
+ testBubbleSpliceRemoveAndAdd() {
1422
+ var data = [{ label: "Desktop" }];
1041
1423
 
1042
1424
  var model = qx.data.marshal.Json.createModel(data, true);
1043
1425
  var spy = this.spy();
@@ -1050,17 +1432,18 @@ qx.Class.define("qx.test.data.marshal.Json",
1050
1432
  this.assertCalledTwice(spy);
1051
1433
  },
1052
1434
 
1053
-
1054
- testGetArrayClassSimple : function() {
1435
+ testGetArrayClassSimple() {
1055
1436
  qx.Class.define("qx.test.Array", {
1056
- extend : qx.data.Array
1437
+ extend: qx.data.Array
1057
1438
  });
1058
1439
 
1059
- var delegate = {getArrayClass : function(parentProperty, depth) {
1060
- this.assertNull(parentProperty);
1061
- this.assertEquals(0, depth, "'depth' property is wrong");
1062
- return qx.test.Array;
1063
- }.bind(this)};
1440
+ var delegate = {
1441
+ getArrayClass: function (parentProperty, depth) {
1442
+ this.assertNull(parentProperty);
1443
+ this.assertEquals(0, depth, "'depth' property is wrong");
1444
+ return qx.test.Array;
1445
+ }.bind(this)
1446
+ };
1064
1447
 
1065
1448
  this.__marshaler.dispose();
1066
1449
  this.__marshaler = new qx.data.marshal.Json(delegate);
@@ -1076,35 +1459,37 @@ qx.Class.define("qx.test.data.marshal.Json",
1076
1459
  qx.Class.undefine("qx.test.Array");
1077
1460
  },
1078
1461
 
1079
-
1080
- testGetArrayClassAdvanced : function() {
1462
+ testGetArrayClassAdvanced() {
1081
1463
  qx.Class.define("qx.test.Array", {
1082
- extend : qx.data.Array
1464
+ extend: qx.data.Array
1083
1465
  });
1466
+
1084
1467
  var called = 0;
1085
- var delegate = {getArrayClass : function(parentProperty, depth) {
1086
- called++;
1087
- if (parentProperty == "a") {
1088
- this.assertEquals(1, depth, "'depth' property is wrong");
1089
- return null;
1090
- } else if (parentProperty == "b") {
1091
- this.assertEquals(1, depth, "'depth' property is wrong");
1092
- return qx.test.Array;
1093
- } else if (parentProperty == "e") {
1094
- this.assertEquals(2, depth, "'depth' property is wrong");
1095
- return qx.test.Array;
1096
- } else if (parentProperty == "f") {
1097
- this.assertEquals(2, depth, "'depth' property is wrong");
1098
- return null;
1099
- } else {
1100
- this.fail("Unknown 'parentProperty' in the marshaler.");
1101
- }
1102
- }.bind(this)};
1468
+ var delegate = {
1469
+ getArrayClass: function (parentProperty, depth) {
1470
+ called++;
1471
+ if (parentProperty == "a") {
1472
+ this.assertEquals(1, depth, "'depth' property is wrong");
1473
+ return null;
1474
+ } else if (parentProperty == "b") {
1475
+ this.assertEquals(1, depth, "'depth' property is wrong");
1476
+ return qx.test.Array;
1477
+ } else if (parentProperty == "e") {
1478
+ this.assertEquals(2, depth, "'depth' property is wrong");
1479
+ return qx.test.Array;
1480
+ } else if (parentProperty == "f") {
1481
+ this.assertEquals(2, depth, "'depth' property is wrong");
1482
+ return null;
1483
+ } else {
1484
+ this.fail("Unknown 'parentProperty' in the marshaler.");
1485
+ }
1486
+ }.bind(this)
1487
+ };
1103
1488
 
1104
1489
  this.__marshaler.dispose();
1105
1490
  this.__marshaler = new qx.data.marshal.Json(delegate);
1106
1491
 
1107
- var data = {a: [], b: [], c: {d: "d", e: [], f: []}};
1492
+ var data = { a: [], b: [], c: { d: "d", e: [], f: [] } };
1108
1493
 
1109
1494
  this.__marshaler.toClass(data);
1110
1495
  var model = this.__marshaler.toModel(data);