@qooxdoo/framework 7.0.0-beta.6 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1555) hide show
  1. package/CHANGELOG.md +0 -6
  2. package/Manifest.json +2 -2
  3. package/README.md +3 -1
  4. package/lib/compiler/compile-info.json +57 -55
  5. package/lib/compiler/index.js +6272 -4273
  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 -15
  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 +6 -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 +162 -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/exception/Cancel.js +4 -5
  302. package/source/class/qx/io/exception/Exception.js +4 -5
  303. package/source/class/qx/io/exception/Protocol.js +2 -3
  304. package/source/class/qx/io/exception/Transport.js +13 -14
  305. package/source/class/qx/io/graphql/Client.js +22 -12
  306. package/source/class/qx/io/graphql/protocol/Message.js +3 -3
  307. package/source/class/qx/io/graphql/protocol/Request.js +8 -10
  308. package/source/class/qx/io/graphql/protocol/Response.js +7 -5
  309. package/source/class/qx/io/jsonrpc/Client.js +70 -38
  310. package/source/class/qx/io/jsonrpc/__init__.js +1 -1
  311. package/source/class/qx/io/jsonrpc/protocol/Batch.js +14 -8
  312. package/source/class/qx/io/jsonrpc/protocol/Error.js +11 -9
  313. package/source/class/qx/io/jsonrpc/protocol/Message.js +3 -3
  314. package/source/class/qx/io/jsonrpc/protocol/Notification.js +8 -6
  315. package/source/class/qx/io/jsonrpc/protocol/Parser.js +33 -9
  316. package/source/class/qx/io/jsonrpc/protocol/Request.js +8 -7
  317. package/source/class/qx/io/jsonrpc/protocol/Result.js +7 -6
  318. package/source/class/qx/io/part/ClosurePart.js +16 -35
  319. package/source/class/qx/io/part/Package.js +35 -63
  320. package/source/class/qx/io/part/Part.js +29 -53
  321. package/source/class/qx/io/part/__init__.js +4 -4
  322. package/source/class/qx/io/request/AbstractRequest.js +268 -201
  323. package/source/class/qx/io/request/Jsonp.js +16 -19
  324. package/source/class/qx/io/request/Xhr.js +38 -37
  325. package/source/class/qx/io/request/__init__.js +1 -1
  326. package/source/class/qx/io/request/authentication/Basic.js +7 -13
  327. package/source/class/qx/io/request/authentication/Bearer.js +7 -13
  328. package/source/class/qx/io/request/authentication/IAuthentication.js +3 -6
  329. package/source/class/qx/io/request/authentication/__init__.js +1 -1
  330. package/source/class/qx/io/rest/Resource.js +122 -90
  331. package/source/class/qx/io/transport/AbstractClient.js +31 -10
  332. package/source/class/qx/io/transport/AbstractTransport.js +7 -8
  333. package/source/class/qx/io/transport/Fetch.js +8 -5
  334. package/source/class/qx/io/transport/ITransport.js +4 -2
  335. package/source/class/qx/io/transport/PostMessage.js +1 -2
  336. package/source/class/qx/io/transport/Websocket.js +5 -5
  337. package/source/class/qx/io/transport/Xhr.js +17 -18
  338. package/source/class/qx/lang/Array.js +133 -170
  339. package/source/class/qx/lang/Function.js +101 -104
  340. package/source/class/qx/lang/Json.js +1041 -774
  341. package/source/class/qx/lang/Number.js +11 -16
  342. package/source/class/qx/lang/Object.js +129 -100
  343. package/source/class/qx/lang/String.js +86 -94
  344. package/source/class/qx/lang/Type.js +44 -65
  345. package/source/class/qx/lang/normalize/Array.js +39 -49
  346. package/source/class/qx/lang/normalize/Date.js +50 -32
  347. package/source/class/qx/lang/normalize/Error.js +4 -7
  348. package/source/class/qx/lang/normalize/Function.js +11 -19
  349. package/source/class/qx/lang/normalize/Number.js +3 -5
  350. package/source/class/qx/lang/normalize/Object.js +17 -18
  351. package/source/class/qx/lang/normalize/String.js +39 -40
  352. package/source/class/qx/locale/Date.js +175 -178
  353. package/source/class/qx/locale/Key.js +13 -11
  354. package/source/class/qx/locale/LocalizedString.js +18 -15
  355. package/source/class/qx/locale/MTranslation.js +22 -23
  356. package/source/class/qx/locale/Manager.js +62 -100
  357. package/source/class/qx/locale/Number.js +20 -12
  358. package/source/class/qx/locale/String.js +26 -15
  359. package/source/class/qx/log/Logger.js +128 -180
  360. package/source/class/qx/log/__init__.js +3 -3
  361. package/source/class/qx/log/appender/Console.js +100 -111
  362. package/source/class/qx/log/appender/Element.js +25 -39
  363. package/source/class/qx/log/appender/Formatter.js +117 -66
  364. package/source/class/qx/log/appender/Native.js +4 -10
  365. package/source/class/qx/log/appender/NodeConsole.js +20 -28
  366. package/source/class/qx/log/appender/PhoneGap.js +5 -13
  367. package/source/class/qx/log/appender/RhinoConsole.js +12 -23
  368. package/source/class/qx/log/appender/RhinoFile.js +19 -26
  369. package/source/class/qx/log/appender/RingBuffer.js +10 -19
  370. package/source/class/qx/log/appender/Util.js +11 -9
  371. package/source/class/qx/module/Animation.js +73 -63
  372. package/source/class/qx/module/Attribute.js +27 -46
  373. package/source/class/qx/module/Blocker.js +33 -41
  374. package/source/class/qx/module/Cookie.js +6 -10
  375. package/source/class/qx/module/Css.js +82 -97
  376. package/source/class/qx/module/Dataset.js +12 -24
  377. package/source/class/qx/module/Environment.js +4 -6
  378. package/source/class/qx/module/Event.js +124 -127
  379. package/source/class/qx/module/Io.js +5 -9
  380. package/source/class/qx/module/Manipulating.js +98 -117
  381. package/source/class/qx/module/MatchMedia.js +50 -24
  382. package/source/class/qx/module/Messaging.js +6 -10
  383. package/source/class/qx/module/Placeholder.js +54 -44
  384. package/source/class/qx/module/Placement.js +33 -33
  385. package/source/class/qx/module/Rest.js +3 -4
  386. package/source/class/qx/module/Storage.js +34 -48
  387. package/source/class/qx/module/Template.js +6 -9
  388. package/source/class/qx/module/TextSelection.js +13 -21
  389. package/source/class/qx/module/Transform.js +28 -45
  390. package/source/class/qx/module/Traversing.js +160 -154
  391. package/source/class/qx/module/__init__.js +1 -1
  392. package/source/class/qx/module/dev/FakeServer.js +19 -25
  393. package/source/class/qx/module/event/GestureHandler.js +25 -13
  394. package/source/class/qx/module/event/Keyboard.js +42 -31
  395. package/source/class/qx/module/event/Mouse.js +48 -46
  396. package/source/class/qx/module/event/Native.js +18 -30
  397. package/source/class/qx/module/event/Orientation.js +11 -18
  398. package/source/class/qx/module/event/OrientationHandler.js +19 -17
  399. package/source/class/qx/module/event/Pinch.js +13 -14
  400. package/source/class/qx/module/event/Pointer.js +22 -22
  401. package/source/class/qx/module/event/PointerHandler.js +14 -11
  402. package/source/class/qx/module/event/Rotate.js +13 -14
  403. package/source/class/qx/module/event/Swipe.js +18 -24
  404. package/source/class/qx/module/event/Tap.js +25 -25
  405. package/source/class/qx/module/event/Touch.js +4 -7
  406. package/source/class/qx/module/event/TouchHandler.js +16 -16
  407. package/source/class/qx/module/event/Track.js +13 -14
  408. package/source/class/qx/module/util/Array.js +30 -41
  409. package/source/class/qx/module/util/Function.js +1 -2
  410. package/source/class/qx/module/util/Object.js +8 -11
  411. package/source/class/qx/module/util/String.js +10 -18
  412. package/source/class/qx/module/util/Type.js +3 -4
  413. package/source/class/qx/test/Annotation.js +195 -89
  414. package/source/class/qx/test/Bootstrap.js +98 -124
  415. package/source/class/qx/test/Browser.js +8 -11
  416. package/source/class/qx/test/Class.js +164 -198
  417. package/source/class/qx/test/Dom.js +10 -28
  418. package/source/class/qx/test/EditDistance.js +16 -16
  419. package/source/class/qx/test/Interface.js +380 -383
  420. package/source/class/qx/test/MAppearance.js +10 -14
  421. package/source/class/qx/test/MDecoration.js +1 -3
  422. package/source/class/qx/test/Mixin.js +449 -173
  423. package/source/class/qx/test/Promise.js +422 -333
  424. package/source/class/qx/test/Theme.js +204 -179
  425. package/source/class/qx/test/Xml.js +155 -84
  426. package/source/class/qx/test/application/Routing.js +45 -44
  427. package/source/class/qx/test/bom/AnimationFrame.js +23 -21
  428. package/source/class/qx/test/bom/Attribute.js +66 -47
  429. package/source/class/qx/test/bom/Basic.js +52 -27
  430. package/source/class/qx/test/bom/Blocker.js +100 -70
  431. package/source/class/qx/test/bom/Class.js +19 -34
  432. package/source/class/qx/test/bom/Cookie.js +49 -28
  433. package/source/class/qx/test/bom/Dataset.js +12 -24
  434. package/source/class/qx/test/bom/Element.js +55 -47
  435. package/source/class/qx/test/bom/Event.js +68 -45
  436. package/source/class/qx/test/bom/FileReader.js +6 -12
  437. package/source/class/qx/test/bom/Font.js +256 -118
  438. package/source/class/qx/test/bom/GeoLocation.js +82 -64
  439. package/source/class/qx/test/bom/History.js +63 -84
  440. package/source/class/qx/test/bom/IdleCallback.js +51 -38
  441. package/source/class/qx/test/bom/Iframe.js +14 -18
  442. package/source/class/qx/test/bom/Label.js +74 -105
  443. package/source/class/qx/test/bom/Location.js +70 -99
  444. package/source/class/qx/test/bom/PageVisibility.js +13 -16
  445. package/source/class/qx/test/bom/Selector.js +16 -16
  446. package/source/class/qx/test/bom/String.js +19 -15
  447. package/source/class/qx/test/bom/Stylesheet.js +39 -48
  448. package/source/class/qx/test/bom/Template.js +49 -57
  449. package/source/class/qx/test/bom/Viewport.js +7 -11
  450. package/source/class/qx/test/bom/WebWorker.js +49 -37
  451. package/source/class/qx/test/bom/Window.js +6 -12
  452. package/source/class/qx/test/bom/client/Css.js +26 -19
  453. package/source/class/qx/test/bom/client/Device.js +29 -18
  454. package/source/class/qx/test/bom/client/OperatingSystem.js +17 -20
  455. package/source/class/qx/test/bom/client/Pdfjs.js +15 -13
  456. package/source/class/qx/test/bom/element/AnimationHandle.js +20 -17
  457. package/source/class/qx/test/bom/element/AnimationJs.js +48 -31
  458. package/source/class/qx/test/bom/element/Background.js +93 -46
  459. package/source/class/qx/test/bom/element/BoxSizing.js +66 -61
  460. package/source/class/qx/test/bom/element/Class.js +33 -58
  461. package/source/class/qx/test/bom/element/Dimension.js +58 -37
  462. package/source/class/qx/test/bom/element/Style.js +87 -83
  463. package/source/class/qx/test/bom/element/Transform.js +209 -86
  464. package/source/class/qx/test/bom/media/Audio.js +18 -14
  465. package/source/class/qx/test/bom/media/MediaTestCase.js +61 -66
  466. package/source/class/qx/test/bom/media/Video.js +39 -28
  467. package/source/class/qx/test/bom/request/Jsonp.js +60 -57
  468. package/source/class/qx/test/bom/request/Script.js +150 -138
  469. package/source/class/qx/test/bom/request/SimpleXhr.js +206 -134
  470. package/source/class/qx/test/bom/request/Xhr.js +179 -132
  471. package/source/class/qx/test/bom/request/XhrWithRemote.js +206 -160
  472. package/source/class/qx/test/bom/rest/Resource.js +345 -281
  473. package/source/class/qx/test/bom/rest/ResourceWithRemote.js +74 -57
  474. package/source/class/qx/test/bom/storage/Local.js +3 -4
  475. package/source/class/qx/test/bom/storage/Session.js +3 -4
  476. package/source/class/qx/test/bom/storage/WebStorageTestCase.js +28 -27
  477. package/source/class/qx/test/bom/webfonts/Abstract.js +8 -10
  478. package/source/class/qx/test/bom/webfonts/Manager.js +127 -80
  479. package/source/class/qx/test/bom/webfonts/Validator.js +36 -30
  480. package/source/class/qx/test/compiler/ClassFile.js +29 -11
  481. package/source/class/qx/test/compiler/jsdoc/Parser.js +122 -96
  482. package/source/class/qx/test/core/Assert.js +151 -86
  483. package/source/class/qx/test/core/Environment.js +162 -123
  484. package/source/class/qx/test/core/EventEmitterDummy.js +7 -8
  485. package/source/class/qx/test/core/InheritanceDummy.js +23 -33
  486. package/source/class/qx/test/core/MemoryManagement.js +13 -5
  487. package/source/class/qx/test/core/Object.js +106 -112
  488. package/source/class/qx/test/core/ObjectId.js +7 -6
  489. package/source/class/qx/test/core/Property.js +483 -387
  490. package/source/class/qx/test/core/PropertyHelper.js +49 -64
  491. package/source/class/qx/test/core/Target.js +9 -13
  492. package/source/class/qx/test/core/Validation.js +409 -136
  493. package/source/class/qx/test/data/DataArray.js +1059 -394
  494. package/source/class/qx/test/data/DataArrayWithChangeBubble.js +315 -172
  495. package/source/class/qx/test/data/__init__.js +4 -4
  496. package/source/class/qx/test/data/controller/Form.js +141 -99
  497. package/source/class/qx/test/data/controller/FormWithArrayAndModel.js +66 -51
  498. package/source/class/qx/test/data/controller/List.js +644 -336
  499. package/source/class/qx/test/data/controller/ListReverse.js +64 -63
  500. package/source/class/qx/test/data/controller/ListWithObjects.js +305 -149
  501. package/source/class/qx/test/data/controller/Object.js +252 -94
  502. package/source/class/qx/test/data/controller/Tree.js +1219 -383
  503. package/source/class/qx/test/data/controller/__init__.js +4 -4
  504. package/source/class/qx/test/data/marshal/Json.js +832 -447
  505. package/source/class/qx/test/data/marshal/__init__.js +4 -4
  506. package/source/class/qx/test/data/singlevalue/Array.js +383 -144
  507. package/source/class/qx/test/data/singlevalue/Deep.js +361 -175
  508. package/source/class/qx/test/data/singlevalue/Resolve.js +51 -29
  509. package/source/class/qx/test/data/singlevalue/Simple.js +530 -208
  510. package/source/class/qx/test/data/singlevalue/TextFieldDummy.js +32 -28
  511. package/source/class/qx/test/data/singlevalue/__init__.js +4 -4
  512. package/source/class/qx/test/data/store/Json.js +574 -313
  513. package/source/class/qx/test/data/store/Jsonp.js +103 -77
  514. package/source/class/qx/test/data/store/Offline.js +127 -110
  515. package/source/class/qx/test/data/store/Rest.js +58 -52
  516. package/source/class/qx/test/data/store/RestWithRemote.js +36 -30
  517. package/source/class/qx/test/data/store/__init__.js +4 -4
  518. package/source/class/qx/test/dev/Debug.js +9 -13
  519. package/source/class/qx/test/dev/StackTrace.js +51 -42
  520. package/source/class/qx/test/dev/unit/Requirements.js +36 -49
  521. package/source/class/qx/test/dev/unit/Sinon.js +85 -73
  522. package/source/class/qx/test/dev/unit/TestCase.js +12 -17
  523. package/source/class/qx/test/dom/Element.js +17 -12
  524. package/source/class/qx/test/dom/Hierarchy.js +53 -38
  525. package/source/class/qx/test/dom/Node.js +97 -43
  526. package/source/class/qx/test/event/Bubbling.js +258 -88
  527. package/source/class/qx/test/event/Emitter.js +38 -39
  528. package/source/class/qx/test/event/GlobalError.js +59 -87
  529. package/source/class/qx/test/event/GlobalEventMonitors.js +22 -25
  530. package/source/class/qx/test/event/Messaging.js +66 -49
  531. package/source/class/qx/test/event/MockBubblingHandler.js +10 -15
  532. package/source/class/qx/test/event/MockHandler.js +14 -33
  533. package/source/class/qx/test/event/Registration.js +38 -32
  534. package/source/class/qx/test/event/Timer.js +61 -39
  535. package/source/class/qx/test/event/Utils.js +164 -123
  536. package/source/class/qx/test/event/dispatch/MouseCapture.js +61 -51
  537. package/source/class/qx/test/event/dispatch/MouseEventOnDocument.js +22 -23
  538. package/source/class/qx/test/event/dispatch/TestingHandler.js +8 -10
  539. package/source/class/qx/test/event/dispatch/TestingWindow.js +9 -13
  540. package/source/class/qx/test/event/dispatch/__init__.js +4 -4
  541. package/source/class/qx/test/event/handler/Offline.js +7 -8
  542. package/source/class/qx/test/event/message/Bus.js +112 -72
  543. package/source/class/qx/test/event/message/__init__.js +4 -4
  544. package/source/class/qx/test/event/type/Dom.js +12 -11
  545. package/source/class/qx/test/event/type/Event.js +7 -16
  546. package/source/class/qx/test/event/type/Mouse.js +12 -11
  547. package/source/class/qx/test/event/type/Native.js +12 -11
  548. package/source/class/qx/test/event/type/__init__.js +4 -4
  549. package/source/class/qx/test/event/util/Keyboard.js +4 -3
  550. package/source/class/qx/test/html/Element.js +538 -239
  551. package/source/class/qx/test/html/Iframe.js +85 -73
  552. package/source/class/qx/test/html/jsx/TestJsx.js +15 -4
  553. package/source/class/qx/test/html/jsx/TestJsxBrowser.js +37 -19
  554. package/source/class/qx/test/html/jsx/TestWidget.js +26 -26
  555. package/source/class/qx/test/io/ImageLoader.js +256 -160
  556. package/source/class/qx/test/io/MAssert.js +7 -7
  557. package/source/class/qx/test/io/MRemoteTest.js +9 -11
  558. package/source/class/qx/test/io/__init__.js +4 -4
  559. package/source/class/qx/test/io/graphql/Client.js +135 -114
  560. package/source/class/qx/test/io/graphql/ClientFetch.js +4 -4
  561. package/source/class/qx/test/io/graphql/Request.js +12 -13
  562. package/source/class/qx/test/io/jsonrpc/Client.js +135 -69
  563. package/source/class/qx/test/io/jsonrpc/Protocol.js +42 -14
  564. package/source/class/qx/test/io/request/Jsonp.js +23 -20
  565. package/source/class/qx/test/io/request/JsonpWithRemote.js +25 -22
  566. package/source/class/qx/test/io/request/MRequest.js +137 -114
  567. package/source/class/qx/test/io/request/Xhr.js +367 -209
  568. package/source/class/qx/test/io/request/XhrWithRemote.js +133 -100
  569. package/source/class/qx/test/io/rest/Resource.js +325 -270
  570. package/source/class/qx/test/io/rest/ResourceWithRemote.js +75 -58
  571. package/source/class/qx/test/io/transport/PostMessage.js +5 -5
  572. package/source/class/qx/test/io/transport/Websocket.js +9 -8
  573. package/source/class/qx/test/lang/Array.js +79 -105
  574. package/source/class/qx/test/lang/Function.js +64 -53
  575. package/source/class/qx/test/lang/Json.js +51 -79
  576. package/source/class/qx/test/lang/Number.js +4 -6
  577. package/source/class/qx/test/lang/Object.js +143 -133
  578. package/source/class/qx/test/lang/String.js +151 -95
  579. package/source/class/qx/test/lang/Type.js +34 -44
  580. package/source/class/qx/test/lang/Webkit.js +8 -13
  581. package/source/class/qx/test/lang/normalize/Array.js +121 -68
  582. package/source/class/qx/test/lang/normalize/Date.js +232 -49
  583. package/source/class/qx/test/lang/normalize/Error.js +5 -8
  584. package/source/class/qx/test/lang/normalize/Function.js +7 -13
  585. package/source/class/qx/test/lang/normalize/Object.js +22 -29
  586. package/source/class/qx/test/lang/normalize/String.js +19 -28
  587. package/source/class/qx/test/locale/Date.js +91 -43
  588. package/source/class/qx/test/locale/Locale.js +52 -32
  589. package/source/class/qx/test/locale/LocalizedString.js +12 -12
  590. package/source/class/qx/test/log/DeprecationMethodOverriding.js +52 -31
  591. package/source/class/qx/test/log/Filters.js +6 -3
  592. package/source/class/qx/test/log/Formatter.js +13 -7
  593. package/source/class/qx/test/log/Logger.js +19 -29
  594. package/source/class/qx/test/log/RingBuffer.js +14 -25
  595. package/source/class/qx/test/log/__init__.js +4 -4
  596. package/source/class/qx/test/log/fixture/ClassA.js +22 -22
  597. package/source/class/qx/test/log/fixture/ClassB1.js +7 -9
  598. package/source/class/qx/test/log/fixture/ClassB2.js +5 -7
  599. package/source/class/qx/test/log/fixture/ClassC1.js +5 -7
  600. package/source/class/qx/test/log/fixture/ClassC2.js +7 -9
  601. package/source/class/qx/test/mobile/LocaleSwitch.js +29 -36
  602. package/source/class/qx/test/mobile/MobileTestCase.js +39 -49
  603. package/source/class/qx/test/mobile/basic/Atom.js +129 -53
  604. package/source/class/qx/test/mobile/basic/Image.js +41 -31
  605. package/source/class/qx/test/mobile/basic/Label.js +6 -10
  606. package/source/class/qx/test/mobile/container/Carousel.js +41 -45
  607. package/source/class/qx/test/mobile/container/Composite.js +48 -65
  608. package/source/class/qx/test/mobile/container/Drawer.js +42 -29
  609. package/source/class/qx/test/mobile/container/Navigation.js +14 -20
  610. package/source/class/qx/test/mobile/container/Scroll.js +23 -19
  611. package/source/class/qx/test/mobile/core/Widget.js +150 -86
  612. package/source/class/qx/test/mobile/dialog/Menu.js +47 -26
  613. package/source/class/qx/test/mobile/dialog/Popup.js +30 -19
  614. package/source/class/qx/test/mobile/embed/Html.js +5 -8
  615. package/source/class/qx/test/mobile/form/Button.js +15 -13
  616. package/source/class/qx/test/mobile/form/CheckBox.js +21 -17
  617. package/source/class/qx/test/mobile/form/Form.js +37 -24
  618. package/source/class/qx/test/mobile/form/Group.js +5 -9
  619. package/source/class/qx/test/mobile/form/Label.js +11 -13
  620. package/source/class/qx/test/mobile/form/NumberField.js +49 -45
  621. package/source/class/qx/test/mobile/form/RadioButton.js +30 -19
  622. package/source/class/qx/test/mobile/form/SelectBox.js +39 -25
  623. package/source/class/qx/test/mobile/form/SingleRenderer.js +31 -27
  624. package/source/class/qx/test/mobile/form/Slider.js +55 -35
  625. package/source/class/qx/test/mobile/form/TextArea.js +34 -24
  626. package/source/class/qx/test/mobile/form/TextField.js +34 -24
  627. package/source/class/qx/test/mobile/form/ToggleButton.js +10 -14
  628. package/source/class/qx/test/mobile/layout/Card.js +21 -17
  629. package/source/class/qx/test/mobile/layout/HBox.js +25 -20
  630. package/source/class/qx/test/mobile/layout/VBox.js +25 -21
  631. package/source/class/qx/test/mobile/list/List.js +114 -83
  632. package/source/class/qx/test/mobile/navigationbar/NavigationBar.js +5 -9
  633. package/source/class/qx/test/mobile/page/Manager.js +7 -13
  634. package/source/class/qx/test/mobile/page/NavigationPage.js +7 -17
  635. package/source/class/qx/test/mobile/page/Page.js +101 -68
  636. package/source/class/qx/test/mobile/tabbar/TabBar.js +11 -21
  637. package/source/class/qx/test/mobile/toolbar/Toolbar.js +16 -16
  638. package/source/class/qx/test/performance/BaseCall.js +31 -36
  639. package/source/class/qx/test/performance/Event.js +60 -53
  640. package/source/class/qx/test/performance/Object.js +16 -22
  641. package/source/class/qx/test/performance/Property.js +20 -22
  642. package/source/class/qx/test/performance/data/Marshaling.js +25 -30
  643. package/source/class/qx/test/performance/decorator/AbstractDecorator.js +22 -34
  644. package/source/class/qx/test/performance/decorator/Background.js +4 -6
  645. package/source/class/qx/test/performance/decorator/BackgroundScale.js +6 -8
  646. package/source/class/qx/test/performance/decorator/Single.js +4 -6
  647. package/source/class/qx/test/performance/element/Element.js +50 -67
  648. package/source/class/qx/test/performance/widget/AbstractWidget.js +31 -44
  649. package/source/class/qx/test/performance/widget/Button.js +5 -7
  650. package/source/class/qx/test/performance/widget/Label.js +5 -7
  651. package/source/class/qx/test/performance/widget/RichLabel.js +6 -8
  652. package/source/class/qx/test/performance/widget/Widget.js +5 -7
  653. package/source/class/qx/test/performance/widget/WidgetWithDecorator.js +7 -9
  654. package/source/class/qx/test/performance/widget/WidgetWithSingle.js +9 -11
  655. package/source/class/qx/test/renderer/Color.js +22 -49
  656. package/source/class/qx/test/testclasses/BaseClassBoth.js +11 -8
  657. package/source/class/qx/test/testclasses/BaseClassIncluded.js +5 -6
  658. package/source/class/qx/test/testclasses/BaseClassPatched.js +15 -8
  659. package/source/class/qx/test/testclasses/DerivedClassBoth.js +7 -7
  660. package/source/class/qx/test/testclasses/DerivedClassIncluded.js +7 -7
  661. package/source/class/qx/test/testclasses/DerivedClassPatched.js +7 -7
  662. package/source/class/qx/test/testclasses/MMixinOne.js +4 -4
  663. package/source/class/qx/test/testclasses/MMixinTwo.js +2 -2
  664. package/source/class/qx/test/testclasses/RootClass.js +8 -8
  665. package/source/class/qx/test/theme/__init__.js +4 -4
  666. package/source/class/qx/test/theme/manager/Color.js +52 -66
  667. package/source/class/qx/test/theme/manager/Decoration.js +177 -154
  668. package/source/class/qx/test/theme/manager/Font.js +68 -39
  669. package/source/class/qx/test/theme/manager/Icon.js +46 -43
  670. package/source/class/qx/test/theme/manager/Meta.js +121 -110
  671. package/source/class/qx/test/theme/manager/__init__.js +4 -4
  672. package/source/class/qx/test/theme/manager/mock/Appearance.js +17 -23
  673. package/source/class/qx/test/theme/manager/mock/Color.js +7 -9
  674. package/source/class/qx/test/theme/manager/mock/Decoration.js +7 -10
  675. package/source/class/qx/test/theme/manager/mock/Font.js +6 -10
  676. package/source/class/qx/test/theme/simple/Appearance.js +268 -210
  677. package/source/class/qx/test/tool/utils/Utils.js +10 -8
  678. package/source/class/qx/test/toolchain/PrivateOptimization.js +20 -13
  679. package/source/class/qx/test/toolchain/TestRunner.js +12 -12
  680. package/source/class/qx/test/toolchain/VariantOptimization.js +37 -26
  681. package/source/class/qx/test/toolchain/__init__.js +4 -4
  682. package/source/class/qx/test/type/Array.js +8 -12
  683. package/source/class/qx/test/type/BaseArray.js +58 -78
  684. package/source/class/qx/test/type/BaseString.js +27 -65
  685. package/source/class/qx/test/type/__init__.js +4 -4
  686. package/source/class/qx/test/ui/BackgroundColor.js +20 -21
  687. package/source/class/qx/test/ui/ChildrenHandling.js +136 -81
  688. package/source/class/qx/test/ui/Destroy.js +310 -248
  689. package/source/class/qx/test/ui/Focus.js +40 -87
  690. package/source/class/qx/test/ui/Insets.js +14 -18
  691. package/source/class/qx/test/ui/LayoutTestCase.js +99 -92
  692. package/source/class/qx/test/ui/LocaleSwitch.js +37 -41
  693. package/source/class/qx/test/ui/RadioItems.js +11 -22
  694. package/source/class/qx/test/ui/Widget.js +13 -17
  695. package/source/class/qx/test/ui/Window.js +26 -39
  696. package/source/class/qx/test/ui/basic/Atom.js +37 -25
  697. package/source/class/qx/test/ui/basic/Image.js +179 -138
  698. package/source/class/qx/test/ui/basic/Label.js +147 -65
  699. package/source/class/qx/test/ui/basic/__init__.js +4 -4
  700. package/source/class/qx/test/ui/command/Command.js +105 -69
  701. package/source/class/qx/test/ui/command/Group.js +24 -21
  702. package/source/class/qx/test/ui/command/GroupManager.js +7 -12
  703. package/source/class/qx/test/ui/container/Stack.js +26 -36
  704. package/source/class/qx/test/ui/core/AbstractScrollArea.js +84 -67
  705. package/source/class/qx/test/ui/core/Appearance.js +53 -54
  706. package/source/class/qx/test/ui/core/Blocker.js +80 -44
  707. package/source/class/qx/test/ui/core/DragDropScrolling.js +69 -55
  708. package/source/class/qx/test/ui/core/Placement.js +22 -34
  709. package/source/class/qx/test/ui/core/Queues.js +28 -39
  710. package/source/class/qx/test/ui/core/SizeHint.js +32 -76
  711. package/source/class/qx/test/ui/core/SizeHintX.js +8 -15
  712. package/source/class/qx/test/ui/core/SizeHintY.js +8 -15
  713. package/source/class/qx/test/ui/core/Spacer.js +11 -18
  714. package/source/class/qx/test/ui/core/Widget.js +117 -112
  715. package/source/class/qx/test/ui/core/__init__.js +4 -4
  716. package/source/class/qx/test/ui/decoration/LinearGradient.js +18 -14
  717. package/source/class/qx/test/ui/embed/Iframe.js +69 -65
  718. package/source/class/qx/test/ui/embed/__init__.js +4 -4
  719. package/source/class/qx/test/ui/form/AbstractSelectBox.js +11 -16
  720. package/source/class/qx/test/ui/form/AbstractVirtualBox.js +12 -19
  721. package/source/class/qx/test/ui/form/BooleanFormat.js +40 -25
  722. package/source/class/qx/test/ui/form/Color.js +29 -19
  723. package/source/class/qx/test/ui/form/ComboBox.js +39 -25
  724. package/source/class/qx/test/ui/form/Date.js +34 -21
  725. package/source/class/qx/test/ui/form/DateField.js +16 -19
  726. package/source/class/qx/test/ui/form/Executable.js +98 -68
  727. package/source/class/qx/test/ui/form/Field.js +65 -54
  728. package/source/class/qx/test/ui/form/Form.js +211 -123
  729. package/source/class/qx/test/ui/form/FormManager.js +72 -100
  730. package/source/class/qx/test/ui/form/FormValidator.js +549 -399
  731. package/source/class/qx/test/ui/form/Label.js +87 -65
  732. package/source/class/qx/test/ui/form/List.js +19 -19
  733. package/source/class/qx/test/ui/form/MenuButton.js +26 -20
  734. package/source/class/qx/test/ui/form/ModelProperty.js +40 -36
  735. package/source/class/qx/test/ui/form/ModelSelection.js +39 -84
  736. package/source/class/qx/test/ui/form/NumberFormat.js +30 -19
  737. package/source/class/qx/test/ui/form/Placeholder.js +147 -87
  738. package/source/class/qx/test/ui/form/RadioButtonGroup.js +31 -26
  739. package/source/class/qx/test/ui/form/RadioGroup.js +58 -54
  740. package/source/class/qx/test/ui/form/Range.js +63 -28
  741. package/source/class/qx/test/ui/form/Renderer.js +39 -33
  742. package/source/class/qx/test/ui/form/Resetter.js +21 -35
  743. package/source/class/qx/test/ui/form/Slider.js +37 -21
  744. package/source/class/qx/test/ui/form/Spinner.js +9 -5
  745. package/source/class/qx/test/ui/form/SplitButton.js +7 -11
  746. package/source/class/qx/test/ui/form/StringFormat.js +60 -30
  747. package/source/class/qx/test/ui/form/TextArea.js +59 -41
  748. package/source/class/qx/test/ui/form/TextField.js +14 -16
  749. package/source/class/qx/test/ui/form/ToggleButton.js +20 -24
  750. package/source/class/qx/test/ui/form/VirtualSelectBox.js +66 -40
  751. package/source/class/qx/test/ui/form/__init__.js +4 -4
  752. package/source/class/qx/test/ui/form/virtual/VirtualComboBox.js +58 -60
  753. package/source/class/qx/test/ui/form/virtual/VirtualDropDownList.js +120 -110
  754. package/source/class/qx/test/ui/form/virtual/VirtualSelectBox.js +43 -27
  755. package/source/class/qx/test/ui/groupbox/CheckGroupBox.js +13 -18
  756. package/source/class/qx/test/ui/indicator/ProgressBar.js +73 -48
  757. package/source/class/qx/test/ui/layout/Box.js +23 -22
  758. package/source/class/qx/test/ui/layout/Flow.js +233 -153
  759. package/source/class/qx/test/ui/layout/Grid.js +88 -101
  760. package/source/class/qx/test/ui/layout/LayoutItem.js +57 -83
  761. package/source/class/qx/test/ui/layout/LayoutRoot.js +7 -11
  762. package/source/class/qx/test/ui/layout/Util.js +30 -31
  763. package/source/class/qx/test/ui/layout/__init__.js +4 -4
  764. package/source/class/qx/test/ui/list/AbstractListTest.js +13 -21
  765. package/source/class/qx/test/ui/list/Group.js +191 -114
  766. package/source/class/qx/test/ui/list/List.js +189 -132
  767. package/source/class/qx/test/ui/list/MAssert.js +14 -9
  768. package/source/class/qx/test/ui/list/ObjectGroup.js +131 -109
  769. package/source/class/qx/test/ui/list/core/MultiSelection.js +58 -44
  770. package/source/class/qx/test/ui/list/core/SingleSelection.js +43 -43
  771. package/source/class/qx/test/ui/list/fixture/GroupMock.js +6 -9
  772. package/source/class/qx/test/ui/list/fixture/ItemMock.js +9 -13
  773. package/source/class/qx/test/ui/root/Inline.js +22 -20
  774. package/source/class/qx/test/ui/selection/AbstractMultiSelectonTest.js +188 -105
  775. package/source/class/qx/test/ui/selection/AbstractSingleSelectonTest.js +173 -125
  776. package/source/class/qx/test/ui/selection/ListMultiSelection.js +19 -21
  777. package/source/class/qx/test/ui/selection/ListSingleSelection.js +19 -21
  778. package/source/class/qx/test/ui/selection/RadioGroup.js +41 -29
  779. package/source/class/qx/test/ui/selection/SelectBox.js +11 -17
  780. package/source/class/qx/test/ui/selection/Stack.js +22 -27
  781. package/source/class/qx/test/ui/selection/TabView.js +35 -26
  782. package/source/class/qx/test/ui/selection/TreeMultiSelection.js +14 -19
  783. package/source/class/qx/test/ui/selection/TreeSingleSelection.js +20 -24
  784. package/source/class/qx/test/ui/selection/__init__.js +4 -4
  785. package/source/class/qx/test/ui/table/Dispose.js +46 -46
  786. package/source/class/qx/test/ui/table/Table.js +74 -69
  787. package/source/class/qx/test/ui/table/__init__.js +4 -4
  788. package/source/class/qx/test/ui/table/celleditor/AbstractField.js +14 -28
  789. package/source/class/qx/test/ui/table/celleditor/ComboBox.js +11 -18
  790. package/source/class/qx/test/ui/table/celleditor/PasswordField.js +6 -10
  791. package/source/class/qx/test/ui/table/celleditor/SelectBox.js +16 -32
  792. package/source/class/qx/test/ui/table/celleditor/TextField.js +6 -9
  793. package/source/class/qx/test/ui/table/celleditor/__init__.js +4 -4
  794. package/source/class/qx/test/ui/table/columnmodel/Basic.js +130 -129
  795. package/source/class/qx/test/ui/table/model/Filtered.js +51 -36
  796. package/source/class/qx/test/ui/table/model/Simple.js +43 -45
  797. package/source/class/qx/test/ui/table/selection/Model.js +70 -22
  798. package/source/class/qx/test/ui/toolbar/OverflowHandling.js +145 -123
  799. package/source/class/qx/test/ui/toolbar/ToolBar.js +20 -30
  800. package/source/class/qx/test/ui/tree/Tree.js +63 -42
  801. package/source/class/qx/test/ui/tree/TreeFolder.js +44 -46
  802. package/source/class/qx/test/ui/tree/virtual/AbstractTreeTest.js +61 -96
  803. package/source/class/qx/test/ui/tree/virtual/MultiSelection.js +68 -39
  804. package/source/class/qx/test/ui/tree/virtual/OneSelection.js +82 -42
  805. package/source/class/qx/test/ui/tree/virtual/OpenCloseController.js +80 -101
  806. package/source/class/qx/test/ui/tree/virtual/SingleSelection.js +40 -32
  807. package/source/class/qx/test/ui/tree/virtual/Sorting.js +46 -47
  808. package/source/class/qx/test/ui/tree/virtual/Tree.js +267 -191
  809. package/source/class/qx/test/ui/tree/virtual/TreeItem.js +60 -63
  810. package/source/class/qx/test/ui/tree/virtual/UtilTest.js +65 -50
  811. package/source/class/qx/test/ui/tree/virtual/WidgetProvider.js +127 -132
  812. package/source/class/qx/test/ui/virtual/Axis.js +210 -193
  813. package/source/class/qx/test/ui/virtual/Pane.js +287 -190
  814. package/source/class/qx/test/ui/virtual/PaneUpdate.js +71 -77
  815. package/source/class/qx/test/ui/virtual/PointerEventMock.js +10 -13
  816. package/source/class/qx/test/ui/virtual/Scroller.js +29 -39
  817. package/source/class/qx/test/ui/virtual/__init__.js +4 -4
  818. package/source/class/qx/test/ui/virtual/cell/WidgetCell.js +39 -40
  819. package/source/class/qx/test/ui/virtual/layer/CellSpanManager.js +157 -127
  820. package/source/class/qx/test/ui/virtual/layer/Column.js +6 -10
  821. package/source/class/qx/test/ui/virtual/layer/GridLines.js +6 -10
  822. package/source/class/qx/test/ui/virtual/layer/GridLinesHorizontal.js +6 -9
  823. package/source/class/qx/test/ui/virtual/layer/GridLinesVertical.js +6 -9
  824. package/source/class/qx/test/ui/virtual/layer/HtmlCell.js +12 -19
  825. package/source/class/qx/test/ui/virtual/layer/HtmlCellSpan.js +13 -21
  826. package/source/class/qx/test/ui/virtual/layer/LayerMock.js +31 -43
  827. package/source/class/qx/test/ui/virtual/layer/LayerSimple.js +26 -26
  828. package/source/class/qx/test/ui/virtual/layer/LayerTestCase.js +52 -50
  829. package/source/class/qx/test/ui/virtual/layer/Row.js +6 -10
  830. package/source/class/qx/test/ui/virtual/layer/WidgetCell.js +45 -52
  831. package/source/class/qx/test/ui/virtual/layer/WidgetCellSpan.js +71 -48
  832. package/source/class/qx/test/ui/virtual/layer/__init__.js +4 -4
  833. package/source/class/qx/test/ui/virtual/performance/AbstractLayerTest.js +84 -68
  834. package/source/class/qx/test/ui/virtual/performance/DomCell.js +6 -9
  835. package/source/class/qx/test/ui/virtual/performance/DomPoolCell.js +6 -9
  836. package/source/class/qx/test/ui/virtual/performance/HtmlDivCell.js +7 -11
  837. package/source/class/qx/test/ui/virtual/performance/HtmlDivRelative.js +6 -9
  838. package/source/class/qx/test/ui/virtual/performance/HtmlTableCell.js +8 -13
  839. package/source/class/qx/test/ui/virtual/performance/HtmlTableCellNaive.js +8 -13
  840. package/source/class/qx/test/ui/virtual/performance/HtmlTableCssCell.js +8 -19
  841. package/source/class/qx/test/ui/virtual/performance/WidgetCell.js +10 -15
  842. package/source/class/qx/test/ui/virtual/performance/__init__.js +4 -4
  843. package/source/class/qx/test/ui/virtual/performance/layer/DomCell.js +24 -18
  844. package/source/class/qx/test/ui/virtual/performance/layer/DomPoolCell.js +28 -26
  845. package/source/class/qx/test/ui/virtual/performance/layer/HtmlDivRelative.js +13 -17
  846. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCell.js +29 -28
  847. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCellNaive.js +22 -24
  848. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCssCell.js +32 -47
  849. package/source/class/qx/test/ui/virtual/performance/layer/__init__.js +4 -4
  850. package/source/class/qx/test/ui/window/Desktop.js +21 -12
  851. package/source/class/qx/test/util/Base64.js +10 -13
  852. package/source/class/qx/test/util/ColorUtil.js +121 -54
  853. package/source/class/qx/test/util/DateFormat.js +582 -351
  854. package/source/class/qx/test/util/DateMock.js +16 -19
  855. package/source/class/qx/test/util/DeferredCall.js +12 -13
  856. package/source/class/qx/test/util/Delegate.js +28 -26
  857. package/source/class/qx/test/util/DisposeUtil.js +32 -14
  858. package/source/class/qx/test/util/DynamicScriptLoader.js +99 -64
  859. package/source/class/qx/test/util/Fsm.js +16 -18
  860. package/source/class/qx/test/util/Function.js +23 -19
  861. package/source/class/qx/test/util/LibraryManager.js +15 -22
  862. package/source/class/qx/test/util/NumberFormat.js +53 -64
  863. package/source/class/qx/test/util/PropertyUtil.js +35 -35
  864. package/source/class/qx/test/util/Request.js +26 -18
  865. package/source/class/qx/test/util/ResourceManager.js +50 -35
  866. package/source/class/qx/test/util/ResponseParser.js +45 -35
  867. package/source/class/qx/test/util/RingBuffer.js +15 -28
  868. package/source/class/qx/test/util/Serializer.js +210 -153
  869. package/source/class/qx/test/util/StringBuilder.js +7 -13
  870. package/source/class/qx/test/util/StringSplit.js +114 -69
  871. package/source/class/qx/test/util/Uri.js +74 -78
  872. package/source/class/qx/test/util/Validate.js +95 -64
  873. package/source/class/qx/test/util/placement/BestFitAxis.js +17 -26
  874. package/source/class/qx/test/util/placement/DirectAxis.js +8 -11
  875. package/source/class/qx/test/util/placement/KeepAlignAxis.js +17 -26
  876. package/source/class/qx/test/util/placement/Placement.js +607 -244
  877. package/source/class/qx/test/util/placement/__init__.js +4 -4
  878. package/source/class/qx/theme/Classic.js +9 -11
  879. package/source/class/qx/theme/Indigo.js +9 -11
  880. package/source/class/qx/theme/Modern.js +9 -11
  881. package/source/class/qx/theme/Simple.js +9 -11
  882. package/source/class/qx/theme/TangibleDark.js +1 -1
  883. package/source/class/qx/theme/TangibleLight.js +1 -1
  884. package/source/class/qx/theme/__init__.js +4 -4
  885. package/source/class/qx/theme/classic/Appearance.js +995 -1336
  886. package/source/class/qx/theme/classic/Color.js +83 -83
  887. package/source/class/qx/theme/classic/Decoration.js +318 -299
  888. package/source/class/qx/theme/classic/Font.js +38 -25
  889. package/source/class/qx/theme/icon/Oxygen.js +4 -5
  890. package/source/class/qx/theme/icon/Tango.js +4 -5
  891. package/source/class/qx/theme/indigo/Appearance.js +66 -85
  892. package/source/class/qx/theme/indigo/Color.js +65 -66
  893. package/source/class/qx/theme/indigo/Decoration.js +31 -45
  894. package/source/class/qx/theme/indigo/Font.js +20 -29
  895. package/source/class/qx/theme/manager/Appearance.js +58 -91
  896. package/source/class/qx/theme/manager/Color.js +20 -41
  897. package/source/class/qx/theme/manager/Decoration.js +72 -100
  898. package/source/class/qx/theme/manager/Font.js +51 -67
  899. package/source/class/qx/theme/manager/Icon.js +13 -27
  900. package/source/class/qx/theme/manager/Meta.js +27 -44
  901. package/source/class/qx/theme/modern/Appearance.js +1049 -1440
  902. package/source/class/qx/theme/modern/Color.js +155 -166
  903. package/source/class/qx/theme/modern/Decoration.js +471 -598
  904. package/source/class/qx/theme/modern/Font.js +59 -52
  905. package/source/class/qx/theme/simple/Appearance.js +936 -1207
  906. package/source/class/qx/theme/simple/Color.js +62 -62
  907. package/source/class/qx/theme/simple/Decoration.js +456 -678
  908. package/source/class/qx/theme/simple/Font.js +18 -25
  909. package/source/class/qx/theme/simple/Image.js +49 -52
  910. package/source/class/qx/theme/tangible/Appearance.js +1575 -1743
  911. package/source/class/qx/theme/tangible/ColorDark.js +5 -5
  912. package/source/class/qx/theme/tangible/ColorEngine.js +38 -35
  913. package/source/class/qx/theme/tangible/ColorLight.js +7 -7
  914. package/source/class/qx/theme/tangible/Decoration.js +1108 -1300
  915. package/source/class/qx/theme/tangible/Font.js +66 -70
  916. package/source/class/qx/theme/tangible/Image.js +44 -48
  917. package/source/class/qx/tool/cli/Application.js +5 -5
  918. package/source/class/qx/tool/cli/Cli.js +103 -52
  919. package/source/class/qx/tool/cli/ConfigDb.js +18 -15
  920. package/source/class/qx/tool/cli/LibraryApplication.js +1 -1
  921. package/source/class/qx/tool/cli/Watch.js +174 -102
  922. package/source/class/qx/tool/cli/api/AbstractApi.js +17 -18
  923. package/source/class/qx/tool/cli/api/CompilerApi.js +15 -8
  924. package/source/class/qx/tool/cli/api/LibraryApi.js +4 -6
  925. package/source/class/qx/tool/cli/api/Test.js +12 -9
  926. package/source/class/qx/tool/cli/commands/Add.js +12 -15
  927. package/source/class/qx/tool/cli/commands/Clean.js +10 -9
  928. package/source/class/qx/tool/cli/commands/Command.js +18 -13
  929. package/source/class/qx/tool/cli/commands/Compile.js +630 -264
  930. package/source/class/qx/tool/cli/commands/Config.js +75 -42
  931. package/source/class/qx/tool/cli/commands/Create.js +108 -59
  932. package/source/class/qx/tool/cli/commands/Deploy.js +138 -86
  933. package/source/class/qx/tool/cli/commands/Es6ify.js +118 -0
  934. package/source/class/qx/tool/cli/commands/Lint.js +75 -34
  935. package/source/class/qx/tool/cli/commands/Migrate.js +13 -7
  936. package/source/class/qx/tool/cli/commands/Package.js +67 -45
  937. package/source/class/qx/tool/cli/commands/Pkg.js +21 -18
  938. package/source/class/qx/tool/cli/commands/Run.js +57 -37
  939. package/source/class/qx/tool/cli/commands/Serve.js +62 -37
  940. package/source/class/qx/tool/cli/commands/Test.js +40 -18
  941. package/source/class/qx/tool/cli/commands/add/Class.js +66 -28
  942. package/source/class/qx/tool/cli/commands/add/Script.js +54 -27
  943. package/source/class/qx/tool/cli/commands/package/Install.js +265 -103
  944. package/source/class/qx/tool/cli/commands/package/List.js +199 -75
  945. package/source/class/qx/tool/cli/commands/package/Migrate.js +7 -3
  946. package/source/class/qx/tool/cli/commands/package/Publish.js +209 -117
  947. package/source/class/qx/tool/cli/commands/package/Remove.js +40 -17
  948. package/source/class/qx/tool/cli/commands/package/Update.js +115 -48
  949. package/source/class/qx/tool/cli/commands/package/Upgrade.js +41 -20
  950. package/source/class/qx/tool/compiler/Analyser.js +427 -222
  951. package/source/class/qx/tool/compiler/ClassFile.js +831 -401
  952. package/source/class/qx/tool/compiler/Console.js +136 -87
  953. package/source/class/qx/tool/compiler/Es6ify.js +404 -0
  954. package/source/class/qx/tool/compiler/Preprocess.js +28 -25
  955. package/source/class/qx/tool/compiler/app/Application.js +149 -72
  956. package/source/class/qx/tool/compiler/app/Cldr.js +506 -106
  957. package/source/class/qx/tool/compiler/app/Library.js +62 -27
  958. package/source/class/qx/tool/compiler/app/Part.js +10 -12
  959. package/source/class/qx/tool/compiler/app/Translation.js +189 -162
  960. package/source/class/qx/tool/compiler/app/WebFont.js +215 -161
  961. package/source/class/qx/tool/compiler/jsdoc/ChildControlParser.js +3 -3
  962. package/source/class/qx/tool/compiler/jsdoc/CommandParser.js +8 -9
  963. package/source/class/qx/tool/compiler/jsdoc/ParamParser.js +7 -6
  964. package/source/class/qx/tool/compiler/jsdoc/Parser.js +27 -18
  965. package/source/class/qx/tool/compiler/jsdoc/ReturnParser.js +3 -3
  966. package/source/class/qx/tool/compiler/jsdoc/ThrowsParser.js +4 -4
  967. package/source/class/qx/tool/compiler/makers/AbstractAppMaker.js +5 -6
  968. package/source/class/qx/tool/compiler/makers/AppMaker.js +38 -18
  969. package/source/class/qx/tool/compiler/makers/Maker.js +29 -21
  970. package/source/class/qx/tool/compiler/resources/AbstractMatcher.js +8 -8
  971. package/source/class/qx/tool/compiler/resources/Asset.js +123 -61
  972. package/source/class/qx/tool/compiler/resources/ImageLoader.js +18 -8
  973. package/source/class/qx/tool/compiler/resources/Manager.js +156 -93
  974. package/source/class/qx/tool/compiler/resources/MetaLoader.js +5 -3
  975. package/source/class/qx/tool/compiler/resources/ResourceConverter.js +8 -8
  976. package/source/class/qx/tool/compiler/resources/ResourceLoader.js +8 -9
  977. package/source/class/qx/tool/compiler/resources/ScssConverter.js +54 -18
  978. package/source/class/qx/tool/compiler/resources/ScssFile.js +157 -80
  979. package/source/class/qx/tool/compiler/resources/ScssIncludeConverter.js +3 -3
  980. package/source/class/qx/tool/compiler/targets/BuildTarget.js +23 -13
  981. package/source/class/qx/tool/compiler/targets/SourceCodeCopier.js +29 -9
  982. package/source/class/qx/tool/compiler/targets/SourceTarget.js +2 -2
  983. package/source/class/qx/tool/compiler/targets/Target.js +292 -188
  984. package/source/class/qx/tool/compiler/targets/TypeScriptWriter.js +163 -103
  985. package/source/class/qx/tool/compiler/targets/meta/AbstractJavascriptMeta.js +48 -23
  986. package/source/class/qx/tool/compiler/targets/meta/ApplicationMeta.js +75 -62
  987. package/source/class/qx/tool/compiler/targets/meta/BootJs.js +49 -29
  988. package/source/class/qx/tool/compiler/targets/meta/Javascript.js +6 -7
  989. package/source/class/qx/tool/compiler/targets/meta/Package.js +54 -51
  990. package/source/class/qx/tool/compiler/targets/meta/PackageJavascript.js +41 -21
  991. package/source/class/qx/tool/compiler/targets/meta/Part.js +9 -10
  992. package/source/class/qx/tool/compiler/targets/meta/PolyfillJs.js +10 -5
  993. package/source/class/qx/tool/compiler/targets/meta/Uglify.js +35 -23
  994. package/source/class/qx/tool/config/Abstract.js +61 -25
  995. package/source/class/qx/tool/config/Compile.js +3 -2
  996. package/source/class/qx/tool/config/Lockfile.js +3 -2
  997. package/source/class/qx/tool/config/Manifest.js +3 -2
  998. package/source/class/qx/tool/config/Registry.js +4 -3
  999. package/source/class/qx/tool/config/Utils.js +88 -37
  1000. package/source/class/qx/tool/migration/BaseMigration.js +67 -25
  1001. package/source/class/qx/tool/migration/M6_0_0.js +96 -46
  1002. package/source/class/qx/tool/migration/M7_0_0.js +12 -6
  1003. package/source/class/qx/tool/migration/Runner.js +28 -14
  1004. package/source/class/qx/tool/utils/IndexedArray.js +15 -18
  1005. package/source/class/qx/tool/utils/Json.js +35 -14
  1006. package/source/class/qx/tool/utils/LogManager.js +50 -26
  1007. package/source/class/qx/tool/utils/Logger.js +11 -12
  1008. package/source/class/qx/tool/utils/Promisify.js +45 -49
  1009. package/source/class/qx/tool/utils/Utils.js +63 -48
  1010. package/source/class/qx/tool/utils/Values.js +4 -7
  1011. package/source/class/qx/tool/utils/Website.js +82 -29
  1012. package/source/class/qx/tool/utils/files/FindFiles.js +37 -33
  1013. package/source/class/qx/tool/utils/files/Utils.js +74 -54
  1014. package/source/class/qx/tool/utils/json/Parser.js +163 -54
  1015. package/source/class/qx/tool/utils/json/Stringify.js +87 -72
  1016. package/source/class/qx/tool/utils/json/Tokenizer.js +64 -39
  1017. package/source/class/qx/tool/utils/json/Writer.js +20 -21
  1018. package/source/class/qx/type/Array.js +19 -41
  1019. package/source/class/qx/type/BaseArray.js +136 -151
  1020. package/source/class/qx/type/BaseError.js +17 -34
  1021. package/source/class/qx/type/BaseString.js +104 -121
  1022. package/source/class/qx/type/__init__.js +3 -3
  1023. package/source/class/qx/ui/basic/Atom.js +75 -109
  1024. package/source/class/qx/ui/basic/Image.js +283 -319
  1025. package/source/class/qx/ui/basic/Label.js +161 -208
  1026. package/source/class/qx/ui/command/Command.js +51 -86
  1027. package/source/class/qx/ui/command/Group.js +43 -50
  1028. package/source/class/qx/ui/command/GroupManager.js +50 -53
  1029. package/source/class/qx/ui/container/Composite.js +15 -29
  1030. package/source/class/qx/ui/container/Resizer.js +7 -11
  1031. package/source/class/qx/ui/container/Scroll.js +10 -21
  1032. package/source/class/qx/ui/container/SlideBar.js +76 -119
  1033. package/source/class/qx/ui/container/Stack.js +27 -54
  1034. package/source/class/qx/ui/control/ColorPopup.js +109 -130
  1035. package/source/class/qx/ui/control/ColorSelector.js +334 -301
  1036. package/source/class/qx/ui/control/DateChooser.js +143 -177
  1037. package/source/class/qx/ui/core/Blocker.js +91 -127
  1038. package/source/class/qx/ui/core/ColumnData.js +16 -34
  1039. package/source/class/qx/ui/core/DragDropCursor.js +17 -30
  1040. package/source/class/qx/ui/core/DragDropScrolling.js +8 -14
  1041. package/source/class/qx/ui/core/EventHandler.js +108 -132
  1042. package/source/class/qx/ui/core/FocusHandler.js +78 -127
  1043. package/source/class/qx/ui/core/IMultiSelection.js +5 -9
  1044. package/source/class/qx/ui/core/ISingleSelection.js +10 -16
  1045. package/source/class/qx/ui/core/ISingleSelectionProvider.js +4 -6
  1046. package/source/class/qx/ui/core/LayoutItem.js +190 -306
  1047. package/source/class/qx/ui/core/MBlocker.js +22 -38
  1048. package/source/class/qx/ui/core/MChildrenHandling.js +14 -29
  1049. package/source/class/qx/ui/core/MContentPadding.js +50 -69
  1050. package/source/class/qx/ui/core/MDragDropScrolling.js +82 -80
  1051. package/source/class/qx/ui/core/MExecutable.js +27 -52
  1052. package/source/class/qx/ui/core/MLayoutHandling.js +6 -14
  1053. package/source/class/qx/ui/core/MMovable.js +64 -80
  1054. package/source/class/qx/ui/core/MMultiSelectionHandling.js +68 -87
  1055. package/source/class/qx/ui/core/MNativeOverflow.js +16 -26
  1056. package/source/class/qx/ui/core/MPlacement.js +171 -170
  1057. package/source/class/qx/ui/core/MRemoteChildrenHandling.js +14 -27
  1058. package/source/class/qx/ui/core/MRemoteLayoutHandling.js +4 -7
  1059. package/source/class/qx/ui/core/MResizable.js +142 -175
  1060. package/source/class/qx/ui/core/MSingleSelectionHandling.js +40 -45
  1061. package/source/class/qx/ui/core/SingleSelectionManager.js +41 -60
  1062. package/source/class/qx/ui/core/Spacer.js +12 -22
  1063. package/source/class/qx/ui/core/Widget.js +628 -983
  1064. package/source/class/qx/ui/core/queue/Appearance.js +15 -24
  1065. package/source/class/qx/ui/core/queue/Dispose.js +7 -16
  1066. package/source/class/qx/ui/core/queue/Layout.js +44 -71
  1067. package/source/class/qx/ui/core/queue/Manager.js +140 -133
  1068. package/source/class/qx/ui/core/queue/Visibility.js +21 -39
  1069. package/source/class/qx/ui/core/queue/Widget.js +15 -26
  1070. package/source/class/qx/ui/core/scroll/AbstractScrollArea.js +124 -162
  1071. package/source/class/qx/ui/core/scroll/IScrollBar.js +13 -24
  1072. package/source/class/qx/ui/core/scroll/MRoll.js +14 -19
  1073. package/source/class/qx/ui/core/scroll/MScrollBarFactory.js +3 -6
  1074. package/source/class/qx/ui/core/scroll/MWheelHandling.js +10 -12
  1075. package/source/class/qx/ui/core/scroll/NativeScrollBar.js +101 -125
  1076. package/source/class/qx/ui/core/scroll/ScrollBar.js +86 -130
  1077. package/source/class/qx/ui/core/scroll/ScrollPane.js +95 -134
  1078. package/source/class/qx/ui/core/scroll/ScrollSlider.js +13 -19
  1079. package/source/class/qx/ui/core/scroll/__init__.js +4 -4
  1080. package/source/class/qx/ui/core/selection/Abstract.js +255 -456
  1081. package/source/class/qx/ui/core/selection/ScrollArea.js +35 -73
  1082. package/source/class/qx/ui/core/selection/Widget.js +57 -120
  1083. package/source/class/qx/ui/decoration/Abstract.js +11 -20
  1084. package/source/class/qx/ui/decoration/Decorator.js +56 -55
  1085. package/source/class/qx/ui/decoration/IDecorator.js +5 -11
  1086. package/source/class/qx/ui/decoration/MBackgroundColor.js +13 -20
  1087. package/source/class/qx/ui/decoration/MBackgroundImage.js +82 -77
  1088. package/source/class/qx/ui/decoration/MBorderImage.js +72 -94
  1089. package/source/class/qx/ui/decoration/MBorderRadius.js +35 -38
  1090. package/source/class/qx/ui/decoration/MBoxShadow.js +61 -55
  1091. package/source/class/qx/ui/decoration/MDoubleBorder.js +157 -155
  1092. package/source/class/qx/ui/decoration/MLinearBackgroundGradient.js +169 -89
  1093. package/source/class/qx/ui/decoration/MSingleBorder.js +138 -124
  1094. package/source/class/qx/ui/decoration/MTransition.js +46 -42
  1095. package/source/class/qx/ui/decoration/__init__.js +2 -2
  1096. package/source/class/qx/ui/embed/AbstractIframe.js +37 -55
  1097. package/source/class/qx/ui/embed/Canvas.js +34 -66
  1098. package/source/class/qx/ui/embed/Html.js +46 -70
  1099. package/source/class/qx/ui/embed/Iframe.js +178 -158
  1100. package/source/class/qx/ui/embed/ThemedIframe.js +91 -135
  1101. package/source/class/qx/ui/form/AbstractField.js +262 -303
  1102. package/source/class/qx/ui/form/AbstractSelectBox.js +65 -87
  1103. package/source/class/qx/ui/form/Button.js +35 -73
  1104. package/source/class/qx/ui/form/CheckBox.js +26 -48
  1105. package/source/class/qx/ui/form/CheckedList.js +41 -25
  1106. package/source/class/qx/ui/form/CheckedSelectBox.js +97 -62
  1107. package/source/class/qx/ui/form/ComboBox.js +93 -121
  1108. package/source/class/qx/ui/form/DateField.js +140 -181
  1109. package/source/class/qx/ui/form/Form.js +50 -69
  1110. package/source/class/qx/ui/form/HoverButton.js +37 -54
  1111. package/source/class/qx/ui/form/IArrayForm.js +8 -16
  1112. package/source/class/qx/ui/form/IBooleanForm.js +8 -16
  1113. package/source/class/qx/ui/form/IColorForm.js +8 -16
  1114. package/source/class/qx/ui/form/IDateForm.js +8 -16
  1115. package/source/class/qx/ui/form/IExecutable.js +7 -14
  1116. package/source/class/qx/ui/form/IField.js +7 -14
  1117. package/source/class/qx/ui/form/IForm.js +17 -32
  1118. package/source/class/qx/ui/form/IListItem.js +1 -4
  1119. package/source/class/qx/ui/form/IModel.js +7 -15
  1120. package/source/class/qx/ui/form/IModelForm.js +8 -16
  1121. package/source/class/qx/ui/form/IModelSelection.js +4 -8
  1122. package/source/class/qx/ui/form/INumberForm.js +8 -15
  1123. package/source/class/qx/ui/form/IRadioItem.js +8 -17
  1124. package/source/class/qx/ui/form/IRange.js +10 -20
  1125. package/source/class/qx/ui/form/IStringForm.js +8 -16
  1126. package/source/class/qx/ui/form/List.js +82 -122
  1127. package/source/class/qx/ui/form/ListItem.js +21 -38
  1128. package/source/class/qx/ui/form/MForm.js +35 -41
  1129. package/source/class/qx/ui/form/MModelProperty.js +9 -14
  1130. package/source/class/qx/ui/form/MModelSelection.js +30 -32
  1131. package/source/class/qx/ui/form/MenuButton.js +44 -75
  1132. package/source/class/qx/ui/form/PasswordField.js +4 -6
  1133. package/source/class/qx/ui/form/RadioButton.js +36 -72
  1134. package/source/class/qx/ui/form/RadioButtonGroup.js +67 -82
  1135. package/source/class/qx/ui/form/RadioGroup.js +92 -127
  1136. package/source/class/qx/ui/form/RepeatButton.js +57 -106
  1137. package/source/class/qx/ui/form/Resetter.js +19 -29
  1138. package/source/class/qx/ui/form/SelectBox.js +56 -104
  1139. package/source/class/qx/ui/form/Slider.js +202 -269
  1140. package/source/class/qx/ui/form/Spinner.js +173 -217
  1141. package/source/class/qx/ui/form/SplitButton.js +73 -115
  1142. package/source/class/qx/ui/form/Tag.js +7 -8
  1143. package/source/class/qx/ui/form/TextArea.js +147 -153
  1144. package/source/class/qx/ui/form/TextField.js +37 -46
  1145. package/source/class/qx/ui/form/ToggleButton.js +54 -90
  1146. package/source/class/qx/ui/form/VirtualComboBox.js +73 -113
  1147. package/source/class/qx/ui/form/VirtualSelectBox.js +264 -274
  1148. package/source/class/qx/ui/form/core/AbstractVirtualBox.js +117 -157
  1149. package/source/class/qx/ui/form/core/VirtualDropDownList.js +101 -144
  1150. package/source/class/qx/ui/form/renderer/AbstractRenderer.js +48 -55
  1151. package/source/class/qx/ui/form/renderer/Double.js +25 -34
  1152. package/source/class/qx/ui/form/renderer/IFormRenderer.js +4 -8
  1153. package/source/class/qx/ui/form/renderer/Single.js +25 -35
  1154. package/source/class/qx/ui/form/renderer/SinglePlaceholder.js +12 -11
  1155. package/source/class/qx/ui/form/renderer/__init__.js +5 -5
  1156. package/source/class/qx/ui/form/validation/AsyncValidator.js +13 -19
  1157. package/source/class/qx/ui/form/validation/Manager.js +74 -108
  1158. package/source/class/qx/ui/form/validation/__init__.js +6 -6
  1159. package/source/class/qx/ui/groupbox/CheckGroupBox.js +30 -47
  1160. package/source/class/qx/ui/groupbox/GroupBox.js +36 -75
  1161. package/source/class/qx/ui/groupbox/RadioGroupBox.js +29 -59
  1162. package/source/class/qx/ui/groupbox/__init__.js +3 -3
  1163. package/source/class/qx/ui/indicator/ProgressBar.js +29 -46
  1164. package/source/class/qx/ui/layout/Abstract.js +28 -53
  1165. package/source/class/qx/ui/layout/Atom.js +95 -111
  1166. package/source/class/qx/ui/layout/Basic.js +29 -30
  1167. package/source/class/qx/ui/layout/Canvas.js +62 -99
  1168. package/source/class/qx/ui/layout/Dock.js +266 -250
  1169. package/source/class/qx/ui/layout/Flow.js +50 -76
  1170. package/source/class/qx/ui/layout/Grid.js +268 -343
  1171. package/source/class/qx/ui/layout/Grow.js +26 -32
  1172. package/source/class/qx/ui/layout/HBox.js +137 -153
  1173. package/source/class/qx/ui/layout/LineSizeIterator.js +19 -28
  1174. package/source/class/qx/ui/layout/Util.js +91 -120
  1175. package/source/class/qx/ui/layout/VBox.js +125 -147
  1176. package/source/class/qx/ui/list/List.js +148 -262
  1177. package/source/class/qx/ui/list/core/IListDelegate.js +13 -26
  1178. package/source/class/qx/ui/list/core/MWidgetController.js +51 -78
  1179. package/source/class/qx/ui/list/provider/IListProvider.js +15 -28
  1180. package/source/class/qx/ui/list/provider/WidgetProvider.js +52 -84
  1181. package/source/class/qx/ui/menu/AbstractButton.js +118 -127
  1182. package/source/class/qx/ui/menu/Button.js +11 -25
  1183. package/source/class/qx/ui/menu/ButtonLayout.js +49 -37
  1184. package/source/class/qx/ui/menu/CheckBox.js +21 -46
  1185. package/source/class/qx/ui/menu/Layout.js +45 -51
  1186. package/source/class/qx/ui/menu/Manager.js +131 -209
  1187. package/source/class/qx/ui/menu/Menu.js +164 -259
  1188. package/source/class/qx/ui/menu/MenuSlideBar.js +13 -20
  1189. package/source/class/qx/ui/menu/RadioButton.js +29 -51
  1190. package/source/class/qx/ui/menu/Separator.js +9 -16
  1191. package/source/class/qx/ui/menubar/Button.js +23 -41
  1192. package/source/class/qx/ui/menubar/MenuBar.js +9 -13
  1193. package/source/class/qx/ui/mobile/__init__.js +5 -5
  1194. package/source/class/qx/ui/mobile/basic/Atom.js +79 -101
  1195. package/source/class/qx/ui/mobile/basic/Image.js +80 -86
  1196. package/source/class/qx/ui/mobile/basic/Label.js +38 -54
  1197. package/source/class/qx/ui/mobile/container/Carousel.js +281 -188
  1198. package/source/class/qx/ui/mobile/container/Collapsible.js +57 -77
  1199. package/source/class/qx/ui/mobile/container/Composite.js +9 -13
  1200. package/source/class/qx/ui/mobile/container/Drawer.js +167 -164
  1201. package/source/class/qx/ui/mobile/container/INavigation.js +6 -10
  1202. package/source/class/qx/ui/mobile/container/IScrollDelegate.js +4 -6
  1203. package/source/class/qx/ui/mobile/container/MIScroll.js +108 -100
  1204. package/source/class/qx/ui/mobile/container/MNativeScroll.js +118 -102
  1205. package/source/class/qx/ui/mobile/container/MScrollHandling.js +8 -7
  1206. package/source/class/qx/ui/mobile/container/Navigation.js +46 -65
  1207. package/source/class/qx/ui/mobile/container/Scroll.js +140 -151
  1208. package/source/class/qx/ui/mobile/control/Picker.js +125 -112
  1209. package/source/class/qx/ui/mobile/core/Blocker.js +62 -71
  1210. package/source/class/qx/ui/mobile/core/DomUpdatedHandler.js +24 -60
  1211. package/source/class/qx/ui/mobile/core/EventHandler.js +158 -138
  1212. package/source/class/qx/ui/mobile/core/MChildrenHandling.js +14 -30
  1213. package/source/class/qx/ui/mobile/core/MLayoutHandling.js +6 -14
  1214. package/source/class/qx/ui/mobile/core/MResize.js +16 -30
  1215. package/source/class/qx/ui/mobile/core/Root.js +90 -80
  1216. package/source/class/qx/ui/mobile/core/Widget.js +351 -479
  1217. package/source/class/qx/ui/mobile/dialog/BusyIndicator.js +31 -46
  1218. package/source/class/qx/ui/mobile/dialog/Manager.js +127 -89
  1219. package/source/class/qx/ui/mobile/dialog/Menu.js +111 -122
  1220. package/source/class/qx/ui/mobile/dialog/Popup.js +202 -194
  1221. package/source/class/qx/ui/mobile/embed/Canvas.js +12 -25
  1222. package/source/class/qx/ui/mobile/embed/Html.js +13 -27
  1223. package/source/class/qx/ui/mobile/form/Button.js +12 -18
  1224. package/source/class/qx/ui/mobile/form/CheckBox.js +20 -35
  1225. package/source/class/qx/ui/mobile/form/Form.js +31 -51
  1226. package/source/class/qx/ui/mobile/form/Group.js +18 -30
  1227. package/source/class/qx/ui/mobile/form/Input.js +30 -35
  1228. package/source/class/qx/ui/mobile/form/Label.js +76 -79
  1229. package/source/class/qx/ui/mobile/form/MState.js +20 -27
  1230. package/source/class/qx/ui/mobile/form/MText.js +27 -47
  1231. package/source/class/qx/ui/mobile/form/MValue.js +66 -94
  1232. package/source/class/qx/ui/mobile/form/NumberField.js +30 -47
  1233. package/source/class/qx/ui/mobile/form/PasswordField.js +8 -14
  1234. package/source/class/qx/ui/mobile/form/RadioButton.js +25 -46
  1235. package/source/class/qx/ui/mobile/form/RadioGroup.js +2 -4
  1236. package/source/class/qx/ui/mobile/form/Row.js +14 -29
  1237. package/source/class/qx/ui/mobile/form/SelectBox.js +77 -104
  1238. package/source/class/qx/ui/mobile/form/Slider.js +116 -144
  1239. package/source/class/qx/ui/mobile/form/TextArea.js +26 -39
  1240. package/source/class/qx/ui/mobile/form/TextField.js +18 -28
  1241. package/source/class/qx/ui/mobile/form/Title.js +11 -19
  1242. package/source/class/qx/ui/mobile/form/ToggleButton.js +35 -58
  1243. package/source/class/qx/ui/mobile/form/__init__.js +1 -1
  1244. package/source/class/qx/ui/mobile/form/renderer/AbstractRenderer.js +24 -31
  1245. package/source/class/qx/ui/mobile/form/renderer/Single.js +59 -85
  1246. package/source/class/qx/ui/mobile/form/renderer/SinglePlaceholder.js +8 -16
  1247. package/source/class/qx/ui/mobile/layout/Abstract.js +48 -85
  1248. package/source/class/qx/ui/mobile/layout/AbstractBox.js +93 -125
  1249. package/source/class/qx/ui/mobile/layout/Card.js +133 -116
  1250. package/source/class/qx/ui/mobile/layout/CardAnimation.js +95 -72
  1251. package/source/class/qx/ui/mobile/layout/HBox.js +9 -12
  1252. package/source/class/qx/ui/mobile/layout/VBox.js +9 -12
  1253. package/source/class/qx/ui/mobile/list/IListDelegate.js +5 -9
  1254. package/source/class/qx/ui/mobile/list/List.js +172 -183
  1255. package/source/class/qx/ui/mobile/list/provider/Provider.js +58 -65
  1256. package/source/class/qx/ui/mobile/list/renderer/Abstract.js +54 -82
  1257. package/source/class/qx/ui/mobile/list/renderer/Default.js +39 -55
  1258. package/source/class/qx/ui/mobile/list/renderer/group/Abstract.js +20 -33
  1259. package/source/class/qx/ui/mobile/list/renderer/group/Default.js +29 -45
  1260. package/source/class/qx/ui/mobile/navigationbar/BackButton.js +11 -15
  1261. package/source/class/qx/ui/mobile/navigationbar/Button.js +11 -15
  1262. package/source/class/qx/ui/mobile/navigationbar/NavigationBar.js +23 -29
  1263. package/source/class/qx/ui/mobile/navigationbar/Title.js +12 -20
  1264. package/source/class/qx/ui/mobile/page/Manager.js +195 -169
  1265. package/source/class/qx/ui/mobile/page/NavigationPage.js +132 -196
  1266. package/source/class/qx/ui/mobile/page/Page.js +109 -148
  1267. package/source/class/qx/ui/mobile/tabbar/TabBar.js +41 -62
  1268. package/source/class/qx/ui/mobile/tabbar/TabButton.js +19 -28
  1269. package/source/class/qx/ui/mobile/toolbar/Button.js +7 -11
  1270. package/source/class/qx/ui/mobile/toolbar/Separator.js +11 -15
  1271. package/source/class/qx/ui/mobile/toolbar/ToolBar.js +30 -39
  1272. package/source/class/qx/ui/popup/Manager.js +41 -53
  1273. package/source/class/qx/ui/popup/Popup.js +22 -47
  1274. package/source/class/qx/ui/popup/__init__.js +32 -32
  1275. package/source/class/qx/ui/progressive/Progressive.js +96 -137
  1276. package/source/class/qx/ui/progressive/State.js +12 -19
  1277. package/source/class/qx/ui/progressive/headfoot/Abstract.js +10 -15
  1278. package/source/class/qx/ui/progressive/headfoot/Null.js +4 -7
  1279. package/source/class/qx/ui/progressive/headfoot/Progress.js +67 -69
  1280. package/source/class/qx/ui/progressive/headfoot/TableHeading.js +42 -54
  1281. package/source/class/qx/ui/progressive/model/Abstract.js +8 -15
  1282. package/source/class/qx/ui/progressive/model/Default.js +17 -29
  1283. package/source/class/qx/ui/progressive/renderer/Abstract.js +6 -11
  1284. package/source/class/qx/ui/progressive/renderer/FunctionCaller.js +4 -7
  1285. package/source/class/qx/ui/progressive/renderer/table/Row.js +215 -242
  1286. package/source/class/qx/ui/progressive/renderer/table/Widths.js +32 -47
  1287. package/source/class/qx/ui/progressive/renderer/table/cell/Abstract.js +17 -24
  1288. package/source/class/qx/ui/progressive/renderer/table/cell/Boolean.js +68 -79
  1289. package/source/class/qx/ui/progressive/renderer/table/cell/Conditional.js +146 -199
  1290. package/source/class/qx/ui/progressive/renderer/table/cell/Default.js +14 -32
  1291. package/source/class/qx/ui/progressive/renderer/table/cell/Html.js +2 -3
  1292. package/source/class/qx/ui/progressive/renderer/table/cell/Icon.js +38 -53
  1293. package/source/class/qx/ui/progressive/renderer/table/cell/Image.js +20 -42
  1294. package/source/class/qx/ui/progressive/renderer/table/cell/String.js +6 -12
  1295. package/source/class/qx/ui/progressive/structure/Abstract.js +14 -26
  1296. package/source/class/qx/ui/progressive/structure/Default.js +20 -40
  1297. package/source/class/qx/ui/root/Abstract.js +73 -90
  1298. package/source/class/qx/ui/root/Application.js +57 -61
  1299. package/source/class/qx/ui/root/Inline.js +78 -64
  1300. package/source/class/qx/ui/root/Page.js +25 -46
  1301. package/source/class/qx/ui/splitpane/Blocker.js +20 -30
  1302. package/source/class/qx/ui/splitpane/HLayout.js +53 -49
  1303. package/source/class/qx/ui/splitpane/Pane.js +112 -150
  1304. package/source/class/qx/ui/splitpane/Slider.js +9 -15
  1305. package/source/class/qx/ui/splitpane/Splitter.js +27 -46
  1306. package/source/class/qx/ui/splitpane/VLayout.js +53 -49
  1307. package/source/class/qx/ui/style/Stylesheet.js +12 -19
  1308. package/source/class/qx/ui/table/ICellEditorFactory.js +4 -8
  1309. package/source/class/qx/ui/table/ICellRenderer.js +3 -7
  1310. package/source/class/qx/ui/table/IColumnMenuButton.js +6 -11
  1311. package/source/class/qx/ui/table/IColumnMenuItem.js +5 -8
  1312. package/source/class/qx/ui/table/IHeaderRenderer.js +4 -8
  1313. package/source/class/qx/ui/table/IRowRenderer.js +6 -12
  1314. package/source/class/qx/ui/table/ITableModel.js +23 -41
  1315. package/source/class/qx/ui/table/MTableContextMenu.js +25 -28
  1316. package/source/class/qx/ui/table/Table.js +556 -748
  1317. package/source/class/qx/ui/table/celleditor/AbstractField.js +16 -26
  1318. package/source/class/qx/ui/table/celleditor/CheckBox.js +15 -16
  1319. package/source/class/qx/ui/table/celleditor/ComboBox.js +24 -34
  1320. package/source/class/qx/ui/table/celleditor/Dynamic.js +25 -32
  1321. package/source/class/qx/ui/table/celleditor/PasswordField.js +4 -8
  1322. package/source/class/qx/ui/table/celleditor/SelectBox.js +29 -38
  1323. package/source/class/qx/ui/table/celleditor/TextField.js +9 -14
  1324. package/source/class/qx/ui/table/cellrenderer/Abstract.js +78 -73
  1325. package/source/class/qx/ui/table/cellrenderer/AbstractImage.js +65 -84
  1326. package/source/class/qx/ui/table/cellrenderer/Boolean.js +36 -50
  1327. package/source/class/qx/ui/table/cellrenderer/Conditional.js +74 -63
  1328. package/source/class/qx/ui/table/cellrenderer/Date.js +12 -22
  1329. package/source/class/qx/ui/table/cellrenderer/Debug.js +9 -9
  1330. package/source/class/qx/ui/table/cellrenderer/Default.js +30 -52
  1331. package/source/class/qx/ui/table/cellrenderer/Dynamic.js +13 -24
  1332. package/source/class/qx/ui/table/cellrenderer/Html.js +6 -8
  1333. package/source/class/qx/ui/table/cellrenderer/Image.js +13 -26
  1334. package/source/class/qx/ui/table/cellrenderer/Number.js +13 -24
  1335. package/source/class/qx/ui/table/cellrenderer/Password.js +8 -11
  1336. package/source/class/qx/ui/table/cellrenderer/Replace.js +27 -42
  1337. package/source/class/qx/ui/table/cellrenderer/String.js +5 -7
  1338. package/source/class/qx/ui/table/columnmenu/Button.js +19 -29
  1339. package/source/class/qx/ui/table/columnmenu/MenuItem.js +11 -19
  1340. package/source/class/qx/ui/table/columnmenu/__init__.js +4 -4
  1341. package/source/class/qx/ui/table/columnmenu/grid/__init__.js +4 -4
  1342. package/source/class/qx/ui/table/columnmenu/simple/__init__.js +4 -4
  1343. package/source/class/qx/ui/table/columnmodel/Basic.js +193 -215
  1344. package/source/class/qx/ui/table/columnmodel/Resize.js +65 -111
  1345. package/source/class/qx/ui/table/columnmodel/resizebehavior/Abstract.js +17 -24
  1346. package/source/class/qx/ui/table/columnmodel/resizebehavior/Default.js +66 -117
  1347. package/source/class/qx/ui/table/headerrenderer/Default.js +25 -46
  1348. package/source/class/qx/ui/table/headerrenderer/HeaderCell.js +36 -51
  1349. package/source/class/qx/ui/table/headerrenderer/Icon.js +11 -27
  1350. package/source/class/qx/ui/table/model/Abstract.js +52 -62
  1351. package/source/class/qx/ui/table/model/Filtered.js +121 -153
  1352. package/source/class/qx/ui/table/model/Remote.js +166 -271
  1353. package/source/class/qx/ui/table/model/Simple.js +225 -252
  1354. package/source/class/qx/ui/table/pane/CellEvent.js +25 -32
  1355. package/source/class/qx/ui/table/pane/Clipper.js +8 -12
  1356. package/source/class/qx/ui/table/pane/FocusIndicator.js +42 -48
  1357. package/source/class/qx/ui/table/pane/Header.js +45 -86
  1358. package/source/class/qx/ui/table/pane/Model.js +73 -96
  1359. package/source/class/qx/ui/table/pane/Pane.js +132 -190
  1360. package/source/class/qx/ui/table/pane/Scroller.js +542 -659
  1361. package/source/class/qx/ui/table/rowrenderer/Default.js +75 -86
  1362. package/source/class/qx/ui/table/selection/Manager.js +23 -57
  1363. package/source/class/qx/ui/table/selection/Model.js +89 -179
  1364. package/source/class/qx/ui/tabview/Page.js +48 -79
  1365. package/source/class/qx/ui/tabview/TabButton.js +45 -72
  1366. package/source/class/qx/ui/tabview/TabView.js +94 -141
  1367. package/source/class/qx/ui/toolbar/Button.js +13 -18
  1368. package/source/class/qx/ui/toolbar/CheckBox.js +13 -17
  1369. package/source/class/qx/ui/toolbar/MenuButton.js +18 -34
  1370. package/source/class/qx/ui/toolbar/Part.js +42 -64
  1371. package/source/class/qx/ui/toolbar/PartContainer.js +19 -28
  1372. package/source/class/qx/ui/toolbar/RadioButton.js +12 -19
  1373. package/source/class/qx/ui/toolbar/Separator.js +15 -25
  1374. package/source/class/qx/ui/toolbar/SplitButton.js +19 -28
  1375. package/source/class/qx/ui/toolbar/ToolBar.js +182 -232
  1376. package/source/class/qx/ui/tooltip/Manager.js +125 -123
  1377. package/source/class/qx/ui/tooltip/ToolTip.js +49 -79
  1378. package/source/class/qx/ui/tooltip/__init__.js +23 -23
  1379. package/source/class/qx/ui/tree/Tree.js +95 -148
  1380. package/source/class/qx/ui/tree/TreeFile.js +8 -15
  1381. package/source/class/qx/ui/tree/TreeFolder.js +8 -15
  1382. package/source/class/qx/ui/tree/VirtualTree.js +207 -333
  1383. package/source/class/qx/ui/tree/VirtualTreeItem.js +30 -45
  1384. package/source/class/qx/ui/tree/__init__.js +50 -50
  1385. package/source/class/qx/ui/tree/core/AbstractItem.js +98 -152
  1386. package/source/class/qx/ui/tree/core/AbstractTreeItem.js +83 -137
  1387. package/source/class/qx/ui/tree/core/FolderOpenButton.js +15 -34
  1388. package/source/class/qx/ui/tree/core/IVirtualTree.js +13 -33
  1389. package/source/class/qx/ui/tree/core/IVirtualTreeDelegate.js +9 -16
  1390. package/source/class/qx/ui/tree/core/MWidgetController.js +58 -69
  1391. package/source/class/qx/ui/tree/core/OpenCloseController.js +29 -35
  1392. package/source/class/qx/ui/tree/core/Util.js +12 -16
  1393. package/source/class/qx/ui/tree/provider/IVirtualTreeProvider.js +10 -23
  1394. package/source/class/qx/ui/tree/provider/WidgetProvider.js +39 -67
  1395. package/source/class/qx/ui/tree/selection/SelectionManager.js +27 -41
  1396. package/source/class/qx/ui/treevirtual/DefaultDataCellRenderer.js +2 -3
  1397. package/source/class/qx/ui/treevirtual/MFamily.js +26 -63
  1398. package/source/class/qx/ui/treevirtual/MNode.js +43 -103
  1399. package/source/class/qx/ui/treevirtual/MTreePrimitive.js +41 -52
  1400. package/source/class/qx/ui/treevirtual/SelectionManager.js +44 -58
  1401. package/source/class/qx/ui/treevirtual/SimpleTreeDataCellRenderer.js +172 -229
  1402. package/source/class/qx/ui/treevirtual/SimpleTreeDataModel.js +256 -367
  1403. package/source/class/qx/ui/treevirtual/SimpleTreeDataRowRenderer.js +8 -18
  1404. package/source/class/qx/ui/treevirtual/TreeVirtual.js +155 -250
  1405. package/source/class/qx/ui/treevirtual/celleditor/NodeEditor.js +10 -16
  1406. package/source/class/qx/ui/treevirtual/pane/Scroller.js +14 -11
  1407. package/source/class/qx/ui/virtual/__init__.js +4 -4
  1408. package/source/class/qx/ui/virtual/behavior/Prefetch.js +71 -86
  1409. package/source/class/qx/ui/virtual/cell/Abstract.js +18 -27
  1410. package/source/class/qx/ui/virtual/cell/AbstractImage.js +42 -51
  1411. package/source/class/qx/ui/virtual/cell/AbstractWidget.js +25 -49
  1412. package/source/class/qx/ui/virtual/cell/Boolean.js +31 -44
  1413. package/source/class/qx/ui/virtual/cell/Cell.js +143 -183
  1414. package/source/class/qx/ui/virtual/cell/CellStylesheet.js +31 -38
  1415. package/source/class/qx/ui/virtual/cell/Date.js +15 -24
  1416. package/source/class/qx/ui/virtual/cell/Html.js +9 -20
  1417. package/source/class/qx/ui/virtual/cell/ICell.js +4 -6
  1418. package/source/class/qx/ui/virtual/cell/IWidgetCell.js +7 -12
  1419. package/source/class/qx/ui/virtual/cell/IWidgetCellDelegate.js +4 -6
  1420. package/source/class/qx/ui/virtual/cell/Image.js +8 -14
  1421. package/source/class/qx/ui/virtual/cell/Number.js +14 -23
  1422. package/source/class/qx/ui/virtual/cell/String.js +11 -20
  1423. package/source/class/qx/ui/virtual/cell/WidgetCell.js +13 -16
  1424. package/source/class/qx/ui/virtual/cell/__init__.js +4 -4
  1425. package/source/class/qx/ui/virtual/core/Axis.js +75 -103
  1426. package/source/class/qx/ui/virtual/core/CellEvent.js +23 -31
  1427. package/source/class/qx/ui/virtual/core/IHtmlCellProvider.js +4 -6
  1428. package/source/class/qx/ui/virtual/core/ILayer.js +5 -15
  1429. package/source/class/qx/ui/virtual/core/IWidgetCellProvider.js +5 -7
  1430. package/source/class/qx/ui/virtual/core/Pane.js +199 -242
  1431. package/source/class/qx/ui/virtual/core/Scroller.js +25 -43
  1432. package/source/class/qx/ui/virtual/layer/Abstract.js +44 -83
  1433. package/source/class/qx/ui/virtual/layer/AbstractBackground.js +47 -68
  1434. package/source/class/qx/ui/virtual/layer/CellSpanManager.js +74 -96
  1435. package/source/class/qx/ui/virtual/layer/Column.js +26 -36
  1436. package/source/class/qx/ui/virtual/layer/GridLines.js +43 -70
  1437. package/source/class/qx/ui/virtual/layer/HtmlCell.js +34 -32
  1438. package/source/class/qx/ui/virtual/layer/HtmlCellSpan.js +54 -56
  1439. package/source/class/qx/ui/virtual/layer/Row.js +28 -36
  1440. package/source/class/qx/ui/virtual/layer/WidgetCell.js +87 -123
  1441. package/source/class/qx/ui/virtual/layer/WidgetCellSpan.js +123 -124
  1442. package/source/class/qx/ui/virtual/selection/Abstract.js +26 -54
  1443. package/source/class/qx/ui/virtual/selection/CellLines.js +11 -21
  1444. package/source/class/qx/ui/virtual/selection/CellRectangle.js +45 -73
  1445. package/source/class/qx/ui/virtual/selection/Column.js +16 -35
  1446. package/source/class/qx/ui/virtual/selection/ISelectionDelegate.js +5 -9
  1447. package/source/class/qx/ui/virtual/selection/MModel.js +84 -122
  1448. package/source/class/qx/ui/virtual/selection/Row.js +29 -61
  1449. package/source/class/qx/ui/website/Accordion.js +39 -42
  1450. package/source/class/qx/ui/website/Button.js +17 -25
  1451. package/source/class/qx/ui/website/Calendar.js +243 -172
  1452. package/source/class/qx/ui/website/Carousel.js +169 -155
  1453. package/source/class/qx/ui/website/DatePicker.js +99 -85
  1454. package/source/class/qx/ui/website/Rating.js +35 -53
  1455. package/source/class/qx/ui/website/Slider.js +174 -153
  1456. package/source/class/qx/ui/website/Table.js +482 -456
  1457. package/source/class/qx/ui/website/Tabs.js +225 -180
  1458. package/source/class/qx/ui/website/Widget.js +39 -52
  1459. package/source/class/qx/ui/window/Desktop.js +14 -12
  1460. package/source/class/qx/ui/window/IDesktop.js +8 -10
  1461. package/source/class/qx/ui/window/IWindowManager.js +7 -9
  1462. package/source/class/qx/ui/window/MDesktop.js +34 -62
  1463. package/source/class/qx/ui/window/Manager.js +31 -57
  1464. package/source/class/qx/ui/window/Window.js +250 -351
  1465. package/source/class/qx/util/AliasManager.js +23 -42
  1466. package/source/class/qx/util/Animation.js +248 -191
  1467. package/source/class/qx/util/Base64.js +144 -89
  1468. package/source/class/qx/util/ColorUtil.js +253 -287
  1469. package/source/class/qx/util/DeferredCall.js +21 -30
  1470. package/source/class/qx/util/DeferredCallManager.js +23 -44
  1471. package/source/class/qx/util/Delegate.js +4 -10
  1472. package/source/class/qx/util/DisposeUtil.js +76 -70
  1473. package/source/class/qx/util/DynamicScriptLoader.js +83 -66
  1474. package/source/class/qx/util/EditDistance.js +64 -58
  1475. package/source/class/qx/util/ExtendedColor.js +157 -163
  1476. package/source/class/qx/util/Function.js +8 -8
  1477. package/source/class/qx/util/LibraryManager.js +11 -18
  1478. package/source/class/qx/util/OOUtil.js +17 -36
  1479. package/source/class/qx/util/ObjectPool.js +19 -45
  1480. package/source/class/qx/util/Permutation.js +9 -16
  1481. package/source/class/qx/util/PropertyUtil.js +58 -70
  1482. package/source/class/qx/util/Request.js +27 -16
  1483. package/source/class/qx/util/ResourceManager.js +103 -104
  1484. package/source/class/qx/util/ResponseParser.js +14 -21
  1485. package/source/class/qx/util/RingBuffer.js +46 -48
  1486. package/source/class/qx/util/Serializer.js +103 -68
  1487. package/source/class/qx/util/StringBuilder.js +11 -22
  1488. package/source/class/qx/util/StringEscape.js +15 -29
  1489. package/source/class/qx/util/StringSplit.js +18 -21
  1490. package/source/class/qx/util/TimerManager.js +61 -70
  1491. package/source/class/qx/util/Uri.js +42 -30
  1492. package/source/class/qx/util/Uuid.js +50 -35
  1493. package/source/class/qx/util/Validate.js +88 -73
  1494. package/source/class/qx/util/ValueManager.js +17 -29
  1495. package/source/class/qx/util/Wheel.js +22 -16
  1496. package/source/class/qx/util/format/DateFormat.js +822 -759
  1497. package/source/class/qx/util/format/IFormat.js +4 -8
  1498. package/source/class/qx/util/format/NumberFormat.js +84 -91
  1499. package/source/class/qx/util/fsm/FiniteStateMachine.js +323 -382
  1500. package/source/class/qx/util/fsm/State.js +210 -249
  1501. package/source/class/qx/util/fsm/Transition.js +138 -160
  1502. package/source/class/qx/util/placement/AbstractAxis.js +12 -14
  1503. package/source/class/qx/util/placement/BestFitAxis.js +5 -8
  1504. package/source/class/qx/util/placement/DirectAxis.js +5 -7
  1505. package/source/class/qx/util/placement/KeepAlignAxis.js +8 -14
  1506. package/source/class/qx/util/placement/Placement.js +39 -56
  1507. package/source/class/qx/util/placement/__init__.js +4 -4
  1508. package/source/class/qx/xml/Document.js +21 -34
  1509. package/source/class/qx/xml/Element.js +90 -73
  1510. package/source/class/qx/xml/String.js +15 -21
  1511. package/source/class/qxWeb.js +102 -69
  1512. package/source/resource/qx/mobile/js/iscroll.js +1328 -982
  1513. package/source/resource/qx/mobile/js/iscroll.min.js +1081 -1
  1514. package/source/resource/qx/test/dynamicscriptloader/first.js +1 -1
  1515. package/source/resource/qx/test/dynamicscriptloader/second.js +1 -1
  1516. package/source/resource/qx/test/dynamicscriptloader/third.js +1 -1
  1517. package/source/resource/qx/test/script.js +1 -1
  1518. package/source/resource/qx/test/webworker.js +2 -2
  1519. package/source/resource/qx/tool/loadsass.js +16 -15
  1520. package/source/resource/qx/tool/schema/compile-1-0-0.json +13 -13
  1521. package/source/resource/qx/tool/website/build/assets/bluebird.min.js +4593 -9
  1522. package/source/resource/qx/tool/website/build/assets/buttons.js +391 -1
  1523. package/source/resource/qx/tool/website/build/assets/fontawesome-all.js +8963 -1
  1524. package/source/resource/qx/tool/website/build/assets/jquery.js +5452 -3
  1525. package/source/resource/qx/tool/website/build/diagnostics/dependson.js +31 -31
  1526. package/source/resource/qx/tool/website/build/diagnostics/requiredby.js +32 -36
  1527. package/source/resource/qx/tool/website/build/scripts/serve.js +87 -66
  1528. package/source/resource/qx/tool/website/src/assets/bluebird.min.js +4593 -9
  1529. package/source/resource/qx/tool/website/src/assets/buttons.js +391 -1
  1530. package/source/resource/qx/tool/website/src/assets/fontawesome-all.js +8963 -1
  1531. package/source/resource/qx/tool/website/src/assets/jquery.js +5452 -3
  1532. package/source/resource/qx/tool/website/src/diagnostics/dependson.js +31 -31
  1533. package/source/resource/qx/tool/website/src/diagnostics/requiredby.js +32 -36
  1534. package/source/resource/qx/tool/website/src/scripts/serve.js +87 -66
  1535. package/lib/resource/qx/static/blank.gif +0 -0
  1536. package/source/class/qx/io/remote/Exchange.js +0 -1063
  1537. package/source/class/qx/io/remote/Request.js +0 -1021
  1538. package/source/class/qx/io/remote/RequestQueue.js +0 -521
  1539. package/source/class/qx/io/remote/Response.js +0 -137
  1540. package/source/class/qx/io/remote/Rpc.js +0 -1075
  1541. package/source/class/qx/io/remote/RpcError.js +0 -198
  1542. package/source/class/qx/io/remote/__init__.js +0 -88
  1543. package/source/class/qx/io/remote/transport/Abstract.js +0 -513
  1544. package/source/class/qx/io/remote/transport/Iframe.js +0 -652
  1545. package/source/class/qx/io/remote/transport/Script.js +0 -475
  1546. package/source/class/qx/io/remote/transport/XmlHttp.js +0 -1019
  1547. package/source/class/qx/io/remote/transport/__init__.js +0 -3
  1548. package/source/class/qx/test/io/remote/AbstractRequest.js +0 -150
  1549. package/source/class/qx/test/io/remote/RequestIframe.js +0 -105
  1550. package/source/class/qx/test/io/remote/RequestXhr.js +0 -151
  1551. package/source/class/qx/test/io/remote/Rpc.js +0 -205
  1552. package/source/class/qx/test/io/remote/__init__.js +0 -4
  1553. package/source/class/qx/test/io/remote/transport/Iframe.js +0 -67
  1554. package/source/class/qx/test/io/remote/transport/XmlHttp.js +0 -133
  1555. package/source/class/qx/test/io/remote/transport/__init__.js +0 -4
