@qooxdoo/framework 7.0.0-beta.5 → 7.0.0-beta.9

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 (1562) hide show
  1. package/CHANGELOG.md +3 -6
  2. package/Manifest.json +1 -1
  3. package/README.md +9 -3
  4. package/lib/compiler/compile-info.json +50 -48
  5. package/lib/compiler/index.js +6948 -4175
  6. package/lib/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/css/custom.css.map +1 -1
  7. package/lib/resource/qx/tool/loadsass.js +16 -13
  8. package/lib/resource/qx/tool/schema/compile-1-0-0.json +13 -13
  9. package/lib/resource/qx/tool/website/build/assets/bluebird.min.js +4593 -9
  10. package/lib/resource/qx/tool/website/build/assets/buttons.js +391 -1
  11. package/lib/resource/qx/tool/website/build/assets/fontawesome-all.js +8963 -1
  12. package/lib/resource/qx/tool/website/build/assets/jquery.js +5452 -3
  13. package/lib/resource/qx/tool/website/build/diagnostics/dependson.js +31 -31
  14. package/lib/resource/qx/tool/website/build/diagnostics/requiredby.js +32 -36
  15. package/lib/resource/qx/tool/website/build/scripts/serve.js +87 -66
  16. package/lib/resource/qx/tool/website/src/assets/bluebird.min.js +4593 -9
  17. package/lib/resource/qx/tool/website/src/assets/buttons.js +391 -1
  18. package/lib/resource/qx/tool/website/src/assets/fontawesome-all.js +8963 -1
  19. package/lib/resource/qx/tool/website/src/assets/jquery.js +5452 -3
  20. package/lib/resource/qx/tool/website/src/diagnostics/dependson.js +31 -31
  21. package/lib/resource/qx/tool/website/src/diagnostics/requiredby.js +32 -36
  22. package/lib/resource/qx/tool/website/src/scripts/serve.js +87 -66
  23. package/npm-shrinkwrap.json +7293 -0
  24. package/package.json +19 -4
  25. package/source/class/q.js +4 -2
  26. package/source/class/qx/Annotation.js +48 -57
  27. package/source/class/qx/Bootstrap.js +206 -207
  28. package/source/class/qx/Class.js +602 -504
  29. package/source/class/qx/Interface.js +169 -137
  30. package/source/class/qx/Mixin.js +156 -120
  31. package/source/class/qx/Part.js +48 -77
  32. package/source/class/qx/Promise.js +5891 -4655
  33. package/source/class/qx/Theme.js +200 -134
  34. package/source/class/qx/__init__.js +8 -8
  35. package/source/class/qx/application/AbstractGui.js +20 -32
  36. package/source/class/qx/application/Basic.js +9 -18
  37. package/source/class/qx/application/IApplication.js +6 -10
  38. package/source/class/qx/application/Inline.js +4 -7
  39. package/source/class/qx/application/Mobile.js +22 -45
  40. package/source/class/qx/application/Native.js +8 -19
  41. package/source/class/qx/application/Routing.js +88 -114
  42. package/source/class/qx/application/Standalone.js +4 -9
  43. package/source/class/qx/application/__init__.js +1 -1
  44. package/source/class/qx/bom/AnimationFrame.js +26 -25
  45. package/source/class/qx/bom/Blocker.js +92 -100
  46. package/source/class/qx/bom/Cookie.js +18 -22
  47. package/source/class/qx/bom/Document.js +24 -31
  48. package/source/class/qx/bom/Element.js +65 -51
  49. package/source/class/qx/bom/Event.js +68 -78
  50. package/source/class/qx/bom/FileReader.js +110 -115
  51. package/source/class/qx/bom/Font.js +82 -122
  52. package/source/class/qx/bom/FullScreen.js +32 -41
  53. package/source/class/qx/bom/GeoLocation.js +39 -44
  54. package/source/class/qx/bom/HashHistory.js +58 -64
  55. package/source/class/qx/bom/History.js +61 -89
  56. package/source/class/qx/bom/Html.js +75 -71
  57. package/source/class/qx/bom/IdleCallback.js +20 -23
  58. package/source/class/qx/bom/Iframe.js +37 -69
  59. package/source/class/qx/bom/IframeHistory.js +83 -88
  60. package/source/class/qx/bom/Input.js +50 -66
  61. package/source/class/qx/bom/Label.js +65 -86
  62. package/source/class/qx/bom/Lifecycle.js +7 -9
  63. package/source/class/qx/bom/MediaQuery.js +324 -307
  64. package/source/class/qx/bom/NativeHistory.js +51 -46
  65. package/source/class/qx/bom/Notification.js +41 -47
  66. package/source/class/qx/bom/PageVisibility.js +19 -25
  67. package/source/class/qx/bom/Range.js +20 -30
  68. package/source/class/qx/bom/Selection.js +163 -172
  69. package/source/class/qx/bom/Selector.js +2401 -2181
  70. package/source/class/qx/bom/Shortcut.js +103 -129
  71. package/source/class/qx/bom/Storage.js +9 -8
  72. package/source/class/qx/bom/String.js +285 -290
  73. package/source/class/qx/bom/Style.js +30 -31
  74. package/source/class/qx/bom/Stylesheet.js +36 -60
  75. package/source/class/qx/bom/Template.js +730 -657
  76. package/source/class/qx/bom/Viewport.js +40 -46
  77. package/source/class/qx/bom/Vml.js +43 -28
  78. package/source/class/qx/bom/WebWorker.js +61 -50
  79. package/source/class/qx/bom/Window.js +88 -105
  80. package/source/class/qx/bom/__init__.js +11 -11
  81. package/source/class/qx/bom/client/Browser.js +45 -47
  82. package/source/class/qx/bom/client/Css.js +85 -85
  83. package/source/class/qx/bom/client/CssAnimation.js +41 -49
  84. package/source/class/qx/bom/client/CssTransform.js +21 -29
  85. package/source/class/qx/bom/client/CssTransition.js +9 -12
  86. package/source/class/qx/bom/client/Device.js +45 -45
  87. package/source/class/qx/bom/client/EcmaScript.js +153 -96
  88. package/source/class/qx/bom/client/Engine.js +38 -35
  89. package/source/class/qx/bom/client/Event.js +75 -63
  90. package/source/class/qx/bom/client/Html.js +97 -97
  91. package/source/class/qx/bom/client/Idle.js +4 -6
  92. package/source/class/qx/bom/client/Locale.js +15 -15
  93. package/source/class/qx/bom/client/OperatingSystem.js +89 -106
  94. package/source/class/qx/bom/client/Pdfjs.js +1364 -1067
  95. package/source/class/qx/bom/client/PhoneGap.js +6 -9
  96. package/source/class/qx/bom/client/Plugin.js +93 -97
  97. package/source/class/qx/bom/client/Runtime.js +14 -12
  98. package/source/class/qx/bom/client/Scroll.js +20 -16
  99. package/source/class/qx/bom/client/Stylesheet.js +44 -32
  100. package/source/class/qx/bom/client/Transport.js +38 -41
  101. package/source/class/qx/bom/client/Xml.js +39 -41
  102. package/source/class/qx/bom/client/__init__.js +4 -4
  103. package/source/class/qx/bom/element/Animation.js +15 -12
  104. package/source/class/qx/bom/element/AnimationCss.js +95 -64
  105. package/source/class/qx/bom/element/AnimationHandle.js +22 -29
  106. package/source/class/qx/bom/element/AnimationJs.js +94 -71
  107. package/source/class/qx/bom/element/Attribute.js +119 -134
  108. package/source/class/qx/bom/element/Background.js +35 -35
  109. package/source/class/qx/bom/element/BoxSizing.js +43 -44
  110. package/source/class/qx/bom/element/Class.js +50 -72
  111. package/source/class/qx/bom/element/Clip.js +36 -60
  112. package/source/class/qx/bom/element/Cursor.js +13 -20
  113. package/source/class/qx/bom/element/Dataset.js +33 -31
  114. package/source/class/qx/bom/element/Decoration.js +178 -168
  115. package/source/class/qx/bom/element/Dimension.js +78 -60
  116. package/source/class/qx/bom/element/Location.js +87 -94
  117. package/source/class/qx/bom/element/Opacity.js +42 -44
  118. package/source/class/qx/bom/element/Scroll.js +78 -88
  119. package/source/class/qx/bom/element/Style.js +61 -101
  120. package/source/class/qx/bom/element/Transform.js +38 -56
  121. package/source/class/qx/bom/element/__init__.js +4 -4
  122. package/source/class/qx/bom/media/Abstract.js +136 -143
  123. package/source/class/qx/bom/media/Audio.js +7 -12
  124. package/source/class/qx/bom/media/Video.js +15 -27
  125. package/source/class/qx/bom/request/IRequest.js +18 -21
  126. package/source/class/qx/bom/request/Jsonp.js +34 -39
  127. package/source/class/qx/bom/request/Script.js +94 -90
  128. package/source/class/qx/bom/request/SimpleXhr.js +111 -79
  129. package/source/class/qx/bom/request/Xhr.js +196 -143
  130. package/source/class/qx/bom/request/__init__.js +1 -1
  131. package/source/class/qx/bom/rest/Resource.js +269 -203
  132. package/source/class/qx/bom/storage/Memory.js +18 -29
  133. package/source/class/qx/bom/storage/UserData.js +28 -35
  134. package/source/class/qx/bom/storage/Web.js +19 -30
  135. package/source/class/qx/bom/webfonts/Manager.js +199 -130
  136. package/source/class/qx/bom/webfonts/Validator.js +84 -118
  137. package/source/class/qx/bom/webfonts/WebFont.js +24 -28
  138. package/source/class/qx/bom/webfonts/__init__.js +1 -1
  139. package/source/class/qx/core/Aspect.js +15 -22
  140. package/source/class/qx/core/Assert.js +391 -333
  141. package/source/class/qx/core/AssertionError.js +6 -15
  142. package/source/class/qx/core/BaseInit.js +25 -28
  143. package/source/class/qx/core/Environment.js +72 -86
  144. package/source/class/qx/core/GlobalError.js +12 -20
  145. package/source/class/qx/core/IDisposable.js +6 -9
  146. package/source/class/qx/core/Id.js +25 -15
  147. package/source/class/qx/core/Init.js +20 -20
  148. package/source/class/qx/core/MAssert.js +54 -97
  149. package/source/class/qx/core/MBindTo.js +10 -14
  150. package/source/class/qx/core/MEvent.js +76 -65
  151. package/source/class/qx/core/MLogging.js +9 -18
  152. package/source/class/qx/core/MObjectId.js +104 -65
  153. package/source/class/qx/core/MProperty.js +18 -34
  154. package/source/class/qx/core/Object.js +93 -122
  155. package/source/class/qx/core/ObjectRegistry.js +58 -81
  156. package/source/class/qx/core/Property.js +974 -780
  157. package/source/class/qx/core/ValidationError.js +3 -4
  158. package/source/class/qx/core/WindowError.js +13 -24
  159. package/source/class/qx/core/Wrapper.js +8 -9
  160. package/source/class/qx/data/Array.js +178 -191
  161. package/source/class/qx/data/Conversion.js +11 -18
  162. package/source/class/qx/data/IListData.js +11 -20
  163. package/source/class/qx/data/MBinding.js +31 -26
  164. package/source/class/qx/data/SingleValueBinding.js +491 -225
  165. package/source/class/qx/data/__init__.js +1 -1
  166. package/source/class/qx/data/controller/CheckedList.js +82 -54
  167. package/source/class/qx/data/controller/Form.js +81 -69
  168. package/source/class/qx/data/controller/IControllerDelegate.js +7 -12
  169. package/source/class/qx/data/controller/ISelection.js +6 -10
  170. package/source/class/qx/data/controller/List.js +151 -167
  171. package/source/class/qx/data/controller/MSelection.js +53 -72
  172. package/source/class/qx/data/controller/Object.js +106 -77
  173. package/source/class/qx/data/controller/Tree.js +164 -142
  174. package/source/class/qx/data/controller/__init__.js +1 -1
  175. package/source/class/qx/data/controller/website/List.js +34 -43
  176. package/source/class/qx/data/controller/website/__init__.js +2 -2
  177. package/source/class/qx/data/marshal/IMarshaler.js +4 -7
  178. package/source/class/qx/data/marshal/IMarshalerDelegate.js +10 -18
  179. package/source/class/qx/data/marshal/Json.js +112 -85
  180. package/source/class/qx/data/marshal/MEventBubbling.js +44 -42
  181. package/source/class/qx/data/marshal/__init__.js +1 -1
  182. package/source/class/qx/data/store/IStoreDelegate.js +6 -9
  183. package/source/class/qx/data/store/Json.js +71 -85
  184. package/source/class/qx/data/store/Jsonp.js +19 -25
  185. package/source/class/qx/data/store/Offline.js +21 -29
  186. package/source/class/qx/data/store/Rest.js +25 -23
  187. package/source/class/qx/data/store/__init__.js +1 -1
  188. package/source/class/qx/dev/Debug.js +105 -124
  189. package/source/class/qx/dev/FakeServer.js +68 -65
  190. package/source/class/qx/dev/ObjectSummary.js +33 -39
  191. package/source/class/qx/dev/Profile.js +62 -63
  192. package/source/class/qx/dev/StackTrace.js +64 -70
  193. package/source/class/qx/dev/Tokenizer.js +114 -126
  194. package/source/class/qx/dev/unit/AbstractTestSuite.js +17 -31
  195. package/source/class/qx/dev/unit/AsyncWrapper.js +22 -26
  196. package/source/class/qx/dev/unit/JsUnitTestResult.js +9 -21
  197. package/source/class/qx/dev/unit/MMeasure.js +46 -37
  198. package/source/class/qx/dev/unit/MMock.js +236 -240
  199. package/source/class/qx/dev/unit/MRequirements.js +53 -79
  200. package/source/class/qx/dev/unit/MRequirementsBasic.js +24 -19
  201. package/source/class/qx/dev/unit/MTestLoader.js +52 -57
  202. package/source/class/qx/dev/unit/MeasurementResult.js +18 -22
  203. package/source/class/qx/dev/unit/RequirementError.js +8 -17
  204. package/source/class/qx/dev/unit/Sinon.js +18826 -4613
  205. package/source/class/qx/dev/unit/TestCase.js +40 -51
  206. package/source/class/qx/dev/unit/TestClass.js +22 -23
  207. package/source/class/qx/dev/unit/TestFunction.js +28 -48
  208. package/source/class/qx/dev/unit/TestLoader.js +11 -14
  209. package/source/class/qx/dev/unit/TestLoaderBasic.js +3 -6
  210. package/source/class/qx/dev/unit/TestLoaderInline.js +8 -14
  211. package/source/class/qx/dev/unit/TestLoaderMobile.js +8 -14
  212. package/source/class/qx/dev/unit/TestLoaderNative.js +7 -13
  213. package/source/class/qx/dev/unit/TestResult.js +140 -118
  214. package/source/class/qx/dev/unit/TestSuite.js +46 -55
  215. package/source/class/qx/dom/Element.js +29 -74
  216. package/source/class/qx/dom/Hierarchy.js +60 -95
  217. package/source/class/qx/dom/Node.js +54 -81
  218. package/source/class/qx/dom/__init__.js +9 -9
  219. package/source/class/qx/event/AcceleratingTimer.js +28 -46
  220. package/source/class/qx/event/Emitter.js +54 -49
  221. package/source/class/qx/event/GlobalError.js +22 -38
  222. package/source/class/qx/event/IEventDispatcher.js +4 -9
  223. package/source/class/qx/event/IEventHandler.js +7 -13
  224. package/source/class/qx/event/Idle.js +32 -47
  225. package/source/class/qx/event/Manager.js +222 -237
  226. package/source/class/qx/event/Messaging.js +55 -48
  227. package/source/class/qx/event/Pool.js +5 -8
  228. package/source/class/qx/event/Registration.js +128 -118
  229. package/source/class/qx/event/Timer.js +50 -96
  230. package/source/class/qx/event/Utils.js +41 -28
  231. package/source/class/qx/event/dispatch/AbstractBubbling.js +133 -93
  232. package/source/class/qx/event/dispatch/Direct.js +46 -51
  233. package/source/class/qx/event/dispatch/DomBubbling.js +8 -15
  234. package/source/class/qx/event/dispatch/MouseCapture.js +74 -91
  235. package/source/class/qx/event/handler/Appear.js +40 -77
  236. package/source/class/qx/event/handler/Application.js +100 -126
  237. package/source/class/qx/event/handler/Capture.js +15 -37
  238. package/source/class/qx/event/handler/DragDrop.js +342 -228
  239. package/source/class/qx/event/handler/Element.js +45 -72
  240. package/source/class/qx/event/handler/ElementResize.js +35 -70
  241. package/source/class/qx/event/handler/Focus.js +908 -637
  242. package/source/class/qx/event/handler/Gesture.js +144 -93
  243. package/source/class/qx/event/handler/GestureCore.js +214 -163
  244. package/source/class/qx/event/handler/Iframe.js +21 -35
  245. package/source/class/qx/event/handler/Input.js +332 -209
  246. package/source/class/qx/event/handler/Keyboard.js +325 -270
  247. package/source/class/qx/event/handler/Mouse.js +212 -173
  248. package/source/class/qx/event/handler/Object.js +13 -31
  249. package/source/class/qx/event/handler/Offline.js +52 -67
  250. package/source/class/qx/event/handler/Orientation.js +56 -62
  251. package/source/class/qx/event/handler/OrientationCore.js +33 -43
  252. package/source/class/qx/event/handler/Pointer.js +84 -72
  253. package/source/class/qx/event/handler/PointerCore.js +183 -105
  254. package/source/class/qx/event/handler/Touch.js +43 -59
  255. package/source/class/qx/event/handler/TouchCore.js +159 -120
  256. package/source/class/qx/event/handler/Transition.js +91 -100
  257. package/source/class/qx/event/handler/UserAction.js +18 -42
  258. package/source/class/qx/event/handler/Video.js +12 -12
  259. package/source/class/qx/event/handler/Window.js +53 -69
  260. package/source/class/qx/event/message/Bus.js +109 -128
  261. package/source/class/qx/event/message/Message.js +14 -29
  262. package/source/class/qx/event/type/Data.js +11 -22
  263. package/source/class/qx/event/type/Dom.js +37 -52
  264. package/source/class/qx/event/type/Drag.js +37 -56
  265. package/source/class/qx/event/type/Event.js +80 -104
  266. package/source/class/qx/event/type/Focus.js +5 -8
  267. package/source/class/qx/event/type/GeoPosition.js +32 -41
  268. package/source/class/qx/event/type/KeyInput.js +9 -19
  269. package/source/class/qx/event/type/KeySequence.js +10 -21
  270. package/source/class/qx/event/type/Mouse.js +69 -72
  271. package/source/class/qx/event/type/MouseWheel.js +5 -9
  272. package/source/class/qx/event/type/Native.js +16 -27
  273. package/source/class/qx/event/type/Orientation.js +18 -30
  274. package/source/class/qx/event/type/Pinch.js +21 -27
  275. package/source/class/qx/event/type/Pointer.js +38 -41
  276. package/source/class/qx/event/type/Rest.js +7 -10
  277. package/source/class/qx/event/type/Roll.js +49 -58
  278. package/source/class/qx/event/type/Rotate.js +21 -27
  279. package/source/class/qx/event/type/Swipe.js +75 -86
  280. package/source/class/qx/event/type/Tap.js +2 -4
  281. package/source/class/qx/event/type/Touch.js +262 -286
  282. package/source/class/qx/event/type/Track.js +23 -28
  283. package/source/class/qx/event/type/dom/Custom.js +24 -20
  284. package/source/class/qx/event/type/dom/Pointer.js +86 -60
  285. package/source/class/qx/event/util/Keyboard.js +94 -106
  286. package/source/class/qx/html/Blocker.js +17 -18
  287. package/source/class/qx/html/Canvas.js +13 -29
  288. package/source/class/qx/html/Element.js +372 -497
  289. package/source/class/qx/html/Factory.js +31 -26
  290. package/source/class/qx/html/Iframe.js +35 -69
  291. package/source/class/qx/html/Image.js +43 -55
  292. package/source/class/qx/html/Input.js +44 -57
  293. package/source/class/qx/html/Jsx.js +49 -41
  294. package/source/class/qx/html/JsxRef.js +3 -5
  295. package/source/class/qx/html/Label.js +20 -32
  296. package/source/class/qx/html/Node.js +362 -422
  297. package/source/class/qx/html/Root.js +7 -16
  298. package/source/class/qx/html/Text.js +34 -27
  299. package/source/class/qx/io/ImageLoader.js +66 -90
  300. package/source/class/qx/io/PartLoader.js +17 -30
  301. package/source/class/qx/io/__init__.js +5 -3
  302. package/source/class/qx/io/exception/Cancel.js +33 -0
  303. package/source/class/qx/io/exception/Exception.js +37 -0
  304. package/source/class/qx/io/exception/Protocol.js +25 -0
  305. package/source/class/qx/io/exception/Transport.js +38 -0
  306. package/source/class/qx/io/exception/__init__.js +4 -0
  307. package/source/class/qx/io/graphql/Client.js +122 -0
  308. package/source/class/qx/io/graphql/__init__.js +9 -0
  309. package/source/class/qx/io/graphql/protocol/Message.js +65 -0
  310. package/source/class/qx/io/graphql/protocol/Request.js +93 -0
  311. package/source/class/qx/io/graphql/protocol/Response.js +63 -0
  312. package/source/class/qx/io/graphql/protocol/__init__.js +6 -0
  313. package/source/class/qx/io/jsonrpc/Client.js +355 -0
  314. package/source/class/qx/io/jsonrpc/__init__.js +15 -0
  315. package/source/class/qx/io/jsonrpc/protocol/Batch.js +103 -0
  316. package/source/class/qx/io/jsonrpc/protocol/Error.js +65 -0
  317. package/source/class/qx/io/jsonrpc/protocol/Message.js +48 -0
  318. package/source/class/qx/io/jsonrpc/protocol/Notification.js +47 -0
  319. package/source/class/qx/io/jsonrpc/protocol/Parser.js +105 -0
  320. package/source/class/qx/io/jsonrpc/protocol/Request.js +94 -0
  321. package/source/class/qx/io/jsonrpc/protocol/Result.js +49 -0
  322. package/source/class/qx/io/jsonrpc/protocol/__init__.js +5 -0
  323. package/source/class/qx/io/part/ClosurePart.js +16 -35
  324. package/source/class/qx/io/part/Package.js +35 -63
  325. package/source/class/qx/io/part/Part.js +29 -53
  326. package/source/class/qx/io/part/__init__.js +4 -4
  327. package/source/class/qx/io/request/AbstractRequest.js +268 -201
  328. package/source/class/qx/io/request/Jsonp.js +16 -19
  329. package/source/class/qx/io/request/Xhr.js +38 -37
  330. package/source/class/qx/io/request/__init__.js +1 -1
  331. package/source/class/qx/io/request/authentication/Basic.js +7 -13
  332. package/source/class/qx/io/request/authentication/Bearer.js +46 -0
  333. package/source/class/qx/io/request/authentication/IAuthentication.js +3 -6
  334. package/source/class/qx/io/request/authentication/__init__.js +1 -1
  335. package/source/class/qx/io/rest/Resource.js +122 -90
  336. package/source/class/qx/io/transport/AbstractClient.js +121 -0
  337. package/source/class/qx/io/transport/AbstractTransport.js +40 -0
  338. package/source/class/qx/io/transport/Fetch.js +98 -0
  339. package/source/class/qx/io/transport/ITransport.js +42 -0
  340. package/source/class/qx/io/transport/PostMessage.js +54 -0
  341. package/source/class/qx/io/transport/Websocket.js +97 -0
  342. package/source/class/qx/io/transport/Xhr.js +138 -0
  343. package/source/class/qx/io/transport/__init__.js +18 -0
  344. package/source/class/qx/lang/Array.js +133 -170
  345. package/source/class/qx/lang/Function.js +101 -104
  346. package/source/class/qx/lang/Json.js +1041 -774
  347. package/source/class/qx/lang/Number.js +11 -16
  348. package/source/class/qx/lang/Object.js +129 -100
  349. package/source/class/qx/lang/String.js +86 -94
  350. package/source/class/qx/lang/Type.js +44 -65
  351. package/source/class/qx/lang/normalize/Array.js +39 -49
  352. package/source/class/qx/lang/normalize/Date.js +50 -32
  353. package/source/class/qx/lang/normalize/Error.js +4 -7
  354. package/source/class/qx/lang/normalize/Function.js +11 -19
  355. package/source/class/qx/lang/normalize/Number.js +3 -5
  356. package/source/class/qx/lang/normalize/Object.js +17 -18
  357. package/source/class/qx/lang/normalize/String.js +39 -40
  358. package/source/class/qx/locale/Date.js +175 -178
  359. package/source/class/qx/locale/Key.js +13 -11
  360. package/source/class/qx/locale/LocalizedString.js +18 -15
  361. package/source/class/qx/locale/MTranslation.js +22 -23
  362. package/source/class/qx/locale/Manager.js +62 -100
  363. package/source/class/qx/locale/Number.js +20 -12
  364. package/source/class/qx/locale/String.js +26 -15
  365. package/source/class/qx/log/Logger.js +128 -180
  366. package/source/class/qx/log/__init__.js +3 -3
  367. package/source/class/qx/log/appender/Console.js +100 -111
  368. package/source/class/qx/log/appender/Element.js +25 -39
  369. package/source/class/qx/log/appender/Formatter.js +117 -66
  370. package/source/class/qx/log/appender/Native.js +4 -10
  371. package/source/class/qx/log/appender/NodeConsole.js +20 -28
  372. package/source/class/qx/log/appender/PhoneGap.js +5 -13
  373. package/source/class/qx/log/appender/RhinoConsole.js +12 -23
  374. package/source/class/qx/log/appender/RhinoFile.js +19 -26
  375. package/source/class/qx/log/appender/RingBuffer.js +10 -19
  376. package/source/class/qx/log/appender/Util.js +11 -9
  377. package/source/class/qx/module/Animation.js +73 -63
  378. package/source/class/qx/module/Attribute.js +27 -46
  379. package/source/class/qx/module/Blocker.js +33 -41
  380. package/source/class/qx/module/Cookie.js +6 -10
  381. package/source/class/qx/module/Css.js +82 -97
  382. package/source/class/qx/module/Dataset.js +12 -24
  383. package/source/class/qx/module/Environment.js +4 -6
  384. package/source/class/qx/module/Event.js +124 -127
  385. package/source/class/qx/module/Io.js +5 -9
  386. package/source/class/qx/module/Manipulating.js +98 -117
  387. package/source/class/qx/module/MatchMedia.js +50 -24
  388. package/source/class/qx/module/Messaging.js +6 -10
  389. package/source/class/qx/module/Placeholder.js +54 -44
  390. package/source/class/qx/module/Placement.js +33 -33
  391. package/source/class/qx/module/Rest.js +3 -4
  392. package/source/class/qx/module/Storage.js +34 -48
  393. package/source/class/qx/module/Template.js +6 -9
  394. package/source/class/qx/module/TextSelection.js +13 -21
  395. package/source/class/qx/module/Transform.js +28 -45
  396. package/source/class/qx/module/Traversing.js +160 -154
  397. package/source/class/qx/module/__init__.js +1 -1
  398. package/source/class/qx/module/dev/FakeServer.js +19 -25
  399. package/source/class/qx/module/event/GestureHandler.js +25 -13
  400. package/source/class/qx/module/event/Keyboard.js +42 -31
  401. package/source/class/qx/module/event/Mouse.js +48 -46
  402. package/source/class/qx/module/event/Native.js +18 -30
  403. package/source/class/qx/module/event/Orientation.js +11 -18
  404. package/source/class/qx/module/event/OrientationHandler.js +19 -17
  405. package/source/class/qx/module/event/Pinch.js +13 -14
  406. package/source/class/qx/module/event/Pointer.js +22 -22
  407. package/source/class/qx/module/event/PointerHandler.js +14 -11
  408. package/source/class/qx/module/event/Rotate.js +13 -14
  409. package/source/class/qx/module/event/Swipe.js +18 -24
  410. package/source/class/qx/module/event/Tap.js +25 -25
  411. package/source/class/qx/module/event/Touch.js +4 -7
  412. package/source/class/qx/module/event/TouchHandler.js +16 -16
  413. package/source/class/qx/module/event/Track.js +13 -14
  414. package/source/class/qx/module/util/Array.js +30 -41
  415. package/source/class/qx/module/util/Function.js +1 -2
  416. package/source/class/qx/module/util/Object.js +8 -11
  417. package/source/class/qx/module/util/String.js +10 -18
  418. package/source/class/qx/module/util/Type.js +3 -4
  419. package/source/class/qx/test/Annotation.js +195 -89
  420. package/source/class/qx/test/Bootstrap.js +98 -124
  421. package/source/class/qx/test/Browser.js +8 -11
  422. package/source/class/qx/test/Class.js +164 -198
  423. package/source/class/qx/test/Dom.js +10 -28
  424. package/source/class/qx/test/EditDistance.js +16 -16
  425. package/source/class/qx/test/Interface.js +380 -383
  426. package/source/class/qx/test/MAppearance.js +10 -14
  427. package/source/class/qx/test/MDecoration.js +1 -3
  428. package/source/class/qx/test/Mixin.js +418 -173
  429. package/source/class/qx/test/Promise.js +422 -333
  430. package/source/class/qx/test/Theme.js +204 -179
  431. package/source/class/qx/test/Xml.js +155 -84
  432. package/source/class/qx/test/application/Routing.js +45 -44
  433. package/source/class/qx/test/bom/AnimationFrame.js +23 -21
  434. package/source/class/qx/test/bom/Attribute.js +66 -47
  435. package/source/class/qx/test/bom/Basic.js +52 -27
  436. package/source/class/qx/test/bom/Blocker.js +100 -70
  437. package/source/class/qx/test/bom/Class.js +19 -34
  438. package/source/class/qx/test/bom/Cookie.js +49 -28
  439. package/source/class/qx/test/bom/Dataset.js +12 -24
  440. package/source/class/qx/test/bom/Element.js +55 -47
  441. package/source/class/qx/test/bom/Event.js +68 -45
  442. package/source/class/qx/test/bom/FileReader.js +6 -12
  443. package/source/class/qx/test/bom/Font.js +256 -118
  444. package/source/class/qx/test/bom/GeoLocation.js +82 -64
  445. package/source/class/qx/test/bom/History.js +63 -84
  446. package/source/class/qx/test/bom/IdleCallback.js +51 -38
  447. package/source/class/qx/test/bom/Iframe.js +14 -18
  448. package/source/class/qx/test/bom/Label.js +74 -105
  449. package/source/class/qx/test/bom/Location.js +70 -99
  450. package/source/class/qx/test/bom/PageVisibility.js +13 -16
  451. package/source/class/qx/test/bom/Selector.js +16 -16
  452. package/source/class/qx/test/bom/String.js +19 -15
  453. package/source/class/qx/test/bom/Stylesheet.js +39 -48
  454. package/source/class/qx/test/bom/Template.js +49 -57
  455. package/source/class/qx/test/bom/Viewport.js +7 -11
  456. package/source/class/qx/test/bom/WebWorker.js +49 -37
  457. package/source/class/qx/test/bom/Window.js +6 -12
  458. package/source/class/qx/test/bom/client/Css.js +26 -19
  459. package/source/class/qx/test/bom/client/Device.js +29 -18
  460. package/source/class/qx/test/bom/client/OperatingSystem.js +17 -20
  461. package/source/class/qx/test/bom/client/Pdfjs.js +15 -13
  462. package/source/class/qx/test/bom/element/AnimationHandle.js +20 -17
  463. package/source/class/qx/test/bom/element/AnimationJs.js +48 -31
  464. package/source/class/qx/test/bom/element/Background.js +93 -46
  465. package/source/class/qx/test/bom/element/BoxSizing.js +66 -61
  466. package/source/class/qx/test/bom/element/Class.js +33 -58
  467. package/source/class/qx/test/bom/element/Dimension.js +58 -37
  468. package/source/class/qx/test/bom/element/Style.js +87 -83
  469. package/source/class/qx/test/bom/element/Transform.js +209 -86
  470. package/source/class/qx/test/bom/media/Audio.js +18 -14
  471. package/source/class/qx/test/bom/media/MediaTestCase.js +61 -66
  472. package/source/class/qx/test/bom/media/Video.js +39 -28
  473. package/source/class/qx/test/bom/request/Jsonp.js +60 -57
  474. package/source/class/qx/test/bom/request/Script.js +150 -138
  475. package/source/class/qx/test/bom/request/SimpleXhr.js +206 -134
  476. package/source/class/qx/test/bom/request/Xhr.js +179 -132
  477. package/source/class/qx/test/bom/request/XhrWithRemote.js +206 -160
  478. package/source/class/qx/test/bom/rest/Resource.js +345 -281
  479. package/source/class/qx/test/bom/rest/ResourceWithRemote.js +74 -57
  480. package/source/class/qx/test/bom/storage/Local.js +3 -4
  481. package/source/class/qx/test/bom/storage/Session.js +3 -4
  482. package/source/class/qx/test/bom/storage/WebStorageTestCase.js +28 -27
  483. package/source/class/qx/test/bom/webfonts/Abstract.js +8 -10
  484. package/source/class/qx/test/bom/webfonts/Manager.js +127 -80
  485. package/source/class/qx/test/bom/webfonts/Validator.js +36 -30
  486. package/source/class/qx/test/compiler/ClassFile.js +29 -11
  487. package/source/class/qx/test/compiler/jsdoc/Parser.js +122 -96
  488. package/source/class/qx/test/core/Assert.js +151 -86
  489. package/source/class/qx/test/core/Environment.js +162 -123
  490. package/source/class/qx/test/core/EventEmitterDummy.js +7 -8
  491. package/source/class/qx/test/core/InheritanceDummy.js +23 -33
  492. package/source/class/qx/test/core/MemoryManagement.js +13 -5
  493. package/source/class/qx/test/core/Object.js +106 -112
  494. package/source/class/qx/test/core/ObjectId.js +7 -6
  495. package/source/class/qx/test/core/Property.js +483 -387
  496. package/source/class/qx/test/core/PropertyHelper.js +49 -64
  497. package/source/class/qx/test/core/Target.js +9 -13
  498. package/source/class/qx/test/core/Validation.js +409 -136
  499. package/source/class/qx/test/data/DataArray.js +1059 -394
  500. package/source/class/qx/test/data/DataArrayWithChangeBubble.js +315 -172
  501. package/source/class/qx/test/data/__init__.js +4 -4
  502. package/source/class/qx/test/data/controller/Form.js +141 -99
  503. package/source/class/qx/test/data/controller/FormWithArrayAndModel.js +66 -51
  504. package/source/class/qx/test/data/controller/List.js +644 -336
  505. package/source/class/qx/test/data/controller/ListReverse.js +64 -63
  506. package/source/class/qx/test/data/controller/ListWithObjects.js +305 -149
  507. package/source/class/qx/test/data/controller/Object.js +252 -94
  508. package/source/class/qx/test/data/controller/Tree.js +1219 -383
  509. package/source/class/qx/test/data/controller/__init__.js +4 -4
  510. package/source/class/qx/test/data/marshal/Json.js +832 -447
  511. package/source/class/qx/test/data/marshal/__init__.js +4 -4
  512. package/source/class/qx/test/data/singlevalue/Array.js +383 -144
  513. package/source/class/qx/test/data/singlevalue/Deep.js +361 -175
  514. package/source/class/qx/test/data/singlevalue/Resolve.js +51 -29
  515. package/source/class/qx/test/data/singlevalue/Simple.js +530 -208
  516. package/source/class/qx/test/data/singlevalue/TextFieldDummy.js +32 -28
  517. package/source/class/qx/test/data/singlevalue/__init__.js +4 -4
  518. package/source/class/qx/test/data/store/Json.js +574 -313
  519. package/source/class/qx/test/data/store/Jsonp.js +103 -77
  520. package/source/class/qx/test/data/store/Offline.js +127 -110
  521. package/source/class/qx/test/data/store/Rest.js +58 -52
  522. package/source/class/qx/test/data/store/RestWithRemote.js +36 -30
  523. package/source/class/qx/test/data/store/__init__.js +4 -4
  524. package/source/class/qx/test/dev/Debug.js +9 -13
  525. package/source/class/qx/test/dev/StackTrace.js +51 -42
  526. package/source/class/qx/test/dev/unit/Requirements.js +36 -49
  527. package/source/class/qx/test/dev/unit/Sinon.js +85 -73
  528. package/source/class/qx/test/dev/unit/TestCase.js +12 -17
  529. package/source/class/qx/test/dom/Element.js +17 -12
  530. package/source/class/qx/test/dom/Hierarchy.js +53 -38
  531. package/source/class/qx/test/dom/Node.js +97 -43
  532. package/source/class/qx/test/event/Bubbling.js +258 -88
  533. package/source/class/qx/test/event/Emitter.js +38 -39
  534. package/source/class/qx/test/event/GlobalError.js +59 -87
  535. package/source/class/qx/test/event/GlobalEventMonitors.js +22 -25
  536. package/source/class/qx/test/event/Messaging.js +66 -49
  537. package/source/class/qx/test/event/MockBubblingHandler.js +10 -15
  538. package/source/class/qx/test/event/MockHandler.js +14 -33
  539. package/source/class/qx/test/event/Registration.js +38 -32
  540. package/source/class/qx/test/event/Timer.js +61 -39
  541. package/source/class/qx/test/event/Utils.js +164 -123
  542. package/source/class/qx/test/event/dispatch/MouseCapture.js +61 -51
  543. package/source/class/qx/test/event/dispatch/MouseEventOnDocument.js +22 -23
  544. package/source/class/qx/test/event/dispatch/TestingHandler.js +8 -10
  545. package/source/class/qx/test/event/dispatch/TestingWindow.js +9 -13
  546. package/source/class/qx/test/event/dispatch/__init__.js +4 -4
  547. package/source/class/qx/test/event/handler/Offline.js +7 -8
  548. package/source/class/qx/test/event/message/Bus.js +112 -72
  549. package/source/class/qx/test/event/message/__init__.js +4 -4
  550. package/source/class/qx/test/event/type/Dom.js +12 -11
  551. package/source/class/qx/test/event/type/Event.js +7 -16
  552. package/source/class/qx/test/event/type/Mouse.js +12 -11
  553. package/source/class/qx/test/event/type/Native.js +12 -11
  554. package/source/class/qx/test/event/type/__init__.js +4 -4
  555. package/source/class/qx/test/event/util/Keyboard.js +4 -3
  556. package/source/class/qx/test/html/Element.js +538 -239
  557. package/source/class/qx/test/html/Iframe.js +85 -73
  558. package/source/class/qx/test/html/jsx/TestJsx.js +15 -4
  559. package/source/class/qx/test/html/jsx/TestJsxBrowser.js +37 -19
  560. package/source/class/qx/test/html/jsx/TestWidget.js +26 -26
  561. package/source/class/qx/test/io/ImageLoader.js +256 -160
  562. package/source/class/qx/test/io/MAssert.js +46 -0
  563. package/source/class/qx/test/io/MRemoteTest.js +9 -11
  564. package/source/class/qx/test/io/__init__.js +4 -4
  565. package/source/class/qx/test/io/graphql/Client.js +190 -0
  566. package/source/class/qx/test/io/graphql/ClientFetch.js +34 -0
  567. package/source/class/qx/test/io/graphql/Request.js +41 -0
  568. package/source/class/qx/test/io/jsonrpc/Client.js +333 -0
  569. package/source/class/qx/test/io/jsonrpc/Protocol.js +108 -0
  570. package/source/class/qx/test/io/request/Jsonp.js +23 -20
  571. package/source/class/qx/test/io/request/JsonpWithRemote.js +25 -22
  572. package/source/class/qx/test/io/request/MRequest.js +137 -114
  573. package/source/class/qx/test/io/request/Xhr.js +367 -209
  574. package/source/class/qx/test/io/request/XhrWithRemote.js +133 -100
  575. package/source/class/qx/test/io/rest/Resource.js +325 -270
  576. package/source/class/qx/test/io/rest/ResourceWithRemote.js +75 -58
  577. package/source/class/qx/test/io/transport/PostMessage.js +56 -0
  578. package/source/class/qx/test/io/transport/Websocket.js +64 -0
  579. package/source/class/qx/test/lang/Array.js +79 -105
  580. package/source/class/qx/test/lang/Function.js +64 -53
  581. package/source/class/qx/test/lang/Json.js +51 -79
  582. package/source/class/qx/test/lang/Number.js +4 -6
  583. package/source/class/qx/test/lang/Object.js +143 -133
  584. package/source/class/qx/test/lang/String.js +151 -95
  585. package/source/class/qx/test/lang/Type.js +34 -44
  586. package/source/class/qx/test/lang/Webkit.js +8 -13
  587. package/source/class/qx/test/lang/normalize/Array.js +121 -68
  588. package/source/class/qx/test/lang/normalize/Date.js +232 -49
  589. package/source/class/qx/test/lang/normalize/Error.js +5 -8
  590. package/source/class/qx/test/lang/normalize/Function.js +7 -13
  591. package/source/class/qx/test/lang/normalize/Object.js +22 -29
  592. package/source/class/qx/test/lang/normalize/String.js +19 -28
  593. package/source/class/qx/test/locale/Date.js +91 -43
  594. package/source/class/qx/test/locale/Locale.js +52 -32
  595. package/source/class/qx/test/locale/LocalizedString.js +12 -12
  596. package/source/class/qx/test/log/DeprecationMethodOverriding.js +52 -31
  597. package/source/class/qx/test/log/Filters.js +6 -3
  598. package/source/class/qx/test/log/Formatter.js +13 -7
  599. package/source/class/qx/test/log/Logger.js +19 -29
  600. package/source/class/qx/test/log/RingBuffer.js +14 -25
  601. package/source/class/qx/test/log/__init__.js +4 -4
  602. package/source/class/qx/test/log/fixture/ClassA.js +22 -22
  603. package/source/class/qx/test/log/fixture/ClassB1.js +7 -9
  604. package/source/class/qx/test/log/fixture/ClassB2.js +5 -7
  605. package/source/class/qx/test/log/fixture/ClassC1.js +5 -7
  606. package/source/class/qx/test/log/fixture/ClassC2.js +7 -9
  607. package/source/class/qx/test/mobile/LocaleSwitch.js +29 -36
  608. package/source/class/qx/test/mobile/MobileTestCase.js +39 -49
  609. package/source/class/qx/test/mobile/basic/Atom.js +129 -53
  610. package/source/class/qx/test/mobile/basic/Image.js +41 -31
  611. package/source/class/qx/test/mobile/basic/Label.js +6 -10
  612. package/source/class/qx/test/mobile/container/Carousel.js +41 -45
  613. package/source/class/qx/test/mobile/container/Composite.js +48 -65
  614. package/source/class/qx/test/mobile/container/Drawer.js +42 -29
  615. package/source/class/qx/test/mobile/container/Navigation.js +14 -20
  616. package/source/class/qx/test/mobile/container/Scroll.js +23 -19
  617. package/source/class/qx/test/mobile/core/Widget.js +150 -86
  618. package/source/class/qx/test/mobile/dialog/Menu.js +47 -26
  619. package/source/class/qx/test/mobile/dialog/Popup.js +30 -19
  620. package/source/class/qx/test/mobile/embed/Html.js +5 -8
  621. package/source/class/qx/test/mobile/form/Button.js +15 -13
  622. package/source/class/qx/test/mobile/form/CheckBox.js +21 -17
  623. package/source/class/qx/test/mobile/form/Form.js +37 -24
  624. package/source/class/qx/test/mobile/form/Group.js +5 -9
  625. package/source/class/qx/test/mobile/form/Label.js +11 -13
  626. package/source/class/qx/test/mobile/form/NumberField.js +49 -45
  627. package/source/class/qx/test/mobile/form/RadioButton.js +30 -19
  628. package/source/class/qx/test/mobile/form/SelectBox.js +39 -25
  629. package/source/class/qx/test/mobile/form/SingleRenderer.js +31 -27
  630. package/source/class/qx/test/mobile/form/Slider.js +55 -35
  631. package/source/class/qx/test/mobile/form/TextArea.js +34 -24
  632. package/source/class/qx/test/mobile/form/TextField.js +34 -24
  633. package/source/class/qx/test/mobile/form/ToggleButton.js +10 -14
  634. package/source/class/qx/test/mobile/layout/Card.js +21 -17
  635. package/source/class/qx/test/mobile/layout/HBox.js +25 -20
  636. package/source/class/qx/test/mobile/layout/VBox.js +25 -21
  637. package/source/class/qx/test/mobile/list/List.js +114 -83
  638. package/source/class/qx/test/mobile/navigationbar/NavigationBar.js +5 -9
  639. package/source/class/qx/test/mobile/page/Manager.js +7 -13
  640. package/source/class/qx/test/mobile/page/NavigationPage.js +7 -17
  641. package/source/class/qx/test/mobile/page/Page.js +101 -68
  642. package/source/class/qx/test/mobile/tabbar/TabBar.js +11 -21
  643. package/source/class/qx/test/mobile/toolbar/Toolbar.js +16 -16
  644. package/source/class/qx/test/performance/BaseCall.js +31 -36
  645. package/source/class/qx/test/performance/Event.js +60 -53
  646. package/source/class/qx/test/performance/Object.js +16 -22
  647. package/source/class/qx/test/performance/Property.js +20 -22
  648. package/source/class/qx/test/performance/data/Marshaling.js +25 -30
  649. package/source/class/qx/test/performance/decorator/AbstractDecorator.js +22 -34
  650. package/source/class/qx/test/performance/decorator/Background.js +4 -6
  651. package/source/class/qx/test/performance/decorator/BackgroundScale.js +6 -8
  652. package/source/class/qx/test/performance/decorator/Single.js +4 -6
  653. package/source/class/qx/test/performance/element/Element.js +50 -67
  654. package/source/class/qx/test/performance/widget/AbstractWidget.js +31 -44
  655. package/source/class/qx/test/performance/widget/Button.js +5 -7
  656. package/source/class/qx/test/performance/widget/Label.js +5 -7
  657. package/source/class/qx/test/performance/widget/RichLabel.js +6 -8
  658. package/source/class/qx/test/performance/widget/Widget.js +5 -7
  659. package/source/class/qx/test/performance/widget/WidgetWithDecorator.js +7 -9
  660. package/source/class/qx/test/performance/widget/WidgetWithSingle.js +9 -11
  661. package/source/class/qx/test/renderer/Color.js +22 -49
  662. package/source/class/qx/test/testclasses/BaseClassBoth.js +11 -8
  663. package/source/class/qx/test/testclasses/BaseClassIncluded.js +5 -6
  664. package/source/class/qx/test/testclasses/BaseClassPatched.js +15 -8
  665. package/source/class/qx/test/testclasses/DerivedClassBoth.js +7 -7
  666. package/source/class/qx/test/testclasses/DerivedClassIncluded.js +7 -7
  667. package/source/class/qx/test/testclasses/DerivedClassPatched.js +7 -7
  668. package/source/class/qx/test/testclasses/MMixinOne.js +4 -4
  669. package/source/class/qx/test/testclasses/MMixinTwo.js +2 -2
  670. package/source/class/qx/test/testclasses/RootClass.js +8 -8
  671. package/source/class/qx/test/theme/__init__.js +4 -4
  672. package/source/class/qx/test/theme/manager/Color.js +52 -66
  673. package/source/class/qx/test/theme/manager/Decoration.js +177 -154
  674. package/source/class/qx/test/theme/manager/Font.js +68 -39
  675. package/source/class/qx/test/theme/manager/Icon.js +46 -43
  676. package/source/class/qx/test/theme/manager/Meta.js +121 -110
  677. package/source/class/qx/test/theme/manager/__init__.js +4 -4
  678. package/source/class/qx/test/theme/manager/mock/Appearance.js +17 -23
  679. package/source/class/qx/test/theme/manager/mock/Color.js +7 -9
  680. package/source/class/qx/test/theme/manager/mock/Decoration.js +7 -10
  681. package/source/class/qx/test/theme/manager/mock/Font.js +6 -10
  682. package/source/class/qx/test/theme/simple/Appearance.js +268 -210
  683. package/source/class/qx/test/tool/utils/Utils.js +10 -8
  684. package/source/class/qx/test/toolchain/PrivateOptimization.js +20 -13
  685. package/source/class/qx/test/toolchain/TestRunner.js +12 -12
  686. package/source/class/qx/test/toolchain/VariantOptimization.js +37 -26
  687. package/source/class/qx/test/toolchain/__init__.js +4 -4
  688. package/source/class/qx/test/type/Array.js +8 -12
  689. package/source/class/qx/test/type/BaseArray.js +58 -78
  690. package/source/class/qx/test/type/BaseString.js +27 -65
  691. package/source/class/qx/test/type/__init__.js +4 -4
  692. package/source/class/qx/test/ui/BackgroundColor.js +20 -21
  693. package/source/class/qx/test/ui/ChildrenHandling.js +136 -81
  694. package/source/class/qx/test/ui/Destroy.js +310 -248
  695. package/source/class/qx/test/ui/Focus.js +40 -87
  696. package/source/class/qx/test/ui/Insets.js +14 -18
  697. package/source/class/qx/test/ui/LayoutTestCase.js +99 -92
  698. package/source/class/qx/test/ui/LocaleSwitch.js +37 -41
  699. package/source/class/qx/test/ui/RadioItems.js +11 -22
  700. package/source/class/qx/test/ui/Widget.js +13 -17
  701. package/source/class/qx/test/ui/Window.js +26 -39
  702. package/source/class/qx/test/ui/basic/Atom.js +37 -25
  703. package/source/class/qx/test/ui/basic/Image.js +179 -138
  704. package/source/class/qx/test/ui/basic/Label.js +147 -65
  705. package/source/class/qx/test/ui/basic/__init__.js +4 -4
  706. package/source/class/qx/test/ui/command/Command.js +105 -69
  707. package/source/class/qx/test/ui/command/Group.js +24 -21
  708. package/source/class/qx/test/ui/command/GroupManager.js +7 -12
  709. package/source/class/qx/test/ui/container/Stack.js +26 -36
  710. package/source/class/qx/test/ui/core/AbstractScrollArea.js +84 -67
  711. package/source/class/qx/test/ui/core/Appearance.js +53 -54
  712. package/source/class/qx/test/ui/core/Blocker.js +80 -44
  713. package/source/class/qx/test/ui/core/DragDropScrolling.js +69 -55
  714. package/source/class/qx/test/ui/core/Placement.js +22 -34
  715. package/source/class/qx/test/ui/core/Queues.js +28 -39
  716. package/source/class/qx/test/ui/core/SizeHint.js +32 -76
  717. package/source/class/qx/test/ui/core/SizeHintX.js +8 -15
  718. package/source/class/qx/test/ui/core/SizeHintY.js +8 -15
  719. package/source/class/qx/test/ui/core/Spacer.js +11 -18
  720. package/source/class/qx/test/ui/core/Widget.js +117 -112
  721. package/source/class/qx/test/ui/core/__init__.js +4 -4
  722. package/source/class/qx/test/ui/decoration/LinearGradient.js +18 -14
  723. package/source/class/qx/test/ui/embed/Iframe.js +70 -66
  724. package/source/class/qx/test/ui/embed/__init__.js +4 -4
  725. package/source/class/qx/test/ui/form/AbstractSelectBox.js +11 -16
  726. package/source/class/qx/test/ui/form/AbstractVirtualBox.js +12 -19
  727. package/source/class/qx/test/ui/form/BooleanFormat.js +40 -25
  728. package/source/class/qx/test/ui/form/Color.js +29 -19
  729. package/source/class/qx/test/ui/form/ComboBox.js +39 -25
  730. package/source/class/qx/test/ui/form/Date.js +34 -21
  731. package/source/class/qx/test/ui/form/DateField.js +16 -19
  732. package/source/class/qx/test/ui/form/Executable.js +98 -68
  733. package/source/class/qx/test/ui/form/Field.js +65 -54
  734. package/source/class/qx/test/ui/form/Form.js +211 -123
  735. package/source/class/qx/test/ui/form/FormManager.js +72 -100
  736. package/source/class/qx/test/ui/form/FormValidator.js +549 -399
  737. package/source/class/qx/test/ui/form/Label.js +87 -65
  738. package/source/class/qx/test/ui/form/List.js +19 -19
  739. package/source/class/qx/test/ui/form/MenuButton.js +26 -20
  740. package/source/class/qx/test/ui/form/ModelProperty.js +40 -36
  741. package/source/class/qx/test/ui/form/ModelSelection.js +39 -84
  742. package/source/class/qx/test/ui/form/NumberFormat.js +30 -19
  743. package/source/class/qx/test/ui/form/Placeholder.js +147 -87
  744. package/source/class/qx/test/ui/form/RadioButtonGroup.js +31 -26
  745. package/source/class/qx/test/ui/form/RadioGroup.js +58 -54
  746. package/source/class/qx/test/ui/form/Range.js +63 -28
  747. package/source/class/qx/test/ui/form/Renderer.js +39 -33
  748. package/source/class/qx/test/ui/form/Resetter.js +21 -35
  749. package/source/class/qx/test/ui/form/Slider.js +37 -21
  750. package/source/class/qx/test/ui/form/Spinner.js +9 -5
  751. package/source/class/qx/test/ui/form/SplitButton.js +7 -11
  752. package/source/class/qx/test/ui/form/StringFormat.js +60 -30
  753. package/source/class/qx/test/ui/form/TextArea.js +59 -41
  754. package/source/class/qx/test/ui/form/TextField.js +14 -16
  755. package/source/class/qx/test/ui/form/ToggleButton.js +20 -24
  756. package/source/class/qx/test/ui/form/VirtualSelectBox.js +66 -40
  757. package/source/class/qx/test/ui/form/__init__.js +4 -4
  758. package/source/class/qx/test/ui/form/virtual/VirtualComboBox.js +58 -60
  759. package/source/class/qx/test/ui/form/virtual/VirtualDropDownList.js +120 -110
  760. package/source/class/qx/test/ui/form/virtual/VirtualSelectBox.js +43 -27
  761. package/source/class/qx/test/ui/groupbox/CheckGroupBox.js +13 -18
  762. package/source/class/qx/test/ui/indicator/ProgressBar.js +73 -48
  763. package/source/class/qx/test/ui/layout/Box.js +23 -22
  764. package/source/class/qx/test/ui/layout/Flow.js +233 -153
  765. package/source/class/qx/test/ui/layout/Grid.js +88 -101
  766. package/source/class/qx/test/ui/layout/LayoutItem.js +57 -83
  767. package/source/class/qx/test/ui/layout/LayoutRoot.js +7 -11
  768. package/source/class/qx/test/ui/layout/Util.js +30 -31
  769. package/source/class/qx/test/ui/layout/__init__.js +4 -4
  770. package/source/class/qx/test/ui/list/AbstractListTest.js +13 -21
  771. package/source/class/qx/test/ui/list/Group.js +191 -114
  772. package/source/class/qx/test/ui/list/List.js +189 -132
  773. package/source/class/qx/test/ui/list/MAssert.js +14 -9
  774. package/source/class/qx/test/ui/list/ObjectGroup.js +131 -109
  775. package/source/class/qx/test/ui/list/core/MultiSelection.js +58 -44
  776. package/source/class/qx/test/ui/list/core/SingleSelection.js +43 -43
  777. package/source/class/qx/test/ui/list/fixture/GroupMock.js +6 -9
  778. package/source/class/qx/test/ui/list/fixture/ItemMock.js +9 -13
  779. package/source/class/qx/test/ui/root/Inline.js +22 -20
  780. package/source/class/qx/test/ui/selection/AbstractMultiSelectonTest.js +188 -105
  781. package/source/class/qx/test/ui/selection/AbstractSingleSelectonTest.js +173 -125
  782. package/source/class/qx/test/ui/selection/ListMultiSelection.js +19 -21
  783. package/source/class/qx/test/ui/selection/ListSingleSelection.js +19 -21
  784. package/source/class/qx/test/ui/selection/RadioGroup.js +41 -29
  785. package/source/class/qx/test/ui/selection/SelectBox.js +11 -17
  786. package/source/class/qx/test/ui/selection/Stack.js +22 -27
  787. package/source/class/qx/test/ui/selection/TabView.js +35 -26
  788. package/source/class/qx/test/ui/selection/TreeMultiSelection.js +14 -19
  789. package/source/class/qx/test/ui/selection/TreeSingleSelection.js +20 -24
  790. package/source/class/qx/test/ui/selection/__init__.js +4 -4
  791. package/source/class/qx/test/ui/table/Dispose.js +46 -46
  792. package/source/class/qx/test/ui/table/Table.js +74 -69
  793. package/source/class/qx/test/ui/table/__init__.js +4 -4
  794. package/source/class/qx/test/ui/table/celleditor/AbstractField.js +14 -28
  795. package/source/class/qx/test/ui/table/celleditor/ComboBox.js +11 -18
  796. package/source/class/qx/test/ui/table/celleditor/PasswordField.js +6 -10
  797. package/source/class/qx/test/ui/table/celleditor/SelectBox.js +16 -32
  798. package/source/class/qx/test/ui/table/celleditor/TextField.js +6 -9
  799. package/source/class/qx/test/ui/table/celleditor/__init__.js +4 -4
  800. package/source/class/qx/test/ui/table/columnmodel/Basic.js +130 -129
  801. package/source/class/qx/test/ui/table/model/Filtered.js +51 -36
  802. package/source/class/qx/test/ui/table/model/Simple.js +43 -45
  803. package/source/class/qx/test/ui/table/selection/Model.js +70 -22
  804. package/source/class/qx/test/ui/toolbar/OverflowHandling.js +145 -123
  805. package/source/class/qx/test/ui/toolbar/ToolBar.js +20 -30
  806. package/source/class/qx/test/ui/tree/Tree.js +63 -42
  807. package/source/class/qx/test/ui/tree/TreeFolder.js +44 -46
  808. package/source/class/qx/test/ui/tree/virtual/AbstractTreeTest.js +61 -96
  809. package/source/class/qx/test/ui/tree/virtual/MultiSelection.js +68 -39
  810. package/source/class/qx/test/ui/tree/virtual/OneSelection.js +82 -42
  811. package/source/class/qx/test/ui/tree/virtual/OpenCloseController.js +80 -101
  812. package/source/class/qx/test/ui/tree/virtual/SingleSelection.js +40 -32
  813. package/source/class/qx/test/ui/tree/virtual/Sorting.js +46 -47
  814. package/source/class/qx/test/ui/tree/virtual/Tree.js +267 -191
  815. package/source/class/qx/test/ui/tree/virtual/TreeItem.js +60 -63
  816. package/source/class/qx/test/ui/tree/virtual/UtilTest.js +65 -50
  817. package/source/class/qx/test/ui/tree/virtual/WidgetProvider.js +127 -132
  818. package/source/class/qx/test/ui/virtual/Axis.js +210 -193
  819. package/source/class/qx/test/ui/virtual/Pane.js +287 -190
  820. package/source/class/qx/test/ui/virtual/PaneUpdate.js +71 -77
  821. package/source/class/qx/test/ui/virtual/PointerEventMock.js +10 -13
  822. package/source/class/qx/test/ui/virtual/Scroller.js +29 -39
  823. package/source/class/qx/test/ui/virtual/__init__.js +4 -4
  824. package/source/class/qx/test/ui/virtual/cell/WidgetCell.js +39 -40
  825. package/source/class/qx/test/ui/virtual/layer/CellSpanManager.js +157 -127
  826. package/source/class/qx/test/ui/virtual/layer/Column.js +6 -10
  827. package/source/class/qx/test/ui/virtual/layer/GridLines.js +6 -10
  828. package/source/class/qx/test/ui/virtual/layer/GridLinesHorizontal.js +6 -9
  829. package/source/class/qx/test/ui/virtual/layer/GridLinesVertical.js +6 -9
  830. package/source/class/qx/test/ui/virtual/layer/HtmlCell.js +12 -19
  831. package/source/class/qx/test/ui/virtual/layer/HtmlCellSpan.js +13 -21
  832. package/source/class/qx/test/ui/virtual/layer/LayerMock.js +31 -43
  833. package/source/class/qx/test/ui/virtual/layer/LayerSimple.js +26 -26
  834. package/source/class/qx/test/ui/virtual/layer/LayerTestCase.js +52 -50
  835. package/source/class/qx/test/ui/virtual/layer/Row.js +6 -10
  836. package/source/class/qx/test/ui/virtual/layer/WidgetCell.js +45 -52
  837. package/source/class/qx/test/ui/virtual/layer/WidgetCellSpan.js +71 -48
  838. package/source/class/qx/test/ui/virtual/layer/__init__.js +4 -4
  839. package/source/class/qx/test/ui/virtual/performance/AbstractLayerTest.js +84 -68
  840. package/source/class/qx/test/ui/virtual/performance/DomCell.js +6 -9
  841. package/source/class/qx/test/ui/virtual/performance/DomPoolCell.js +6 -9
  842. package/source/class/qx/test/ui/virtual/performance/HtmlDivCell.js +7 -11
  843. package/source/class/qx/test/ui/virtual/performance/HtmlDivRelative.js +6 -9
  844. package/source/class/qx/test/ui/virtual/performance/HtmlTableCell.js +8 -13
  845. package/source/class/qx/test/ui/virtual/performance/HtmlTableCellNaive.js +8 -13
  846. package/source/class/qx/test/ui/virtual/performance/HtmlTableCssCell.js +8 -19
  847. package/source/class/qx/test/ui/virtual/performance/WidgetCell.js +10 -15
  848. package/source/class/qx/test/ui/virtual/performance/__init__.js +4 -4
  849. package/source/class/qx/test/ui/virtual/performance/layer/DomCell.js +24 -18
  850. package/source/class/qx/test/ui/virtual/performance/layer/DomPoolCell.js +28 -26
  851. package/source/class/qx/test/ui/virtual/performance/layer/HtmlDivRelative.js +13 -17
  852. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCell.js +29 -28
  853. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCellNaive.js +22 -24
  854. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCssCell.js +32 -47
  855. package/source/class/qx/test/ui/virtual/performance/layer/__init__.js +4 -4
  856. package/source/class/qx/test/ui/window/Desktop.js +21 -12
  857. package/source/class/qx/test/util/Base64.js +10 -13
  858. package/source/class/qx/test/util/ColorUtil.js +121 -54
  859. package/source/class/qx/test/util/DateFormat.js +569 -299
  860. package/source/class/qx/test/util/DateMock.js +16 -19
  861. package/source/class/qx/test/util/DeferredCall.js +12 -13
  862. package/source/class/qx/test/util/Delegate.js +28 -26
  863. package/source/class/qx/test/util/DisposeUtil.js +32 -14
  864. package/source/class/qx/test/util/DynamicScriptLoader.js +99 -64
  865. package/source/class/qx/test/util/Fsm.js +16 -18
  866. package/source/class/qx/test/util/Function.js +23 -19
  867. package/source/class/qx/test/util/LibraryManager.js +15 -22
  868. package/source/class/qx/test/util/NumberFormat.js +53 -64
  869. package/source/class/qx/test/util/PropertyUtil.js +35 -35
  870. package/source/class/qx/test/util/Request.js +26 -18
  871. package/source/class/qx/test/util/ResourceManager.js +50 -35
  872. package/source/class/qx/test/util/ResponseParser.js +45 -35
  873. package/source/class/qx/test/util/RingBuffer.js +15 -28
  874. package/source/class/qx/test/util/Serializer.js +210 -153
  875. package/source/class/qx/test/util/StringBuilder.js +7 -13
  876. package/source/class/qx/test/util/StringSplit.js +114 -69
  877. package/source/class/qx/test/util/Uri.js +74 -78
  878. package/source/class/qx/test/util/Validate.js +95 -64
  879. package/source/class/qx/test/util/placement/BestFitAxis.js +17 -26
  880. package/source/class/qx/test/util/placement/DirectAxis.js +8 -11
  881. package/source/class/qx/test/util/placement/KeepAlignAxis.js +17 -26
  882. package/source/class/qx/test/util/placement/Placement.js +607 -244
  883. package/source/class/qx/test/util/placement/__init__.js +4 -4
  884. package/source/class/qx/theme/Classic.js +9 -11
  885. package/source/class/qx/theme/Indigo.js +9 -11
  886. package/source/class/qx/theme/Modern.js +9 -11
  887. package/source/class/qx/theme/Simple.js +9 -11
  888. package/source/class/qx/theme/TangibleDark.js +1 -1
  889. package/source/class/qx/theme/TangibleLight.js +1 -1
  890. package/source/class/qx/theme/__init__.js +4 -4
  891. package/source/class/qx/theme/classic/Appearance.js +995 -1336
  892. package/source/class/qx/theme/classic/Color.js +83 -83
  893. package/source/class/qx/theme/classic/Decoration.js +318 -299
  894. package/source/class/qx/theme/classic/Font.js +38 -25
  895. package/source/class/qx/theme/icon/Oxygen.js +4 -5
  896. package/source/class/qx/theme/icon/Tango.js +4 -5
  897. package/source/class/qx/theme/indigo/Appearance.js +66 -85
  898. package/source/class/qx/theme/indigo/Color.js +65 -66
  899. package/source/class/qx/theme/indigo/Decoration.js +31 -45
  900. package/source/class/qx/theme/indigo/Font.js +20 -29
  901. package/source/class/qx/theme/manager/Appearance.js +58 -91
  902. package/source/class/qx/theme/manager/Color.js +20 -41
  903. package/source/class/qx/theme/manager/Decoration.js +72 -100
  904. package/source/class/qx/theme/manager/Font.js +51 -67
  905. package/source/class/qx/theme/manager/Icon.js +13 -27
  906. package/source/class/qx/theme/manager/Meta.js +27 -44
  907. package/source/class/qx/theme/modern/Appearance.js +1049 -1440
  908. package/source/class/qx/theme/modern/Color.js +155 -166
  909. package/source/class/qx/theme/modern/Decoration.js +471 -598
  910. package/source/class/qx/theme/modern/Font.js +59 -52
  911. package/source/class/qx/theme/simple/Appearance.js +936 -1207
  912. package/source/class/qx/theme/simple/Color.js +62 -62
  913. package/source/class/qx/theme/simple/Decoration.js +456 -678
  914. package/source/class/qx/theme/simple/Font.js +18 -25
  915. package/source/class/qx/theme/simple/Image.js +49 -52
  916. package/source/class/qx/theme/tangible/Appearance.js +1575 -1743
  917. package/source/class/qx/theme/tangible/ColorDark.js +5 -5
  918. package/source/class/qx/theme/tangible/ColorEngine.js +38 -35
  919. package/source/class/qx/theme/tangible/ColorLight.js +7 -7
  920. package/source/class/qx/theme/tangible/Decoration.js +1108 -1300
  921. package/source/class/qx/theme/tangible/Font.js +66 -70
  922. package/source/class/qx/theme/tangible/Image.js +44 -48
  923. package/source/class/qx/tool/cli/Application.js +5 -5
  924. package/source/class/qx/tool/cli/Cli.js +103 -52
  925. package/source/class/qx/tool/cli/ConfigDb.js +18 -15
  926. package/source/class/qx/tool/cli/LibraryApplication.js +1 -1
  927. package/source/class/qx/tool/cli/Watch.js +174 -102
  928. package/source/class/qx/tool/cli/api/AbstractApi.js +17 -18
  929. package/source/class/qx/tool/cli/api/CompilerApi.js +15 -8
  930. package/source/class/qx/tool/cli/api/LibraryApi.js +4 -6
  931. package/source/class/qx/tool/cli/api/Test.js +12 -9
  932. package/source/class/qx/tool/cli/commands/Add.js +12 -15
  933. package/source/class/qx/tool/cli/commands/Clean.js +10 -9
  934. package/source/class/qx/tool/cli/commands/Command.js +18 -13
  935. package/source/class/qx/tool/cli/commands/Compile.js +633 -267
  936. package/source/class/qx/tool/cli/commands/Config.js +75 -42
  937. package/source/class/qx/tool/cli/commands/Create.js +108 -59
  938. package/source/class/qx/tool/cli/commands/Deploy.js +138 -86
  939. package/source/class/qx/tool/cli/commands/Es6ify.js +118 -0
  940. package/source/class/qx/tool/cli/commands/Lint.js +75 -34
  941. package/source/class/qx/tool/cli/commands/Migrate.js +13 -7
  942. package/source/class/qx/tool/cli/commands/Package.js +67 -45
  943. package/source/class/qx/tool/cli/commands/Pkg.js +21 -18
  944. package/source/class/qx/tool/cli/commands/Run.js +57 -37
  945. package/source/class/qx/tool/cli/commands/Serve.js +62 -37
  946. package/source/class/qx/tool/cli/commands/Test.js +40 -18
  947. package/source/class/qx/tool/cli/commands/add/Class.js +66 -28
  948. package/source/class/qx/tool/cli/commands/add/Script.js +54 -27
  949. package/source/class/qx/tool/cli/commands/package/Install.js +265 -103
  950. package/source/class/qx/tool/cli/commands/package/List.js +199 -75
  951. package/source/class/qx/tool/cli/commands/package/Migrate.js +7 -3
  952. package/source/class/qx/tool/cli/commands/package/Publish.js +220 -114
  953. package/source/class/qx/tool/cli/commands/package/Remove.js +40 -17
  954. package/source/class/qx/tool/cli/commands/package/Update.js +115 -48
  955. package/source/class/qx/tool/cli/commands/package/Upgrade.js +41 -20
  956. package/source/class/qx/tool/compiler/Analyser.js +427 -222
  957. package/source/class/qx/tool/compiler/ClassFile.js +831 -401
  958. package/source/class/qx/tool/compiler/Console.js +136 -87
  959. package/source/class/qx/tool/compiler/Es6ify.js +404 -0
  960. package/source/class/qx/tool/compiler/Preprocess.js +28 -25
  961. package/source/class/qx/tool/compiler/app/Application.js +149 -72
  962. package/source/class/qx/tool/compiler/app/Cldr.js +506 -106
  963. package/source/class/qx/tool/compiler/app/Library.js +62 -27
  964. package/source/class/qx/tool/compiler/app/Part.js +10 -12
  965. package/source/class/qx/tool/compiler/app/Translation.js +189 -162
  966. package/source/class/qx/tool/compiler/app/WebFont.js +215 -161
  967. package/source/class/qx/tool/compiler/jsdoc/ChildControlParser.js +3 -3
  968. package/source/class/qx/tool/compiler/jsdoc/CommandParser.js +8 -9
  969. package/source/class/qx/tool/compiler/jsdoc/ParamParser.js +7 -6
  970. package/source/class/qx/tool/compiler/jsdoc/Parser.js +27 -18
  971. package/source/class/qx/tool/compiler/jsdoc/ReturnParser.js +3 -3
  972. package/source/class/qx/tool/compiler/jsdoc/ThrowsParser.js +4 -4
  973. package/source/class/qx/tool/compiler/makers/AbstractAppMaker.js +5 -6
  974. package/source/class/qx/tool/compiler/makers/AppMaker.js +40 -19
  975. package/source/class/qx/tool/compiler/makers/Maker.js +29 -21
  976. package/source/class/qx/tool/compiler/resources/AbstractMatcher.js +8 -8
  977. package/source/class/qx/tool/compiler/resources/Asset.js +123 -61
  978. package/source/class/qx/tool/compiler/resources/ImageLoader.js +18 -8
  979. package/source/class/qx/tool/compiler/resources/Manager.js +156 -93
  980. package/source/class/qx/tool/compiler/resources/MetaLoader.js +5 -3
  981. package/source/class/qx/tool/compiler/resources/ResourceConverter.js +8 -8
  982. package/source/class/qx/tool/compiler/resources/ResourceLoader.js +8 -9
  983. package/source/class/qx/tool/compiler/resources/ScssConverter.js +54 -18
  984. package/source/class/qx/tool/compiler/resources/ScssFile.js +157 -80
  985. package/source/class/qx/tool/compiler/resources/ScssIncludeConverter.js +3 -3
  986. package/source/class/qx/tool/compiler/targets/BuildTarget.js +23 -13
  987. package/source/class/qx/tool/compiler/targets/SourceCodeCopier.js +29 -9
  988. package/source/class/qx/tool/compiler/targets/SourceTarget.js +2 -2
  989. package/source/class/qx/tool/compiler/targets/Target.js +292 -187
  990. package/source/class/qx/tool/compiler/targets/TypeScriptWriter.js +163 -103
  991. package/source/class/qx/tool/compiler/targets/meta/AbstractJavascriptMeta.js +48 -23
  992. package/source/class/qx/tool/compiler/targets/meta/ApplicationMeta.js +75 -62
  993. package/source/class/qx/tool/compiler/targets/meta/BootJs.js +49 -29
  994. package/source/class/qx/tool/compiler/targets/meta/Javascript.js +6 -7
  995. package/source/class/qx/tool/compiler/targets/meta/Package.js +54 -51
  996. package/source/class/qx/tool/compiler/targets/meta/PackageJavascript.js +41 -21
  997. package/source/class/qx/tool/compiler/targets/meta/Part.js +9 -10
  998. package/source/class/qx/tool/compiler/targets/meta/PolyfillJs.js +18 -5
  999. package/source/class/qx/tool/compiler/targets/meta/Uglify.js +54 -21
  1000. package/source/class/qx/tool/config/Abstract.js +61 -25
  1001. package/source/class/qx/tool/config/Compile.js +3 -2
  1002. package/source/class/qx/tool/config/Lockfile.js +3 -2
  1003. package/source/class/qx/tool/config/Manifest.js +3 -2
  1004. package/source/class/qx/tool/config/Registry.js +4 -3
  1005. package/source/class/qx/tool/config/Utils.js +88 -37
  1006. package/source/class/qx/tool/migration/BaseMigration.js +67 -25
  1007. package/source/class/qx/tool/migration/M6_0_0.js +96 -46
  1008. package/source/class/qx/tool/migration/M7_0_0.js +12 -6
  1009. package/source/class/qx/tool/migration/Runner.js +28 -14
  1010. package/source/class/qx/tool/utils/IndexedArray.js +15 -18
  1011. package/source/class/qx/tool/utils/Json.js +35 -14
  1012. package/source/class/qx/tool/utils/LogManager.js +50 -26
  1013. package/source/class/qx/tool/utils/Logger.js +11 -12
  1014. package/source/class/qx/tool/utils/Promisify.js +45 -49
  1015. package/source/class/qx/tool/utils/Utils.js +63 -48
  1016. package/source/class/qx/tool/utils/Values.js +4 -7
  1017. package/source/class/qx/tool/utils/Website.js +82 -29
  1018. package/source/class/qx/tool/utils/files/FindFiles.js +37 -33
  1019. package/source/class/qx/tool/utils/files/Utils.js +74 -54
  1020. package/source/class/qx/tool/utils/json/Parser.js +163 -54
  1021. package/source/class/qx/tool/utils/json/Stringify.js +87 -72
  1022. package/source/class/qx/tool/utils/json/Tokenizer.js +64 -39
  1023. package/source/class/qx/tool/utils/json/Writer.js +20 -21
  1024. package/source/class/qx/type/Array.js +19 -41
  1025. package/source/class/qx/type/BaseArray.js +136 -151
  1026. package/source/class/qx/type/BaseError.js +17 -34
  1027. package/source/class/qx/type/BaseString.js +104 -121
  1028. package/source/class/qx/type/__init__.js +3 -3
  1029. package/source/class/qx/ui/basic/Atom.js +75 -109
  1030. package/source/class/qx/ui/basic/Image.js +283 -319
  1031. package/source/class/qx/ui/basic/Label.js +161 -208
  1032. package/source/class/qx/ui/command/Command.js +51 -86
  1033. package/source/class/qx/ui/command/Group.js +43 -50
  1034. package/source/class/qx/ui/command/GroupManager.js +50 -53
  1035. package/source/class/qx/ui/container/Composite.js +15 -29
  1036. package/source/class/qx/ui/container/Resizer.js +7 -11
  1037. package/source/class/qx/ui/container/Scroll.js +10 -21
  1038. package/source/class/qx/ui/container/SlideBar.js +76 -119
  1039. package/source/class/qx/ui/container/Stack.js +27 -54
  1040. package/source/class/qx/ui/control/ColorPopup.js +109 -130
  1041. package/source/class/qx/ui/control/ColorSelector.js +334 -301
  1042. package/source/class/qx/ui/control/DateChooser.js +143 -177
  1043. package/source/class/qx/ui/core/Blocker.js +91 -127
  1044. package/source/class/qx/ui/core/ColumnData.js +16 -34
  1045. package/source/class/qx/ui/core/DragDropCursor.js +17 -30
  1046. package/source/class/qx/ui/core/DragDropScrolling.js +8 -14
  1047. package/source/class/qx/ui/core/EventHandler.js +108 -132
  1048. package/source/class/qx/ui/core/FocusHandler.js +78 -127
  1049. package/source/class/qx/ui/core/IMultiSelection.js +5 -9
  1050. package/source/class/qx/ui/core/ISingleSelection.js +10 -16
  1051. package/source/class/qx/ui/core/ISingleSelectionProvider.js +4 -6
  1052. package/source/class/qx/ui/core/LayoutItem.js +190 -306
  1053. package/source/class/qx/ui/core/MBlocker.js +22 -38
  1054. package/source/class/qx/ui/core/MChildrenHandling.js +14 -29
  1055. package/source/class/qx/ui/core/MContentPadding.js +50 -69
  1056. package/source/class/qx/ui/core/MDragDropScrolling.js +82 -80
  1057. package/source/class/qx/ui/core/MExecutable.js +27 -52
  1058. package/source/class/qx/ui/core/MLayoutHandling.js +6 -14
  1059. package/source/class/qx/ui/core/MMovable.js +64 -80
  1060. package/source/class/qx/ui/core/MMultiSelectionHandling.js +68 -87
  1061. package/source/class/qx/ui/core/MNativeOverflow.js +16 -26
  1062. package/source/class/qx/ui/core/MPlacement.js +171 -170
  1063. package/source/class/qx/ui/core/MRemoteChildrenHandling.js +14 -27
  1064. package/source/class/qx/ui/core/MRemoteLayoutHandling.js +4 -7
  1065. package/source/class/qx/ui/core/MResizable.js +142 -175
  1066. package/source/class/qx/ui/core/MSingleSelectionHandling.js +40 -45
  1067. package/source/class/qx/ui/core/SingleSelectionManager.js +41 -60
  1068. package/source/class/qx/ui/core/Spacer.js +12 -22
  1069. package/source/class/qx/ui/core/Widget.js +628 -983
  1070. package/source/class/qx/ui/core/queue/Appearance.js +15 -24
  1071. package/source/class/qx/ui/core/queue/Dispose.js +7 -16
  1072. package/source/class/qx/ui/core/queue/Layout.js +44 -71
  1073. package/source/class/qx/ui/core/queue/Manager.js +140 -133
  1074. package/source/class/qx/ui/core/queue/Visibility.js +21 -39
  1075. package/source/class/qx/ui/core/queue/Widget.js +15 -26
  1076. package/source/class/qx/ui/core/scroll/AbstractScrollArea.js +124 -162
  1077. package/source/class/qx/ui/core/scroll/IScrollBar.js +13 -24
  1078. package/source/class/qx/ui/core/scroll/MRoll.js +14 -19
  1079. package/source/class/qx/ui/core/scroll/MScrollBarFactory.js +3 -6
  1080. package/source/class/qx/ui/core/scroll/MWheelHandling.js +10 -12
  1081. package/source/class/qx/ui/core/scroll/NativeScrollBar.js +101 -125
  1082. package/source/class/qx/ui/core/scroll/ScrollBar.js +86 -130
  1083. package/source/class/qx/ui/core/scroll/ScrollPane.js +95 -134
  1084. package/source/class/qx/ui/core/scroll/ScrollSlider.js +13 -19
  1085. package/source/class/qx/ui/core/scroll/__init__.js +4 -4
  1086. package/source/class/qx/ui/core/selection/Abstract.js +255 -456
  1087. package/source/class/qx/ui/core/selection/ScrollArea.js +35 -73
  1088. package/source/class/qx/ui/core/selection/Widget.js +57 -120
  1089. package/source/class/qx/ui/decoration/Abstract.js +11 -20
  1090. package/source/class/qx/ui/decoration/Decorator.js +56 -55
  1091. package/source/class/qx/ui/decoration/IDecorator.js +5 -11
  1092. package/source/class/qx/ui/decoration/MBackgroundColor.js +13 -20
  1093. package/source/class/qx/ui/decoration/MBackgroundImage.js +82 -77
  1094. package/source/class/qx/ui/decoration/MBorderImage.js +72 -94
  1095. package/source/class/qx/ui/decoration/MBorderRadius.js +35 -38
  1096. package/source/class/qx/ui/decoration/MBoxShadow.js +61 -55
  1097. package/source/class/qx/ui/decoration/MDoubleBorder.js +157 -155
  1098. package/source/class/qx/ui/decoration/MLinearBackgroundGradient.js +169 -89
  1099. package/source/class/qx/ui/decoration/MSingleBorder.js +138 -124
  1100. package/source/class/qx/ui/decoration/MTransition.js +46 -42
  1101. package/source/class/qx/ui/decoration/__init__.js +2 -2
  1102. package/source/class/qx/ui/embed/AbstractIframe.js +37 -55
  1103. package/source/class/qx/ui/embed/Canvas.js +34 -66
  1104. package/source/class/qx/ui/embed/Html.js +46 -70
  1105. package/source/class/qx/ui/embed/Iframe.js +178 -158
  1106. package/source/class/qx/ui/embed/ThemedIframe.js +91 -135
  1107. package/source/class/qx/ui/form/AbstractField.js +262 -303
  1108. package/source/class/qx/ui/form/AbstractSelectBox.js +65 -87
  1109. package/source/class/qx/ui/form/Button.js +35 -73
  1110. package/source/class/qx/ui/form/CheckBox.js +26 -48
  1111. package/source/class/qx/ui/form/CheckedList.js +41 -25
  1112. package/source/class/qx/ui/form/CheckedSelectBox.js +97 -62
  1113. package/source/class/qx/ui/form/ComboBox.js +98 -121
  1114. package/source/class/qx/ui/form/DateField.js +140 -181
  1115. package/source/class/qx/ui/form/Form.js +50 -69
  1116. package/source/class/qx/ui/form/HoverButton.js +37 -54
  1117. package/source/class/qx/ui/form/IArrayForm.js +8 -16
  1118. package/source/class/qx/ui/form/IBooleanForm.js +8 -16
  1119. package/source/class/qx/ui/form/IColorForm.js +8 -16
  1120. package/source/class/qx/ui/form/IDateForm.js +8 -16
  1121. package/source/class/qx/ui/form/IExecutable.js +7 -14
  1122. package/source/class/qx/ui/form/IField.js +7 -14
  1123. package/source/class/qx/ui/form/IForm.js +17 -32
  1124. package/source/class/qx/ui/form/IListItem.js +1 -4
  1125. package/source/class/qx/ui/form/IModel.js +7 -15
  1126. package/source/class/qx/ui/form/IModelForm.js +8 -16
  1127. package/source/class/qx/ui/form/IModelSelection.js +4 -8
  1128. package/source/class/qx/ui/form/INumberForm.js +8 -15
  1129. package/source/class/qx/ui/form/IRadioItem.js +8 -17
  1130. package/source/class/qx/ui/form/IRange.js +10 -20
  1131. package/source/class/qx/ui/form/IStringForm.js +8 -16
  1132. package/source/class/qx/ui/form/List.js +82 -122
  1133. package/source/class/qx/ui/form/ListItem.js +21 -38
  1134. package/source/class/qx/ui/form/MForm.js +35 -41
  1135. package/source/class/qx/ui/form/MModelProperty.js +9 -14
  1136. package/source/class/qx/ui/form/MModelSelection.js +30 -32
  1137. package/source/class/qx/ui/form/MenuButton.js +50 -77
  1138. package/source/class/qx/ui/form/PasswordField.js +4 -6
  1139. package/source/class/qx/ui/form/RadioButton.js +36 -72
  1140. package/source/class/qx/ui/form/RadioButtonGroup.js +67 -82
  1141. package/source/class/qx/ui/form/RadioGroup.js +92 -127
  1142. package/source/class/qx/ui/form/RepeatButton.js +57 -106
  1143. package/source/class/qx/ui/form/Resetter.js +19 -29
  1144. package/source/class/qx/ui/form/SelectBox.js +62 -105
  1145. package/source/class/qx/ui/form/Slider.js +202 -269
  1146. package/source/class/qx/ui/form/Spinner.js +173 -217
  1147. package/source/class/qx/ui/form/SplitButton.js +73 -115
  1148. package/source/class/qx/ui/form/Tag.js +7 -8
  1149. package/source/class/qx/ui/form/TextArea.js +147 -153
  1150. package/source/class/qx/ui/form/TextField.js +37 -46
  1151. package/source/class/qx/ui/form/ToggleButton.js +54 -90
  1152. package/source/class/qx/ui/form/VirtualComboBox.js +73 -113
  1153. package/source/class/qx/ui/form/VirtualSelectBox.js +264 -274
  1154. package/source/class/qx/ui/form/core/AbstractVirtualBox.js +117 -157
  1155. package/source/class/qx/ui/form/core/VirtualDropDownList.js +101 -144
  1156. package/source/class/qx/ui/form/renderer/AbstractRenderer.js +48 -55
  1157. package/source/class/qx/ui/form/renderer/Double.js +25 -34
  1158. package/source/class/qx/ui/form/renderer/IFormRenderer.js +4 -8
  1159. package/source/class/qx/ui/form/renderer/Single.js +25 -35
  1160. package/source/class/qx/ui/form/renderer/SinglePlaceholder.js +12 -11
  1161. package/source/class/qx/ui/form/renderer/__init__.js +5 -5
  1162. package/source/class/qx/ui/form/validation/AsyncValidator.js +13 -19
  1163. package/source/class/qx/ui/form/validation/Manager.js +74 -108
  1164. package/source/class/qx/ui/form/validation/__init__.js +6 -6
  1165. package/source/class/qx/ui/groupbox/CheckGroupBox.js +30 -47
  1166. package/source/class/qx/ui/groupbox/GroupBox.js +36 -75
  1167. package/source/class/qx/ui/groupbox/RadioGroupBox.js +29 -59
  1168. package/source/class/qx/ui/groupbox/__init__.js +3 -3
  1169. package/source/class/qx/ui/indicator/ProgressBar.js +29 -46
  1170. package/source/class/qx/ui/layout/Abstract.js +28 -53
  1171. package/source/class/qx/ui/layout/Atom.js +95 -111
  1172. package/source/class/qx/ui/layout/Basic.js +29 -30
  1173. package/source/class/qx/ui/layout/Canvas.js +62 -99
  1174. package/source/class/qx/ui/layout/Dock.js +266 -250
  1175. package/source/class/qx/ui/layout/Flow.js +50 -76
  1176. package/source/class/qx/ui/layout/Grid.js +268 -343
  1177. package/source/class/qx/ui/layout/Grow.js +26 -32
  1178. package/source/class/qx/ui/layout/HBox.js +137 -153
  1179. package/source/class/qx/ui/layout/LineSizeIterator.js +19 -28
  1180. package/source/class/qx/ui/layout/Util.js +91 -120
  1181. package/source/class/qx/ui/layout/VBox.js +125 -147
  1182. package/source/class/qx/ui/list/List.js +148 -262
  1183. package/source/class/qx/ui/list/core/IListDelegate.js +13 -26
  1184. package/source/class/qx/ui/list/core/MWidgetController.js +51 -78
  1185. package/source/class/qx/ui/list/provider/IListProvider.js +15 -28
  1186. package/source/class/qx/ui/list/provider/WidgetProvider.js +52 -84
  1187. package/source/class/qx/ui/menu/AbstractButton.js +126 -131
  1188. package/source/class/qx/ui/menu/Button.js +11 -25
  1189. package/source/class/qx/ui/menu/ButtonLayout.js +49 -37
  1190. package/source/class/qx/ui/menu/CheckBox.js +21 -46
  1191. package/source/class/qx/ui/menu/Layout.js +45 -51
  1192. package/source/class/qx/ui/menu/Manager.js +131 -209
  1193. package/source/class/qx/ui/menu/Menu.js +180 -265
  1194. package/source/class/qx/ui/menu/MenuSlideBar.js +13 -20
  1195. package/source/class/qx/ui/menu/RadioButton.js +29 -51
  1196. package/source/class/qx/ui/menu/Separator.js +9 -16
  1197. package/source/class/qx/ui/menubar/Button.js +23 -41
  1198. package/source/class/qx/ui/menubar/MenuBar.js +9 -13
  1199. package/source/class/qx/ui/mobile/__init__.js +5 -5
  1200. package/source/class/qx/ui/mobile/basic/Atom.js +79 -101
  1201. package/source/class/qx/ui/mobile/basic/Image.js +80 -86
  1202. package/source/class/qx/ui/mobile/basic/Label.js +38 -54
  1203. package/source/class/qx/ui/mobile/container/Carousel.js +281 -188
  1204. package/source/class/qx/ui/mobile/container/Collapsible.js +57 -77
  1205. package/source/class/qx/ui/mobile/container/Composite.js +9 -13
  1206. package/source/class/qx/ui/mobile/container/Drawer.js +167 -164
  1207. package/source/class/qx/ui/mobile/container/INavigation.js +6 -10
  1208. package/source/class/qx/ui/mobile/container/IScrollDelegate.js +4 -6
  1209. package/source/class/qx/ui/mobile/container/MIScroll.js +108 -100
  1210. package/source/class/qx/ui/mobile/container/MNativeScroll.js +118 -102
  1211. package/source/class/qx/ui/mobile/container/MScrollHandling.js +8 -7
  1212. package/source/class/qx/ui/mobile/container/Navigation.js +46 -65
  1213. package/source/class/qx/ui/mobile/container/Scroll.js +140 -151
  1214. package/source/class/qx/ui/mobile/control/Picker.js +125 -112
  1215. package/source/class/qx/ui/mobile/core/Blocker.js +62 -71
  1216. package/source/class/qx/ui/mobile/core/DomUpdatedHandler.js +24 -60
  1217. package/source/class/qx/ui/mobile/core/EventHandler.js +158 -138
  1218. package/source/class/qx/ui/mobile/core/MChildrenHandling.js +14 -30
  1219. package/source/class/qx/ui/mobile/core/MLayoutHandling.js +6 -14
  1220. package/source/class/qx/ui/mobile/core/MResize.js +16 -30
  1221. package/source/class/qx/ui/mobile/core/Root.js +90 -80
  1222. package/source/class/qx/ui/mobile/core/Widget.js +351 -479
  1223. package/source/class/qx/ui/mobile/dialog/BusyIndicator.js +31 -46
  1224. package/source/class/qx/ui/mobile/dialog/Manager.js +127 -89
  1225. package/source/class/qx/ui/mobile/dialog/Menu.js +111 -122
  1226. package/source/class/qx/ui/mobile/dialog/Popup.js +202 -194
  1227. package/source/class/qx/ui/mobile/embed/Canvas.js +12 -25
  1228. package/source/class/qx/ui/mobile/embed/Html.js +13 -27
  1229. package/source/class/qx/ui/mobile/form/Button.js +12 -18
  1230. package/source/class/qx/ui/mobile/form/CheckBox.js +20 -35
  1231. package/source/class/qx/ui/mobile/form/Form.js +31 -51
  1232. package/source/class/qx/ui/mobile/form/Group.js +18 -30
  1233. package/source/class/qx/ui/mobile/form/Input.js +30 -35
  1234. package/source/class/qx/ui/mobile/form/Label.js +76 -79
  1235. package/source/class/qx/ui/mobile/form/MState.js +20 -27
  1236. package/source/class/qx/ui/mobile/form/MText.js +27 -47
  1237. package/source/class/qx/ui/mobile/form/MValue.js +66 -94
  1238. package/source/class/qx/ui/mobile/form/NumberField.js +30 -47
  1239. package/source/class/qx/ui/mobile/form/PasswordField.js +8 -14
  1240. package/source/class/qx/ui/mobile/form/RadioButton.js +25 -46
  1241. package/source/class/qx/ui/mobile/form/RadioGroup.js +2 -4
  1242. package/source/class/qx/ui/mobile/form/Row.js +14 -29
  1243. package/source/class/qx/ui/mobile/form/SelectBox.js +77 -104
  1244. package/source/class/qx/ui/mobile/form/Slider.js +116 -144
  1245. package/source/class/qx/ui/mobile/form/TextArea.js +26 -39
  1246. package/source/class/qx/ui/mobile/form/TextField.js +18 -28
  1247. package/source/class/qx/ui/mobile/form/Title.js +11 -19
  1248. package/source/class/qx/ui/mobile/form/ToggleButton.js +35 -58
  1249. package/source/class/qx/ui/mobile/form/__init__.js +1 -1
  1250. package/source/class/qx/ui/mobile/form/renderer/AbstractRenderer.js +24 -31
  1251. package/source/class/qx/ui/mobile/form/renderer/Single.js +59 -85
  1252. package/source/class/qx/ui/mobile/form/renderer/SinglePlaceholder.js +8 -16
  1253. package/source/class/qx/ui/mobile/layout/Abstract.js +48 -85
  1254. package/source/class/qx/ui/mobile/layout/AbstractBox.js +93 -125
  1255. package/source/class/qx/ui/mobile/layout/Card.js +133 -116
  1256. package/source/class/qx/ui/mobile/layout/CardAnimation.js +95 -72
  1257. package/source/class/qx/ui/mobile/layout/HBox.js +9 -12
  1258. package/source/class/qx/ui/mobile/layout/VBox.js +9 -12
  1259. package/source/class/qx/ui/mobile/list/IListDelegate.js +5 -9
  1260. package/source/class/qx/ui/mobile/list/List.js +172 -183
  1261. package/source/class/qx/ui/mobile/list/provider/Provider.js +58 -65
  1262. package/source/class/qx/ui/mobile/list/renderer/Abstract.js +54 -82
  1263. package/source/class/qx/ui/mobile/list/renderer/Default.js +39 -55
  1264. package/source/class/qx/ui/mobile/list/renderer/group/Abstract.js +20 -33
  1265. package/source/class/qx/ui/mobile/list/renderer/group/Default.js +29 -45
  1266. package/source/class/qx/ui/mobile/navigationbar/BackButton.js +11 -15
  1267. package/source/class/qx/ui/mobile/navigationbar/Button.js +11 -15
  1268. package/source/class/qx/ui/mobile/navigationbar/NavigationBar.js +23 -29
  1269. package/source/class/qx/ui/mobile/navigationbar/Title.js +12 -20
  1270. package/source/class/qx/ui/mobile/page/Manager.js +195 -169
  1271. package/source/class/qx/ui/mobile/page/NavigationPage.js +132 -196
  1272. package/source/class/qx/ui/mobile/page/Page.js +109 -148
  1273. package/source/class/qx/ui/mobile/tabbar/TabBar.js +41 -62
  1274. package/source/class/qx/ui/mobile/tabbar/TabButton.js +19 -28
  1275. package/source/class/qx/ui/mobile/toolbar/Button.js +7 -11
  1276. package/source/class/qx/ui/mobile/toolbar/Separator.js +11 -15
  1277. package/source/class/qx/ui/mobile/toolbar/ToolBar.js +30 -39
  1278. package/source/class/qx/ui/popup/Manager.js +41 -53
  1279. package/source/class/qx/ui/popup/Popup.js +22 -47
  1280. package/source/class/qx/ui/popup/__init__.js +32 -32
  1281. package/source/class/qx/ui/progressive/Progressive.js +96 -137
  1282. package/source/class/qx/ui/progressive/State.js +12 -19
  1283. package/source/class/qx/ui/progressive/headfoot/Abstract.js +10 -15
  1284. package/source/class/qx/ui/progressive/headfoot/Null.js +4 -7
  1285. package/source/class/qx/ui/progressive/headfoot/Progress.js +67 -69
  1286. package/source/class/qx/ui/progressive/headfoot/TableHeading.js +42 -54
  1287. package/source/class/qx/ui/progressive/model/Abstract.js +8 -15
  1288. package/source/class/qx/ui/progressive/model/Default.js +17 -29
  1289. package/source/class/qx/ui/progressive/renderer/Abstract.js +6 -11
  1290. package/source/class/qx/ui/progressive/renderer/FunctionCaller.js +4 -7
  1291. package/source/class/qx/ui/progressive/renderer/table/Row.js +215 -242
  1292. package/source/class/qx/ui/progressive/renderer/table/Widths.js +32 -47
  1293. package/source/class/qx/ui/progressive/renderer/table/cell/Abstract.js +17 -24
  1294. package/source/class/qx/ui/progressive/renderer/table/cell/Boolean.js +68 -79
  1295. package/source/class/qx/ui/progressive/renderer/table/cell/Conditional.js +146 -199
  1296. package/source/class/qx/ui/progressive/renderer/table/cell/Default.js +14 -32
  1297. package/source/class/qx/ui/progressive/renderer/table/cell/Html.js +2 -3
  1298. package/source/class/qx/ui/progressive/renderer/table/cell/Icon.js +38 -53
  1299. package/source/class/qx/ui/progressive/renderer/table/cell/Image.js +20 -42
  1300. package/source/class/qx/ui/progressive/renderer/table/cell/String.js +6 -12
  1301. package/source/class/qx/ui/progressive/structure/Abstract.js +14 -26
  1302. package/source/class/qx/ui/progressive/structure/Default.js +20 -40
  1303. package/source/class/qx/ui/root/Abstract.js +73 -90
  1304. package/source/class/qx/ui/root/Application.js +57 -61
  1305. package/source/class/qx/ui/root/Inline.js +78 -64
  1306. package/source/class/qx/ui/root/Page.js +25 -46
  1307. package/source/class/qx/ui/splitpane/Blocker.js +20 -30
  1308. package/source/class/qx/ui/splitpane/HLayout.js +53 -49
  1309. package/source/class/qx/ui/splitpane/Pane.js +112 -150
  1310. package/source/class/qx/ui/splitpane/Slider.js +9 -15
  1311. package/source/class/qx/ui/splitpane/Splitter.js +27 -46
  1312. package/source/class/qx/ui/splitpane/VLayout.js +53 -49
  1313. package/source/class/qx/ui/style/Stylesheet.js +12 -19
  1314. package/source/class/qx/ui/table/ICellEditorFactory.js +4 -8
  1315. package/source/class/qx/ui/table/ICellRenderer.js +3 -7
  1316. package/source/class/qx/ui/table/IColumnMenuButton.js +6 -11
  1317. package/source/class/qx/ui/table/IColumnMenuItem.js +5 -8
  1318. package/source/class/qx/ui/table/IHeaderRenderer.js +4 -8
  1319. package/source/class/qx/ui/table/IRowRenderer.js +6 -12
  1320. package/source/class/qx/ui/table/ITableModel.js +23 -41
  1321. package/source/class/qx/ui/table/MTableContextMenu.js +25 -28
  1322. package/source/class/qx/ui/table/Table.js +556 -748
  1323. package/source/class/qx/ui/table/celleditor/AbstractField.js +16 -26
  1324. package/source/class/qx/ui/table/celleditor/CheckBox.js +15 -16
  1325. package/source/class/qx/ui/table/celleditor/ComboBox.js +24 -34
  1326. package/source/class/qx/ui/table/celleditor/Dynamic.js +25 -32
  1327. package/source/class/qx/ui/table/celleditor/PasswordField.js +4 -8
  1328. package/source/class/qx/ui/table/celleditor/SelectBox.js +29 -38
  1329. package/source/class/qx/ui/table/celleditor/TextField.js +9 -14
  1330. package/source/class/qx/ui/table/cellrenderer/Abstract.js +78 -73
  1331. package/source/class/qx/ui/table/cellrenderer/AbstractImage.js +65 -84
  1332. package/source/class/qx/ui/table/cellrenderer/Boolean.js +36 -50
  1333. package/source/class/qx/ui/table/cellrenderer/Conditional.js +74 -63
  1334. package/source/class/qx/ui/table/cellrenderer/Date.js +12 -22
  1335. package/source/class/qx/ui/table/cellrenderer/Debug.js +9 -9
  1336. package/source/class/qx/ui/table/cellrenderer/Default.js +30 -52
  1337. package/source/class/qx/ui/table/cellrenderer/Dynamic.js +13 -24
  1338. package/source/class/qx/ui/table/cellrenderer/Html.js +6 -8
  1339. package/source/class/qx/ui/table/cellrenderer/Image.js +13 -26
  1340. package/source/class/qx/ui/table/cellrenderer/Number.js +13 -24
  1341. package/source/class/qx/ui/table/cellrenderer/Password.js +8 -11
  1342. package/source/class/qx/ui/table/cellrenderer/Replace.js +27 -42
  1343. package/source/class/qx/ui/table/cellrenderer/String.js +5 -7
  1344. package/source/class/qx/ui/table/columnmenu/Button.js +19 -29
  1345. package/source/class/qx/ui/table/columnmenu/MenuItem.js +11 -19
  1346. package/source/class/qx/ui/table/columnmenu/__init__.js +4 -4
  1347. package/source/class/qx/ui/table/columnmenu/grid/__init__.js +4 -4
  1348. package/source/class/qx/ui/table/columnmenu/simple/__init__.js +4 -4
  1349. package/source/class/qx/ui/table/columnmodel/Basic.js +193 -215
  1350. package/source/class/qx/ui/table/columnmodel/Resize.js +65 -111
  1351. package/source/class/qx/ui/table/columnmodel/resizebehavior/Abstract.js +17 -24
  1352. package/source/class/qx/ui/table/columnmodel/resizebehavior/Default.js +66 -117
  1353. package/source/class/qx/ui/table/headerrenderer/Default.js +25 -46
  1354. package/source/class/qx/ui/table/headerrenderer/HeaderCell.js +36 -51
  1355. package/source/class/qx/ui/table/headerrenderer/Icon.js +11 -27
  1356. package/source/class/qx/ui/table/model/Abstract.js +52 -62
  1357. package/source/class/qx/ui/table/model/Filtered.js +121 -153
  1358. package/source/class/qx/ui/table/model/Remote.js +166 -271
  1359. package/source/class/qx/ui/table/model/Simple.js +215 -250
  1360. package/source/class/qx/ui/table/pane/CellEvent.js +25 -32
  1361. package/source/class/qx/ui/table/pane/Clipper.js +8 -12
  1362. package/source/class/qx/ui/table/pane/FocusIndicator.js +42 -48
  1363. package/source/class/qx/ui/table/pane/Header.js +45 -86
  1364. package/source/class/qx/ui/table/pane/Model.js +80 -97
  1365. package/source/class/qx/ui/table/pane/Pane.js +129 -189
  1366. package/source/class/qx/ui/table/pane/Scroller.js +542 -659
  1367. package/source/class/qx/ui/table/rowrenderer/Default.js +75 -86
  1368. package/source/class/qx/ui/table/selection/Manager.js +23 -57
  1369. package/source/class/qx/ui/table/selection/Model.js +89 -179
  1370. package/source/class/qx/ui/tabview/Page.js +48 -79
  1371. package/source/class/qx/ui/tabview/TabButton.js +45 -72
  1372. package/source/class/qx/ui/tabview/TabView.js +94 -141
  1373. package/source/class/qx/ui/toolbar/Button.js +13 -18
  1374. package/source/class/qx/ui/toolbar/CheckBox.js +13 -17
  1375. package/source/class/qx/ui/toolbar/MenuButton.js +18 -34
  1376. package/source/class/qx/ui/toolbar/Part.js +42 -64
  1377. package/source/class/qx/ui/toolbar/PartContainer.js +19 -28
  1378. package/source/class/qx/ui/toolbar/RadioButton.js +12 -19
  1379. package/source/class/qx/ui/toolbar/Separator.js +15 -25
  1380. package/source/class/qx/ui/toolbar/SplitButton.js +19 -28
  1381. package/source/class/qx/ui/toolbar/ToolBar.js +182 -232
  1382. package/source/class/qx/ui/tooltip/Manager.js +125 -123
  1383. package/source/class/qx/ui/tooltip/ToolTip.js +49 -79
  1384. package/source/class/qx/ui/tooltip/__init__.js +23 -23
  1385. package/source/class/qx/ui/tree/Tree.js +95 -148
  1386. package/source/class/qx/ui/tree/TreeFile.js +8 -15
  1387. package/source/class/qx/ui/tree/TreeFolder.js +8 -15
  1388. package/source/class/qx/ui/tree/VirtualTree.js +207 -333
  1389. package/source/class/qx/ui/tree/VirtualTreeItem.js +30 -45
  1390. package/source/class/qx/ui/tree/__init__.js +50 -50
  1391. package/source/class/qx/ui/tree/core/AbstractItem.js +98 -152
  1392. package/source/class/qx/ui/tree/core/AbstractTreeItem.js +83 -137
  1393. package/source/class/qx/ui/tree/core/FolderOpenButton.js +15 -34
  1394. package/source/class/qx/ui/tree/core/IVirtualTree.js +13 -33
  1395. package/source/class/qx/ui/tree/core/IVirtualTreeDelegate.js +9 -16
  1396. package/source/class/qx/ui/tree/core/MWidgetController.js +58 -69
  1397. package/source/class/qx/ui/tree/core/OpenCloseController.js +29 -35
  1398. package/source/class/qx/ui/tree/core/Util.js +12 -16
  1399. package/source/class/qx/ui/tree/provider/IVirtualTreeProvider.js +10 -23
  1400. package/source/class/qx/ui/tree/provider/WidgetProvider.js +39 -67
  1401. package/source/class/qx/ui/tree/selection/SelectionManager.js +27 -41
  1402. package/source/class/qx/ui/treevirtual/DefaultDataCellRenderer.js +2 -3
  1403. package/source/class/qx/ui/treevirtual/MFamily.js +26 -63
  1404. package/source/class/qx/ui/treevirtual/MNode.js +43 -103
  1405. package/source/class/qx/ui/treevirtual/MTreePrimitive.js +41 -52
  1406. package/source/class/qx/ui/treevirtual/SelectionManager.js +44 -58
  1407. package/source/class/qx/ui/treevirtual/SimpleTreeDataCellRenderer.js +172 -229
  1408. package/source/class/qx/ui/treevirtual/SimpleTreeDataModel.js +256 -367
  1409. package/source/class/qx/ui/treevirtual/SimpleTreeDataRowRenderer.js +8 -18
  1410. package/source/class/qx/ui/treevirtual/TreeVirtual.js +155 -250
  1411. package/source/class/qx/ui/treevirtual/celleditor/NodeEditor.js +10 -16
  1412. package/source/class/qx/ui/treevirtual/pane/Scroller.js +14 -11
  1413. package/source/class/qx/ui/virtual/__init__.js +4 -4
  1414. package/source/class/qx/ui/virtual/behavior/Prefetch.js +71 -86
  1415. package/source/class/qx/ui/virtual/cell/Abstract.js +18 -27
  1416. package/source/class/qx/ui/virtual/cell/AbstractImage.js +42 -51
  1417. package/source/class/qx/ui/virtual/cell/AbstractWidget.js +25 -49
  1418. package/source/class/qx/ui/virtual/cell/Boolean.js +31 -44
  1419. package/source/class/qx/ui/virtual/cell/Cell.js +143 -183
  1420. package/source/class/qx/ui/virtual/cell/CellStylesheet.js +31 -38
  1421. package/source/class/qx/ui/virtual/cell/Date.js +15 -24
  1422. package/source/class/qx/ui/virtual/cell/Html.js +9 -20
  1423. package/source/class/qx/ui/virtual/cell/ICell.js +4 -6
  1424. package/source/class/qx/ui/virtual/cell/IWidgetCell.js +7 -12
  1425. package/source/class/qx/ui/virtual/cell/IWidgetCellDelegate.js +4 -6
  1426. package/source/class/qx/ui/virtual/cell/Image.js +8 -14
  1427. package/source/class/qx/ui/virtual/cell/Number.js +14 -23
  1428. package/source/class/qx/ui/virtual/cell/String.js +11 -20
  1429. package/source/class/qx/ui/virtual/cell/WidgetCell.js +13 -16
  1430. package/source/class/qx/ui/virtual/cell/__init__.js +4 -4
  1431. package/source/class/qx/ui/virtual/core/Axis.js +75 -103
  1432. package/source/class/qx/ui/virtual/core/CellEvent.js +23 -31
  1433. package/source/class/qx/ui/virtual/core/IHtmlCellProvider.js +4 -6
  1434. package/source/class/qx/ui/virtual/core/ILayer.js +5 -15
  1435. package/source/class/qx/ui/virtual/core/IWidgetCellProvider.js +5 -7
  1436. package/source/class/qx/ui/virtual/core/Pane.js +199 -242
  1437. package/source/class/qx/ui/virtual/core/Scroller.js +25 -43
  1438. package/source/class/qx/ui/virtual/layer/Abstract.js +44 -83
  1439. package/source/class/qx/ui/virtual/layer/AbstractBackground.js +47 -68
  1440. package/source/class/qx/ui/virtual/layer/CellSpanManager.js +74 -96
  1441. package/source/class/qx/ui/virtual/layer/Column.js +26 -36
  1442. package/source/class/qx/ui/virtual/layer/GridLines.js +43 -70
  1443. package/source/class/qx/ui/virtual/layer/HtmlCell.js +34 -32
  1444. package/source/class/qx/ui/virtual/layer/HtmlCellSpan.js +54 -56
  1445. package/source/class/qx/ui/virtual/layer/Row.js +28 -36
  1446. package/source/class/qx/ui/virtual/layer/WidgetCell.js +87 -123
  1447. package/source/class/qx/ui/virtual/layer/WidgetCellSpan.js +123 -124
  1448. package/source/class/qx/ui/virtual/selection/Abstract.js +26 -54
  1449. package/source/class/qx/ui/virtual/selection/CellLines.js +11 -21
  1450. package/source/class/qx/ui/virtual/selection/CellRectangle.js +45 -73
  1451. package/source/class/qx/ui/virtual/selection/Column.js +16 -35
  1452. package/source/class/qx/ui/virtual/selection/ISelectionDelegate.js +5 -9
  1453. package/source/class/qx/ui/virtual/selection/MModel.js +84 -122
  1454. package/source/class/qx/ui/virtual/selection/Row.js +29 -61
  1455. package/source/class/qx/ui/website/Accordion.js +39 -42
  1456. package/source/class/qx/ui/website/Button.js +17 -25
  1457. package/source/class/qx/ui/website/Calendar.js +243 -172
  1458. package/source/class/qx/ui/website/Carousel.js +169 -155
  1459. package/source/class/qx/ui/website/DatePicker.js +99 -85
  1460. package/source/class/qx/ui/website/Rating.js +35 -53
  1461. package/source/class/qx/ui/website/Slider.js +174 -153
  1462. package/source/class/qx/ui/website/Table.js +482 -456
  1463. package/source/class/qx/ui/website/Tabs.js +225 -180
  1464. package/source/class/qx/ui/website/Widget.js +39 -52
  1465. package/source/class/qx/ui/window/Desktop.js +14 -12
  1466. package/source/class/qx/ui/window/IDesktop.js +8 -10
  1467. package/source/class/qx/ui/window/IWindowManager.js +7 -9
  1468. package/source/class/qx/ui/window/MDesktop.js +34 -62
  1469. package/source/class/qx/ui/window/Manager.js +31 -57
  1470. package/source/class/qx/ui/window/Window.js +250 -351
  1471. package/source/class/qx/util/AliasManager.js +23 -42
  1472. package/source/class/qx/util/Animation.js +248 -191
  1473. package/source/class/qx/util/Base64.js +144 -89
  1474. package/source/class/qx/util/ColorUtil.js +253 -287
  1475. package/source/class/qx/util/DeferredCall.js +21 -30
  1476. package/source/class/qx/util/DeferredCallManager.js +23 -44
  1477. package/source/class/qx/util/Delegate.js +4 -10
  1478. package/source/class/qx/util/DisposeUtil.js +76 -70
  1479. package/source/class/qx/util/DynamicScriptLoader.js +83 -66
  1480. package/source/class/qx/util/EditDistance.js +64 -58
  1481. package/source/class/qx/util/ExtendedColor.js +157 -163
  1482. package/source/class/qx/util/Function.js +8 -8
  1483. package/source/class/qx/util/LibraryManager.js +11 -18
  1484. package/source/class/qx/util/OOUtil.js +17 -36
  1485. package/source/class/qx/util/ObjectPool.js +19 -45
  1486. package/source/class/qx/util/Permutation.js +9 -16
  1487. package/source/class/qx/util/PropertyUtil.js +58 -70
  1488. package/source/class/qx/util/Request.js +27 -16
  1489. package/source/class/qx/util/ResourceManager.js +103 -104
  1490. package/source/class/qx/util/ResponseParser.js +14 -21
  1491. package/source/class/qx/util/RingBuffer.js +46 -48
  1492. package/source/class/qx/util/Serializer.js +103 -68
  1493. package/source/class/qx/util/StringBuilder.js +11 -22
  1494. package/source/class/qx/util/StringEscape.js +15 -29
  1495. package/source/class/qx/util/StringSplit.js +18 -21
  1496. package/source/class/qx/util/TimerManager.js +61 -70
  1497. package/source/class/qx/util/Uri.js +42 -30
  1498. package/source/class/qx/util/Uuid.js +50 -35
  1499. package/source/class/qx/util/Validate.js +88 -73
  1500. package/source/class/qx/util/ValueManager.js +17 -29
  1501. package/source/class/qx/util/Wheel.js +22 -16
  1502. package/source/class/qx/util/format/DateFormat.js +853 -763
  1503. package/source/class/qx/util/format/IFormat.js +4 -8
  1504. package/source/class/qx/util/format/NumberFormat.js +84 -91
  1505. package/source/class/qx/util/fsm/FiniteStateMachine.js +323 -382
  1506. package/source/class/qx/util/fsm/State.js +210 -249
  1507. package/source/class/qx/util/fsm/Transition.js +138 -160
  1508. package/source/class/qx/util/placement/AbstractAxis.js +12 -14
  1509. package/source/class/qx/util/placement/BestFitAxis.js +5 -8
  1510. package/source/class/qx/util/placement/DirectAxis.js +5 -7
  1511. package/source/class/qx/util/placement/KeepAlignAxis.js +8 -14
  1512. package/source/class/qx/util/placement/Placement.js +39 -56
  1513. package/source/class/qx/util/placement/__init__.js +4 -4
  1514. package/source/class/qx/xml/Document.js +21 -34
  1515. package/source/class/qx/xml/Element.js +90 -73
  1516. package/source/class/qx/xml/String.js +15 -21
  1517. package/source/class/qxWeb.js +102 -69
  1518. package/source/resource/qx/mobile/js/iscroll.js +1328 -982
  1519. package/source/resource/qx/mobile/js/iscroll.min.js +1081 -1
  1520. package/source/resource/qx/test/dynamicscriptloader/first.js +1 -1
  1521. package/source/resource/qx/test/dynamicscriptloader/second.js +1 -1
  1522. package/source/resource/qx/test/dynamicscriptloader/third.js +1 -1
  1523. package/source/resource/qx/test/script.js +1 -1
  1524. package/source/resource/qx/test/webworker.js +2 -2
  1525. package/source/resource/qx/tool/loadsass.js +16 -13
  1526. package/source/resource/qx/tool/schema/compile-1-0-0.json +13 -13
  1527. package/source/resource/qx/tool/website/build/assets/bluebird.min.js +4593 -9
  1528. package/source/resource/qx/tool/website/build/assets/buttons.js +391 -1
  1529. package/source/resource/qx/tool/website/build/assets/fontawesome-all.js +8963 -1
  1530. package/source/resource/qx/tool/website/build/assets/jquery.js +5452 -3
  1531. package/source/resource/qx/tool/website/build/diagnostics/dependson.js +31 -31
  1532. package/source/resource/qx/tool/website/build/diagnostics/requiredby.js +32 -36
  1533. package/source/resource/qx/tool/website/build/scripts/serve.js +87 -66
  1534. package/source/resource/qx/tool/website/src/assets/bluebird.min.js +4593 -9
  1535. package/source/resource/qx/tool/website/src/assets/buttons.js +391 -1
  1536. package/source/resource/qx/tool/website/src/assets/fontawesome-all.js +8963 -1
  1537. package/source/resource/qx/tool/website/src/assets/jquery.js +5452 -3
  1538. package/source/resource/qx/tool/website/src/diagnostics/dependson.js +31 -31
  1539. package/source/resource/qx/tool/website/src/diagnostics/requiredby.js +32 -36
  1540. package/source/resource/qx/tool/website/src/scripts/serve.js +87 -66
  1541. package/source/translation/hr.po +297 -0
  1542. package/lib/resource/qx/static/blank.gif +0 -0
  1543. package/source/class/qx/io/remote/Exchange.js +0 -1063
  1544. package/source/class/qx/io/remote/Request.js +0 -1021
  1545. package/source/class/qx/io/remote/RequestQueue.js +0 -521
  1546. package/source/class/qx/io/remote/Response.js +0 -137
  1547. package/source/class/qx/io/remote/Rpc.js +0 -1075
  1548. package/source/class/qx/io/remote/RpcError.js +0 -198
  1549. package/source/class/qx/io/remote/__init__.js +0 -88
  1550. package/source/class/qx/io/remote/transport/Abstract.js +0 -513
  1551. package/source/class/qx/io/remote/transport/Iframe.js +0 -652
  1552. package/source/class/qx/io/remote/transport/Script.js +0 -475
  1553. package/source/class/qx/io/remote/transport/XmlHttp.js +0 -1019
  1554. package/source/class/qx/io/remote/transport/__init__.js +0 -3
  1555. package/source/class/qx/test/io/remote/AbstractRequest.js +0 -150
  1556. package/source/class/qx/test/io/remote/RequestIframe.js +0 -105
  1557. package/source/class/qx/test/io/remote/RequestXhr.js +0 -151
  1558. package/source/class/qx/test/io/remote/Rpc.js +0 -205
  1559. package/source/class/qx/test/io/remote/__init__.js +0 -4
  1560. package/source/class/qx/test/io/remote/transport/Iframe.js +0 -67
  1561. package/source/class/qx/test/io/remote/transport/XmlHttp.js +0 -133
  1562. package/source/class/qx/test/io/remote/transport/__init__.js +0 -4
@@ -40,12 +40,8 @@
40
40
  *
41
41
  * @require(qx.module.Animation)
42
42
  */
43
- qx.Class.define("qx.html.Element",
44
- {
45
- extend : qx.html.Node,
46
-
47
-
48
-
43
+ qx.Class.define("qx.html.Element", {
44
+ extend: qx.html.Node,
49
45
 
50
46
  /*
51
47
  *****************************************************************************
@@ -62,9 +58,8 @@ qx.Class.define("qx.html.Element",
62
58
  * @param attributes {Map?null} optional map of element attributes, where the
63
59
  * key is the name of the attribute and the value is the value to use.
64
60
  */
65
- construct : function(tagName, styles, attributes)
66
- {
67
- this.base(arguments, tagName||"div");
61
+ construct(tagName, styles, attributes) {
62
+ super(tagName || "div");
68
63
 
69
64
  this.__styleValues = styles || null;
70
65
  this.__attribValues = attributes || null;
@@ -76,23 +71,22 @@ qx.Class.define("qx.html.Element",
76
71
  }
77
72
  }
78
73
  this.initCssClass();
79
-
80
- this.registerProperty("innerHtml",
81
- null,
82
- function(value) {
83
- if (this._domNode) {
84
- this._domNode.innerHTML = value;
85
- }
86
- },
87
- function(writer, property, name) {
88
- if (property.value) {
89
- writer(property.value);
90
- }
91
- });
92
- },
93
-
94
-
95
74
 
75
+ this.registerProperty(
76
+ "innerHtml",
77
+ null,
78
+ function (value) {
79
+ if (this._domNode) {
80
+ this._domNode.innerHTML = value;
81
+ }
82
+ },
83
+ function (writer, property, name) {
84
+ if (property.value) {
85
+ writer(property.value);
86
+ }
87
+ }
88
+ );
89
+ },
96
90
 
97
91
  /*
98
92
  *****************************************************************************
@@ -100,8 +94,7 @@ qx.Class.define("qx.html.Element",
100
94
  *****************************************************************************
101
95
  */
102
96
 
103
- statics :
104
- {
97
+ statics: {
105
98
  /*
106
99
  ---------------------------------------------------------------------------
107
100
  STATIC DATA
@@ -109,39 +102,35 @@ qx.Class.define("qx.html.Element",
109
102
  */
110
103
 
111
104
  /** @type {Boolean} If debugging should be enabled */
112
- DEBUG : false,
113
-
105
+ DEBUG: false,
106
+
114
107
  /** @type {Integer} number of roots */
115
108
  _hasRoots: 0,
116
-
109
+
117
110
  /** @type {Element} the default root to use */
118
111
  _defaultRoot: null,
119
112
 
120
113
  /** @type {Map} Contains the modified {@link qx.html.Element}s. The key is the hash code. */
121
- _modified : {},
114
+ _modified: {},
122
115
 
123
116
  /** @type {Map} Contains the {@link qx.html.Element}s which should get hidden or visible at the next flush. The key is the hash code. */
124
- _visibility : {},
117
+ _visibility: {},
125
118
 
126
119
  /** @type {Map} Contains the {@link qx.html.Element}s which should scrolled at the next flush */
127
- _scroll : {},
120
+ _scroll: {},
128
121
 
129
122
  /** @type {Array} List of post actions for elements. The key is the action name. The value the {@link qx.html.Element}. */
130
- _actions : [],
123
+ _actions: [],
131
124
 
132
125
  /** @type {Map} List of all selections. */
133
- __selection : {},
126
+ __selection: {},
134
127
 
135
- __focusHandler : null,
128
+ __focusHandler: null,
136
129
 
137
- __mouseCapture : null,
130
+ __mouseCapture: null,
138
131
 
139
132
  __SELF_CLOSING_TAGS: null,
140
133
 
141
-
142
-
143
-
144
-
145
134
  /*
146
135
  ---------------------------------------------------------------------------
147
136
  PUBLIC ELEMENT FLUSH
@@ -154,68 +143,65 @@ qx.Class.define("qx.html.Element",
154
143
  *
155
144
  * @param job {String} The job descriptor. Should always be <code>"element"</code>.
156
145
  */
157
- _scheduleFlush : function(job) {
146
+ _scheduleFlush(job) {
158
147
  qx.html.Element.__deferredCall.schedule();
159
148
  },
160
149
 
161
-
162
150
  /**
163
151
  * Flush the global modified list
164
152
  */
165
- flush : function()
166
- {
153
+ flush() {
167
154
  var obj;
168
155
 
169
- if (qx.core.Environment.get("qx.debug"))
170
- {
156
+ if (qx.core.Environment.get("qx.debug")) {
171
157
  if (this.DEBUG) {
172
158
  qx.log.Logger.debug(this, "Flushing elements...");
173
159
  }
174
160
  }
175
161
 
176
-
177
162
  if (!qx.core.Environment.get("qx.headless")) {
178
163
  // blur elements, which will be removed
179
164
  var focusHandler = this.__getFocusHandler();
180
165
  var focusedDomElement = focusHandler.getFocus();
181
- if (focusedDomElement && this.__willBecomeInvisible(focusedDomElement)) {
166
+ if (
167
+ focusedDomElement &&
168
+ this.__willBecomeInvisible(focusedDomElement)
169
+ ) {
182
170
  focusHandler.blur(focusedDomElement);
183
171
  }
184
-
172
+
185
173
  // deactivate elements, which will be removed
186
174
  var activeDomElement = focusHandler.getActive();
187
175
  if (activeDomElement && this.__willBecomeInvisible(activeDomElement)) {
188
176
  qx.bom.Element.deactivate(activeDomElement);
189
177
  }
190
-
178
+
191
179
  // release capture for elements, which will be removed
192
180
  var captureDomElement = this.__getCaptureElement();
193
- if (captureDomElement && this.__willBecomeInvisible(captureDomElement)) {
181
+ if (
182
+ captureDomElement &&
183
+ this.__willBecomeInvisible(captureDomElement)
184
+ ) {
194
185
  qx.bom.Element.releaseCapture(captureDomElement);
195
186
  }
196
187
  }
197
188
 
198
-
199
189
  var later = [];
200
- var modified = this._modified;
190
+ var modified = qx.html.Element._modified;
201
191
 
202
- for (var hc in modified)
203
- {
192
+ for (var hc in modified) {
204
193
  obj = modified[hc];
205
194
  // Ignore all hidden elements except iframes
206
195
  // but keep them until they get visible (again)
207
- if (obj._willBeSeeable() || obj.classname == "qx.html.Iframe")
208
- {
196
+ if (obj._willBeSeeable() || obj.classname == "qx.html.Iframe") {
209
197
  // Separately queue rendered elements
210
198
  if (obj._domNode && qx.dom.Hierarchy.isRendered(obj._domNode)) {
211
199
  later.push(obj);
212
200
  }
213
201
 
214
202
  // Flush invisible elements first
215
- else
216
- {
217
- if (qx.core.Environment.get("qx.debug"))
218
- {
203
+ else {
204
+ if (qx.core.Environment.get("qx.debug")) {
219
205
  if (this.DEBUG) {
220
206
  obj.debug("Flush invisible element");
221
207
  }
@@ -229,12 +215,10 @@ qx.Class.define("qx.html.Element",
229
215
  }
230
216
  }
231
217
 
232
- for (var i=0, l=later.length; i<l; i++)
233
- {
218
+ for (var i = 0, l = later.length; i < l; i++) {
234
219
  obj = later[i];
235
220
 
236
- if (qx.core.Environment.get("qx.debug"))
237
- {
221
+ if (qx.core.Environment.get("qx.debug")) {
238
222
  if (this.DEBUG) {
239
223
  obj.debug("Flush rendered element");
240
224
  }
@@ -243,26 +227,24 @@ qx.Class.define("qx.html.Element",
243
227
  obj.flush();
244
228
  }
245
229
 
246
-
247
-
248
230
  // Process visibility list
249
231
  var visibility = this._visibility;
250
232
 
251
- for (var hc in visibility)
252
- {
233
+ for (var hc in visibility) {
253
234
  obj = visibility[hc];
254
235
 
255
236
  var element = obj._domNode;
256
- if (!element)
257
- {
237
+ if (!element) {
258
238
  delete visibility[hc];
259
239
  continue;
260
240
  }
261
241
 
262
- if (qx.core.Environment.get("qx.debug"))
263
- {
242
+ if (qx.core.Environment.get("qx.debug")) {
264
243
  if (this.DEBUG) {
265
- qx.log.Logger.debug(this, "Switching visibility to: " + obj.isVisible());
244
+ qx.log.Logger.debug(
245
+ this,
246
+ "Switching visibility to: " + obj.isVisible()
247
+ );
266
248
  }
267
249
  }
268
250
 
@@ -271,8 +253,7 @@ qx.Class.define("qx.html.Element",
271
253
  if (!obj.$$disposed) {
272
254
  element.style.display = obj.isVisible() ? "" : "none";
273
255
  // also hide the element (fixed some rendering problem in IE<8 & IE8 quirks)
274
- if ((qx.core.Environment.get("engine.name") == "mshtml"))
275
- {
256
+ if (qx.core.Environment.get("engine.name") == "mshtml") {
276
257
  if (!(document.documentMode >= 8)) {
277
258
  element.style.visibility = obj.isVisible() ? "visible" : "hidden";
278
259
  }
@@ -285,63 +266,51 @@ qx.Class.define("qx.html.Element",
285
266
  if (!qx.core.Environment.get("qx.headless")) {
286
267
  // Process scroll list
287
268
  var scroll = this._scroll;
288
- for (var hc in scroll)
289
- {
269
+ for (var hc in scroll) {
290
270
  obj = scroll[hc];
291
271
  var elem = obj._domNode;
292
-
293
- if (elem && elem.offsetWidth)
294
- {
272
+
273
+ if (elem && elem.offsetWidth) {
295
274
  var done = true;
296
-
275
+
297
276
  // ScrollToX
298
- if (obj.__lazyScrollX != null)
299
- {
277
+ if (obj.__lazyScrollX != null) {
300
278
  obj._domNode.scrollLeft = obj.__lazyScrollX;
301
279
  delete obj.__lazyScrollX;
302
280
  }
303
-
281
+
304
282
  // ScrollToY
305
- if (obj.__lazyScrollY != null)
306
- {
283
+ if (obj.__lazyScrollY != null) {
307
284
  obj._domNode.scrollTop = obj.__lazyScrollY;
308
285
  delete obj.__lazyScrollY;
309
286
  }
310
-
287
+
311
288
  // ScrollIntoViewX
312
289
  var intoViewX = obj.__lazyScrollIntoViewX;
313
- if (intoViewX != null)
314
- {
290
+ if (intoViewX != null) {
315
291
  var child = intoViewX.element.getDomElement();
316
-
317
- if (child && child.offsetWidth)
318
- {
292
+
293
+ if (child && child.offsetWidth) {
319
294
  qx.bom.element.Scroll.intoViewX(child, elem, intoViewX.align);
320
295
  delete obj.__lazyScrollIntoViewX;
321
- }
322
- else
323
- {
296
+ } else {
324
297
  done = false;
325
298
  }
326
299
  }
327
-
300
+
328
301
  // ScrollIntoViewY
329
302
  var intoViewY = obj.__lazyScrollIntoViewY;
330
- if (intoViewY != null)
331
- {
303
+ if (intoViewY != null) {
332
304
  var child = intoViewY.element.getDomElement();
333
-
334
- if (child && child.offsetWidth)
335
- {
305
+
306
+ if (child && child.offsetWidth) {
336
307
  qx.bom.element.Scroll.intoViewY(child, elem, intoViewY.align);
337
308
  delete obj.__lazyScrollIntoViewY;
338
- }
339
- else
340
- {
309
+ } else {
341
310
  done = false;
342
311
  }
343
312
  }
344
-
313
+
345
314
  // Clear flag if all things are done
346
315
  // Otherwise wait for the next flush
347
316
  if (done) {
@@ -349,20 +318,22 @@ qx.Class.define("qx.html.Element",
349
318
  }
350
319
  }
351
320
  }
352
-
353
-
321
+
354
322
  var activityEndActions = {
355
- "releaseCapture": 1,
356
- "blur": 1,
357
- "deactivate": 1
323
+ releaseCapture: 1,
324
+ blur: 1,
325
+ deactivate: 1
358
326
  };
359
-
327
+
360
328
  // Process action list
361
- for (var i=0; i<this._actions.length; i++)
362
- {
329
+ for (var i = 0; i < this._actions.length; i++) {
363
330
  var action = this._actions[i];
364
331
  var element = action.element._domNode;
365
- if (!element || !activityEndActions[action.type] && !action.element._willBeSeeable()) {
332
+ if (
333
+ !element ||
334
+ (!activityEndActions[action.type] &&
335
+ !action.element._willBeSeeable())
336
+ ) {
366
337
  continue;
367
338
  }
368
339
  var args = action.args;
@@ -373,12 +344,10 @@ qx.Class.define("qx.html.Element",
373
344
  }
374
345
 
375
346
  // Process selection
376
- for (var hc in this.__selection)
377
- {
347
+ for (var hc in this.__selection) {
378
348
  var selection = this.__selection[hc];
379
349
  var elem = selection.element._domNode;
380
- if (elem)
381
- {
350
+ if (elem) {
382
351
  qx.bom.Selection.set(elem, selection.start, selection.end);
383
352
  delete this.__selection[hc];
384
353
  }
@@ -388,60 +357,57 @@ qx.Class.define("qx.html.Element",
388
357
  qx.event.handler.Appear.refresh();
389
358
  },
390
359
 
391
-
392
360
  /**
393
361
  * Get the focus handler
394
362
  *
395
363
  * @return {qx.event.handler.Focus} The focus handler
396
364
  */
397
- __getFocusHandler : function()
398
- {
365
+ __getFocusHandler() {
399
366
  if (!qx.core.Environment.get("qx.headless")) {
400
- if (!this.__focusHandler)
401
- {
367
+ if (!this.__focusHandler) {
402
368
  var eventManager = qx.event.Registration.getManager(window);
403
369
  this.__focusHandler = eventManager.getHandler(qx.event.handler.Focus);
404
370
  }
405
371
  return this.__focusHandler;
406
372
  } else {
407
- throw new Error("Unexpected use of qx.html.Element.__getFocusHandler in headless environment");
373
+ throw new Error(
374
+ "Unexpected use of qx.html.Element.__getFocusHandler in headless environment"
375
+ );
408
376
  }
409
377
  },
410
378
 
411
-
412
379
  /**
413
380
  * Get the mouse capture element
414
381
  *
415
382
  * @return {Element} The mouse capture DOM element
416
383
  */
417
- __getCaptureElement : function()
418
- {
384
+ __getCaptureElement() {
419
385
  if (!qx.core.Environment.get("qx.headless")) {
420
- if (!this.__mouseCapture)
421
- {
386
+ if (!this.__mouseCapture) {
422
387
  var eventManager = qx.event.Registration.getManager(window);
423
- this.__mouseCapture = eventManager.getDispatcher(qx.event.dispatch.MouseCapture);
388
+ this.__mouseCapture = eventManager.getDispatcher(
389
+ qx.event.dispatch.MouseCapture
390
+ );
424
391
  }
425
392
  return this.__mouseCapture.getCaptureElement();
426
393
  } else {
427
- throw new Error("Unexpected use of qx.html.Element.__getCaptureElement in headless environment");
394
+ throw new Error(
395
+ "Unexpected use of qx.html.Element.__getCaptureElement in headless environment"
396
+ );
428
397
  }
429
398
  },
430
399
 
431
-
432
400
  /**
433
401
  * Whether the given DOM element will become invisible after the flush
434
402
  *
435
403
  * @param domElement {Element} The DOM element to check
436
404
  * @return {Boolean} Whether the element will become invisible
437
405
  */
438
- __willBecomeInvisible : function(domElement)
439
- {
406
+ __willBecomeInvisible(domElement) {
440
407
  var element = this.fromDomElement(domElement);
441
408
  return element && !element._willBeSeeable();
442
409
  },
443
410
 
444
-
445
411
  /**
446
412
  * Finds the Widget for a given DOM element
447
413
  *
@@ -449,19 +415,22 @@ qx.Class.define("qx.html.Element",
449
415
  * @return {qx.ui.core.Widget} the Widget that created the DOM element
450
416
  * @deprecated {6.1} see qx.html.Node.fromDomNode
451
417
  */
452
- fromDomElement: function(domElement) {
418
+ fromDomElement(domElement) {
453
419
  return qx.html.Node.fromDomNode(domElement);
454
420
  },
455
-
421
+
456
422
  /**
457
423
  * Sets the default Root element
458
- *
424
+ *
459
425
  * @param root {Element} the new default root
460
426
  */
461
- setDefaultRoot: function(root) {
427
+ setDefaultRoot(root) {
462
428
  if (qx.core.Environment.get("qx.debug")) {
463
429
  if (this._defaultRoot && root) {
464
- qx.log.Logger.warn(qx.html.Element, "Changing default root, from " + this._defaultRoot + " to " + root);
430
+ qx.log.Logger.warn(
431
+ qx.html.Element,
432
+ "Changing default root, from " + this._defaultRoot + " to " + root
433
+ );
465
434
  }
466
435
  }
467
436
  this._defaultRoot = root;
@@ -469,32 +438,29 @@ qx.Class.define("qx.html.Element",
469
438
 
470
439
  /**
471
440
  * Returns the default root
472
- *
441
+ *
473
442
  * @return {Element} the default root
474
443
  */
475
- getDefaultRoot: function() {
444
+ getDefaultRoot() {
476
445
  return this._defaultRoot;
477
446
  }
478
-
479
447
  },
480
448
 
481
-
482
-
483
449
  /*
484
450
  *****************************************************************************
485
451
  PROPERTIES
486
452
  *****************************************************************************
487
453
  */
488
454
 
489
- properties : {
490
- /**
455
+ properties: {
456
+ /**
491
457
  * @type{String} The primary CSS class for this element
492
- *
493
- * The implementation will add and remove this class from the list of classes,
494
- * this property is provided as a means to easily set the primary class. Because
495
- * SCSS supports inheritance, it's more useful to be able to allow the SCSS
496
- * definition to control the inheritance hierarchy of classes.
497
- *
458
+ *
459
+ * The implementation will add and remove this class from the list of classes,
460
+ * this property is provided as a means to easily set the primary class. Because
461
+ * SCSS supports inheritance, it's more useful to be able to allow the SCSS
462
+ * definition to control the inheritance hierarchy of classes.
463
+ *
498
464
  * For example, a dialog could be implemented in code as a Dialog class derived from
499
465
  * a Window class, but the presentation may be so different that the theme author
500
466
  * would choose to not use inheritance at all.
@@ -507,16 +473,13 @@ qx.Class.define("qx.html.Element",
507
473
  }
508
474
  },
509
475
 
510
-
511
-
512
476
  /*
513
477
  *****************************************************************************
514
478
  MEMBERS
515
479
  *****************************************************************************
516
480
  */
517
481
 
518
- members :
519
- {
482
+ members: {
520
483
  /*
521
484
  ---------------------------------------------------------------------------
522
485
  PROTECTED HELPERS/DATA
@@ -524,24 +487,24 @@ qx.Class.define("qx.html.Element",
524
487
  */
525
488
 
526
489
  /** @type {Boolean} Marker for always visible root nodes (often the body node) */
527
- __root : false,
490
+ __root: false,
528
491
 
529
- __lazyScrollIntoViewX : null,
530
- __lazyScrollIntoViewY : null,
492
+ __lazyScrollIntoViewX: null,
493
+ __lazyScrollIntoViewY: null,
531
494
 
532
- __lazyScrollX : null,
533
- __lazyScrollY : null,
495
+ __lazyScrollX: null,
496
+ __lazyScrollY: null,
534
497
 
535
- __styleJobs : null,
536
- __attribJobs : null,
498
+ __styleJobs: null,
499
+ __attribJobs: null,
537
500
 
538
- __styleValues : null,
539
- __attribValues : null,
501
+ __styleValues: null,
502
+ __attribValues: null,
540
503
 
541
504
  /*
542
505
  * @Override
543
506
  */
544
- _createDomElement : function() {
507
+ _createDomElement() {
545
508
  return qx.dom.Element.create(this._nodeName);
546
509
  },
547
510
 
@@ -553,15 +516,15 @@ qx.Class.define("qx.html.Element",
553
516
  this.importQxObjectIds();
554
517
  this.__childrenHaveChanged = false;
555
518
  }
556
- return this.base(arguments, writer);
519
+ return super.serialize(writer);
557
520
  },
558
521
 
559
522
  /*
560
523
  * @Override
561
524
  */
562
- _serializeImpl: function(writer) {
525
+ _serializeImpl(writer) {
563
526
  writer("<", this._nodeName);
564
-
527
+
565
528
  // Copy attributes
566
529
  var data = this.__attribValues;
567
530
  if (data) {
@@ -573,7 +536,7 @@ qx.Class.define("qx.html.Element",
573
536
  }
574
537
 
575
538
  // Copy styles
576
- var data = this.__styleValues||{};
539
+ var data = this.__styleValues || {};
577
540
  if (!this.isVisible()) {
578
541
  data = qx.lang.Object.clone(data);
579
542
  data.display = "none";
@@ -582,7 +545,7 @@ qx.Class.define("qx.html.Element",
582
545
  var Style = qx.bom.element.Style;
583
546
  var css = Style.compile(data);
584
547
  if (css) {
585
- writer(" style=\"", css, "\"");
548
+ writer(' style="', css, '"');
586
549
  }
587
550
  }
588
551
 
@@ -601,7 +564,7 @@ qx.Class.define("qx.html.Element",
601
564
  }
602
565
  }
603
566
  }
604
-
567
+
605
568
  // Children
606
569
  if (!this._children || !this._children.length) {
607
570
  if (qx.html.Element.__SELF_CLOSING_TAGS[this._nodeName]) {
@@ -617,7 +580,7 @@ qx.Class.define("qx.html.Element",
617
580
  writer("</", this._nodeName, ">");
618
581
  }
619
582
  },
620
-
583
+
621
584
  /**
622
585
  * Connects a widget to this element, and to the DOM element in this Element. They
623
586
  * remain associated until disposed or disconnectWidget is called
@@ -625,7 +588,7 @@ qx.Class.define("qx.html.Element",
625
588
  * @param widget {qx.ui.core.Widget} the widget to associate
626
589
  * @deprecated {6.1} see connectObject
627
590
  */
628
- connectWidget : function(widget) {
591
+ connectWidget(widget) {
629
592
  return this.connectObject(widget);
630
593
  },
631
594
 
@@ -636,7 +599,7 @@ qx.Class.define("qx.html.Element",
636
599
  * @param qxObject {qx.core.Object} the Widget
637
600
  * @deprecated {6.1} see disconnectObject
638
601
  */
639
- disconnectWidget: function(widget) {
602
+ disconnectWidget(widget) {
640
603
  return this.disconnectObject(widget);
641
604
  },
642
605
 
@@ -644,7 +607,7 @@ qx.Class.define("qx.html.Element",
644
607
  * @Override
645
608
  */
646
609
  _addChildImpl(child) {
647
- this.base(arguments, child);
610
+ super._addChildImpl(child);
648
611
  this.__childrenHaveChanged = true;
649
612
  },
650
613
 
@@ -652,7 +615,7 @@ qx.Class.define("qx.html.Element",
652
615
  * @Override
653
616
  */
654
617
  _removeChildImpl(child) {
655
- this.base(arguments, child);
618
+ super._removeChildImpl(child);
656
619
  this.__childrenHaveChanged = true;
657
620
  },
658
621
 
@@ -664,22 +627,22 @@ qx.Class.define("qx.html.Element",
664
627
  this.importQxObjectIds();
665
628
  this.__childrenHaveChanged = false;
666
629
  }
667
- return this.base(arguments, id);
630
+ return super.getQxObject(id);
668
631
  },
669
632
 
670
633
  /**
671
- * When a tree of virtual dom is loaded via JSX code, the paths in the `data-qx-object-id`
634
+ * When a tree of virtual dom is loaded via JSX code, the paths in the `data-qx-object-id`
672
635
  * attribute are relative to the JSX, and these attribuite values need to be loaded into the
673
636
  * `qxObjectId` property - while resolving the parent parts of the path.
674
- *
637
+ *
675
638
  * EG
676
639
  * <div data-qx-object-id="root">
677
640
  * <div>
678
641
  * <div data-qx-object-id="root/child">
679
- *
680
- * The root DIV has to take on the qxObjectId of "root", and the third DIV has to have the
642
+ *
643
+ * The root DIV has to take on the qxObjectId of "root", and the third DIV has to have the
681
644
  * ID "child" and be owned by the first DIV.
682
- *
645
+ *
683
646
  * This function imports and resolves those IDs
684
647
  */
685
648
  importQxObjectIds() {
@@ -699,30 +662,31 @@ qx.Class.define("qx.html.Element",
699
662
  let attributeId = node.getAttribute("data-qx-object-id");
700
663
  if (id) {
701
664
  if (attributeId && !attributeId.endsWith(id)) {
702
- this.warn(`Attribute ID ${attributeId} is not compatible with the qxObjectId ${id}; the qxObjectId will take prescedence`);
665
+ this.warn(
666
+ `Attribute ID ${attributeId} is not compatible with the qxObjectId ${id}; the qxObjectId will take prescedence`
667
+ );
703
668
  }
704
669
  node.setAttribute("data-qx-object-id", id, true);
705
-
706
670
  } else if (attributeId) {
707
- let segs = attributeId ? attributeId.split('/') : [];
671
+ let segs = attributeId ? attributeId.split("/") : [];
708
672
 
709
673
  // Only one segment is easy, add directly to the parent
710
674
  if (segs.length == 1) {
711
675
  let parentNode = this;
712
676
  parentNode.addOwnedQxObject(node, attributeId);
713
677
 
714
- // Lots of segments
678
+ // Lots of segments
715
679
  } else if (segs.length > 1) {
716
680
  let parentNode = null;
717
681
 
718
682
  // If the first segment is the outer parent
719
683
  if (segs[0] == thisAttributeId || segs[0] == thisId) {
720
- // Only two segments, means that the parent is the outer and the last segment
684
+ // Only two segments, means that the parent is the outer and the last segment
721
685
  // is the ID of the node being examined
722
686
  if (segs.length == 2) {
723
687
  parentNode = this;
724
688
 
725
- // Otherwise resolve it further
689
+ // Otherwise resolve it further
726
690
  } else {
727
691
  // Extract the segments, exclude the first and last, and that leaves us with a relative ID path
728
692
  let subId = qx.lang.Array.clone(segs);
@@ -732,13 +696,15 @@ qx.Class.define("qx.html.Element",
732
696
  parentNode = this.getQxObject(subId);
733
697
  }
734
698
 
735
- // Not the outer node, then resolve as a global.
699
+ // Not the outer node, then resolve as a global.
736
700
  } else {
737
701
  parentNode = qx.core.Id.getQxObject(attributeId);
738
702
  }
739
-
703
+
740
704
  if (!parentNode) {
741
- throw new Error(`Cannot resolve object id ancestors, id=${attributeId}`);
705
+ throw new Error(
706
+ `Cannot resolve object id ancestors, id=${attributeId}`
707
+ );
742
708
  }
743
709
 
744
710
  parentNode.addOwnedQxObject(node, segs[segs.length - 1]);
@@ -757,13 +723,12 @@ qx.Class.define("qx.html.Element",
757
723
  }
758
724
  },
759
725
 
760
-
761
726
  /*
762
727
  ---------------------------------------------------------------------------
763
728
  SUPPORT FOR ATTRIBUTE/STYLE/EVENT FLUSH
764
729
  ---------------------------------------------------------------------------
765
730
  */
766
-
731
+
767
732
  /**
768
733
  * Copies data between the internal representation and the DOM. This
769
734
  * simply copies all the data and only works well directly after
@@ -772,11 +737,10 @@ qx.Class.define("qx.html.Element",
772
737
  * @param fromMarkup {Boolean} Whether the copy should respect styles
773
738
  * given from markup
774
739
  */
775
- _copyData : function(fromMarkup, propertiesFromDom)
776
- {
777
- this.base(arguments, fromMarkup, propertiesFromDom);
740
+ _copyData(fromMarkup, propertiesFromDom) {
741
+ super._copyData(fromMarkup, propertiesFromDom);
778
742
  var elem = this._domNode;
779
-
743
+
780
744
  // Copy attributes
781
745
  var data = this.__attribValues;
782
746
  if (data) {
@@ -787,7 +751,7 @@ qx.Class.define("qx.html.Element",
787
751
  str = this.getAttribute("class");
788
752
  (str ? str.split(" ") : []).forEach(name => {
789
753
  if (name.startsWith("qx-")) {
790
- classes[name] = true
754
+ classes[name] = true;
791
755
  }
792
756
  });
793
757
 
@@ -797,7 +761,7 @@ qx.Class.define("qx.html.Element",
797
761
  str = str.baseVal;
798
762
  }
799
763
  }
800
- (str ? str.split(" ") : []).forEach(name => classes[name] = true);
764
+ (str ? str.split(" ") : []).forEach(name => (classes[name] = true));
801
765
  classes = Object.keys(classes);
802
766
 
803
767
  var segs = classes;
@@ -818,17 +782,16 @@ qx.Class.define("qx.html.Element",
818
782
  var data = this.__styleValues;
819
783
  if (data) {
820
784
  var Style = qx.bom.element.Style;
821
-
785
+
822
786
  if (fromMarkup) {
823
787
  Style.setStyles(elem, data);
824
-
825
788
  } else {
826
789
  // Set styles at once which is a lot faster in most browsers
827
790
  // compared to separate modifications of many single style properties.
828
791
  Style.setCss(elem, Style.compile(data));
829
792
  }
830
793
  }
831
-
794
+
832
795
  // Copy visibility
833
796
  if (!fromMarkup) {
834
797
  var display = elem.style.display || "";
@@ -841,19 +804,16 @@ qx.Class.define("qx.html.Element",
841
804
  var display = elem.style.display || "";
842
805
  this.setVisible(display != "none");
843
806
  }
844
-
845
807
  },
846
808
 
847
-
848
809
  /**
849
810
  * Synchronizes data between the internal representation and the DOM. This
850
811
  * is the counterpart of {@link #_copyData} and is used for further updates
851
812
  * after the element has been created.
852
813
  *
853
814
  */
854
- _syncData : function()
855
- {
856
- this.base(arguments);
815
+ _syncData() {
816
+ super._syncData();
857
817
  var elem = this._domNode;
858
818
 
859
819
  var Attribute = qx.bom.element.Attribute;
@@ -861,14 +821,11 @@ qx.Class.define("qx.html.Element",
861
821
 
862
822
  // Sync attributes
863
823
  var jobs = this.__attribJobs;
864
- if (jobs)
865
- {
824
+ if (jobs) {
866
825
  var data = this.__attribValues;
867
- if (data)
868
- {
826
+ if (data) {
869
827
  var value;
870
- for (var key in jobs)
871
- {
828
+ for (var key in jobs) {
872
829
  value = data[key];
873
830
 
874
831
  if (value !== undefined) {
@@ -884,11 +841,9 @@ qx.Class.define("qx.html.Element",
884
841
 
885
842
  // Sync styles
886
843
  var jobs = this.__styleJobs;
887
- if (jobs)
888
- {
844
+ if (jobs) {
889
845
  var data = this.__styleValues;
890
- if (data)
891
- {
846
+ if (data) {
892
847
  var styles = {};
893
848
  for (var key in jobs) {
894
849
  styles[key] = data[key];
@@ -900,9 +855,6 @@ qx.Class.define("qx.html.Element",
900
855
  this.__styleJobs = null;
901
856
  }
902
857
  },
903
-
904
-
905
-
906
858
 
907
859
  /*
908
860
  ---------------------------------------------------------------------------
@@ -915,7 +867,7 @@ qx.Class.define("qx.html.Element",
915
867
  * whether the element should be a root element or not.
916
868
  * @param root {Boolean} The root flag.
917
869
  */
918
- setRoot : function(root) {
870
+ setRoot(root) {
919
871
  if (root && !this.__root) {
920
872
  qx.html.Element._hasRoots++;
921
873
  } else if (!root && this.__root) {
@@ -923,11 +875,11 @@ qx.Class.define("qx.html.Element",
923
875
  }
924
876
  this.__root = root;
925
877
  },
926
-
878
+
927
879
  /*
928
880
  * @Override
929
881
  */
930
- isRoot : function() {
882
+ isRoot() {
931
883
  return this.__root;
932
884
  },
933
885
 
@@ -939,8 +891,7 @@ qx.Class.define("qx.html.Element",
939
891
  * which is used as the main element for this instance.
940
892
  * @return {Element} The created DOM element
941
893
  */
942
- useMarkup : function(html)
943
- {
894
+ useMarkup(html) {
944
895
  if (this._domNode) {
945
896
  throw new Error("Could not overwrite existing element!");
946
897
  }
@@ -963,7 +914,6 @@ qx.Class.define("qx.html.Element",
963
914
  return this._domNode;
964
915
  },
965
916
 
966
-
967
917
  /**
968
918
  * Uses an existing element instead of creating one. This may be interesting
969
919
  * when the DOM element is directly needed to add content etc.
@@ -971,19 +921,16 @@ qx.Class.define("qx.html.Element",
971
921
  * @param elem {Element} Element to reuse
972
922
  * @deprecated {6.1} see useNode
973
923
  */
974
- useElement : function(elem)
975
- {
924
+ useElement(elem) {
976
925
  this.useNode(elem);
977
926
  },
978
927
 
979
-
980
928
  /**
981
929
  * Whether the element is focusable (or will be when created)
982
930
  *
983
931
  * @return {Boolean} <code>true</code> when the element is focusable.
984
932
  */
985
- isFocusable : function()
986
- {
933
+ isFocusable() {
987
934
  var tabIndex = this.getAttribute("tabIndex");
988
935
  if (tabIndex >= 1) {
989
936
  return true;
@@ -997,7 +944,6 @@ qx.Class.define("qx.html.Element",
997
944
  return false;
998
945
  },
999
946
 
1000
-
1001
947
  /**
1002
948
  * Set whether the element is selectable. It uses the qooxdoo attribute
1003
949
  * qxSelectable with the values 'on' or 'off'.
@@ -1005,17 +951,17 @@ qx.Class.define("qx.html.Element",
1005
951
  *
1006
952
  * @param value {Boolean} True, if the element should be selectable.
1007
953
  */
1008
- setSelectable : function(value)
1009
- {
954
+ setSelectable(value) {
1010
955
  this.setAttribute("qxSelectable", value ? "on" : "off");
1011
956
  var userSelect = qx.core.Environment.get("css.userselect");
1012
957
  if (userSelect) {
1013
- this.setStyle(userSelect, value ? "text" :
1014
- qx.core.Environment.get("css.userselect.none"));
958
+ this.setStyle(
959
+ userSelect,
960
+ value ? "text" : qx.core.Environment.get("css.userselect.none")
961
+ );
1015
962
  }
1016
963
  },
1017
964
 
1018
-
1019
965
  /**
1020
966
  * Whether the element is natively focusable (or will be when created)
1021
967
  *
@@ -1023,16 +969,10 @@ qx.Class.define("qx.html.Element",
1023
969
  *
1024
970
  * @return {Boolean} <code>true</code> when the element is focusable.
1025
971
  */
1026
- isNativelyFocusable : function() {
972
+ isNativelyFocusable() {
1027
973
  return !!qx.event.handler.Focus.FOCUSABLE_ELEMENTS[this._nodeName];
1028
974
  },
1029
975
 
1030
-
1031
-
1032
-
1033
-
1034
-
1035
-
1036
976
  /*
1037
977
  ---------------------------------------------------------------------------
1038
978
  ANIMATION SUPPORT
@@ -1044,7 +984,7 @@ qx.Class.define("qx.html.Element",
1044
984
  * @return {qx.bom.element.AnimationHandle} The animation handle to react for
1045
985
  * the fade animation.
1046
986
  */
1047
- fadeIn : function(duration) {
987
+ fadeIn(duration) {
1048
988
  var col = qxWeb(this._domNode);
1049
989
  if (col.isPlaying()) {
1050
990
  col.stop();
@@ -1055,39 +995,45 @@ qx.Class.define("qx.html.Element",
1055
995
  col.push(this._domNode);
1056
996
  }
1057
997
  if (this._domNode) {
1058
- col.fadeIn(duration).once("animationEnd", function() {
1059
- this.show();
1060
- qx.html.Element.flush();
1061
- }, this);
998
+ col.fadeIn(duration).once(
999
+ "animationEnd",
1000
+ function () {
1001
+ this.show();
1002
+ qx.html.Element.flush();
1003
+ },
1004
+ this
1005
+ );
1006
+
1062
1007
  return col.getAnimationHandles()[0];
1063
1008
  }
1064
1009
  },
1065
1010
 
1066
-
1067
1011
  /**
1068
1012
  * Fades out the element.
1069
1013
  * @param duration {Number} Time in ms.
1070
1014
  * @return {qx.bom.element.AnimationHandle} The animation handle to react for
1071
1015
  * the fade animation.
1072
1016
  */
1073
- fadeOut : function(duration) {
1017
+ fadeOut(duration) {
1074
1018
  var col = qxWeb(this._domNode);
1075
1019
  if (col.isPlaying()) {
1076
1020
  col.stop();
1077
1021
  }
1078
1022
 
1079
1023
  if (this._domNode) {
1080
- col.fadeOut(duration).once("animationEnd", function() {
1081
- this.hide();
1082
- qx.html.Element.flush();
1083
- }, this);
1024
+ col.fadeOut(duration).once(
1025
+ "animationEnd",
1026
+ function () {
1027
+ this.hide();
1028
+ qx.html.Element.flush();
1029
+ },
1030
+ this
1031
+ );
1032
+
1084
1033
  return col.getAnimationHandles()[0];
1085
1034
  }
1086
1035
  },
1087
1036
 
1088
-
1089
-
1090
-
1091
1037
  /*
1092
1038
  ---------------------------------------------------------------------------
1093
1039
  VISIBILITY SUPPORT
@@ -1097,7 +1043,8 @@ qx.Class.define("qx.html.Element",
1097
1043
  /*
1098
1044
  * @Override
1099
1045
  */
1100
- _applyVisible: function(value) {
1046
+ _applyVisible(value, oldValue) {
1047
+ this.base(arguments, value, oldValue);
1101
1048
  if (value) {
1102
1049
  if (this._domNode) {
1103
1050
  qx.html.Element._visibility[this.toHashCode()] = this;
@@ -1108,7 +1055,6 @@ qx.Class.define("qx.html.Element",
1108
1055
  if (this._parent) {
1109
1056
  this._parent._scheduleChildrenUpdate();
1110
1057
  }
1111
-
1112
1058
  } else {
1113
1059
  if (this._domNode) {
1114
1060
  qx.html.Element._visibility[this.toHashCode()] = this;
@@ -1124,29 +1070,22 @@ qx.Class.define("qx.html.Element",
1124
1070
  *
1125
1071
  * @return {qx.html.Element} this object (for chaining support)
1126
1072
  */
1127
- show : function() {
1073
+ show() {
1128
1074
  this.setVisible(true);
1129
1075
  return this;
1130
1076
  },
1131
1077
 
1132
-
1133
1078
  /**
1134
1079
  * Marks the element as hidden which means it will kept in DOM (if it
1135
1080
  * is already there, but configured hidden using a CSS style of display=none).
1136
1081
  *
1137
1082
  * @return {qx.html.Element} this object (for chaining support)
1138
1083
  */
1139
- hide : function() {
1084
+ hide() {
1140
1085
  this.setVisible(false);
1141
1086
  return this;
1142
1087
  },
1143
1088
 
1144
-
1145
-
1146
-
1147
-
1148
-
1149
-
1150
1089
  /*
1151
1090
  ---------------------------------------------------------------------------
1152
1091
  SCROLL SUPPORT
@@ -1168,21 +1107,22 @@ qx.Class.define("qx.html.Element",
1168
1107
  * @param direct {Boolean?true} Whether the execution should be made
1169
1108
  * directly when possible
1170
1109
  */
1171
- scrollChildIntoViewX : function(elem, align, direct)
1172
- {
1110
+ scrollChildIntoViewX(elem, align, direct) {
1173
1111
  var thisEl = this._domNode;
1174
1112
  var childEl = elem.getDomElement();
1175
1113
 
1176
- if (direct !== false && thisEl && thisEl.offsetWidth && childEl && childEl.offsetWidth)
1177
- {
1114
+ if (
1115
+ direct !== false &&
1116
+ thisEl &&
1117
+ thisEl.offsetWidth &&
1118
+ childEl &&
1119
+ childEl.offsetWidth
1120
+ ) {
1178
1121
  qx.bom.element.Scroll.intoViewX(childEl, thisEl, align);
1179
- }
1180
- else
1181
- {
1182
- this.__lazyScrollIntoViewX =
1183
- {
1184
- element : elem,
1185
- align : align
1122
+ } else {
1123
+ this.__lazyScrollIntoViewX = {
1124
+ element: elem,
1125
+ align: align
1186
1126
  };
1187
1127
 
1188
1128
  qx.html.Element._scroll[this.toHashCode()] = this;
@@ -1192,7 +1132,6 @@ qx.Class.define("qx.html.Element",
1192
1132
  delete this.__lazyScrollX;
1193
1133
  },
1194
1134
 
1195
-
1196
1135
  /**
1197
1136
  * Scrolls the given child element into view. Only scrolls children.
1198
1137
  * Do not influence elements on top of this element.
@@ -1208,21 +1147,22 @@ qx.Class.define("qx.html.Element",
1208
1147
  * @param direct {Boolean?true} Whether the execution should be made
1209
1148
  * directly when possible
1210
1149
  */
1211
- scrollChildIntoViewY : function(elem, align, direct)
1212
- {
1150
+ scrollChildIntoViewY(elem, align, direct) {
1213
1151
  var thisEl = this._domNode;
1214
1152
  var childEl = elem.getDomElement();
1215
1153
 
1216
- if (direct !== false && thisEl && thisEl.offsetWidth && childEl && childEl.offsetWidth)
1217
- {
1154
+ if (
1155
+ direct !== false &&
1156
+ thisEl &&
1157
+ thisEl.offsetWidth &&
1158
+ childEl &&
1159
+ childEl.offsetWidth
1160
+ ) {
1218
1161
  qx.bom.element.Scroll.intoViewY(childEl, thisEl, align);
1219
- }
1220
- else
1221
- {
1222
- this.__lazyScrollIntoViewY =
1223
- {
1224
- element : elem,
1225
- align : align
1162
+ } else {
1163
+ this.__lazyScrollIntoViewY = {
1164
+ element: elem,
1165
+ align: align
1226
1166
  };
1227
1167
 
1228
1168
  qx.html.Element._scroll[this.toHashCode()] = this;
@@ -1232,7 +1172,6 @@ qx.Class.define("qx.html.Element",
1232
1172
  delete this.__lazyScrollY;
1233
1173
  },
1234
1174
 
1235
-
1236
1175
  /**
1237
1176
  * Scrolls the element to the given left position.
1238
1177
  *
@@ -1240,16 +1179,12 @@ qx.Class.define("qx.html.Element",
1240
1179
  * @param lazy {Boolean?false} Whether the scrolling should be performed
1241
1180
  * during element flush.
1242
1181
  */
1243
- scrollToX : function(x, lazy)
1244
- {
1182
+ scrollToX(x, lazy) {
1245
1183
  var thisEl = this._domNode;
1246
- if (lazy !== true && thisEl && thisEl.offsetWidth)
1247
- {
1184
+ if (lazy !== true && thisEl && thisEl.offsetWidth) {
1248
1185
  thisEl.scrollLeft = x;
1249
1186
  delete this.__lazyScrollX;
1250
- }
1251
- else
1252
- {
1187
+ } else {
1253
1188
  this.__lazyScrollX = x;
1254
1189
  qx.html.Element._scroll[this.toHashCode()] = this;
1255
1190
  qx.html.Element._scheduleFlush("element");
@@ -1258,14 +1193,12 @@ qx.Class.define("qx.html.Element",
1258
1193
  delete this.__lazyScrollIntoViewX;
1259
1194
  },
1260
1195
 
1261
-
1262
1196
  /**
1263
1197
  * Get the horizontal scroll position.
1264
1198
  *
1265
1199
  * @return {Integer} Horizontal scroll position
1266
1200
  */
1267
- getScrollX : function()
1268
- {
1201
+ getScrollX() {
1269
1202
  var thisEl = this._domNode;
1270
1203
  if (thisEl) {
1271
1204
  return thisEl.scrollLeft;
@@ -1274,7 +1207,6 @@ qx.Class.define("qx.html.Element",
1274
1207
  return this.__lazyScrollX || 0;
1275
1208
  },
1276
1209
 
1277
-
1278
1210
  /**
1279
1211
  * Scrolls the element to the given top position.
1280
1212
  *
@@ -1282,16 +1214,12 @@ qx.Class.define("qx.html.Element",
1282
1214
  * @param lazy {Boolean?false} Whether the scrolling should be performed
1283
1215
  * during element flush.
1284
1216
  */
1285
- scrollToY : function(y, lazy)
1286
- {
1217
+ scrollToY(y, lazy) {
1287
1218
  var thisEl = this._domNode;
1288
- if (lazy !== true && thisEl && thisEl.offsetWidth)
1289
- {
1219
+ if (lazy !== true && thisEl && thisEl.offsetWidth) {
1290
1220
  thisEl.scrollTop = y;
1291
1221
  delete this.__lazyScrollY;
1292
- }
1293
- else
1294
- {
1222
+ } else {
1295
1223
  this.__lazyScrollY = y;
1296
1224
  qx.html.Element._scroll[this.toHashCode()] = this;
1297
1225
  qx.html.Element._scheduleFlush("element");
@@ -1300,14 +1228,12 @@ qx.Class.define("qx.html.Element",
1300
1228
  delete this.__lazyScrollIntoViewY;
1301
1229
  },
1302
1230
 
1303
-
1304
1231
  /**
1305
1232
  * Get the vertical scroll position.
1306
1233
  *
1307
1234
  * @return {Integer} Vertical scroll position
1308
1235
  */
1309
- getScrollY : function()
1310
- {
1236
+ getScrollY() {
1311
1237
  var thisEl = this._domNode;
1312
1238
  if (thisEl) {
1313
1239
  return thisEl.scrollTop;
@@ -1316,38 +1242,32 @@ qx.Class.define("qx.html.Element",
1316
1242
  return this.__lazyScrollY || 0;
1317
1243
  },
1318
1244
 
1319
-
1320
1245
  /**
1321
1246
  * Disables browser-native scrolling
1322
1247
  */
1323
- disableScrolling : function()
1324
- {
1248
+ disableScrolling() {
1325
1249
  this.enableScrolling();
1326
1250
  this.scrollToX(0);
1327
1251
  this.scrollToY(0);
1328
1252
  this.addListener("scroll", this.__onScroll, this);
1329
1253
  },
1330
1254
 
1331
-
1332
1255
  /**
1333
1256
  * Re-enables browser-native scrolling
1334
1257
  */
1335
- enableScrolling : function() {
1258
+ enableScrolling() {
1336
1259
  this.removeListener("scroll", this.__onScroll, this);
1337
1260
  },
1338
1261
 
1339
-
1340
- __inScroll : null,
1262
+ __inScroll: null,
1341
1263
 
1342
1264
  /**
1343
1265
  * Handler for the scroll-event
1344
1266
  *
1345
1267
  * @param e {qx.event.type.Native} scroll-event
1346
1268
  */
1347
- __onScroll : function(e)
1348
- {
1349
- if (!this.__inScroll)
1350
- {
1269
+ __onScroll(e) {
1270
+ if (!this.__inScroll) {
1351
1271
  this.__inScroll = true;
1352
1272
  this._domNode.scrollTop = 0;
1353
1273
  this._domNode.scrollLeft = 0;
@@ -1355,30 +1275,29 @@ qx.Class.define("qx.html.Element",
1355
1275
  }
1356
1276
  },
1357
1277
 
1358
-
1359
1278
  /*
1360
1279
  ---------------------------------------------------------------------------
1361
1280
  TEXT SUPPORT
1362
1281
  ---------------------------------------------------------------------------
1363
1282
  */
1364
-
1283
+
1365
1284
  /*
1366
1285
  * Sets the text value of this element; it will delete children first, except
1367
1286
  * for the first node which (if it is a Text node) will have it's value updated
1368
- *
1287
+ *
1369
1288
  * @param value {String} the text to set
1370
1289
  */
1371
- setText: function(value) {
1290
+ setText(value) {
1372
1291
  var self = this;
1373
1292
  var children = this._children ? qx.lang.Array.clone(this._children) : [];
1374
1293
  if (children[0] instanceof qx.html.Text) {
1375
1294
  children[0].setText(value);
1376
1295
  children.shift();
1377
- children.forEach(function(child) {
1296
+ children.forEach(function (child) {
1378
1297
  self.remove(child);
1379
1298
  });
1380
1299
  } else {
1381
- children.forEach(function(child) {
1300
+ children.forEach(function (child) {
1382
1301
  self.remove(child);
1383
1302
  });
1384
1303
  this.add(new qx.html.Text(value));
@@ -1387,20 +1306,19 @@ qx.Class.define("qx.html.Element",
1387
1306
 
1388
1307
  /**
1389
1308
  * Returns the text value, accumulated from all child nodes
1390
- *
1309
+ *
1391
1310
  * @return {String} the text value
1392
1311
  */
1393
- getText: function() {
1312
+ getText() {
1394
1313
  var result = [];
1395
1314
  if (this._children) {
1396
- this._children.forEach(function(child) {
1315
+ this._children.forEach(function (child) {
1397
1316
  result.push(child.getText());
1398
1317
  });
1399
1318
  }
1400
1319
  return result.join("");
1401
1320
  },
1402
1321
 
1403
-
1404
1322
  /**
1405
1323
  * Get the selection of the element.
1406
1324
  *
@@ -1409,8 +1327,7 @@ qx.Class.define("qx.html.Element",
1409
1327
  *
1410
1328
  * @return {String|null}
1411
1329
  */
1412
- getTextSelection : function()
1413
- {
1330
+ getTextSelection() {
1414
1331
  var el = this._domNode;
1415
1332
  if (el) {
1416
1333
  return qx.bom.Selection.get(el);
@@ -1419,7 +1336,6 @@ qx.Class.define("qx.html.Element",
1419
1336
  return null;
1420
1337
  },
1421
1338
 
1422
-
1423
1339
  /**
1424
1340
  * Get the length of selection of the element.
1425
1341
  *
@@ -1428,8 +1344,7 @@ qx.Class.define("qx.html.Element",
1428
1344
  *
1429
1345
  * @return {Integer|null}
1430
1346
  */
1431
- getTextSelectionLength : function()
1432
- {
1347
+ getTextSelectionLength() {
1433
1348
  var el = this._domNode;
1434
1349
  if (el) {
1435
1350
  return qx.bom.Selection.getLength(el);
@@ -1438,7 +1353,6 @@ qx.Class.define("qx.html.Element",
1438
1353
  return null;
1439
1354
  },
1440
1355
 
1441
-
1442
1356
  /**
1443
1357
  * Get the start of the selection of the element.
1444
1358
  *
@@ -1447,8 +1361,7 @@ qx.Class.define("qx.html.Element",
1447
1361
  *
1448
1362
  * @return {Integer|null}
1449
1363
  */
1450
- getTextSelectionStart : function()
1451
- {
1364
+ getTextSelectionStart() {
1452
1365
  var el = this._domNode;
1453
1366
  if (el) {
1454
1367
  return qx.bom.Selection.getStart(el);
@@ -1457,7 +1370,6 @@ qx.Class.define("qx.html.Element",
1457
1370
  return null;
1458
1371
  },
1459
1372
 
1460
-
1461
1373
  /**
1462
1374
  * Get the end of the selection of the element.
1463
1375
  *
@@ -1466,8 +1378,7 @@ qx.Class.define("qx.html.Element",
1466
1378
  *
1467
1379
  * @return {Integer|null}
1468
1380
  */
1469
- getTextSelectionEnd : function()
1470
- {
1381
+ getTextSelectionEnd() {
1471
1382
  var el = this._domNode;
1472
1383
  if (el) {
1473
1384
  return qx.bom.Selection.getEnd(el);
@@ -1476,7 +1387,6 @@ qx.Class.define("qx.html.Element",
1476
1387
  return null;
1477
1388
  },
1478
1389
 
1479
-
1480
1390
  /**
1481
1391
  * Set the selection of the element with the given start and end value.
1482
1392
  * If no end value is passed the selection will extend to the end.
@@ -1486,8 +1396,7 @@ qx.Class.define("qx.html.Element",
1486
1396
  * @param start {Integer} start of the selection (zero based)
1487
1397
  * @param end {Integer} end of the selection
1488
1398
  */
1489
- setTextSelection : function(start, end)
1490
- {
1399
+ setTextSelection(start, end) {
1491
1400
  var el = this._domNode;
1492
1401
  if (el) {
1493
1402
  qx.bom.Selection.set(el, start, end);
@@ -1496,22 +1405,21 @@ qx.Class.define("qx.html.Element",
1496
1405
 
1497
1406
  // if element not created, save the selection for flushing
1498
1407
  qx.html.Element.__selection[this.toHashCode()] = {
1499
- element : this,
1500
- start : start,
1501
- end : end
1408
+ element: this,
1409
+ start: start,
1410
+ end: end
1502
1411
  };
1412
+
1503
1413
  qx.html.Element._scheduleFlush("element");
1504
1414
  },
1505
1415
 
1506
-
1507
1416
  /**
1508
1417
  * Clears the selection of the element.
1509
1418
  *
1510
1419
  * This method only works if the underlying DOM element is already created.
1511
1420
  *
1512
1421
  */
1513
- clearTextSelection : function()
1514
- {
1422
+ clearTextSelection() {
1515
1423
  var el = this._domNode;
1516
1424
  if (el) {
1517
1425
  qx.bom.Selection.clear(el);
@@ -1519,9 +1427,6 @@ qx.Class.define("qx.html.Element",
1519
1427
  delete qx.html.Element.__selection[this.toHashCode()];
1520
1428
  },
1521
1429
 
1522
-
1523
-
1524
-
1525
1430
  /*
1526
1431
  ---------------------------------------------------------------------------
1527
1432
  FOCUS/ACTIVATE SUPPORT
@@ -1531,116 +1436,108 @@ qx.Class.define("qx.html.Element",
1531
1436
  /**
1532
1437
  * Takes the action to process as argument and queues this action if the
1533
1438
  * underlying DOM element is not yet created.
1534
- *
1439
+ *
1535
1440
  * Note that "actions" are functions in `qx.bom.Element` and only apply to
1536
- * environments with a user interface. This will throw an error if the user
1441
+ * environments with a user interface. This will throw an error if the user
1537
1442
  * interface is headless
1538
1443
  *
1539
1444
  * @param action {String} action to queue
1540
1445
  * @param args {Array} optional list of arguments for the action
1541
1446
  */
1542
- __performAction : function(action, args)
1543
- {
1447
+ __performAction(action, args) {
1544
1448
  if (!qx.core.Environment.get("qx.headless")) {
1545
1449
  var actions = qx.html.Element._actions;
1546
-
1450
+
1547
1451
  actions.push({
1548
1452
  type: action,
1549
1453
  element: this,
1550
1454
  args: args || []
1551
1455
  });
1456
+
1552
1457
  qx.html.Element._scheduleFlush("element");
1553
1458
  } else {
1554
- throw new Error("Unexpected use of qx.html.Element.__performAction in headles environment");
1459
+ throw new Error(
1460
+ "Unexpected use of qx.html.Element.__performAction in headles environment"
1461
+ );
1555
1462
  }
1556
1463
  },
1557
1464
 
1558
-
1559
1465
  /**
1560
1466
  * Focus this element.
1561
1467
  *
1562
1468
  * If the underlaying DOM element is not yet created, the
1563
1469
  * focus is queued for processing after the element creation.
1564
1470
  *
1565
- * Silently does nothing when in a headless environment
1471
+ * Silently does nothing when in a headless environment
1566
1472
  */
1567
- focus : function() {
1473
+ focus() {
1568
1474
  if (!qx.core.Environment.get("qx.headless")) {
1569
1475
  this.__performAction("focus");
1570
1476
  }
1571
1477
  },
1572
1478
 
1573
-
1574
1479
  /**
1575
1480
  * Mark this element to get blurred on the next flush of the queue
1576
1481
  *
1577
- * Silently does nothing when in a headless environment
1482
+ * Silently does nothing when in a headless environment
1578
1483
  *
1579
1484
  */
1580
- blur : function() {
1485
+ blur() {
1581
1486
  if (!qx.core.Environment.get("qx.headless")) {
1582
1487
  this.__performAction("blur");
1583
1488
  }
1584
1489
  },
1585
1490
 
1586
-
1587
1491
  /**
1588
1492
  * Mark this element to get activated on the next flush of the queue
1589
1493
  *
1590
- * Silently does nothing when in a headless environment
1494
+ * Silently does nothing when in a headless environment
1591
1495
  *
1592
1496
  */
1593
- activate : function() {
1497
+ activate() {
1594
1498
  if (!qx.core.Environment.get("qx.headless")) {
1595
1499
  this.__performAction("activate");
1596
1500
  }
1597
1501
  },
1598
1502
 
1599
-
1600
1503
  /**
1601
1504
  * Mark this element to get deactivated on the next flush of the queue
1602
1505
  *
1603
- * Silently does nothing when in a headless environment
1506
+ * Silently does nothing when in a headless environment
1604
1507
  *
1605
1508
  */
1606
- deactivate : function() {
1509
+ deactivate() {
1607
1510
  if (!qx.core.Environment.get("qx.headless")) {
1608
1511
  this.__performAction("deactivate");
1609
1512
  }
1610
1513
  },
1611
1514
 
1612
-
1613
1515
  /**
1614
1516
  * Captures all mouse events to this element
1615
1517
  *
1616
- * Silently does nothing when in a headless environment
1518
+ * Silently does nothing when in a headless environment
1617
1519
  *
1618
1520
  * @param containerCapture {Boolean?true} If true all events originating in
1619
1521
  * the container are captured. If false events originating in the container
1620
1522
  * are not captured.
1621
1523
  */
1622
- capture : function(containerCapture) {
1524
+ capture(containerCapture) {
1623
1525
  if (!qx.core.Environment.get("qx.headless")) {
1624
1526
  this.__performAction("capture", [containerCapture !== false]);
1625
1527
  }
1626
1528
  },
1627
1529
 
1628
-
1629
1530
  /**
1630
1531
  * Releases this element from a previous {@link #capture} call
1631
1532
  *
1632
- * Silently does nothing when in a headless environment
1533
+ * Silently does nothing when in a headless environment
1633
1534
  */
1634
- releaseCapture : function() {
1535
+ releaseCapture() {
1635
1536
  if (!qx.core.Environment.get("qx.headless")) {
1636
1537
  this.__performAction("releaseCapture");
1637
1538
  }
1638
1539
  },
1639
1540
 
1640
-
1641
-
1642
-
1643
-
1644
1541
  /*
1645
1542
  ---------------------------------------------------------------------------
1646
1543
  STYLE SUPPORT
@@ -1656,8 +1553,7 @@ qx.Class.define("qx.html.Element",
1656
1553
  * directly (without queuing)
1657
1554
  * @return {qx.html.Element} this object (for chaining support)
1658
1555
  */
1659
- setStyle : function(key, value, direct)
1660
- {
1556
+ setStyle(key, value, direct) {
1661
1557
  if (!this.__styleValues) {
1662
1558
  this.__styleValues = {};
1663
1559
  }
@@ -1676,11 +1572,9 @@ qx.Class.define("qx.html.Element",
1676
1572
  // Uncreated elements simply copy all data
1677
1573
  // on creation. We don't need to remember any
1678
1574
  // jobs. It is a simple full list copy.
1679
- if (this._domNode)
1680
- {
1575
+ if (this._domNode) {
1681
1576
  // Omit queuing in direct mode
1682
- if (direct)
1683
- {
1577
+ if (direct) {
1684
1578
  qx.bom.element.Style.set(this._domNode, key, value);
1685
1579
  return this;
1686
1580
  }
@@ -1700,22 +1594,20 @@ qx.Class.define("qx.html.Element",
1700
1594
 
1701
1595
  return this;
1702
1596
  },
1703
-
1704
-
1597
+
1705
1598
  /**
1706
1599
  * Called by setStyle when a value of a style changes; this is intended to be
1707
1600
  * overridden to allow the element to update properties etc according to the
1708
1601
  * style
1709
- *
1602
+ *
1710
1603
  * @param key {String} the style value
1711
1604
  * @param value {String?} the value to set
1712
1605
  * @param oldValue {String?} The previous value (not from DOM)
1713
1606
  */
1714
- _applyStyle: function(key, value, oldValue) {
1607
+ _applyStyle(key, value, oldValue) {
1715
1608
  // Nothing
1716
1609
  },
1717
1610
 
1718
-
1719
1611
  /**
1720
1612
  * Convenience method to modify a set of styles at once.
1721
1613
  *
@@ -1725,8 +1617,7 @@ qx.Class.define("qx.html.Element",
1725
1617
  * directly (without queuing)
1726
1618
  * @return {qx.html.Element} this object (for chaining support)
1727
1619
  */
1728
- setStyles : function(map, direct)
1729
- {
1620
+ setStyles(map, direct) {
1730
1621
  // inline calls to "set" because this method is very
1731
1622
  // performance critical!
1732
1623
 
@@ -1736,15 +1627,13 @@ qx.Class.define("qx.html.Element",
1736
1627
  this.__styleValues = {};
1737
1628
  }
1738
1629
 
1739
- if (this._domNode)
1740
- {
1630
+ if (this._domNode) {
1741
1631
  // Dynamically create if needed
1742
1632
  if (!this.__styleJobs) {
1743
1633
  this.__styleJobs = {};
1744
1634
  }
1745
1635
 
1746
- for (var key in map)
1747
- {
1636
+ for (var key in map) {
1748
1637
  var value = map[key];
1749
1638
  if (this.__styleValues[key] == value) {
1750
1639
  continue;
@@ -1758,8 +1647,7 @@ qx.Class.define("qx.html.Element",
1758
1647
  }
1759
1648
 
1760
1649
  // Omit queuing in direct mode
1761
- if (direct)
1762
- {
1650
+ if (direct) {
1763
1651
  Style.set(this._domNode, key, value);
1764
1652
  continue;
1765
1653
  }
@@ -1771,11 +1659,8 @@ qx.Class.define("qx.html.Element",
1771
1659
  // Register modification
1772
1660
  qx.html.Element._modified[this.toHashCode()] = this;
1773
1661
  qx.html.Element._scheduleFlush("element");
1774
- }
1775
- else
1776
- {
1777
- for (var key in map)
1778
- {
1662
+ } else {
1663
+ for (var key in map) {
1779
1664
  var value = map[key];
1780
1665
  if (this.__styleValues[key] == value) {
1781
1666
  continue;
@@ -1793,7 +1678,6 @@ qx.Class.define("qx.html.Element",
1793
1678
  return this;
1794
1679
  },
1795
1680
 
1796
-
1797
1681
  /**
1798
1682
  * Removes the given style attribute
1799
1683
  *
@@ -1802,53 +1686,46 @@ qx.Class.define("qx.html.Element",
1802
1686
  * directly (without queuing)
1803
1687
  * @return {qx.html.Element} this object (for chaining support)
1804
1688
  */
1805
- removeStyle : function(key, direct) {
1689
+ removeStyle(key, direct) {
1806
1690
  this.setStyle(key, null, direct);
1807
1691
  return this;
1808
1692
  },
1809
1693
 
1810
-
1811
1694
  /**
1812
1695
  * Get the value of the given style attribute.
1813
1696
  *
1814
1697
  * @param key {String} name of the style attribute
1815
1698
  * @return {var} the value of the style attribute
1816
1699
  */
1817
- getStyle : function(key) {
1700
+ getStyle(key) {
1818
1701
  return this.__styleValues ? this.__styleValues[key] : null;
1819
1702
  },
1820
1703
 
1821
-
1822
1704
  /**
1823
1705
  * Returns a map of all styles. Do not modify the result map!
1824
1706
  *
1825
1707
  * @return {Map} All styles or <code>null</code> when none are configured.
1826
1708
  */
1827
- getAllStyles : function() {
1709
+ getAllStyles() {
1828
1710
  return this.__styleValues || null;
1829
1711
  },
1830
1712
 
1831
-
1832
-
1833
-
1834
1713
  /*
1835
1714
  ---------------------------------------------------------------------------
1836
1715
  CSS CLASS SUPPORT
1837
1716
  ---------------------------------------------------------------------------
1838
1717
  */
1839
- __breakClasses: function() {
1718
+ __breakClasses() {
1840
1719
  var map = {};
1841
- (this.getAttribute("class")||"")
1842
- .split(" ")
1843
- .forEach(function(name) {
1844
- if (name) {
1845
- map[name.toLowerCase()] = name;
1846
- }
1847
- });
1720
+ (this.getAttribute("class") || "").split(" ").forEach(function (name) {
1721
+ if (name) {
1722
+ map[name.toLowerCase()] = name;
1723
+ }
1724
+ });
1848
1725
  return map;
1849
1726
  },
1850
-
1851
- __combineClasses: function(map) {
1727
+
1728
+ __combineClasses(map) {
1852
1729
  var primaryClass = this.getCssClass();
1853
1730
  var arr = [];
1854
1731
  if (primaryClass) {
@@ -1858,78 +1735,72 @@ qx.Class.define("qx.html.Element",
1858
1735
  qx.lang.Array.append(arr, Object.values(map));
1859
1736
  return arr.length ? arr.join(" ") : null;
1860
1737
  },
1861
-
1738
+
1862
1739
  /**
1863
1740
  * Adds a css class to the element.
1864
- *
1741
+ *
1865
1742
  * @param name {String} Name of the CSS class.
1866
1743
  * @return {Element} this, for chaining
1867
1744
  */
1868
- addClass : function(name) {
1745
+ addClass(name) {
1869
1746
  var classes = this.__breakClasses();
1870
- var primaryClass = (this.getCssClass()||"").toLowerCase();
1747
+ var primaryClass = (this.getCssClass() || "").toLowerCase();
1871
1748
  name.split(" ").forEach(name => {
1872
1749
  var nameLower = name.toLowerCase();
1873
1750
  if (nameLower == primaryClass) {
1874
1751
  this.setCssClass(null);
1875
1752
  }
1876
-
1753
+
1877
1754
  classes[nameLower] = name;
1878
1755
  });
1879
1756
  this.setAttribute("class", this.__combineClasses(classes));
1880
1757
  return this;
1881
1758
  },
1882
1759
 
1883
-
1884
1760
  /**
1885
1761
  * Removes a CSS class from the current element.
1886
- *
1762
+ *
1887
1763
  * @param name {String} Name of the CSS class.
1888
1764
  * @return {Element} this, for chaining
1889
1765
  */
1890
- removeClass : function(name) {
1766
+ removeClass(name) {
1891
1767
  var classes = this.__breakClasses();
1892
- var primaryClass = (this.getCssClass()||"").toLowerCase();
1768
+ var primaryClass = (this.getCssClass() || "").toLowerCase();
1893
1769
  name.split(" ").forEach(name => {
1894
1770
  var nameLower = name.toLowerCase();
1895
1771
  if (nameLower == primaryClass) {
1896
1772
  this.setCssClass(null);
1897
1773
  }
1898
-
1774
+
1899
1775
  delete classes[nameLower];
1900
1776
  });
1901
-
1777
+
1902
1778
  this.setAttribute("class", this.__combineClasses(classes));
1903
1779
  return this;
1904
1780
  },
1905
1781
 
1906
-
1907
1782
  /**
1908
1783
  * Removes all CSS classed from the current element.
1909
1784
  */
1910
- removeAllClasses : function() {
1785
+ removeAllClasses() {
1911
1786
  this.setCssClass(null);
1912
1787
  this.setAttribute("class", "");
1913
1788
  },
1914
-
1915
-
1789
+
1916
1790
  /**
1917
1791
  * Apply method for cssClass
1918
1792
  */
1919
- _applyCssClass: function(value, oldValue) {
1793
+ _applyCssClass(value, oldValue) {
1920
1794
  var classes = this.__breakClasses();
1921
1795
  if (oldValue) {
1922
1796
  oldValue.split(" ").forEach(name => delete classes[name.toLowerCase()]);
1923
1797
  }
1924
1798
  if (value) {
1925
- value.split(" ").forEach(name => classes[name.toLowerCase()] = name);
1799
+ value.split(" ").forEach(name => (classes[name.toLowerCase()] = name));
1926
1800
  }
1927
1801
  this.setAttribute("class", this.__combineClasses(classes));
1928
1802
  },
1929
1803
 
1930
-
1931
-
1932
-
1933
1804
  /*
1934
1805
  ---------------------------------------------------------------------------
1935
1806
  SIZE AND POSITION SUPPORT
@@ -1939,7 +1810,7 @@ qx.Class.define("qx.html.Element",
1939
1810
  /**
1940
1811
  * Returns the size and position of this element; this is just a helper method that wraps
1941
1812
  * the calls to qx.bom.*
1942
- *
1813
+ *
1943
1814
  * Supported modes:
1944
1815
  *
1945
1816
  * * <code>margin</code>: Calculate from the margin box of the element (bigger than the visual appearance: including margins of given element)
@@ -1954,7 +1825,7 @@ qx.Class.define("qx.html.Element",
1954
1825
  * content - Object, containing:
1955
1826
  * width, height: maximum permissible content size
1956
1827
  */
1957
- getDimensions: function(mode) {
1828
+ getDimensions(mode) {
1958
1829
  if (!this._domNode) {
1959
1830
  return {
1960
1831
  left: 0,
@@ -1967,7 +1838,7 @@ qx.Class.define("qx.html.Element",
1967
1838
  width: 0,
1968
1839
  height: 0
1969
1840
  }
1970
- }
1841
+ };
1971
1842
  }
1972
1843
  var loc = qx.bom.element.Location.get(this._domNode, mode);
1973
1844
  loc.content = qx.bom.element.Dimension.getContentSize(this._domNode);
@@ -1975,23 +1846,25 @@ qx.Class.define("qx.html.Element",
1975
1846
  loc.height = loc.bottom - loc.top;
1976
1847
  return loc;
1977
1848
  },
1978
-
1979
-
1849
+
1980
1850
  /**
1981
1851
  * Detects whether the DOM Node is visible
1982
1852
  */
1983
- canBeSeen: function() {
1853
+ canBeSeen() {
1984
1854
  if (this._domNode && this.isVisible()) {
1985
1855
  var rect = this._domNode.getBoundingClientRect();
1986
- if (rect.top > 0 || rect.left > 0 || rect.width > 0 || rect.height > 0) {
1856
+ if (
1857
+ rect.top > 0 ||
1858
+ rect.left > 0 ||
1859
+ rect.width > 0 ||
1860
+ rect.height > 0
1861
+ ) {
1987
1862
  return true;
1988
1863
  }
1989
1864
  }
1990
1865
  return false;
1991
1866
  },
1992
-
1993
-
1994
-
1867
+
1995
1868
  /*
1996
1869
  ---------------------------------------------------------------------------
1997
1870
  ATTRIBUTE SUPPORT
@@ -2007,8 +1880,7 @@ qx.Class.define("qx.html.Element",
2007
1880
  * directly (without queuing)
2008
1881
  * @return {qx.html.Element} this object (for chaining support)
2009
1882
  */
2010
- setAttribute : function(key, value, direct)
2011
- {
1883
+ setAttribute(key, value, direct) {
2012
1884
  if (!this.__attribValues) {
2013
1885
  this.__attribValues = {};
2014
1886
  }
@@ -2030,11 +1902,9 @@ qx.Class.define("qx.html.Element",
2030
1902
  // Uncreated elements simply copy all data
2031
1903
  // on creation. We don't need to remember any
2032
1904
  // jobs. It is a simple full list copy.
2033
- if (this._domNode)
2034
- {
1905
+ if (this._domNode) {
2035
1906
  // Omit queuing in direct mode
2036
- if (direct)
2037
- {
1907
+ if (direct) {
2038
1908
  qx.bom.element.Attribute.set(this._domNode, key, value);
2039
1909
  return this;
2040
1910
  }
@@ -2055,7 +1925,6 @@ qx.Class.define("qx.html.Element",
2055
1925
  return this;
2056
1926
  },
2057
1927
 
2058
-
2059
1928
  /**
2060
1929
  * Convenience method to modify a set of attributes at once.
2061
1930
  *
@@ -2065,8 +1934,7 @@ qx.Class.define("qx.html.Element",
2065
1934
  * directly (without queuing)
2066
1935
  * @return {qx.html.Element} this object (for chaining support)
2067
1936
  */
2068
- setAttributes : function(map, direct)
2069
- {
1937
+ setAttributes(map, direct) {
2070
1938
  for (var key in map) {
2071
1939
  this.setAttribute(key, map[key], direct);
2072
1940
  }
@@ -2074,7 +1942,6 @@ qx.Class.define("qx.html.Element",
2074
1942
  return this;
2075
1943
  },
2076
1944
 
2077
-
2078
1945
  /**
2079
1946
  * Removes the given attribute
2080
1947
  *
@@ -2083,44 +1950,49 @@ qx.Class.define("qx.html.Element",
2083
1950
  * directly (without queuing)
2084
1951
  * @return {qx.html.Element} this object (for chaining support)
2085
1952
  */
2086
- removeAttribute : function(key, direct) {
1953
+ removeAttribute(key, direct) {
2087
1954
  return this.setAttribute(key, null, direct);
2088
1955
  },
2089
1956
 
2090
-
2091
1957
  /**
2092
1958
  * Get the value of the given attribute.
2093
1959
  *
2094
1960
  * @param key {String} name of the attribute
2095
1961
  * @return {var} the value of the attribute
2096
1962
  */
2097
- getAttribute : function(key) {
1963
+ getAttribute(key) {
2098
1964
  return this.__attribValues ? this.__attribValues[key] : null;
2099
1965
  }
2100
1966
  },
2101
1967
 
2102
-
2103
-
2104
-
2105
-
2106
1968
  /*
2107
1969
  *****************************************************************************
2108
1970
  DEFER
2109
1971
  *****************************************************************************
2110
1972
  */
2111
1973
 
2112
- defer : function(statics) {
2113
- statics.__deferredCall = new qx.util.DeferredCall(statics.flush, statics);
2114
- statics.__SELF_CLOSING_TAGS = {};
2115
- ["area", "base", "br", "col", "embed", "hr", "img", "input", "link",
2116
- "meta", "param", "source", "track", "wbr"].forEach(function(tagName) {
2117
- statics.__SELF_CLOSING_TAGS[tagName] = true;
2118
- });
2119
- },
2120
-
2121
-
2122
-
2123
-
1974
+ defer(statics) {
1975
+ statics.__deferredCall = new qx.util.DeferredCall(statics.flush, statics);
1976
+ statics.__SELF_CLOSING_TAGS = {};
1977
+ [
1978
+ "area",
1979
+ "base",
1980
+ "br",
1981
+ "col",
1982
+ "embed",
1983
+ "hr",
1984
+ "img",
1985
+ "input",
1986
+ "link",
1987
+ "meta",
1988
+ "param",
1989
+ "source",
1990
+ "track",
1991
+ "wbr"
1992
+ ].forEach(function (tagName) {
1993
+ statics.__SELF_CLOSING_TAGS[tagName] = true;
1994
+ });
1995
+ },
2124
1996
 
2125
1997
  /*
2126
1998
  *****************************************************************************
@@ -2128,8 +2000,7 @@ qx.Class.define("qx.html.Element",
2128
2000
  *****************************************************************************
2129
2001
  */
2130
2002
 
2131
- destruct : function()
2132
- {
2003
+ destruct() {
2133
2004
  var hash = this.toHashCode();
2134
2005
  if (hash) {
2135
2006
  delete qx.html.Element._modified[hash];
@@ -2137,8 +2008,12 @@ qx.Class.define("qx.html.Element",
2137
2008
  }
2138
2009
  this.setRoot(false);
2139
2010
 
2140
- this.__attribValues = this.__styleValues =
2141
- this.__attribJobs = this.__styleJobs =
2142
- this.__lazyScrollIntoViewX = this.__lazyScrollIntoViewY = null;
2011
+ this.__attribValues =
2012
+ this.__styleValues =
2013
+ this.__attribJobs =
2014
+ this.__styleJobs =
2015
+ this.__lazyScrollIntoViewX =
2016
+ this.__lazyScrollIntoViewY =
2017
+ null;
2143
2018
  }
2144
2019
  });