@@ -27,12 +27,9 @@
27
27
  * @childControl statusbar {qx.ui.basic.Label} label to show the status of the table
28
28
  * @childControl column-button {qx.ui.table.columnmenu.Button} button to open the column menu
29
29
  */
30
- qx.Class.define("qx.ui.table.Table",
31
- {
32
- extend : qx.ui.core.Widget,
33
- include : qx.ui.core.MDragDropScrolling,
34
-
35
-
30
+ qx.Class.define("qx.ui.table.Table", {
31
+ extend: qx.ui.core.Widget,
32
+ include: qx.ui.core.MDragDropScrolling,
36
33
 
37
34
  /*
38
35
  *****************************************************************************
@@ -123,14 +120,13 @@ qx.Class.define("qx.ui.table.Table",
123
120
  * </pre></dd>
124
121
  * </dl>
125
122
  */
126
- construct : function(tableModel, custom)
127
- {
128
- this.base(arguments);
123
+ construct(tableModel, custom) {
124
+ super();
129
125
  //
130
126
  // Use default objects if custom objects are not specified
131
127
  //
132
128
  if (!custom) {
133
- custom = { };
129
+ custom = {};
134
130
  }
135
131
 
136
132
  if (custom.initiallyHiddenColumns) {
@@ -172,8 +168,11 @@ qx.Class.define("qx.ui.table.Table",
172
168
  this._setLayout(new qx.ui.layout.VBox());
173
169
 
174
170
  // Create the child widgets
175
- this.__scrollerParent = new qx.ui.container.Composite(new qx.ui.layout.HBox());
176
- this._add(this.__scrollerParent, {flex: 1});
171
+ this.__scrollerParent = new qx.ui.container.Composite(
172
+ new qx.ui.layout.HBox()
173
+ );
174
+
175
+ this._add(this.__scrollerParent, { flex: 1 });
177
176
 
178
177
  // Allocate a default data row renderer
179
178
  this.setDataRowRenderer(new qx.ui.table.rowrenderer.Default(this));
@@ -184,7 +183,7 @@ qx.Class.define("qx.ui.table.Table",
184
183
  this.setTableModel(tableModel || this.getEmptyTableModel());
185
184
 
186
185
  // create the main meta column
187
- this.setMetaColumnCounts([ -1 ]);
186
+ this.setMetaColumnCounts([-1]);
188
187
 
189
188
  // Make focusable
190
189
  this.setTabIndex(1);
@@ -197,6 +196,7 @@ qx.Class.define("qx.ui.table.Table",
197
196
  var spacer = new qx.ui.core.Widget().set({
198
197
  height: 0
199
198
  });
199
+
200
200
  this._add(spacer);
201
201
  spacer.addListener("resize", this._onResize, this);
202
202
 
@@ -205,15 +205,18 @@ qx.Class.define("qx.ui.table.Table",
205
205
 
206
206
  // add an event listener which updates the table content on locale change
207
207
  if (qx.core.Environment.get("qx.dynlocale")) {
208
- qx.locale.Manager.getInstance().addListener("changeLocale", this._onChangeLocale, this);
208
+ qx.locale.Manager.getInstance().addListener(
209
+ "changeLocale",
210
+ this._onChangeLocale,
211
+ this
212
+ );
209
213
  }
210
214
 
211
215
  this.initStatusBarVisible();
212
216
 
213
217
  // If the table model has an init() method...
214
218
  tableModel = this.getTableModel();
215
- if (tableModel.init && typeof(tableModel.init) == "function")
216
- {
219
+ if (tableModel.init && typeof tableModel.init == "function") {
217
220
  // ... then call it now to allow the table model to affect table
218
221
  // properties.
219
222
  tableModel.init(this);
@@ -223,24 +226,20 @@ qx.Class.define("qx.ui.table.Table",
223
226
  this.getContentElement().setAttribute("role", "grid");
224
227
  },
225
228
 
226
-
227
-
228
-
229
229
  /*
230
230
  *****************************************************************************
231
231
  EVENTS
232
232
  *****************************************************************************
233
233
  */
234
234
 
235
- events :
236
- {
235
+ events: {
237
236
  /**
238
237
  * Dispatched before adding the column list to the column visibility menu.
239
238
  * The event data is a map with two properties: table and menu. Listeners
240
239
  * may add additional items to the menu, which appear at the top of the
241
240
  * menu.
242
241
  */
243
- "columnVisibilityMenuCreateStart" : "qx.event.type.Data",
242
+ columnVisibilityMenuCreateStart: "qx.event.type.Data",
244
243
 
245
244
  /**
246
245
  * Dispatched after adding the column list to the column visibility menu.
@@ -248,34 +247,34 @@ qx.Class.define("qx.ui.table.Table",
248
247
  * may add additional items to the menu, which appear at the bottom of the
249
248
  * menu.
250
249
  */
251
- "columnVisibilityMenuCreateEnd" : "qx.event.type.Data",
250
+ columnVisibilityMenuCreateEnd: "qx.event.type.Data",
252
251
 
253
- /**
254
- * Dispatched when the width of the table has changed.
255
- */
256
- "tableWidthChanged" : "qx.event.type.Event",
252
+ /**
253
+ * Dispatched when the width of the table has changed.
254
+ */
255
+ tableWidthChanged: "qx.event.type.Event",
257
256
 
258
257
  /**
259
258
  * Dispatched when updating scrollbars discovers that a vertical scrollbar
260
259
  * is needed when it previously was not, or vice versa. The data is a
261
260
  * boolean indicating whether a vertical scrollbar is now being used.
262
261
  */
263
- "verticalScrollBarChanged" : "qx.event.type.Data",
262
+ verticalScrollBarChanged: "qx.event.type.Data",
264
263
 
265
264
  /**
266
265
  * Dispatched when a data cell has been tapped.
267
266
  */
268
- "cellTap" : "qx.ui.table.pane.CellEvent",
267
+ cellTap: "qx.ui.table.pane.CellEvent",
269
268
 
270
269
  /**
271
270
  * Dispatched when a data cell has been tapped.
272
271
  */
273
- "cellDbltap" : "qx.ui.table.pane.CellEvent",
272
+ cellDbltap: "qx.ui.table.pane.CellEvent",
274
273
 
275
274
  /**
276
275
  * Dispatched when the context menu is needed in a data cell
277
276
  */
278
- "cellContextmenu" : "qx.ui.table.pane.CellEvent",
277
+ cellContextmenu: "qx.ui.table.pane.CellEvent",
279
278
 
280
279
  /**
281
280
  * Dispatched after a cell editor is flushed.
@@ -288,50 +287,40 @@ qx.Class.define("qx.ui.table.Table",
288
287
  * <li>oldValue</li>
289
288
  * </ul>
290
289
  */
291
- "dataEdited" : "qx.event.type.Data"
290
+ dataEdited: "qx.event.type.Data"
292
291
  },
293
292
 
294
-
295
-
296
293
  /*
297
294
  *****************************************************************************
298
295
  STATICS
299
296
  *****************************************************************************
300
297
  */
301
298
 
302
- statics :
303
- {
299
+ statics: {
304
300
  /** Events that must be redirected to the scrollers. */
305
- __redirectEvents : { cellTap: 1, cellDbltap: 1, cellContextmenu: 1 }
301
+ __redirectEvents: { cellTap: 1, cellDbltap: 1, cellContextmenu: 1 }
306
302
  },
307
303
 
308
-
309
304
  /*
310
305
  *****************************************************************************
311
306
  PROPERTIES
312
307
  *****************************************************************************
313
308
  */
314
309
 
315
- properties :
316
- {
317
- appearance :
318
- {
319
- refine : true,
320
- init : "table"
310
+ properties: {
311
+ appearance: {
312
+ refine: true,
313
+ init: "table"
321
314
  },
322
315
 
323
-
324
- focusable :
325
- {
326
- refine : true,
327
- init : true
316
+ focusable: {
317
+ refine: true,
318
+ init: true
328
319
  },
329
320
 
330
-
331
- minWidth :
332
- {
333
- refine : true,
334
- init : 50
321
+ minWidth: {
322
+ refine: true,
323
+ init: 50
335
324
  },
336
325
 
337
326
  /**
@@ -346,9 +335,8 @@ qx.Class.define("qx.ui.table.Table",
346
335
  * non-visible columns at constructor time can therefore avoid the initial
347
336
  * creation of all of those superfluous widgets.
348
337
  */
349
- initiallyHiddenColumns :
350
- {
351
- init : null
338
+ initiallyHiddenColumns: {
339
+ init: null
352
340
  },
353
341
 
354
342
  /**
@@ -360,148 +348,123 @@ qx.Class.define("qx.ui.table.Table",
360
348
  *
361
349
  * Note: This has no effect on Table!
362
350
  */
363
- selectable :
364
- {
365
- refine : true,
366
- init : false
351
+ selectable: {
352
+ refine: true,
353
+ init: false
367
354
  },
368
355
 
369
-
370
356
  /** The selection model. */
371
- selectionModel :
372
- {
373
- check : "qx.ui.table.selection.Model",
374
- apply : "_applySelectionModel",
375
- event : "changeSelectionModel"
357
+ selectionModel: {
358
+ check: "qx.ui.table.selection.Model",
359
+ apply: "_applySelectionModel",
360
+ event: "changeSelectionModel"
376
361
  },
377
362
 
378
-
379
363
  /** The table model. */
380
- tableModel :
381
- {
382
- check : "qx.ui.table.ITableModel",
383
- apply : "_applyTableModel",
384
- event : "changeTableModel"
364
+ tableModel: {
365
+ check: "qx.ui.table.ITableModel",
366
+ apply: "_applyTableModel",
367
+ event: "changeTableModel"
385
368
  },
386
369
 
387
-
388
370
  /** The height of the table rows. */
389
- rowHeight :
390
- {
391
- check : "Number",
392
- init : 20,
393
- apply : "_applyRowHeight",
394
- event : "changeRowHeight",
395
- themeable : true
371
+ rowHeight: {
372
+ check: "Number",
373
+ init: 20,
374
+ apply: "_applyRowHeight",
375
+ event: "changeRowHeight",
376
+ themeable: true
396
377
  },
397
378
 
398
-
399
379
  /**
400
380
  * Force line height to match row height. May be disabled if cell
401
381
  * renderers being used wish to render multiple lines of data within a
402
382
  * cell. (With the default setting, all but the first of multiple lines
403
383
  * of data will not be visible.)
404
384
  */
405
- forceLineHeight :
406
- {
407
- check : "Boolean",
408
- init : true
385
+ forceLineHeight: {
386
+ check: "Boolean",
387
+ init: true
409
388
  },
410
389
 
411
-
412
390
  /**
413
391
  * Whether the header cells are visible. When setting this to false,
414
392
  * you'll likely also want to set the {#columnVisibilityButtonVisible}
415
393
  * property to false as well, to entirely remove the header row.
416
394
  */
417
- headerCellsVisible :
418
- {
419
- check : "Boolean",
420
- init : true,
421
- apply : "_applyHeaderCellsVisible",
422
- themeable : true
395
+ headerCellsVisible: {
396
+ check: "Boolean",
397
+ init: true,
398
+ apply: "_applyHeaderCellsVisible",
399
+ themeable: true
423
400
  },
424
401
 
425
-
426
402
  /** The height of the header cells. */
427
- headerCellHeight :
428
- {
429
- check : "Integer",
430
- init : 16,
431
- apply : "_applyHeaderCellHeight",
432
- event : "changeHeaderCellHeight",
433
- nullable : true,
434
- themeable : true
403
+ headerCellHeight: {
404
+ check: "Integer",
405
+ init: 16,
406
+ apply: "_applyHeaderCellHeight",
407
+ event: "changeHeaderCellHeight",
408
+ nullable: true,
409
+ themeable: true
435
410
  },
436
411
 
437
-
438
412
  /** Whether to show the status bar */
439
- statusBarVisible :
440
- {
441
- check : "Boolean",
442
- init : true,
443
- apply : "_applyStatusBarVisible"
413
+ statusBarVisible: {
414
+ check: "Boolean",
415
+ init: true,
416
+ apply: "_applyStatusBarVisible"
444
417
  },
445
418
 
446
-
447
419
  /** The Statusbartext, set it, if you want some more Information */
448
- additionalStatusBarText :
449
- {
450
- nullable : true,
451
- init : null,
452
- apply : "_applyAdditionalStatusBarText"
420
+ additionalStatusBarText: {
421
+ nullable: true,
422
+ init: null,
423
+ apply: "_applyAdditionalStatusBarText"
453
424
  },
454
425
 
455
-
456
426
  /** Whether to show the column visibility button */
457
- columnVisibilityButtonVisible :
458
- {
459
- check : "Boolean",
460
- init : true,
461
- apply : "_applyColumnVisibilityButtonVisible",
462
- themeable : true
427
+ columnVisibilityButtonVisible: {
428
+ check: "Boolean",
429
+ init: true,
430
+ apply: "_applyColumnVisibilityButtonVisible",
431
+ themeable: true
463
432
  },
464
433
 
465
-
466
434
  /**
467
435
  * @type {Integer[]} The number of columns per meta column. If the last array entry is -1,
468
436
  * this meta column will get the remaining columns.
469
437
  */
470
- metaColumnCounts :
471
- {
472
- check : "Object",
473
- apply : "_applyMetaColumnCounts"
438
+ metaColumnCounts: {
439
+ check: "Object",
440
+ apply: "_applyMetaColumnCounts"
474
441
  },
475
442
 
476
-
477
443
  /**
478
444
  * Whether the focus should moved when the pointer is moved over a cell. If false
479
445
  * the focus is only moved on pointer taps.
480
446
  */
481
- focusCellOnPointerMove :
482
- {
483
- check : "Boolean",
484
- init : false,
485
- apply : "_applyFocusCellOnPointerMove"
447
+ focusCellOnPointerMove: {
448
+ check: "Boolean",
449
+ init: false,
450
+ apply: "_applyFocusCellOnPointerMove"
486
451
  },
487
452
 
488
453
  /**
489
454
  * Whether row focus change by keyboard also modifies selection
490
455
  */
491
- rowFocusChangeModifiesSelection :
492
- {
493
- check : "Boolean",
494
- init : true
456
+ rowFocusChangeModifiesSelection: {
457
+ check: "Boolean",
458
+ init: true
495
459
  },
496
460
 
497
461
  /**
498
462
  * Whether the cell focus indicator should be shown
499
463
  */
500
- showCellFocusIndicator :
501
- {
502
- check : "Boolean",
503
- init : true,
504
- apply : "_applyShowCellFocusIndicator"
464
+ showCellFocusIndicator: {
465
+ check: "Boolean",
466
+ init: true,
467
+ apply: "_applyShowCellFocusIndicator"
505
468
  },
506
469
 
507
470
  /**
@@ -513,37 +476,32 @@ qx.Class.define("qx.ui.table.Table",
513
476
  * in the event data will be null, so event handlers can check (row ===
514
477
  * null) to handle this case.
515
478
  */
516
- contextMenuFromDataCellsOnly :
517
- {
518
- check : "Boolean",
519
- init : true,
520
- apply : "_applyContextMenuFromDataCellsOnly"
479
+ contextMenuFromDataCellsOnly: {
480
+ check: "Boolean",
481
+ init: true,
482
+ apply: "_applyContextMenuFromDataCellsOnly"
521
483
  },
522
484
 
523
485
  /**
524
486
  * Whether the table should keep the first visible row complete. If set to false,
525
487
  * the first row may be rendered partial, depending on the vertical scroll value.
526
488
  */
527
- keepFirstVisibleRowComplete :
528
- {
529
- check : "Boolean",
530
- init : true,
531
- apply : "_applyKeepFirstVisibleRowComplete"
489
+ keepFirstVisibleRowComplete: {
490
+ check: "Boolean",
491
+ init: true,
492
+ apply: "_applyKeepFirstVisibleRowComplete"
532
493
  },
533
494
 
534
-
535
495
  /**
536
496
  * Whether the table cells should be updated when only the selection or the
537
497
  * focus changed. This slows down the table update but allows to react on a
538
498
  * changed selection or a changed focus in a cell renderer.
539
499
  */
540
- alwaysUpdateCells :
541
- {
542
- check : "Boolean",
543
- init : false
500
+ alwaysUpdateCells: {
501
+ check: "Boolean",
502
+ init: false
544
503
  },
545
504
 
546
-
547
505
  /**
548
506
  * Whether to reset the selection when a header cell is tapped. Since
549
507
  * most data models do not have provisions to retain a selection after
@@ -551,23 +509,20 @@ qx.Class.define("qx.ui.table.Table",
551
509
  * models, however, do have the capability to retain the selection, so
552
510
  * when using those, this property should be set to false.
553
511
  */
554
- resetSelectionOnHeaderTap :
555
- {
556
- check : "Boolean",
557
- init : true,
558
- apply : "_applyResetSelectionOnHeaderTap"
512
+ resetSelectionOnHeaderTap: {
513
+ check: "Boolean",
514
+ init: true,
515
+ apply: "_applyResetSelectionOnHeaderTap"
559
516
  },
560
517
 
561
-
562
518
  /**
563
519
  * Whether to reset the selection when the unpopulated table area is tapped.
564
520
  * The default is false which keeps the behaviour as before
565
521
  */
566
- resetSelectionOnTapBelowRows :
567
- {
568
- check : "Boolean",
569
- init : false,
570
- apply : "_applyResetSelectionOnTapBelowRows"
522
+ resetSelectionOnTapBelowRows: {
523
+ check: "Boolean",
524
+ init: false,
525
+ apply: "_applyResetSelectionOnTapBelowRows"
571
526
  },
572
527
 
573
528
  /**
@@ -580,17 +535,14 @@ qx.Class.define("qx.ui.table.Table",
580
535
  apply: "_applyMinCellEditHeight"
581
536
  },
582
537
 
583
-
584
538
  /** The renderer to use for styling the rows. */
585
- dataRowRenderer :
586
- {
587
- check : "qx.ui.table.IRowRenderer",
588
- init : null,
589
- nullable : true,
590
- event : "changeDataRowRenderer"
539
+ dataRowRenderer: {
540
+ check: "qx.ui.table.IRowRenderer",
541
+ init: null,
542
+ nullable: true,
543
+ event: "changeDataRowRenderer"
591
544
  },
592
545
 
593
-
594
546
  /**
595
547
  * A function to call when before modal cell editor is opened.
596
548
  *
@@ -605,212 +557,179 @@ qx.Class.define("qx.ui.table.Table",
605
557
  * col, row, xPos, value
606
558
  *
607
559
  */
608
- modalCellEditorPreOpenFunction :
609
- {
610
- check : "Function",
611
- init : null,
612
- nullable : true
560
+ modalCellEditorPreOpenFunction: {
561
+ check: "Function",
562
+ init: null,
563
+ nullable: true
613
564
  },
614
565
 
615
-
616
566
  /**
617
567
  * By default, all Scrollers' (meta-columns') horizontal scrollbars are
618
568
  * shown if any one is required. Allow not showing any that are not
619
569
  * required.
620
570
  */
621
- excludeScrollerScrollbarsIfNotNeeded :
622
- {
623
- check : "Boolean",
624
- init : false,
625
- nullable : false
571
+ excludeScrollerScrollbarsIfNotNeeded: {
572
+ check: "Boolean",
573
+ init: false,
574
+ nullable: false
626
575
  },
627
576
 
628
-
629
577
  /**
630
578
  * A function to instantiate a new column menu button.
631
579
  */
632
- newColumnMenu :
633
- {
634
- check : "Function",
635
- init : function() {
580
+ newColumnMenu: {
581
+ check: "Function",
582
+ init() {
636
583
  return new qx.ui.table.columnmenu.Button();
637
584
  }
638
585
  },
639
586
 
640
-
641
587
  /**
642
588
  * A function to instantiate a selection manager. this allows subclasses of
643
589
  * Table to subclass this internal class. To take effect, this property must
644
590
  * be set before calling the Table constructor.
645
591
  */
646
- newSelectionManager :
647
- {
648
- check : "Function",
649
- init : function(obj) {
592
+ newSelectionManager: {
593
+ check: "Function",
594
+ init(obj) {
650
595
  return new qx.ui.table.selection.Manager(obj);
651
596
  }
652
597
  },
653
598
 
654
-
655
599
  /**
656
600
  * A function to instantiate a selection model. this allows subclasses of
657
601
  * Table to subclass this internal class. To take effect, this property must
658
602
  * be set before calling the Table constructor.
659
603
  */
660
- newSelectionModel :
661
- {
662
- check : "Function",
663
- init : function(obj) {
604
+ newSelectionModel: {
605
+ check: "Function",
606
+ init(obj) {
664
607
  return new qx.ui.table.selection.Model(obj);
665
608
  }
666
609
  },
667
610
 
668
-
669
611
  /**
670
612
  * A function to instantiate a table column model. This allows subclasses
671
613
  * of Table to subclass this internal class. To take effect, this
672
614
  * property must be set before calling the Table constructor.
673
615
  */
674
- newTableColumnModel :
675
- {
676
- check : "Function",
677
- init : function(table) {
616
+ newTableColumnModel: {
617
+ check: "Function",
618
+ init(table) {
678
619
  return new qx.ui.table.columnmodel.Basic(table);
679
620
  }
680
621
  },
681
622
 
682
-
683
623
  /**
684
624
  * A function to instantiate a table pane. this allows subclasses of
685
625
  * Table to subclass this internal class. To take effect, this property
686
626
  * must be set before calling the Table constructor.
687
627
  */
688
- newTablePane :
689
- {
690
- check : "Function",
691
- init : function(obj) {
628
+ newTablePane: {
629
+ check: "Function",
630
+ init(obj) {
692
631
  return new qx.ui.table.pane.Pane(obj);
693
632
  }
694
633
  },
695
634
 
696
-
697
635
  /**
698
636
  * A function to instantiate a table pane. this allows subclasses of
699
637
  * Table to subclass this internal class. To take effect, this property
700
638
  * must be set before calling the Table constructor.
701
639
  */
702
- newTablePaneHeader :
703
- {
704
- check : "Function",
705
- init : function(obj) {
640
+ newTablePaneHeader: {
641
+ check: "Function",
642
+ init(obj) {
706
643
  return new qx.ui.table.pane.Header(obj);
707
644
  }
708
645
  },
709
646
 
710
-
711
647
  /**
712
648
  * A function to instantiate a table pane scroller. this allows
713
649
  * subclasses of Table to subclass this internal class. To take effect,
714
650
  * this property must be set before calling the Table constructor.
715
651
  */
716
- newTablePaneScroller :
717
- {
718
- check : "Function",
719
- init : function(obj) {
652
+ newTablePaneScroller: {
653
+ check: "Function",
654
+ init(obj) {
720
655
  return new qx.ui.table.pane.Scroller(obj);
721
656
  }
722
657
  },
723
658
 
724
-
725
659
  /**
726
660
  * A function to instantiate a table pane model. this allows subclasses
727
661
  * of Table to subclass this internal class. To take effect, this
728
662
  * property must be set before calling the Table constructor.
729
663
  */
730
- newTablePaneModel :
731
- {
732
- check : "Function",
733
- init : function(columnModel) {
664
+ newTablePaneModel: {
665
+ check: "Function",
666
+ init(columnModel) {
734
667
  return new qx.ui.table.pane.Model(columnModel);
735
668
  }
736
669
  }
737
670
  },
738
671
 
739
-
740
-
741
-
742
672
  /*
743
673
  *****************************************************************************
744
674
  MEMBERS
745
675
  *****************************************************************************
746
676
  */
747
677
 
748
- members :
749
- {
750
- __focusedCol : null,
751
- __focusedRow : null,
752
-
753
- __scrollerParent : null,
678
+ members: {
679
+ __focusedCol: null,
680
+ __focusedRow: null,
754
681
 
755
- __selectionManager : null,
682
+ __scrollerParent: null,
756
683
 
757
- __additionalStatusBarText : null,
758
- __lastRowCount : null,
759
- __lastColCount : null,
760
- __internalChange : null,
684
+ __selectionManager: null,
761
685
 
762
- __columnMenuButtons : null,
763
- __columnModel : null,
764
- __emptyTableModel : null,
686
+ __additionalStatusBarText: null,
687
+ __lastRowCount: null,
688
+ __lastColCount: null,
689
+ __internalChange: null,
765
690
 
766
- __hadVerticalScrollBar : null,
691
+ __columnMenuButtons: null,
692
+ __columnModel: null,
693
+ __emptyTableModel: null,
767
694
 
768
- __timer : null,
695
+ __hadVerticalScrollBar: null,
769
696
 
697
+ __timer: null,
770
698
 
771
699
  // overridden
772
- _createChildControlImpl : function(id, hash)
773
- {
700
+ _createChildControlImpl(id, hash) {
774
701
  var control;
775
702
 
776
- switch(id)
777
- {
778
- case "statusbar":
779
- control = new qx.ui.basic.Label();
780
- control.set(
781
- {
703
+ switch (id) {
704
+ case "statusbar":
705
+ control = new qx.ui.basic.Label();
706
+ control.set({
782
707
  allowGrowX: true
783
708
  });
784
- this._add(control);
785
- break;
786
709
 
787
- case "column-button":
788
- control = this.getNewColumnMenu()();
789
- control.set({
790
- focusable : false
791
- });
710
+ this._add(control);
711
+ break;
792
712
 
793
- // Create the initial menu too
794
- var menu = control.factory("menu", { table : this });
713
+ case "column-button":
714
+ control = this.getNewColumnMenu()();
715
+ control.set({
716
+ focusable: false
717
+ });
795
718
 
796
- // Add a listener to initialize the column menu when it becomes visible
797
- menu.addListener(
798
- "appear",
799
- this._initColumnMenu,
800
- this
801
- );
719
+ // Create the initial menu too
720
+ var menu = control.factory("menu", { table: this });
721
+
722
+ // Add a listener to initialize the column menu when it becomes visible
723
+ menu.addListener("appear", this._initColumnMenu, this);
802
724
 
803
- break;
725
+ break;
804
726
  }
805
727
 
806
- return control || this.base(arguments, id);
728
+ return control || super._createChildControlImpl(id);
807
729
  },
808
730
 
809
-
810
-
811
731
  // property modifier
812
- _applySelectionModel : function(value, old)
813
- {
732
+ _applySelectionModel(value, old) {
814
733
  this.__selectionManager.setSelectionModel(value);
815
734
 
816
735
  if (old != null) {
@@ -820,24 +739,20 @@ qx.Class.define("qx.ui.table.Table",
820
739
  value.addListener("changeSelection", this._onSelectionChanged, this);
821
740
  },
822
741
 
823
-
824
742
  // property modifier
825
- _applyRowHeight : function(value, old)
826
- {
743
+ _applyRowHeight(value, old) {
827
744
  var scrollerArr = this._getPaneScrollerArr();
828
745
 
829
- for (var i=0; i<scrollerArr.length; i++) {
746
+ for (var i = 0; i < scrollerArr.length; i++) {
830
747
  scrollerArr[i].updateVerScrollBarMaximum();
831
748
  }
832
749
  },
833
750
 
834
-
835
751
  // property modifier
836
- _applyHeaderCellsVisible : function(value, old)
837
- {
752
+ _applyHeaderCellsVisible(value, old) {
838
753
  var scrollerArr = this._getPaneScrollerArr();
839
754
 
840
- for (var i=0; i<scrollerArr.length; i++) {
755
+ for (var i = 0; i < scrollerArr.length; i++) {
841
756
  if (value) {
842
757
  scrollerArr[i]._showChildControl("header");
843
758
  } else {
@@ -845,43 +760,37 @@ qx.Class.define("qx.ui.table.Table",
845
760
  }
846
761
  }
847
762
  // also hide the column visibility button
848
- if(this.getColumnVisibilityButtonVisible()) {
763
+ if (this.getColumnVisibilityButtonVisible()) {
849
764
  this._applyColumnVisibilityButtonVisible(value);
850
765
  }
851
766
  },
852
767
 
853
-
854
768
  // property modifier
855
- _applyHeaderCellHeight : function(value, old)
856
- {
769
+ _applyHeaderCellHeight(value, old) {
857
770
  var scrollerArr = this._getPaneScrollerArr();
858
771
 
859
- for (var i=0; i<scrollerArr.length; i++) {
772
+ for (var i = 0; i < scrollerArr.length; i++) {
860
773
  scrollerArr[i].getHeader().setHeight(value);
861
774
  }
862
775
  },
863
776
 
864
-
865
777
  // property modifier
866
- _applyMinCellEditHeight: function(value) {
778
+ _applyMinCellEditHeight(value) {
867
779
  var scrollerArr = this._getPaneScrollerArr();
868
780
 
869
- for (var i=0; i<scrollerArr.length; i++) {
781
+ for (var i = 0; i < scrollerArr.length; i++) {
870
782
  scrollerArr[i].setMinCellEditHeight(value);
871
783
  }
872
784
  },
873
785
 
874
-
875
786
  /**
876
787
  * Get an empty table model instance to use for this table. Use this table
877
788
  * to configure the table with no table model.
878
789
  *
879
790
  * @return {qx.ui.table.ITableModel} The empty table model
880
791
  */
881
- getEmptyTableModel : function()
882
- {
883
- if (!this.__emptyTableModel)
884
- {
792
+ getEmptyTableModel() {
793
+ if (!this.__emptyTableModel) {
885
794
  this.__emptyTableModel = new qx.ui.table.model.Simple();
886
795
  this.__emptyTableModel.setColumns([]);
887
796
  this.__emptyTableModel.setData([]);
@@ -889,67 +798,60 @@ qx.Class.define("qx.ui.table.Table",
889
798
  return this.__emptyTableModel;
890
799
  },
891
800
 
892
-
893
801
  // property modifier
894
- _applyTableModel : function(value, old)
895
- {
802
+ _applyTableModel(value, old) {
896
803
  this.getTableColumnModel().init(value.getColumnCount(), this);
897
804
 
898
- if (old != null)
899
- {
805
+ if (old != null) {
900
806
  old.removeListener(
901
807
  "metaDataChanged",
902
- this._onTableModelMetaDataChanged, this
808
+ this._onTableModelMetaDataChanged,
809
+ this
903
810
  );
904
811
 
905
- old.removeListener(
906
- "dataChanged",
907
- this._onTableModelDataChanged,
908
- this);
812
+ old.removeListener("dataChanged", this._onTableModelDataChanged, this);
909
813
  }
910
814
 
911
815
  value.addListener(
912
816
  "metaDataChanged",
913
- this._onTableModelMetaDataChanged, this
817
+ this._onTableModelMetaDataChanged,
818
+ this
914
819
  );
915
820
 
916
- value.addListener(
917
- "dataChanged",
918
- this._onTableModelDataChanged,
919
- this);
821
+ value.addListener("dataChanged", this._onTableModelDataChanged, this);
920
822
 
921
823
  // Update the status bar
922
824
  this._updateStatusBar();
923
825
 
924
- this._updateTableData(
925
- 0, value.getRowCount(),
926
- 0, value.getColumnCount()
927
- );
826
+ this._updateTableData(0, value.getRowCount(), 0, value.getColumnCount());
827
+
928
828
  this._onTableModelMetaDataChanged();
929
829
 
930
830
  // If the table model has an init() method, call it. We don't, however,
931
831
  // call it if this is the initial setting of the table model, as the
932
832
  // scrollers are not yet initialized. In that case, the init method is
933
833
  // called explicitly by the Table constructor.
934
- if (old && value.init && typeof(value.init) == "function")
935
- {
834
+ if (old && value.init && typeof value.init == "function") {
936
835
  value.init(this);
937
836
  }
938
837
  },
939
838
 
940
-
941
839
  /**
942
840
  * Get the The table column model.
943
841
  *
944
842
  * @return {qx.ui.table.columnmodel.Basic} The table's column model
945
843
  */
946
- getTableColumnModel : function()
947
- {
948
- if (!this.__columnModel)
949
- {
950
- var columnModel = this.__columnModel = this.getNewTableColumnModel()(this);
844
+ getTableColumnModel() {
845
+ if (!this.__columnModel) {
846
+ var columnModel = (this.__columnModel =
847
+ this.getNewTableColumnModel()(this));
848
+
849
+ columnModel.addListener(
850
+ "visibilityChanged",
851
+ this._onColVisibilityChanged,
852
+ this
853
+ );
951
854
 
952
- columnModel.addListener("visibilityChanged", this._onColVisibilityChanged, this);
953
855
  columnModel.addListener("widthChanged", this._onColWidthChanged, this);
954
856
  columnModel.addListener("orderChanged", this._onColOrderChanged, this);
955
857
 
@@ -960,8 +862,7 @@ qx.Class.define("qx.ui.table.Table",
960
862
  // Reset the table column model in each table pane model
961
863
  var scrollerArr = this._getPaneScrollerArr();
962
864
 
963
- for (var i=0; i<scrollerArr.length; i++)
964
- {
865
+ for (var i = 0; i < scrollerArr.length; i++) {
965
866
  var paneScroller = scrollerArr[i];
966
867
  var paneModel = paneScroller.getTablePaneModel();
967
868
  paneModel.setTableColumnModel(columnModel);
@@ -970,10 +871,8 @@ qx.Class.define("qx.ui.table.Table",
970
871
  return this.__columnModel;
971
872
  },
972
873
 
973
-
974
874
  // property modifier
975
- _applyStatusBarVisible : function(value, old)
976
- {
875
+ _applyStatusBarVisible(value, old) {
977
876
  if (value) {
978
877
  this._showChildControl("statusbar");
979
878
  } else {
@@ -985,18 +884,14 @@ qx.Class.define("qx.ui.table.Table",
985
884
  }
986
885
  },
987
886
 
988
-
989
887
  // property modifier
990
- _applyAdditionalStatusBarText : function(value, old)
991
- {
888
+ _applyAdditionalStatusBarText(value, old) {
992
889
  this.__additionalStatusBarText = value;
993
890
  this._updateStatusBar();
994
891
  },
995
892
 
996
-
997
893
  // property modifier
998
- _applyColumnVisibilityButtonVisible : function(value, old)
999
- {
894
+ _applyColumnVisibilityButtonVisible(value, old) {
1000
895
  if (value) {
1001
896
  this._showChildControl("column-button");
1002
897
  } else {
@@ -1004,28 +899,29 @@ qx.Class.define("qx.ui.table.Table",
1004
899
  }
1005
900
  },
1006
901
 
1007
-
1008
902
  // property modifier
1009
- _applyMetaColumnCounts : function(value, old)
1010
- {
903
+ _applyMetaColumnCounts(value, old) {
1011
904
  var metaColumnCounts = value;
1012
905
  var scrollerArr = this._getPaneScrollerArr();
1013
- var handlers = { };
906
+ var handlers = {};
1014
907
 
1015
- if (value > old)
1016
- {
908
+ if (value > old) {
1017
909
  // Save event listeners on the redirected events so we can re-apply
1018
910
  // them to new scrollers.
1019
911
  var manager = qx.event.Registration.getManager(scrollerArr[0]);
1020
- for (var evName in qx.ui.table.Table.__redirectEvents)
1021
- {
1022
- handlers[evName] = { };
1023
- handlers[evName].capture = manager.getListeners(scrollerArr[0],
1024
- evName,
1025
- true);
1026
- handlers[evName].bubble = manager.getListeners(scrollerArr[0],
1027
- evName,
1028
- false);
912
+ for (var evName in qx.ui.table.Table.__redirectEvents) {
913
+ handlers[evName] = {};
914
+ handlers[evName].capture = manager.getListeners(
915
+ scrollerArr[0],
916
+ evName,
917
+ true
918
+ );
919
+
920
+ handlers[evName].bubble = manager.getListeners(
921
+ scrollerArr[0],
922
+ evName,
923
+ false
924
+ );
1029
925
  }
1030
926
  }
1031
927
 
@@ -1035,8 +931,7 @@ qx.Class.define("qx.ui.table.Table",
1035
931
  // Update the old panes
1036
932
  var leftX = 0;
1037
933
 
1038
- for (var i=0; i<scrollerArr.length; i++)
1039
- {
934
+ for (var i = 0; i < scrollerArr.length; i++) {
1040
935
  var paneScroller = scrollerArr[i];
1041
936
  var paneModel = paneScroller.getTablePaneModel();
1042
937
  paneModel.setFirstColumnX(leftX);
@@ -1045,12 +940,10 @@ qx.Class.define("qx.ui.table.Table",
1045
940
  }
1046
941
 
1047
942
  // Add the new panes
1048
- if (metaColumnCounts.length > scrollerArr.length)
1049
- {
943
+ if (metaColumnCounts.length > scrollerArr.length) {
1050
944
  var columnModel = this.getTableColumnModel();
1051
945
 
1052
- for (var i=scrollerArr.length; i<metaColumnCounts.length; i++)
1053
- {
946
+ for (var i = scrollerArr.length; i < metaColumnCounts.length; i++) {
1054
947
  var paneModel = this.getNewTablePaneModel()(columnModel);
1055
948
  paneModel.setFirstColumnX(leftX);
1056
949
  paneModel.setMaxColumnCount(metaColumnCounts[i]);
@@ -1063,21 +956,19 @@ qx.Class.define("qx.ui.table.Table",
1063
956
  paneScroller.addListener("changeScrollY", this._onScrollY, this);
1064
957
 
1065
958
  // Apply redirected events to this new scroller
1066
- for (evName in qx.ui.table.Table.__redirectEvents)
1067
- {
959
+ for (evName in qx.ui.table.Table.__redirectEvents) {
1068
960
  // On first setting of meta columns (constructing phase), there
1069
961
  // are no handlers to deal with yet.
1070
- if (! handlers[evName])
1071
- {
962
+ if (!handlers[evName]) {
1072
963
  break;
1073
964
  }
1074
965
 
1075
- if (handlers[evName].capture &&
1076
- handlers[evName].capture.length > 0)
1077
- {
966
+ if (
967
+ handlers[evName].capture &&
968
+ handlers[evName].capture.length > 0
969
+ ) {
1078
970
  var capture = handlers[evName].capture;
1079
- for (var j = 0; j < capture.length; j++)
1080
- {
971
+ for (var j = 0; j < capture.length; j++) {
1081
972
  // Determine what context to use. If the context does not
1082
973
  // exist, we assume that the context is this table. If it
1083
974
  // does exist and it equals the first pane scroller (from
@@ -1085,12 +976,9 @@ qx.Class.define("qx.ui.table.Table",
1085
976
  // to be this new pane scroller. Otherwise leave the context
1086
977
  // as it was set.
1087
978
  var context = capture[j].context;
1088
- if (! context)
1089
- {
979
+ if (!context) {
1090
980
  context = this;
1091
- }
1092
- else if (context == scrollerArr[0])
1093
- {
981
+ } else if (context == scrollerArr[0]) {
1094
982
  context = paneScroller;
1095
983
  }
1096
984
 
@@ -1098,16 +986,14 @@ qx.Class.define("qx.ui.table.Table",
1098
986
  evName,
1099
987
  capture[j].handler,
1100
988
  context,
1101
- true);
989
+ true
990
+ );
1102
991
  }
1103
992
  }
1104
993
 
1105
- if (handlers[evName].bubble &&
1106
- handlers[evName].bubble.length > 0)
1107
- {
994
+ if (handlers[evName].bubble && handlers[evName].bubble.length > 0) {
1108
995
  var bubble = handlers[evName].bubble;
1109
- for (var j = 0; j < bubble.length; j++)
1110
- {
996
+ for (var j = 0; j < bubble.length; j++) {
1111
997
  // Determine what context to use. If the context does not
1112
998
  // exist, we assume that the context is this table. If it
1113
999
  // does exist and it equals the first pane scroller (from
@@ -1115,12 +1001,9 @@ qx.Class.define("qx.ui.table.Table",
1115
1001
  // to be this new pane scroller. Otherwise leave the context
1116
1002
  // as it was set.
1117
1003
  var context = bubble[j].context;
1118
- if (! context)
1119
- {
1004
+ if (!context) {
1120
1005
  context = this;
1121
- }
1122
- else if (context == scrollerArr[0])
1123
- {
1006
+ } else if (context == scrollerArr[0]) {
1124
1007
  context = paneScroller;
1125
1008
  }
1126
1009
 
@@ -1128,29 +1011,31 @@ qx.Class.define("qx.ui.table.Table",
1128
1011
  evName,
1129
1012
  bubble[j].handler,
1130
1013
  context,
1131
- false);
1014
+ false
1015
+ );
1132
1016
  }
1133
1017
  }
1134
1018
  }
1135
1019
 
1136
1020
  // last meta column is flexible
1137
- var flex = (i == metaColumnCounts.length - 1) ? 1 : 0;
1138
- this.__scrollerParent.add(paneScroller, {flex: flex});
1021
+ var flex = i == metaColumnCounts.length - 1 ? 1 : 0;
1022
+ this.__scrollerParent.add(paneScroller, { flex: flex });
1139
1023
  scrollerArr = this._getPaneScrollerArr();
1140
1024
  }
1141
1025
  }
1142
1026
 
1143
1027
  // Update all meta columns
1144
- for (var i=0; i<scrollerArr.length; i++)
1145
- {
1028
+ for (var i = 0; i < scrollerArr.length; i++) {
1146
1029
  var paneScroller = scrollerArr[i];
1147
- var isLast = (i == (scrollerArr.length - 1));
1030
+ var isLast = i == scrollerArr.length - 1;
1148
1031
 
1149
1032
  // Set the right header height
1150
1033
  paneScroller.getHeader().setHeight(this.getHeaderCellHeight());
1151
1034
 
1152
1035
  // Put the column visibility button in the top right corner of the last meta column
1153
- paneScroller.setTopRightWidget(isLast ? this.getChildControl("column-button") : null);
1036
+ paneScroller.setTopRightWidget(
1037
+ isLast ? this.getChildControl("column-button") : null
1038
+ );
1154
1039
  }
1155
1040
 
1156
1041
  if (!this.isColumnVisibilityButtonVisible()) {
@@ -1161,104 +1046,88 @@ qx.Class.define("qx.ui.table.Table",
1161
1046
  this._updateScrollBarVisibility();
1162
1047
  },
1163
1048
 
1164
-
1165
1049
  // property modifier
1166
- _applyFocusCellOnPointerMove : function(value, old)
1167
- {
1050
+ _applyFocusCellOnPointerMove(value, old) {
1168
1051
  var scrollerArr = this._getPaneScrollerArr();
1169
1052
 
1170
- for (var i=0; i<scrollerArr.length; i++) {
1053
+ for (var i = 0; i < scrollerArr.length; i++) {
1171
1054
  scrollerArr[i].setFocusCellOnPointerMove(value);
1172
1055
  }
1173
1056
  },
1174
1057
 
1175
-
1176
1058
  // property modifier
1177
- _applyShowCellFocusIndicator : function(value, old)
1178
- {
1059
+ _applyShowCellFocusIndicator(value, old) {
1179
1060
  var scrollerArr = this._getPaneScrollerArr();
1180
1061
 
1181
- for (var i=0; i<scrollerArr.length; i++) {
1062
+ for (var i = 0; i < scrollerArr.length; i++) {
1182
1063
  scrollerArr[i].setShowCellFocusIndicator(value);
1183
1064
  }
1184
1065
  },
1185
1066
 
1186
-
1187
1067
  // property modifier
1188
- _applyContextMenuFromDataCellsOnly : function(value, old)
1189
- {
1068
+ _applyContextMenuFromDataCellsOnly(value, old) {
1190
1069
  var scrollerArr = this._getPaneScrollerArr();
1191
1070
 
1192
- for (var i=0; i<scrollerArr.length; i++) {
1071
+ for (var i = 0; i < scrollerArr.length; i++) {
1193
1072
  scrollerArr[i].setContextMenuFromDataCellsOnly(value);
1194
1073
  }
1195
1074
  },
1196
1075
 
1197
-
1198
1076
  // property modifier
1199
- _applyKeepFirstVisibleRowComplete : function(value, old)
1200
- {
1077
+ _applyKeepFirstVisibleRowComplete(value, old) {
1201
1078
  var scrollerArr = this._getPaneScrollerArr();
1202
1079
 
1203
- for (var i=0; i<scrollerArr.length; i++) {
1080
+ for (var i = 0; i < scrollerArr.length; i++) {
1204
1081
  scrollerArr[i].onKeepFirstVisibleRowCompleteChanged();
1205
1082
  }
1206
1083
  },
1207
1084
 
1208
-
1209
1085
  // property modifier
1210
- _applyResetSelectionOnHeaderTap : function(value, old)
1211
- {
1086
+ _applyResetSelectionOnHeaderTap(value, old) {
1212
1087
  var scrollerArr = this._getPaneScrollerArr();
1213
1088
 
1214
- for (var i=0; i<scrollerArr.length; i++) {
1089
+ for (var i = 0; i < scrollerArr.length; i++) {
1215
1090
  scrollerArr[i].setResetSelectionOnHeaderTap(value);
1216
1091
  }
1217
1092
  },
1218
1093
 
1219
-
1220
1094
  // property modifier
1221
- _applyResetSelectionOnTapBelowRows : function(value, old)
1222
- {
1095
+ _applyResetSelectionOnTapBelowRows(value, old) {
1223
1096
  var scrollerArr = this._getPaneScrollerArr();
1224
1097
 
1225
- for (var i=0; i<scrollerArr.length; i++) {
1098
+ for (var i = 0; i < scrollerArr.length; i++) {
1226
1099
  scrollerArr[i].setResetSelectionOnTapBelowRows(value);
1227
1100
  }
1228
1101
  },
1229
1102
 
1230
-
1231
1103
  /**
1232
1104
  * Returns the selection manager.
1233
1105
  *
1234
1106
  * @return {qx.ui.table.selection.Manager} the selection manager.
1235
1107
  */
1236
- getSelectionManager : function() {
1108
+ getSelectionManager() {
1237
1109
  return this.__selectionManager;
1238
1110
  },
1239
1111
 
1240
-
1241
1112
  /**
1242
1113
  * Returns an array containing all TablePaneScrollers in this table.
1243
1114
  *
1244
1115
  * @return {qx.ui.table.pane.Scroller[]} all TablePaneScrollers in this table.
1245
1116
  */
1246
- _getPaneScrollerArr : function() {
1117
+ _getPaneScrollerArr() {
1247
1118
  return this.__scrollerParent.getChildren();
1248
1119
  },
1249
1120
 
1250
-
1251
1121
  /**
1252
1122
  * Returns a TablePaneScroller of this table.
1253
1123
  *
1254
1124
  * @param metaColumn {Integer} the meta column to get the TablePaneScroller for.
1255
1125
  * @return {qx.ui.table.pane.Scroller} the qx.ui.table.pane.Scroller.
1256
1126
  */
1257
- getPaneScroller : function(metaColumn) {
1127
+ getPaneScroller(metaColumn) {
1258
1128
  return this._getPaneScrollerArr()[metaColumn];
1259
1129
  },
1260
1130
 
1261
-
1262
1131
  /**
1263
1132
  * Cleans up the meta columns.
1264
1133
  *
@@ -1266,96 +1135,85 @@ qx.Class.define("qx.ui.table.Table",
1266
1135
  * meta columns will be cleaned up, too. All previous meta columns will
1267
1136
  * stay unchanged. If 0 all meta columns will be cleaned up.
1268
1137
  */
1269
- _cleanUpMetaColumns : function(fromMetaColumn)
1270
- {
1138
+ _cleanUpMetaColumns(fromMetaColumn) {
1271
1139
  var scrollerArr = this._getPaneScrollerArr();
1272
1140
 
1273
- if (scrollerArr != null)
1274
- {
1275
- for (var i=scrollerArr.length-1; i>=fromMetaColumn; i--)
1276
- {
1141
+ if (scrollerArr != null) {
1142
+ for (var i = scrollerArr.length - 1; i >= fromMetaColumn; i--) {
1277
1143
  scrollerArr[i].destroy();
1278
1144
  }
1279
1145
  }
1280
1146
  },
1281
1147
 
1282
-
1283
1148
  /**
1284
1149
  * Event handler. Called when the locale has changed.
1285
1150
  *
1286
1151
  * @param evt {Event} the event.
1287
1152
  */
1288
- _onChangeLocale : function(evt)
1289
- {
1153
+ _onChangeLocale(evt) {
1290
1154
  this.updateContent();
1291
1155
  this._updateStatusBar();
1292
1156
  },
1293
1157
 
1294
-
1295
1158
  // overridden
1296
- _onChangeTheme : function() {
1297
- this.base(arguments);
1159
+ _onChangeTheme() {
1160
+ super._onChangeTheme();
1298
1161
 
1299
1162
  this.getDataRowRenderer().initThemeValues();
1300
1163
  this.updateContent();
1301
1164
  this._updateStatusBar();
1302
1165
  },
1303
1166
 
1304
-
1305
1167
  /**
1306
1168
  * Event handler. Called when the selection has changed.
1307
1169
  *
1308
1170
  * @param evt {Map} the event.
1309
1171
  */
1310
- _onSelectionChanged : function(evt)
1311
- {
1172
+ _onSelectionChanged(evt) {
1312
1173
  var scrollerArr = this._getPaneScrollerArr();
1313
1174
 
1314
- for (var i=0; i<scrollerArr.length; i++) {
1175
+ for (var i = 0; i < scrollerArr.length; i++) {
1315
1176
  scrollerArr[i].onSelectionChanged();
1316
1177
  }
1317
1178
 
1318
1179
  this._updateStatusBar();
1319
1180
  },
1320
1181
 
1321
-
1322
1182
  /**
1323
1183
  * Event handler. Called when the table model meta data has changed.
1324
1184
  *
1325
1185
  * @param evt {Map} the event.
1326
1186
  */
1327
- _onTableModelMetaDataChanged : function(evt)
1328
- {
1187
+ _onTableModelMetaDataChanged(evt) {
1329
1188
  var scrollerArr = this._getPaneScrollerArr();
1330
1189
 
1331
- for (var i=0; i<scrollerArr.length; i++) {
1190
+ for (var i = 0; i < scrollerArr.length; i++) {
1332
1191
  scrollerArr[i].onTableModelMetaDataChanged();
1333
1192
  }
1334
1193
 
1335
1194
  this._updateStatusBar();
1336
1195
  },
1337
1196
 
1338
-
1339
1197
  /**
1340
1198
  * Event handler. Called when the table model data has changed.
1341
1199
  *
1342
1200
  * @param evt {Map} the event.
1343
1201
  */
1344
- _onTableModelDataChanged : function(evt)
1345
- {
1202
+ _onTableModelDataChanged(evt) {
1346
1203
  var data = evt.getData();
1347
1204
 
1348
1205
  this._updateTableData(
1349
- data.firstRow, data.lastRow,
1350
- data.firstColumn, data.lastColumn,
1351
- data.removeStart, data.removeCount
1206
+ data.firstRow,
1207
+ data.lastRow,
1208
+ data.firstColumn,
1209
+ data.lastColumn,
1210
+ data.removeStart,
1211
+ data.removeCount
1352
1212
  );
1353
1213
  },
1354
1214
 
1355
-
1356
1215
  // overridden
1357
- _onContextMenuOpen : function(e)
1358
- {
1216
+ _onContextMenuOpen(e) {
1359
1217
  // This is Widget's context menu handler which typically retrieves
1360
1218
  // and displays the menu as soon as it receives a "contextmenu" event.
1361
1219
  // We want to allow the cellContextmenu handler to create the menu,
@@ -1363,7 +1221,6 @@ qx.Class.define("qx.ui.table.Table",
1363
1221
  // placement and display handling in our _onContextMenu method.
1364
1222
  },
1365
1223
 
1366
-
1367
1224
  /**
1368
1225
  * To update the table if the table model has changed and remove selection.
1369
1226
  *
@@ -1374,44 +1231,57 @@ qx.Class.define("qx.ui.table.Table",
1374
1231
  * @param removeStart {Integer ? null} The first index of the interval (including), to remove selection.
1375
1232
  * @param removeCount {Integer ? null} The count of the interval, to remove selection.
1376
1233
  */
1377
- _updateTableData : function(firstRow, lastRow, firstColumn, lastColumn, removeStart, removeCount)
1378
- {
1234
+ _updateTableData(
1235
+ firstRow,
1236
+ lastRow,
1237
+ firstColumn,
1238
+ lastColumn,
1239
+ removeStart,
1240
+ removeCount
1241
+ ) {
1379
1242
  var scrollerArr = this._getPaneScrollerArr();
1380
1243
 
1381
1244
  // update selection if rows were removed
1382
1245
  if (removeCount) {
1383
- this.getSelectionModel().removeSelectionInterval(removeStart, removeStart + removeCount - 1, true);
1246
+ this.getSelectionModel().removeSelectionInterval(
1247
+ removeStart,
1248
+ removeStart + removeCount - 1,
1249
+ true
1250
+ );
1251
+
1384
1252
  // remove focus if the focused row has been removed
1385
- if (this.__focusedRow >= removeStart && this.__focusedRow < (removeStart + removeCount)) {
1253
+ if (
1254
+ this.__focusedRow >= removeStart &&
1255
+ this.__focusedRow < removeStart + removeCount
1256
+ ) {
1386
1257
  this.setFocusedCell();
1387
1258
  }
1388
1259
  }
1389
1260
 
1390
- for (var i=0; i<scrollerArr.length; i++)
1391
- {
1261
+ for (var i = 0; i < scrollerArr.length; i++) {
1392
1262
  scrollerArr[i].onTableModelDataChanged(
1393
- firstRow, lastRow,
1394
- firstColumn, lastColumn
1263
+ firstRow,
1264
+ lastRow,
1265
+ firstColumn,
1266
+ lastColumn
1395
1267
  );
1396
1268
  }
1397
1269
 
1398
1270
  var rowCount = this.getTableModel().getRowCount();
1399
1271
 
1400
- if (rowCount != this.__lastRowCount)
1401
- {
1272
+ if (rowCount != this.__lastRowCount) {
1402
1273
  this.__lastRowCount = rowCount;
1403
1274
 
1404
1275
  this._updateScrollBarVisibility();
1405
1276
  this._updateStatusBar();
1406
-
1277
+
1407
1278
  // ARIA attrs
1408
1279
  this.getContentElement().setAttribute("aria-rowcount", rowCount);
1409
1280
  }
1410
1281
 
1411
1282
  const colCount = this.getTableModel().getColumnCount();
1412
1283
 
1413
- if (colCount != this.__lastColCount)
1414
- {
1284
+ if (colCount != this.__lastColCount) {
1415
1285
  this.__lastColCount = colCount;
1416
1286
 
1417
1287
  // ARIA attrs
@@ -1419,22 +1289,19 @@ qx.Class.define("qx.ui.table.Table",
1419
1289
  }
1420
1290
  },
1421
1291
 
1422
-
1423
1292
  /**
1424
1293
  * Event handler. Called when a TablePaneScroller has been scrolled vertically.
1425
1294
  *
1426
1295
  * @param evt {Map} the event.
1427
1296
  */
1428
- _onScrollY : function(evt)
1429
- {
1430
- if (!this.__internalChange)
1431
- {
1297
+ _onScrollY(evt) {
1298
+ if (!this.__internalChange) {
1432
1299
  this.__internalChange = true;
1433
1300
 
1434
1301
  // Set the same scroll position to all meta columns
1435
1302
  var scrollerArr = this._getPaneScrollerArr();
1436
1303
 
1437
- for (var i=0; i<scrollerArr.length; i++) {
1304
+ for (var i = 0; i < scrollerArr.length; i++) {
1438
1305
  scrollerArr[i].setScrollY(evt.getData());
1439
1306
  }
1440
1307
 
@@ -1442,26 +1309,33 @@ qx.Class.define("qx.ui.table.Table",
1442
1309
  }
1443
1310
  },
1444
1311
 
1445
-
1446
1312
  /**
1447
1313
  * Event handler. Called when a key was pressed.
1448
1314
  *
1449
1315
  * @param evt {qx.event.type.KeySequence} the event.
1450
1316
  * @deprecated {6.0} please use _onKeyDown instead!
1451
1317
  */
1452
- _onKeyPress : function(evt)
1453
- {
1454
- qx.log.Logger.deprecatedMethodWarning(this._onKeyPress, "The method '_onKeyPress()' is deprecated. Please use '_onKeyDown()' instead.");
1455
- qx.log.Logger.deprecateMethodOverriding(this, qx.ui.table.Table, "_onKeyPress", "The method '_onKeyPress()' is deprecated. Please use '_onKeyDown()' instead.");
1456
- this._onKeyDown(evt);
1318
+ _onKeyPress(evt) {
1319
+ qx.log.Logger.deprecatedMethodWarning(
1320
+ this._onKeyPress,
1321
+ "The method '_onKeyPress()' is deprecated. Please use '_onKeyDown()' instead."
1322
+ );
1323
+
1324
+ qx.log.Logger.deprecateMethodOverriding(
1325
+ this,
1326
+ qx.ui.table.Table,
1327
+ "_onKeyPress",
1328
+ "The method '_onKeyPress()' is deprecated. Please use '_onKeyDown()' instead."
1329
+ );
1330
+
1331
+ this._onKeyDown(evt);
1457
1332
  },
1458
1333
  /**
1459
1334
  * Event handler. Called when on key down event
1460
1335
  *
1461
1336
  * @param evt {qx.event.type.KeySequence} the event.
1462
1337
  */
1463
- _onKeyDown : function(evt)
1464
- {
1338
+ _onKeyDown(evt) {
1465
1339
  if (!this.getEnabled()) {
1466
1340
  return;
1467
1341
  }
@@ -1473,13 +1347,10 @@ qx.Class.define("qx.ui.table.Table",
1473
1347
  // Handle keys that are independent from the modifiers
1474
1348
  var identifier = evt.getKeyIdentifier();
1475
1349
 
1476
- if (this.isEditing())
1477
- {
1350
+ if (this.isEditing()) {
1478
1351
  // Editing mode
1479
- if (evt.getModifiers() == 0)
1480
- {
1481
- switch(identifier)
1482
- {
1352
+ if (evt.getModifiers() == 0) {
1353
+ switch (identifier) {
1483
1354
  case "Enter":
1484
1355
  this.stopEditing();
1485
1356
  var oldFocusedRow = this.__focusedRow;
@@ -1501,18 +1372,13 @@ qx.Class.define("qx.ui.table.Table",
1501
1372
  break;
1502
1373
  }
1503
1374
  }
1504
-
1505
- }
1506
- else
1507
- {
1375
+ } else {
1508
1376
  consumed = true;
1509
1377
  // No editing mode
1510
- if (evt.isCtrlPressed())
1511
- {
1378
+ if (evt.isCtrlPressed()) {
1512
1379
  // Handle keys that depend on modifiers
1513
1380
 
1514
- switch(identifier)
1515
- {
1381
+ switch (identifier) {
1516
1382
  case "A": // Ctrl + A
1517
1383
  var rowCount = this.getTableModel().getRowCount();
1518
1384
 
@@ -1526,14 +1392,15 @@ qx.Class.define("qx.ui.table.Table",
1526
1392
  consumed = false;
1527
1393
  break;
1528
1394
  }
1529
- }
1530
- else
1531
- {
1395
+ } else {
1532
1396
  // Handle keys that are independent from the modifiers
1533
- switch(identifier)
1534
- {
1397
+ switch (identifier) {
1535
1398
  case "Space":
1536
- this.__selectionManager.handleSelectKeyDown(this.__focusedRow, evt);
1399
+ this.__selectionManager.handleSelectKeyDown(
1400
+ this.__focusedRow,
1401
+ evt
1402
+ );
1403
+
1537
1404
  break;
1538
1405
 
1539
1406
  case "F2":
@@ -1572,9 +1439,12 @@ qx.Class.define("qx.ui.table.Table",
1572
1439
  var scroller = this.getPaneScroller(0);
1573
1440
  var pane = scroller.getTablePane();
1574
1441
  var rowHeight = this.getRowHeight();
1575
- var direction = (identifier == "PageUp") ? -1 : 1;
1442
+ var direction = identifier == "PageUp" ? -1 : 1;
1576
1443
  rowCount = pane.getVisibleRowCount() - 1;
1577
- scroller.setScrollY(scroller.getScrollY() + direction * rowCount * rowHeight);
1444
+ scroller.setScrollY(
1445
+ scroller.getScrollY() + direction * rowCount * rowHeight
1446
+ );
1447
+
1578
1448
  this.moveFocusedCell(0, direction * rowCount);
1579
1449
  break;
1580
1450
 
@@ -1584,52 +1454,51 @@ qx.Class.define("qx.ui.table.Table",
1584
1454
  }
1585
1455
  }
1586
1456
 
1587
- if (oldFocusedRow != this.__focusedRow &&
1588
- this.getRowFocusChangeModifiesSelection())
1589
- {
1457
+ if (
1458
+ oldFocusedRow != this.__focusedRow &&
1459
+ this.getRowFocusChangeModifiesSelection()
1460
+ ) {
1590
1461
  // The focus moved -> Let the selection manager handle this event
1591
1462
  this.__selectionManager.handleMoveKeyDown(this.__focusedRow, evt);
1592
1463
  }
1593
1464
 
1594
- if (consumed)
1595
- {
1465
+ if (consumed) {
1596
1466
  evt.preventDefault();
1597
1467
  evt.stopPropagation();
1598
1468
  }
1599
1469
  },
1600
1470
 
1601
-
1602
1471
  /**
1603
1472
  * Event handler. Called when the table gets the focus.
1604
1473
  *
1605
1474
  * @param evt {Map} the event.
1606
1475
  */
1607
- _onFocusChanged : function(evt)
1608
- {
1476
+ _onFocusChanged(evt) {
1609
1477
  var scrollerArr = this._getPaneScrollerArr();
1610
1478
 
1611
- for (var i=0; i<scrollerArr.length; i++) {
1479
+ for (var i = 0; i < scrollerArr.length; i++) {
1612
1480
  scrollerArr[i].onFocusChanged();
1613
1481
  }
1614
1482
  },
1615
1483
 
1616
-
1617
1484
  /**
1618
1485
  * Event handler. Called when the visibility of a column has changed.
1619
1486
  *
1620
1487
  * @param evt {Map} the event.
1621
1488
  */
1622
- _onColVisibilityChanged : function(evt)
1623
- {
1489
+ _onColVisibilityChanged(evt) {
1624
1490
  var scrollerArr = this._getPaneScrollerArr();
1625
1491
 
1626
- for (var i=0; i<scrollerArr.length; i++) {
1492
+ for (var i = 0; i < scrollerArr.length; i++) {
1627
1493
  scrollerArr[i].onColVisibilityChanged();
1628
1494
  }
1629
1495
 
1630
1496
  var data = evt.getData();
1631
- if (this.__columnMenuButtons != null && data.col != null &&
1632
- data.visible != null) {
1497
+ if (
1498
+ this.__columnMenuButtons != null &&
1499
+ data.col != null &&
1500
+ data.visible != null
1501
+ ) {
1633
1502
  this.__columnMenuButtons[data.col].setColumnVisible(data.visible);
1634
1503
  }
1635
1504
 
@@ -1637,18 +1506,15 @@ qx.Class.define("qx.ui.table.Table",
1637
1506
  this._updateScrollBarVisibility();
1638
1507
  },
1639
1508
 
1640
-
1641
1509
  /**
1642
1510
  * Event handler. Called when the width of a column has changed.
1643
1511
  *
1644
1512
  * @param evt {Map} the event.
1645
1513
  */
1646
- _onColWidthChanged : function(evt)
1647
- {
1514
+ _onColWidthChanged(evt) {
1648
1515
  var scrollerArr = this._getPaneScrollerArr();
1649
1516
 
1650
- for (var i=0; i<scrollerArr.length; i++)
1651
- {
1517
+ for (var i = 0; i < scrollerArr.length; i++) {
1652
1518
  var data = evt.getData();
1653
1519
  scrollerArr[i].setColumnWidth(data.col, data.newWidth);
1654
1520
  }
@@ -1657,17 +1523,15 @@ qx.Class.define("qx.ui.table.Table",
1657
1523
  this._updateScrollBarVisibility();
1658
1524
  },
1659
1525
 
1660
-
1661
1526
  /**
1662
1527
  * Event handler. Called when the column order has changed.
1663
1528
  *
1664
1529
  * @param evt {Map} the event.
1665
1530
  */
1666
- _onColOrderChanged : function(evt)
1667
- {
1531
+ _onColOrderChanged(evt) {
1668
1532
  var scrollerArr = this._getPaneScrollerArr();
1669
1533
 
1670
- for (var i=0; i<scrollerArr.length; i++) {
1534
+ for (var i = 0; i < scrollerArr.length; i++) {
1671
1535
  scrollerArr[i].onColOrderChanged();
1672
1536
  }
1673
1537
 
@@ -1676,7 +1540,6 @@ qx.Class.define("qx.ui.table.Table",
1676
1540
  this._updateScrollBarVisibility();
1677
1541
  },
1678
1542
 
1679
-
1680
1543
  /**
1681
1544
  * Gets the TablePaneScroller at a certain x position in the page. If there is
1682
1545
  * no TablePaneScroller at this position, null is returned.
@@ -1684,13 +1547,11 @@ qx.Class.define("qx.ui.table.Table",
1684
1547
  * @param pageX {Integer} the position in the page to check (in pixels).
1685
1548
  * @return {qx.ui.table.pane.Scroller} the TablePaneScroller or null.
1686
1549
  */
1687
- getTablePaneScrollerAtPageX : function(pageX)
1688
- {
1550
+ getTablePaneScrollerAtPageX(pageX) {
1689
1551
  var metaCol = this._getMetaColumnAtPageX(pageX);
1690
- return (metaCol != -1) ? this.getPaneScroller(metaCol) : null;
1552
+ return metaCol != -1 ? this.getPaneScroller(metaCol) : null;
1691
1553
  },
1692
1554
 
1693
-
1694
1555
  /**
1695
1556
  * Sets the currently focused cell. A value of <code>null</code> hides the
1696
1557
  * focus cell.
@@ -1700,10 +1561,11 @@ qx.Class.define("qx.ui.table.Table",
1700
1561
  * @param scrollVisible {Boolean ? false} whether to scroll the new focused cell
1701
1562
  * visible.
1702
1563
  */
1703
- setFocusedCell : function(col, row, scrollVisible)
1704
- {
1705
- if (!this.isEditing() && (col != this.__focusedCol || row != this.__focusedRow))
1706
- {
1564
+ setFocusedCell(col, row, scrollVisible) {
1565
+ if (
1566
+ !this.isEditing() &&
1567
+ (col != this.__focusedCol || row != this.__focusedRow)
1568
+ ) {
1707
1569
  if (col === null) {
1708
1570
  col = 0;
1709
1571
  }
@@ -1713,7 +1575,7 @@ qx.Class.define("qx.ui.table.Table",
1713
1575
 
1714
1576
  var scrollerArr = this._getPaneScrollerArr();
1715
1577
 
1716
- for (var i=0; i<scrollerArr.length; i++) {
1578
+ for (var i = 0; i < scrollerArr.length; i++) {
1717
1579
  scrollerArr[i].setFocusedCell(col, row);
1718
1580
  }
1719
1581
 
@@ -1722,48 +1584,44 @@ qx.Class.define("qx.ui.table.Table",
1722
1584
  }
1723
1585
 
1724
1586
  // ARIA attrs
1725
- const cellId = "qooxdoo-table-cell-" + this.toHashCode() + "-" + row + "-" + col;
1726
- this.getContentElement().setAttribute("aria-activedescendant", cellId);
1587
+ const cellId =
1588
+ "qooxdoo-table-cell-" + this.toHashCode() + "-" + row + "-" + col;
1589
+ this.getContentElement().setAttribute("aria-activedescendant", cellId);
1727
1590
  }
1728
1591
  },
1729
1592
 
1730
-
1731
1593
  /**
1732
1594
  * Resets (clears) the current selection
1733
1595
  */
1734
- resetSelection : function() {
1596
+ resetSelection() {
1735
1597
  this.getSelectionModel().resetSelection();
1736
1598
  },
1737
1599
 
1738
-
1739
1600
  /**
1740
1601
  * Resets the focused cell.
1741
1602
  */
1742
- resetCellFocus : function() {
1603
+ resetCellFocus() {
1743
1604
  this.setFocusedCell(null, null, false);
1744
1605
  },
1745
1606
 
1746
-
1747
1607
  /**
1748
1608
  * Returns the column of the currently focused cell.
1749
1609
  *
1750
1610
  * @return {Integer} the model index of the focused cell's column.
1751
1611
  */
1752
- getFocusedColumn : function() {
1612
+ getFocusedColumn() {
1753
1613
  return this.__focusedCol;
1754
1614
  },
1755
1615
 
1756
-
1757
1616
  /**
1758
1617
  * Returns the row of the currently focused cell.
1759
1618
  *
1760
1619
  * @return {Integer} the model index of the focused cell's column.
1761
1620
  */
1762
- getFocusedRow : function() {
1621
+ getFocusedRow() {
1763
1622
  return this.__focusedRow;
1764
1623
  },
1765
1624
 
1766
-
1767
1625
  /**
1768
1626
  * Select whether the focused row is highlighted
1769
1627
  *
@@ -1771,12 +1629,10 @@ qx.Class.define("qx.ui.table.Table",
1771
1629
  * Flag indicating whether the focused row should be highlighted.
1772
1630
  *
1773
1631
  */
1774
- highlightFocusedRow : function(bHighlight)
1775
- {
1632
+ highlightFocusedRow(bHighlight) {
1776
1633
  this.getDataRowRenderer().setHighlightFocusRow(bHighlight);
1777
1634
  },
1778
1635
 
1779
-
1780
1636
  /**
1781
1637
  * Remove the highlighting of the current focus row.
1782
1638
  *
@@ -1789,17 +1645,15 @@ qx.Class.define("qx.ui.table.Table",
1789
1645
  *
1790
1646
  * @param evt {qx.event.type.Pointer} Incoming pointer event
1791
1647
  */
1792
- clearFocusedRowHighlight : function(evt)
1793
- {
1794
- if(evt)
1795
- {
1648
+ clearFocusedRowHighlight(evt) {
1649
+ if (evt) {
1796
1650
  var relatedTarget = evt.getRelatedTarget();
1797
1651
  if (
1798
1652
  relatedTarget instanceof qx.ui.table.pane.Pane ||
1799
1653
  relatedTarget instanceof qx.ui.table.pane.FocusIndicator
1800
- ) {
1801
- return ;
1802
- }
1654
+ ) {
1655
+ return;
1656
+ }
1803
1657
  }
1804
1658
 
1805
1659
  // Remove focus from any cell that has it
@@ -1807,33 +1661,34 @@ qx.Class.define("qx.ui.table.Table",
1807
1661
 
1808
1662
  // Now, for each pane scroller...
1809
1663
  var scrollerArr = this._getPaneScrollerArr();
1810
- for (var i=0; i<scrollerArr.length; i++)
1811
- {
1664
+ for (var i = 0; i < scrollerArr.length; i++) {
1812
1665
  // ... repaint without focus.
1813
1666
  scrollerArr[i].onFocusChanged();
1814
1667
  }
1815
1668
  },
1816
1669
 
1817
-
1818
1670
  /**
1819
1671
  * Moves the focus.
1820
1672
  *
1821
1673
  * @param deltaX {Integer} The delta by which the focus should be moved on the x axis.
1822
1674
  * @param deltaY {Integer} The delta by which the focus should be moved on the y axis.
1823
1675
  */
1824
- moveFocusedCell : function(deltaX, deltaY)
1825
- {
1676
+ moveFocusedCell(deltaX, deltaY) {
1826
1677
  var col = this.__focusedCol;
1827
1678
  var row = this.__focusedRow;
1828
1679
 
1829
1680
  // could also be undefined [BUG #4676]. In that case default to first cell focus
1830
- if (col === null || col === undefined || row === null || row === undefined) {
1681
+ if (
1682
+ col === null ||
1683
+ col === undefined ||
1684
+ row === null ||
1685
+ row === undefined
1686
+ ) {
1831
1687
  this.setFocusedCell(0, 0, true);
1832
1688
  return;
1833
1689
  }
1834
1690
 
1835
- if (deltaX != 0)
1836
- {
1691
+ if (deltaX != 0) {
1837
1692
  var columnModel = this.getTableColumnModel();
1838
1693
  var x = columnModel.getVisibleX(col);
1839
1694
  var colCount = columnModel.getVisibleColumnCount();
@@ -1841,32 +1696,37 @@ qx.Class.define("qx.ui.table.Table",
1841
1696
  col = columnModel.getVisibleColumnAtX(x);
1842
1697
  }
1843
1698
 
1844
- if (deltaY != 0)
1845
- {
1699
+ if (deltaY != 0) {
1846
1700
  var tableModel = this.getTableModel();
1847
- row = qx.lang.Number.limit(row + deltaY, 0, tableModel.getRowCount() - 1);
1701
+ row = qx.lang.Number.limit(
1702
+ row + deltaY,
1703
+ 0,
1704
+ tableModel.getRowCount() - 1
1705
+ );
1848
1706
  }
1849
1707
 
1850
1708
  this.setFocusedCell(col, row, true);
1851
1709
  },
1852
1710
 
1853
-
1854
1711
  /**
1855
1712
  * Scrolls a cell visible.
1856
1713
  *
1857
1714
  * @param col {Integer} the model index of the column the cell belongs to.
1858
1715
  * @param row {Integer} the model index of the row the cell belongs to.
1859
1716
  */
1860
- scrollCellVisible : function(col, row)
1861
- {
1717
+ scrollCellVisible(col, row) {
1862
1718
  // get the dom element
1863
1719
  var elem = this.getContentElement().getDomElement();
1864
1720
  // if the dom element is not available, the table hasn't been rendered
1865
1721
  if (!elem) {
1866
1722
  // postpone the scroll until the table has appeared
1867
- this.addListenerOnce("appear", function() {
1868
- this.scrollCellVisible(col, row);
1869
- }, this);
1723
+ this.addListenerOnce(
1724
+ "appear",
1725
+ function () {
1726
+ this.scrollCellVisible(col, row);
1727
+ },
1728
+ this
1729
+ );
1870
1730
  }
1871
1731
 
1872
1732
  var columnModel = this.getTableColumnModel();
@@ -1879,16 +1739,13 @@ qx.Class.define("qx.ui.table.Table",
1879
1739
  }
1880
1740
  },
1881
1741
 
1882
-
1883
1742
  /**
1884
1743
  * Returns whether currently a cell is editing.
1885
1744
  *
1886
1745
  * @return {var} whether currently a cell is editing.
1887
1746
  */
1888
- isEditing : function()
1889
- {
1890
- if (this.__focusedCol != null)
1891
- {
1747
+ isEditing() {
1748
+ if (this.__focusedCol != null) {
1892
1749
  var x = this.getTableColumnModel().getVisibleX(this.__focusedCol);
1893
1750
  var metaColumn = this._getMetaColumnAtColumnX(x);
1894
1751
  return this.getPaneScroller(metaColumn).isEditing();
@@ -1896,17 +1753,14 @@ qx.Class.define("qx.ui.table.Table",
1896
1753
  return false;
1897
1754
  },
1898
1755
 
1899
-
1900
1756
  /**
1901
1757
  * Starts editing the currently focused cell. Does nothing if already editing
1902
1758
  * or if the column is not editable.
1903
1759
  *
1904
1760
  * @return {Boolean} whether editing was started
1905
1761
  */
1906
- startEditing : function()
1907
- {
1908
- if (this.__focusedCol != null)
1909
- {
1762
+ startEditing() {
1763
+ if (this.__focusedCol != null) {
1910
1764
  var x = this.getTableColumnModel().getVisibleX(this.__focusedCol);
1911
1765
  var metaColumn = this._getMetaColumnAtColumnX(x);
1912
1766
  var started = this.getPaneScroller(metaColumn).startEditing();
@@ -1916,41 +1770,34 @@ qx.Class.define("qx.ui.table.Table",
1916
1770
  return false;
1917
1771
  },
1918
1772
 
1919
-
1920
1773
  /**
1921
1774
  * Stops editing and writes the editor's value to the model.
1922
1775
  */
1923
- stopEditing : function()
1924
- {
1925
- if (this.__focusedCol != null)
1926
- {
1776
+ stopEditing() {
1777
+ if (this.__focusedCol != null) {
1927
1778
  var x = this.getTableColumnModel().getVisibleX(this.__focusedCol);
1928
1779
  var metaColumn = this._getMetaColumnAtColumnX(x);
1929
1780
  this.getPaneScroller(metaColumn).stopEditing();
1930
1781
  }
1931
1782
  },
1932
1783
 
1933
-
1934
1784
  /**
1935
1785
  * Stops editing without writing the editor's value to the model.
1936
1786
  */
1937
- cancelEditing : function()
1938
- {
1939
- if (this.__focusedCol != null)
1940
- {
1787
+ cancelEditing() {
1788
+ if (this.__focusedCol != null) {
1941
1789
  var x = this.getTableColumnModel().getVisibleX(this.__focusedCol);
1942
1790
  var metaColumn = this._getMetaColumnAtColumnX(x);
1943
1791
  this.getPaneScroller(metaColumn).cancelEditing();
1944
1792
  }
1945
1793
  },
1946
1794
 
1947
-
1948
1795
  /**
1949
1796
  * Update the table content of every attached table pane.
1950
1797
  */
1951
- updateContent : function() {
1798
+ updateContent() {
1952
1799
  var scrollerArr = this._getPaneScrollerArr();
1953
- for (var i=0; i<scrollerArr.length; i++) {
1800
+ for (var i = 0; i < scrollerArr.length; i++) {
1954
1801
  scrollerArr[i].getTablePane().updateContent(true);
1955
1802
  }
1956
1803
  },
@@ -1959,24 +1806,21 @@ qx.Class.define("qx.ui.table.Table",
1959
1806
  * Activates the blocker widgets on all column headers and the
1960
1807
  * column button
1961
1808
  */
1962
- blockHeaderElements : function()
1963
- {
1809
+ blockHeaderElements() {
1964
1810
  var scrollerArr = this._getPaneScrollerArr();
1965
- for (var i=0; i<scrollerArr.length; i++) {
1811
+ for (var i = 0; i < scrollerArr.length; i++) {
1966
1812
  scrollerArr[i].getHeader().getBlocker().blockContent(20);
1967
1813
  }
1968
1814
  this.getChildControl("column-button").getBlocker().blockContent(20);
1969
1815
  },
1970
1816
 
1971
-
1972
1817
  /**
1973
1818
  * Deactivates the blocker widgets on all column headers and the
1974
1819
  * column button
1975
1820
  */
1976
- unblockHeaderElements : function()
1977
- {
1821
+ unblockHeaderElements() {
1978
1822
  var scrollerArr = this._getPaneScrollerArr();
1979
- for (var i=0; i<scrollerArr.length; i++) {
1823
+ for (var i = 0; i < scrollerArr.length; i++) {
1980
1824
  scrollerArr[i].getHeader().getBlocker().unblock();
1981
1825
  }
1982
1826
  this.getChildControl("column-button").getBlocker().unblock();
@@ -1989,12 +1833,10 @@ qx.Class.define("qx.ui.table.Table",
1989
1833
  * @param pageX {Integer} the position in the page to check (in pixels).
1990
1834
  * @return {Integer} the index of the meta column or -1.
1991
1835
  */
1992
- _getMetaColumnAtPageX : function(pageX)
1993
- {
1836
+ _getMetaColumnAtPageX(pageX) {
1994
1837
  var scrollerArr = this._getPaneScrollerArr();
1995
1838
 
1996
- for (var i=0; i<scrollerArr.length; i++)
1997
- {
1839
+ for (var i = 0; i < scrollerArr.length; i++) {
1998
1840
  var pos = scrollerArr[i].getContentLocation();
1999
1841
 
2000
1842
  if (pageX >= pos.left && pageX <= pos.right) {
@@ -2005,7 +1847,6 @@ qx.Class.define("qx.ui.table.Table",
2005
1847
  return -1;
2006
1848
  },
2007
1849
 
2008
-
2009
1850
  /**
2010
1851
  * Returns the meta column a column is shown in. If the column is not shown at
2011
1852
  * all, -1 is returned.
@@ -2013,13 +1854,11 @@ qx.Class.define("qx.ui.table.Table",
2013
1854
  * @param visXPos {Integer} the visible x position of the column.
2014
1855
  * @return {Integer} the meta column the column is shown in.
2015
1856
  */
2016
- _getMetaColumnAtColumnX : function(visXPos)
2017
- {
1857
+ _getMetaColumnAtColumnX(visXPos) {
2018
1858
  var metaColumnCounts = this.getMetaColumnCounts();
2019
1859
  var rightXPos = 0;
2020
1860
 
2021
- for (var i=0; i<metaColumnCounts.length; i++)
2022
- {
1861
+ for (var i = 0; i < metaColumnCounts.length; i++) {
2023
1862
  var counts = metaColumnCounts[i];
2024
1863
  rightXPos += counts;
2025
1864
 
@@ -2031,32 +1870,33 @@ qx.Class.define("qx.ui.table.Table",
2031
1870
  return -1;
2032
1871
  },
2033
1872
 
2034
-
2035
1873
  /**
2036
1874
  * Updates the text shown in the status bar.
2037
1875
  */
2038
- _updateStatusBar : function()
2039
- {
1876
+ _updateStatusBar() {
2040
1877
  var tableModel = this.getTableModel();
2041
1878
 
2042
- if (this.getStatusBarVisible())
2043
- {
1879
+ if (this.getStatusBarVisible()) {
2044
1880
  var selectedRowCount = this.getSelectionModel().getSelectedCount();
2045
1881
  var rowCount = tableModel.getRowCount();
2046
1882
 
2047
1883
  var text;
2048
1884
 
2049
- if (rowCount >= 0)
2050
- {
1885
+ if (rowCount >= 0) {
2051
1886
  if (selectedRowCount == 0) {
2052
1887
  text = this.trn("one row", "%1 rows", rowCount, rowCount);
2053
1888
  } else {
2054
- text = this.trn("one of one row", "%1 of %2 rows", rowCount, selectedRowCount, rowCount);
1889
+ text = this.trn(
1890
+ "one of one row",
1891
+ "%1 of %2 rows",
1892
+ rowCount,
1893
+ selectedRowCount,
1894
+ rowCount
1895
+ );
2055
1896
  }
2056
1897
  }
2057
1898
 
2058
- if (this.__additionalStatusBarText)
2059
- {
1899
+ if (this.__additionalStatusBarText) {
2060
1900
  if (text) {
2061
1901
  text += this.__additionalStatusBarText;
2062
1902
  } else {
@@ -2070,33 +1910,28 @@ qx.Class.define("qx.ui.table.Table",
2070
1910
  }
2071
1911
  },
2072
1912
 
2073
-
2074
1913
  /**
2075
1914
  * Updates the widths of all scrollers.
2076
1915
  */
2077
- _updateScrollerWidths : function()
2078
- {
1916
+ _updateScrollerWidths() {
2079
1917
  // Give all scrollers except for the last one the wanted width
2080
1918
  // (The last one has a flex with)
2081
1919
  var scrollerArr = this._getPaneScrollerArr();
2082
1920
 
2083
- for (var i=0; i<scrollerArr.length; i++)
2084
- {
2085
- var isLast = (i == (scrollerArr.length - 1));
1921
+ for (var i = 0; i < scrollerArr.length; i++) {
1922
+ var isLast = i == scrollerArr.length - 1;
2086
1923
  var width = scrollerArr[i].getTablePaneModel().getTotalWidth();
2087
1924
  scrollerArr[i].setPaneWidth(width);
2088
1925
 
2089
1926
  var flex = isLast ? 1 : 0;
2090
- scrollerArr[i].setLayoutProperties({flex: flex});
1927
+ scrollerArr[i].setLayoutProperties({ flex: flex });
2091
1928
  }
2092
1929
  },
2093
1930
 
2094
-
2095
1931
  /**
2096
1932
  * Updates the visibility of the scrollbars in the meta columns.
2097
1933
  */
2098
- _updateScrollBarVisibility : function()
2099
- {
1934
+ _updateScrollBarVisibility() {
2100
1935
  if (!this.getBounds()) {
2101
1936
  return;
2102
1937
  }
@@ -2110,17 +1945,14 @@ qx.Class.define("qx.ui.table.Table",
2110
1945
  var verNeeded = false;
2111
1946
  var excludeScrollerScrollbarsIfNotNeeded;
2112
1947
 
2113
-
2114
1948
  // Determine whether we need to render horizontal scrollbars for meta
2115
1949
  // columns that don't themselves actually require it
2116
1950
  excludeScrollerScrollbarsIfNotNeeded =
2117
1951
  this.getExcludeScrollerScrollbarsIfNotNeeded();
2118
1952
 
2119
- if (! excludeScrollerScrollbarsIfNotNeeded)
2120
- {
2121
- for (var i=0; i<scrollerArr.length; i++)
2122
- {
2123
- var isLast = (i == (scrollerArr.length - 1));
1953
+ if (!excludeScrollerScrollbarsIfNotNeeded) {
1954
+ for (var i = 0; i < scrollerArr.length; i++) {
1955
+ var isLast = i == scrollerArr.length - 1;
2124
1956
 
2125
1957
  // Only show the last vertical scrollbar
2126
1958
  var bars = scrollerArr[i].getNeededScrollBars(horNeeded, !isLast);
@@ -2129,49 +1961,51 @@ qx.Class.define("qx.ui.table.Table",
2129
1961
  horNeeded = true;
2130
1962
  }
2131
1963
 
2132
- if (isLast && (bars & verBar)) {
1964
+ if (isLast && bars & verBar) {
2133
1965
  verNeeded = true;
2134
1966
  }
2135
1967
  }
2136
1968
  }
2137
1969
 
2138
1970
  // Set the needed scrollbars
2139
- for (var i=0; i<scrollerArr.length; i++)
2140
- {
2141
- isLast = (i == (scrollerArr.length - 1));
1971
+ for (var i = 0; i < scrollerArr.length; i++) {
1972
+ isLast = i == scrollerArr.length - 1;
2142
1973
 
2143
1974
  // If we don't want to include scrollbars for meta columns that don't
2144
1975
  // require it, find out whether this meta column requires it.
2145
- if (excludeScrollerScrollbarsIfNotNeeded)
2146
- {
2147
- horNeeded =
2148
- !! (scrollerArr[i].getNeededScrollBars(false, !isLast) & horBar);
1976
+ if (excludeScrollerScrollbarsIfNotNeeded) {
1977
+ horNeeded = !!(
1978
+ scrollerArr[i].getNeededScrollBars(false, !isLast) & horBar
1979
+ );
2149
1980
 
2150
1981
  // Show the horizontal scrollbar if needed. Specify null to indicate
2151
1982
  // that the scrollbar should be hidden rather than excluded.
2152
1983
  scrollerArr[i].setHorizontalScrollBarVisible(horNeeded || null);
2153
- }
2154
- else
2155
- {
1984
+ } else {
2156
1985
  // Show the horizontal scrollbar if needed.
2157
1986
  scrollerArr[i].setHorizontalScrollBarVisible(horNeeded);
2158
1987
  }
2159
1988
 
2160
1989
  // If this is the last meta-column...
2161
- if (isLast)
2162
- {
1990
+ if (isLast) {
2163
1991
  // ... then get the current (old) use of vertical scroll bar
2164
- verNeeded =
2165
- !! (scrollerArr[i].getNeededScrollBars(false, false) & verBar);
1992
+ verNeeded = !!(
1993
+ scrollerArr[i].getNeededScrollBars(false, false) & verBar
1994
+ );
1995
+
2166
1996
  if (this.__hadVerticalScrollBar == null) {
2167
- this.__hadVerticalScrollBar = scrollerArr[i].getVerticalScrollBarVisible();
2168
- this.__timer = qx.event.Timer.once(function()
2169
- {
2170
- // reset the last visible state of the vertical scroll bar
2171
- // in a timeout to prevent infinite loops.
2172
- this.__hadVerticalScrollBar = null;
2173
- this.__timer = null;
2174
- }, this, 0);
1997
+ this.__hadVerticalScrollBar =
1998
+ scrollerArr[i].getVerticalScrollBarVisible();
1999
+ this.__timer = qx.event.Timer.once(
2000
+ function () {
2001
+ // reset the last visible state of the vertical scroll bar
2002
+ // in a timeout to prevent infinite loops.
2003
+ this.__hadVerticalScrollBar = null;
2004
+ this.__timer = null;
2005
+ },
2006
+ this,
2007
+ 0
2008
+ );
2175
2009
  }
2176
2010
  }
2177
2011
 
@@ -2179,20 +2013,17 @@ qx.Class.define("qx.ui.table.Table",
2179
2013
 
2180
2014
  // If this is the last meta-column and the use of a vertical scroll bar
2181
2015
  // has changed...
2182
- if (isLast && verNeeded != this.__hadVerticalScrollBar)
2183
- {
2016
+ if (isLast && verNeeded != this.__hadVerticalScrollBar) {
2184
2017
  // ... then dispatch an event to any awaiting listeners
2185
2018
  this.fireDataEvent("verticalScrollBarChanged", verNeeded);
2186
2019
  }
2187
2020
  }
2188
2021
  },
2189
2022
 
2190
-
2191
2023
  /**
2192
2024
  * Initialize the column menu
2193
2025
  */
2194
- _initColumnMenu : function()
2195
- {
2026
+ _initColumnMenu() {
2196
2027
  var tableModel = this.getTableModel();
2197
2028
  var columnModel = this.getTableColumnModel();
2198
2029
 
@@ -2203,166 +2034,138 @@ qx.Class.define("qx.ui.table.Table",
2203
2034
 
2204
2035
  // Inform listeners who may want to insert menu items at the beginning
2205
2036
  var menu = columnButton.getMenu();
2206
- var data =
2207
- {
2208
- table : this,
2209
- menu : menu,
2210
- columnButton : columnButton
2037
+ var data = {
2038
+ table: this,
2039
+ menu: menu,
2040
+ columnButton: columnButton
2211
2041
  };
2042
+
2212
2043
  this.fireDataEvent("columnVisibilityMenuCreateStart", data);
2213
2044
 
2214
2045
  this.__columnMenuButtons = {};
2215
- for (var col=0, l=tableModel.getColumnCount(); col<l; col++)
2216
- {
2217
- var menuButton =
2218
- columnButton.factory("menu-button",
2219
- {
2220
- text : tableModel.getColumnName(col),
2221
- column : col,
2222
- bVisible : columnModel.isColumnVisible(col)
2223
- });
2224
-
2225
- qx.core.Assert.assertInterface(menuButton,
2226
- qx.ui.table.IColumnMenuItem);
2046
+ for (var iCol = 0, l = tableModel.getColumnCount(); iCol < l; iCol++) {
2047
+ var col = columnModel.getOverallColumnAtX(iCol);
2048
+ var menuButton = columnButton.factory("menu-button", {
2049
+ text: tableModel.getColumnName(col),
2050
+ column: col,
2051
+ bVisible: columnModel.isColumnVisible(col)
2052
+ });
2053
+
2054
+ qx.core.Assert.assertInterface(menuButton, qx.ui.table.IColumnMenuItem);
2227
2055
 
2228
2056
  menuButton.addListener(
2229
2057
  "changeColumnVisible",
2230
- this._createColumnVisibilityCheckBoxHandler(col), this);
2058
+ this._createColumnVisibilityCheckBoxHandler(col),
2059
+ this
2060
+ );
2061
+
2231
2062
  this.__columnMenuButtons[col] = menuButton;
2232
2063
  }
2233
2064
 
2234
2065
  // Inform listeners who may want to insert menu items at the end
2235
- data =
2236
- {
2237
- table : this,
2238
- menu : menu,
2239
- columnButton : columnButton
2066
+ data = {
2067
+ table: this,
2068
+ menu: menu,
2069
+ columnButton: columnButton
2240
2070
  };
2071
+
2241
2072
  this.fireDataEvent("columnVisibilityMenuCreateEnd", data);
2242
2073
  },
2243
2074
 
2244
-
2245
-
2246
-
2247
-
2248
2075
  /**
2249
2076
  * Creates a handler for a check box of the column visibility menu.
2250
2077
  *
2251
2078
  * @param col {Integer} the model index of column to create the handler for.
2252
2079
  * @return {Function} The created event handler.
2253
2080
  */
2254
- _createColumnVisibilityCheckBoxHandler : function(col)
2255
- {
2256
- return function(evt)
2257
- {
2081
+ _createColumnVisibilityCheckBoxHandler(col) {
2082
+ return function (evt) {
2258
2083
  var columnModel = this.getTableColumnModel();
2259
2084
  columnModel.setColumnVisible(col, evt.getData());
2260
2085
  };
2261
2086
  },
2262
2087
 
2263
-
2264
2088
  /**
2265
2089
  * Sets the width of a column.
2266
2090
  *
2267
2091
  * @param col {Integer} the model index of column.
2268
2092
  * @param width {Integer} the new width in pixels.
2269
2093
  */
2270
- setColumnWidth : function(col, width) {
2094
+ setColumnWidth(col, width) {
2271
2095
  this.getTableColumnModel().setColumnWidth(col, width);
2272
2096
  },
2273
2097
 
2274
-
2275
2098
  /**
2276
2099
  * Resize event handler
2277
2100
  */
2278
- _onResize : function()
2279
- {
2101
+ _onResize() {
2280
2102
  this.fireEvent("tableWidthChanged");
2281
2103
  this._updateScrollerWidths();
2282
2104
  this._updateScrollBarVisibility();
2283
2105
  },
2284
2106
 
2285
-
2286
2107
  // overridden
2287
- addListener : function(type, listener, self, capture)
2288
- {
2289
- if (this.self(arguments).__redirectEvents[type])
2290
- {
2108
+ addListener(type, listener, self, capture) {
2109
+ if (this.self(arguments).__redirectEvents[type]) {
2291
2110
  // start the id with the type (needed for removing)
2292
2111
  var id = [type];
2293
- for (var i = 0, arr = this._getPaneScrollerArr(); i < arr.length; i++)
2294
- {
2112
+ for (var i = 0, arr = this._getPaneScrollerArr(); i < arr.length; i++) {
2295
2113
  id.push(arr[i].addListener.apply(arr[i], arguments));
2296
2114
  }
2297
2115
  // join the id's of every event with "
2298
2116
  return id.join('"');
2299
- }
2300
- else
2301
- {
2302
- return this.base(arguments, type, listener, self, capture);
2117
+ } else {
2118
+ return super.addListener(type, listener, self, capture);
2303
2119
  }
2304
2120
  },
2305
2121
 
2306
-
2307
2122
  // overridden
2308
- removeListener : function(type, listener, self, capture)
2309
- {
2310
- if (this.self(arguments).__redirectEvents[type])
2311
- {
2312
- for (var i = 0, arr = this._getPaneScrollerArr(); i < arr.length; i++)
2313
- {
2123
+ removeListener(type, listener, self, capture) {
2124
+ if (this.self(arguments).__redirectEvents[type]) {
2125
+ for (var i = 0, arr = this._getPaneScrollerArr(); i < arr.length; i++) {
2314
2126
  arr[i].removeListener.apply(arr[i], arguments);
2315
2127
  }
2316
- }
2317
- else
2318
- {
2319
- this.base(arguments, type, listener, self, capture);
2128
+ } else {
2129
+ super.removeListener(type, listener, self, capture);
2320
2130
  }
2321
2131
  },
2322
2132
 
2323
-
2324
2133
  // overridden
2325
- removeListenerById : function(id) {
2134
+ removeListenerById(id) {
2326
2135
  var ids = id.split('"');
2327
2136
  // type is the first entry of the connected id
2328
2137
  var type = ids.shift();
2329
- if (this.self(arguments).__redirectEvents[type])
2330
- {
2138
+ if (this.self(arguments).__redirectEvents[type]) {
2331
2139
  var removed = true;
2332
- for (var i = 0, arr = this._getPaneScrollerArr(); i < arr.length; i++)
2333
- {
2140
+ for (var i = 0, arr = this._getPaneScrollerArr(); i < arr.length; i++) {
2334
2141
  removed = arr[i].removeListenerById.call(arr[i], ids[i]) && removed;
2335
2142
  }
2336
2143
  return removed;
2337
- }
2338
- else
2339
- {
2340
- return this.base(arguments, id);
2144
+ } else {
2145
+ return super.removeListenerById(id);
2341
2146
  }
2342
2147
  },
2343
2148
 
2344
-
2345
- destroy : function()
2346
- {
2149
+ destroy() {
2347
2150
  this.getChildControl("column-button").getMenu().destroy();
2348
- this.base(arguments);
2151
+ super.destroy();
2349
2152
  }
2350
2153
  },
2351
2154
 
2352
-
2353
-
2354
-
2355
2155
  /*
2356
2156
  *****************************************************************************
2357
2157
  DESTRUCTOR
2358
2158
  *****************************************************************************
2359
2159
  */
2360
2160
 
2361
- destruct : function()
2362
- {
2161
+ destruct() {
2363
2162
  // remove the event listener which handled the locale change
2364
2163
  if (qx.core.Environment.get("qx.dynlocale")) {
2365
- qx.locale.Manager.getInstance().removeListener("changeLocale", this._onChangeLocale, this);
2164
+ qx.locale.Manager.getInstance().removeListener(
2165
+ "changeLocale",
2166
+ this._onChangeLocale,
2167
+ this
2168
+ );
2366
2169
  }
2367
2170
 
2368
2171
  // we allocated these objects on init so we have to clean them up.
@@ -2376,26 +2179,31 @@ qx.Class.define("qx.ui.table.Table",
2376
2179
  dataRowRenderer.dispose();
2377
2180
  }
2378
2181
 
2379
- if (this.getTableModel() != null)
2380
- {
2182
+ if (this.getTableModel() != null) {
2381
2183
  this.getTableModel().removeListener(
2382
2184
  "metaDataChanged",
2383
- this._onTableModelMetaDataChanged, this
2185
+ this._onTableModelMetaDataChanged,
2186
+ this
2384
2187
  );
2385
2188
 
2386
2189
  this.getTableModel().removeListener(
2387
2190
  "dataChanged",
2388
2191
  this._onTableModelDataChanged,
2389
- this);
2192
+ this
2193
+ );
2390
2194
  }
2391
2195
 
2392
2196
  this._cleanUpMetaColumns(0);
2393
2197
  this.getTableColumnModel().dispose();
2394
2198
  this._disposeObjects(
2395
- "__selectionManager", "__scrollerParent",
2396
- "__emptyTableModel", "__emptyTableModel",
2397
- "__columnModel", "__timer"
2199
+ "__selectionManager",
2200
+ "__scrollerParent",
2201
+ "__emptyTableModel",
2202
+ "__emptyTableModel",
2203
+ "__columnModel",
2204
+ "__timer"
2398
2205
  );
2206
+
2399
2207
  this._disposeMap("__columnMenuButtons");
2400
2208
  }
2401
2209
  });