@qooxdoo/framework 7.9.2 → 8.0.0-beta.1

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 (593) hide show
  1. package/CHANGELOG.md +191 -33
  2. package/Manifest.json +3 -3
  3. package/bin/tools/utils.js +50 -13
  4. package/lib/compiler/compile-info.json +300 -230
  5. package/lib/compiler/index.js +56748 -44036
  6. package/lib/resource/qx/tool/{cli → compiler/cli}/templates/loader/loader-node.tmpl.js +1 -0
  7. package/lib/resource/qx/tool/compiler/cli/templates/skeleton/mobile/source/theme/custom/css/custom.css.map +1 -0
  8. package/{source/resource/qx/tool → lib/resource/qx/tool/compiler}/cli/templates/template_vars.js +12 -9
  9. package/{source/resource/qx/tool → lib/resource/qx/tool/compiler}/schema/Manifest-1-0-0.json +2 -2
  10. package/lib/resource/qx/tool/{schema → compiler/schema}/Manifest-2-0-0.json +2 -2
  11. package/lib/resource/qx/tool/{schema → compiler/schema}/compile-1-0-0.json +15 -3
  12. package/{source/resource/qx/tool → lib/resource/qx/tool/compiler}/schema/qooxdoo-1-0-0.json +1 -1
  13. package/lib/resource/qx/tool/website/build/404.html +22 -22
  14. package/lib/resource/qx/tool/website/build/about.html +23 -23
  15. package/lib/resource/qx/tool/website/build/assets/common.js +30 -18
  16. package/lib/resource/qx/tool/website/build/assets/custom.css +290 -0
  17. package/lib/resource/qx/tool/website/build/assets/qxWeb.js +28 -0
  18. package/lib/resource/qx/tool/website/build/diagnostics/dependson.html +30 -30
  19. package/lib/resource/qx/tool/website/build/diagnostics/dependson.js +49 -40
  20. package/lib/resource/qx/tool/website/build/diagnostics/requiredby.html +20 -23
  21. package/lib/resource/qx/tool/website/build/diagnostics/requiredby.js +38 -31
  22. package/lib/resource/qx/tool/website/build/index.html +24 -24
  23. package/lib/resource/qx/tool/website/build/scripts/serve.js +63 -65
  24. package/lib/resource/qx/tool/website/partials/footer.html +8 -13
  25. package/lib/resource/qx/tool/website/partials/head.html +9 -7
  26. package/lib/resource/qx/tool/website/partials/header.html +3 -3
  27. package/lib/resource/qx/tool/website/src/assets/common.js +32 -0
  28. package/lib/resource/qx/tool/website/src/assets/custom.css +290 -0
  29. package/lib/resource/qx/tool/website/src/assets/qxWeb.js +28 -0
  30. package/lib/resource/qx/tool/website/src/diagnostics/dependson.js +49 -40
  31. package/lib/resource/qx/tool/website/src/diagnostics/requiredby.js +38 -31
  32. package/lib/resource/qx/tool/website/src/index.html +2 -2
  33. package/lib/resource/qx/tool/website/src/scripts/serve.js +63 -65
  34. package/package.json +20 -19
  35. package/source/boot/index.html +2 -2
  36. package/source/class/qx/Bootstrap.js +931 -705
  37. package/source/class/qx/Class.js +1476 -1451
  38. package/source/class/qx/Interface.js +40 -107
  39. package/source/class/qx/Mixin.js +58 -116
  40. package/source/class/qx/Promise.js +1 -0
  41. package/source/class/qx/Theme.js +1 -1
  42. package/source/class/qx/application/Routing.js +2 -0
  43. package/source/class/qx/bom/Font.js +3 -0
  44. package/source/class/qx/bom/client/Locale.js +5 -0
  45. package/source/class/qx/bom/request/Jsonp.js +5 -13
  46. package/source/class/qx/bom/request/Script.js +11 -35
  47. package/source/class/qx/bom/request/SimpleXhr.js +13 -41
  48. package/source/class/qx/bom/request/Xhr.js +19 -80
  49. package/source/class/qx/bom/storage/Memory.js +2 -0
  50. package/source/class/qx/bom/storage/UserData.js +2 -0
  51. package/source/class/qx/bom/storage/Web.js +2 -0
  52. package/source/class/qx/bom/webfonts/Validator.js +13 -5
  53. package/source/class/qx/core/Assert.js +14 -0
  54. package/source/class/qx/core/BaseInit.js +19 -20
  55. package/source/class/qx/core/Environment.js +23 -20
  56. package/source/class/qx/core/MEvent.js +1 -1
  57. package/source/class/qx/core/MObjectId.js +8 -6
  58. package/source/class/qx/core/MProperty.js +172 -136
  59. package/source/class/qx/core/Object.js +88 -102
  60. package/source/class/qx/core/check/AbstractCheck.js +111 -0
  61. package/source/class/qx/core/check/Any.js +63 -0
  62. package/source/class/qx/core/check/CheckFactory.js +151 -0
  63. package/source/class/qx/core/check/DynamicTypeCheck.js +90 -0
  64. package/source/class/qx/core/check/ICheck.js +75 -0
  65. package/source/class/qx/core/check/IsOneOfCheck.js +63 -0
  66. package/source/class/qx/core/check/JsDocCheck.js +71 -0
  67. package/source/class/qx/core/check/SimpleCheck.js +42 -0
  68. package/source/class/qx/core/check/standard/ArrayCheck.js +49 -0
  69. package/source/class/qx/core/check/standard/BooleanCheck.js +47 -0
  70. package/source/class/qx/core/check/standard/ClassCheck.js +33 -0
  71. package/source/class/qx/core/check/standard/ColorCheck.js +33 -0
  72. package/source/class/qx/core/check/standard/DateCheck.js +49 -0
  73. package/source/class/qx/core/check/standard/DecoratorCheck.js +33 -0
  74. package/source/class/qx/core/check/standard/DocumentCheck.js +40 -0
  75. package/source/class/qx/core/check/standard/ElementCheck.js +40 -0
  76. package/source/class/qx/core/check/standard/ErrorCheck.js +46 -0
  77. package/source/class/qx/core/check/standard/EventCheck.js +40 -0
  78. package/source/class/qx/core/check/standard/FontCheck.js +33 -0
  79. package/source/class/qx/core/check/standard/FunctionCheck.js +49 -0
  80. package/source/class/qx/core/check/standard/IntegerCheck.js +54 -0
  81. package/source/class/qx/core/check/standard/InterfaceCheck.js +33 -0
  82. package/source/class/qx/core/check/standard/MapCheck.js +33 -0
  83. package/source/class/qx/core/check/standard/MixinCheck.js +33 -0
  84. package/source/class/qx/core/check/standard/NodeCheck.js +40 -0
  85. package/source/class/qx/core/check/standard/NumberCheck.js +48 -0
  86. package/source/class/qx/core/check/standard/ObjectCheck.js +33 -0
  87. package/source/class/qx/core/check/standard/PositiveIntegerCheck.js +45 -0
  88. package/source/class/qx/core/check/standard/PositiveNumberCheck.js +45 -0
  89. package/source/class/qx/core/check/standard/PromiseCheck.js +33 -0
  90. package/source/class/qx/core/check/standard/RegExpCheck.js +46 -0
  91. package/source/class/qx/core/check/standard/StringCheck.js +43 -0
  92. package/source/class/qx/core/check/standard/ThemeCheck.js +33 -0
  93. package/source/class/qx/core/check/standard/WindowCheck.js +40 -0
  94. package/source/class/qx/core/property/ExplicitPropertyStorage.js +87 -0
  95. package/source/class/qx/core/property/GroupProperty.js +262 -0
  96. package/source/class/qx/core/property/IProperty.js +46 -0
  97. package/source/class/qx/core/property/IPropertyStorage.js +83 -0
  98. package/source/class/qx/core/property/ImmutableArrayStorage.js +38 -0
  99. package/source/class/qx/core/property/ImmutableDataArrayStorage.js +38 -0
  100. package/source/class/qx/core/property/ImmutableObjectStorage.js +39 -0
  101. package/source/class/qx/core/property/Property.js +1481 -0
  102. package/source/class/qx/core/property/PropertyStorageFactory.js +22 -0
  103. package/source/class/qx/core/property/SimplePropertyStorage.js +105 -0
  104. package/source/class/qx/data/Array.js +102 -57
  105. package/source/class/qx/data/MBinding.js +4 -29
  106. package/source/class/qx/data/SingleValueBinding.js +596 -1495
  107. package/source/class/qx/data/binding/AbstractSegment.js +197 -0
  108. package/source/class/qx/data/binding/ArrayIndexSegment.js +148 -0
  109. package/source/class/qx/data/binding/IInputReceiver.js +14 -0
  110. package/source/class/qx/data/binding/PropNameSegment.js +150 -0
  111. package/source/class/qx/data/controller/CheckedList.js +1 -1
  112. package/source/class/qx/data/controller/Form.js +78 -8
  113. package/source/class/qx/data/controller/Tree.js +27 -117
  114. package/source/class/qx/data/marshal/Json.js +46 -149
  115. package/source/class/qx/data/store/Json.js +0 -2
  116. package/source/class/qx/dev/Debug.js +1 -1
  117. package/source/class/qx/dev/LeakDetector.js +144 -0
  118. package/source/class/qx/dev/unit/AsyncWrapper.js +1 -0
  119. package/source/class/qx/dev/unit/MMock.js +7 -2
  120. package/source/class/qx/dev/unit/Sinon.js +0 -4
  121. package/source/class/qx/dev/unit/TestClass.js +2 -2
  122. package/source/class/qx/dev/unit/TestFunction.js +1 -0
  123. package/source/class/qx/dev/unit/TestLoaderBasic.js +1 -0
  124. package/source/class/qx/dev/unit/TestRunner.js +106 -0
  125. package/source/class/qx/event/IEventDispatcher.js +8 -4
  126. package/source/class/qx/event/Manager.js +4 -0
  127. package/source/class/qx/event/Messaging.js +2 -0
  128. package/source/class/qx/event/Pool.js +7 -0
  129. package/source/class/qx/event/Registration.js +33 -55
  130. package/source/class/qx/event/Timer.js +2 -0
  131. package/source/class/qx/event/Utils.js +25 -8
  132. package/source/class/qx/event/dispatch/AbstractBubbling.js +98 -194
  133. package/source/class/qx/event/dispatch/Direct.js +18 -13
  134. package/source/class/qx/event/handler/Appear.js +20 -24
  135. package/source/class/qx/event/handler/Application.js +4 -0
  136. package/source/class/qx/event/handler/DragDrop.js +182 -385
  137. package/source/class/qx/event/handler/Element.js +3 -0
  138. package/source/class/qx/event/handler/Focus.js +36 -30
  139. package/source/class/qx/event/handler/Input.js +5 -0
  140. package/source/class/qx/event/handler/Keyboard.js +107 -165
  141. package/source/class/qx/event/handler/Pointer.js +39 -68
  142. package/source/class/qx/event/handler/PointerCore.js +7 -25
  143. package/source/class/qx/event/handler/Window.js +5 -0
  144. package/source/class/qx/event/type/Event.js +12 -0
  145. package/source/class/qx/event/type/KeySequence.js +3 -0
  146. package/source/class/qx/event/type/Native.js +3 -0
  147. package/source/class/qx/html/Element.js +26 -91
  148. package/source/class/qx/io/jsonrpc/Client.js +1 -1
  149. package/source/class/qx/io/jsonrpc/protocol/Error.js +2 -2
  150. package/source/class/qx/io/jsonrpc/protocol/Parser.js +1 -0
  151. package/source/class/qx/io/jsonrpc/protocol/Result.js +2 -2
  152. package/source/class/qx/io/request/Xhr.js +3 -8
  153. package/source/class/qx/lang/normalize/Array.js +23 -1
  154. package/source/class/qx/locale/Date.js +520 -113
  155. package/source/class/qx/locale/LocalizedString.js +3 -0
  156. package/source/class/qx/locale/Manager.js +14 -3
  157. package/source/class/qx/locale/Number.js +60 -7
  158. package/source/class/qx/log/Logger.js +1 -1
  159. package/source/class/qx/module/Animation.js +2 -0
  160. package/source/class/qx/module/Attribute.js +2 -0
  161. package/source/class/qx/module/Css.js +7 -24
  162. package/source/class/qx/module/Event.js +2 -0
  163. package/source/class/qx/module/Manipulating.js +2 -0
  164. package/source/class/qx/module/Traversing.js +2 -0
  165. package/source/class/qx/test/Bootstrap.js +68 -53
  166. package/source/class/qx/test/Class.js +310 -2
  167. package/source/class/qx/test/Mixin.js +192 -42
  168. package/source/class/qx/test/Promise.js +129 -331
  169. package/source/class/qx/test/Theme.js +11 -0
  170. package/source/class/qx/test/bom/Font.js +2 -5
  171. package/source/class/qx/test/bom/Template.js +1 -1
  172. package/source/class/qx/test/compiler/ClassFile.js +14 -0
  173. package/source/class/qx/test/core/Assert.js +12 -0
  174. package/source/class/qx/test/core/Environment.js +17 -3
  175. package/source/class/qx/test/core/InheritanceDummy.js +10 -1
  176. package/source/class/qx/test/core/Object.js +51 -24
  177. package/source/class/qx/test/core/ObjectId.js +10 -1
  178. package/source/class/qx/test/core/Property.js +1338 -121
  179. package/source/class/qx/test/core/PropertyHelper.js +12 -0
  180. package/source/class/qx/test/core/Target.js +1 -0
  181. package/source/class/qx/test/core/Validation.js +2 -0
  182. package/source/class/qx/test/data/DataArray.js +218 -639
  183. package/source/class/qx/test/data/DataArrayWithChangeBubble.js +45 -215
  184. package/source/class/qx/test/data/MultiBinding.js +42 -0
  185. package/source/class/qx/test/data/async/__init__.js +4 -0
  186. package/source/class/qx/test/data/controller/Form.js +523 -14
  187. package/source/class/qx/test/data/controller/List.js +94 -426
  188. package/source/class/qx/test/data/controller/ListReverse.js +5 -20
  189. package/source/class/qx/test/data/controller/ListWithObjects.js +49 -225
  190. package/source/class/qx/test/data/controller/Object.js +54 -222
  191. package/source/class/qx/test/data/controller/Tree.js +195 -934
  192. package/source/class/qx/test/data/marshal/Json.js +74 -312
  193. package/source/class/qx/test/data/singlevalue/Array.js +55 -279
  194. package/source/class/qx/test/data/singlevalue/Async.js +173 -0
  195. package/source/class/qx/test/data/singlevalue/Deep.js +148 -327
  196. package/source/class/qx/test/data/singlevalue/Resolve.js +8 -28
  197. package/source/class/qx/test/data/singlevalue/Simple.js +124 -359
  198. package/source/class/qx/test/data/store/Json.js +86 -254
  199. package/source/class/qx/test/data/store/Jsonp.js +9 -29
  200. package/source/class/qx/test/data/store/Offline.js +2 -8
  201. package/source/class/qx/test/data/store/Rest.js +3 -3
  202. package/source/class/qx/test/dev/unit/Requirements.js +26 -10
  203. package/source/class/qx/test/event/GlobalError.js +2 -2
  204. package/source/class/qx/test/html/Iframe.js +1 -1
  205. package/source/class/qx/test/io/graphql/Client.js +2 -0
  206. package/source/class/qx/test/io/jsonrpc/Protocol.js +4 -2
  207. package/source/class/qx/test/io/request/MRequest.js +2 -8
  208. package/source/class/qx/test/io/request/Xhr.js +27 -117
  209. package/source/class/qx/test/lang/Function.js +6 -25
  210. package/source/class/qx/test/lang/Type.js +31 -13
  211. package/source/class/qx/test/locale/Date.js +173 -2
  212. package/source/class/qx/test/locale/Locale.js +23 -28
  213. package/source/class/qx/test/locale/Number.js +71 -0
  214. package/source/class/qx/test/log/Logger.js +7 -1
  215. package/source/class/qx/test/log/fixture/ClassA.js +2 -5
  216. package/source/class/qx/test/mobile/basic/Atom.js +3 -3
  217. package/source/class/qx/test/mobile/container/Scroll.js +4 -4
  218. package/source/class/qx/test/mobile/form/CheckBox.js +6 -12
  219. package/source/class/qx/test/performance/Property.js +5 -4
  220. package/source/class/qx/test/performance/widget/WidgetWithDecorator.js +2 -0
  221. package/source/class/qx/test/theme/Simple.js +34 -0
  222. package/source/class/qx/test/{MAppearance.js → theme/SimpleAppearance.js} +5 -4
  223. package/source/class/qx/test/{MDecoration.js → theme/SimpleDecoration.js} +6 -4
  224. package/source/class/qx/test/theme/manager/Meta.js +7 -5
  225. package/source/class/qx/test/tool/__init__.js +3 -0
  226. package/source/class/qx/test/tool/cli/AbstractValue.js +274 -0
  227. package/source/class/qx/test/tool/cli/Argument.js +384 -0
  228. package/source/class/qx/test/tool/cli/Command.js +387 -0
  229. package/source/class/qx/test/tool/cli/Flag.js +413 -0
  230. package/source/class/qx/test/tool/cli/__init__.js +3 -0
  231. package/source/class/qx/test/ui/LayoutTestCase.js +1 -14
  232. package/source/class/qx/test/ui/basic/Label.js +106 -0
  233. package/source/class/qx/test/ui/core/Blocker.js +125 -3
  234. package/source/class/qx/test/ui/form/Form.js +106 -0
  235. package/source/class/qx/test/ui/form/FormManager.js +6 -5
  236. package/source/class/qx/test/ui/form/SplitButton.js +1 -1
  237. package/source/class/qx/test/ui/toolbar/OverflowHandling.js +13 -14
  238. package/source/class/qx/test/ui/toolbar/ToolBar.js +16 -16
  239. package/source/class/qx/test/ui/tree/TreeFolder.js +5 -7
  240. package/source/class/qx/test/ui/tree/virtual/AbstractTreeTest.js +2 -0
  241. package/source/class/qx/test/ui/tree/virtual/Tree.js +36 -0
  242. package/source/class/qx/test/util/DateFormat.js +1 -1
  243. package/source/class/qx/test/util/PropertyUtil.js +0 -36
  244. package/source/class/qx/theme/classic/Appearance.js +1 -1
  245. package/source/class/qx/theme/indigo/ColorDark.js +2 -0
  246. package/source/class/qx/theme/manager/Font.js +6 -1
  247. package/source/class/qx/theme/manager/Meta.js +2 -1
  248. package/source/class/qx/theme/simple/Appearance.js +31 -95
  249. package/source/class/qx/theme/simple/Decoration.js +0 -1
  250. package/source/class/qx/theme/tangible/Appearance.js +1 -1
  251. package/source/class/qx/tool/cli/AbstractCliApp.js +72 -0
  252. package/source/class/qx/tool/cli/AbstractValue.js +186 -0
  253. package/source/class/qx/tool/cli/Argument.js +155 -0
  254. package/source/class/qx/tool/cli/Command.js +518 -0
  255. package/source/class/qx/tool/cli/Flag.js +202 -0
  256. package/source/class/qx/tool/cli/Parser.js +39 -0
  257. package/source/class/qx/tool/cli/__init__.js +26 -1
  258. package/source/class/qx/tool/compiler/Analyser.js +41 -13
  259. package/source/class/qx/tool/compiler/ClassFile.js +37 -9
  260. package/source/class/qx/tool/compiler/Console.js +2 -0
  261. package/source/class/qx/tool/compiler/MetaExtraction.js +53 -33
  262. package/source/class/qx/tool/compiler/app/Library.js +1 -1
  263. package/source/class/qx/tool/compiler/app/WebFont.js +2 -0
  264. package/source/class/qx/tool/compiler/cli/Application.js +58 -0
  265. package/source/class/qx/tool/{cli/commands → compiler/cli}/Command.js +99 -45
  266. package/source/class/qx/tool/{cli → compiler/cli}/ConfigDb.js +7 -7
  267. package/source/class/qx/tool/compiler/cli/ConfigLoader.js +272 -0
  268. package/source/class/qx/tool/{cli → compiler/cli}/LibraryApplication.js +3 -3
  269. package/source/class/qx/tool/compiler/cli/RootCommand.js +63 -0
  270. package/source/class/qx/tool/{cli → compiler/cli}/Watch.js +49 -24
  271. package/source/class/qx/tool/compiler/cli/__init__.js +3 -0
  272. package/source/class/qx/tool/{cli → compiler/cli}/api/AbstractApi.js +2 -11
  273. package/source/class/qx/tool/{cli → compiler/cli}/api/CompilerApi.js +11 -10
  274. package/source/class/qx/tool/{cli → compiler/cli}/api/LibraryApi.js +13 -4
  275. package/source/class/qx/tool/{cli → compiler/cli}/api/Test.js +1 -1
  276. package/source/class/qx/tool/compiler/cli/commands/Add.js +49 -0
  277. package/source/class/qx/tool/{cli → compiler/cli}/commands/Clean.js +12 -25
  278. package/source/class/qx/tool/{cli → compiler/cli}/commands/Compile.js +524 -615
  279. package/source/class/qx/tool/{cli → compiler/cli}/commands/Config.js +22 -20
  280. package/source/class/qx/tool/{cli → compiler/cli}/commands/Create.js +77 -54
  281. package/source/class/qx/tool/{cli → compiler/cli}/commands/Deploy.js +45 -60
  282. package/source/class/qx/tool/{cli → compiler/cli}/commands/Es6ify.js +57 -41
  283. package/source/class/qx/tool/{cli → compiler/cli}/commands/ExportGlyphs.js +26 -7
  284. package/source/class/qx/tool/compiler/cli/commands/Lint.js +420 -0
  285. package/source/class/qx/tool/{cli → compiler/cli}/commands/Migrate.js +40 -20
  286. package/source/class/qx/tool/{cli → compiler/cli}/commands/Package.js +20 -32
  287. package/source/class/qx/tool/compiler/cli/commands/Pkg.js +36 -0
  288. package/source/class/qx/tool/compiler/cli/commands/Prettier.js +278 -0
  289. package/source/class/qx/tool/{cli → compiler/cli}/commands/Run.js +43 -39
  290. package/source/class/qx/tool/{cli → compiler/cli}/commands/Serve.js +63 -61
  291. package/source/class/qx/tool/{cli → compiler/cli}/commands/Test.js +49 -52
  292. package/source/class/qx/tool/{cli → compiler/cli}/commands/Typescript.js +51 -30
  293. package/source/class/qx/tool/{cli → compiler/cli}/commands/add/Class.js +54 -31
  294. package/source/class/qx/tool/{cli → compiler/cli}/commands/add/Script.js +56 -32
  295. package/source/class/qx/tool/{cli → compiler/cli}/commands/config/Delete.js +19 -13
  296. package/source/class/qx/tool/{cli → compiler/cli}/commands/config/Get.js +19 -13
  297. package/source/class/qx/tool/{cli → compiler/cli}/commands/config/List.js +20 -20
  298. package/source/class/qx/tool/{cli → compiler/cli}/commands/config/Set.js +28 -20
  299. package/source/class/qx/tool/{cli → compiler/cli}/commands/package/Install.js +140 -75
  300. package/source/class/qx/tool/{cli → compiler/cli}/commands/package/List.js +119 -80
  301. package/source/class/qx/tool/{cli → compiler/cli}/commands/package/Publish.js +194 -178
  302. package/source/class/qx/tool/{cli → compiler/cli}/commands/package/Remove.js +18 -21
  303. package/source/class/qx/tool/{cli → compiler/cli}/commands/package/Update.js +90 -69
  304. package/source/class/qx/tool/{cli → compiler/cli}/commands/package/Upgrade.js +67 -54
  305. package/source/class/qx/tool/compiler/makers/AbstractAppMaker.js +2 -1
  306. package/source/class/qx/tool/compiler/resources/Manager.js +2 -0
  307. package/source/class/qx/tool/compiler/resources/ScssConverter.js +1 -1
  308. package/source/class/qx/tool/compiler/resources/ScssFile.js +1 -1
  309. package/source/class/qx/tool/compiler/targets/Target.js +5 -10
  310. package/source/class/qx/tool/compiler/targets/TypeScriptWriter.js +6 -2
  311. package/source/class/qx/tool/compiler/targets/meta/ApplicationMeta.js +2 -4
  312. package/source/class/qx/tool/compiler/targets/meta/BootJs.js +2 -0
  313. package/source/class/qx/tool/compiler/targets/meta/PackageJavascript.js +2 -0
  314. package/source/class/qx/tool/config/Abstract.js +5 -5
  315. package/source/class/qx/tool/config/Lockfile.js +1 -1
  316. package/source/class/qx/tool/migration/BaseMigration.js +9 -7
  317. package/source/class/qx/tool/migration/M6_0_0.js +3 -3
  318. package/source/class/qx/tool/migration/M8_0_0.js +958 -0
  319. package/source/class/qx/tool/utils/Debounce.js +0 -1
  320. package/source/class/qx/tool/utils/Http.js +109 -21
  321. package/source/class/qx/tool/utils/LogManager.js +7 -0
  322. package/source/class/qx/tool/utils/Promisify.js +12 -1
  323. package/source/class/qx/tool/utils/QooxdooVersions.js +193 -0
  324. package/source/class/qx/tool/utils/Utils.js +8 -5
  325. package/source/class/qx/tool/utils/Website.js +9 -222
  326. package/source/class/qx/tool/utils/Zip.js +47 -0
  327. package/source/class/qx/tool/utils/files/Utils.js +3 -11
  328. package/source/class/qx/tool/utils/json/Tokenizer.js +5 -0
  329. package/source/class/qx/ui/basic/Atom.js +8 -8
  330. package/source/class/qx/ui/core/Blocker.js +17 -4
  331. package/source/class/qx/ui/core/DragDropCursor.js +2 -1
  332. package/source/class/qx/ui/core/EventHandler.js +13 -21
  333. package/source/class/qx/ui/core/LayoutItem.js +8 -31
  334. package/source/class/qx/ui/core/MExecutable.js +7 -31
  335. package/source/class/qx/ui/core/MNativeOverflow.js +4 -2
  336. package/source/class/qx/ui/core/Widget.js +50 -165
  337. package/source/class/qx/ui/core/scroll/IScrollBar.js +9 -3
  338. package/source/class/qx/ui/core/scroll/ScrollBar.js +7 -1
  339. package/source/class/qx/ui/core/scroll/ScrollPane.js +12 -4
  340. package/source/class/qx/ui/embed/Html.js +6 -2
  341. package/source/class/qx/ui/form/AbstractField.js +4 -12
  342. package/source/class/qx/ui/form/Button.js +6 -4
  343. package/source/class/qx/ui/form/CheckedSelectBox.js +8 -8
  344. package/source/class/qx/ui/form/FileSelectorButton.js +1 -1
  345. package/source/class/qx/ui/form/Form.js +3 -0
  346. package/source/class/qx/ui/form/IListItem.js +3 -1
  347. package/source/class/qx/ui/form/IRadioItem.js +3 -1
  348. package/source/class/qx/ui/form/MForm.js +3 -1
  349. package/source/class/qx/ui/form/Slider.js +6 -2
  350. package/source/class/qx/ui/form/SplitButton.js +5 -5
  351. package/source/class/qx/ui/form/TextField.js +1 -2
  352. package/source/class/qx/ui/form/validation/Manager.js +6 -2
  353. package/source/class/qx/ui/menubar/Button.js +1 -1
  354. package/source/class/qx/ui/mobile/basic/Atom.js +5 -5
  355. package/source/class/qx/ui/mobile/dialog/Menu.js +9 -31
  356. package/source/class/qx/ui/mobile/dialog/Popup.js +13 -1
  357. package/source/class/qx/ui/table/pane/FocusIndicator.js +5 -2
  358. package/source/class/qx/ui/table/pane/Scroller.js +5 -20
  359. package/source/class/qx/ui/table/selection/Model.js +1 -0
  360. package/source/class/qx/ui/toolbar/Button.js +1 -1
  361. package/source/class/qx/ui/toolbar/CheckBox.js +1 -1
  362. package/source/class/qx/ui/toolbar/FileSelectorButton.js +1 -2
  363. package/source/class/qx/ui/toolbar/Part.js +2 -2
  364. package/source/class/qx/ui/toolbar/PartContainer.js +2 -2
  365. package/source/class/qx/ui/toolbar/ToolBar.js +24 -49
  366. package/source/class/qx/ui/tree/VirtualTree.js +6 -4
  367. package/source/class/qx/ui/tree/core/AbstractItem.js +10 -17
  368. package/source/class/qx/ui/tree/core/IVirtualTree.js +4 -2
  369. package/source/class/qx/ui/tree/provider/IVirtualTreeProvider.js +20 -10
  370. package/source/class/qx/ui/treevirtual/SimpleTreeDataModel.js +4 -1
  371. package/source/class/qx/ui/virtual/cell/Cell.js +20 -48
  372. package/source/class/qx/ui/virtual/cell/WidgetCell.js +2 -4
  373. package/source/class/qx/ui/virtual/core/Axis.js +4 -0
  374. package/source/class/qx/ui/virtual/core/ILayer.js +14 -10
  375. package/source/class/qx/ui/virtual/core/Scroller.js +4 -4
  376. package/source/class/qx/ui/virtual/layer/WidgetCell.js +4 -0
  377. package/source/class/qx/ui/virtual/selection/Abstract.js +3 -0
  378. package/source/class/qx/ui/virtual/selection/MModel.js +1 -1
  379. package/source/class/qx/ui/window/IDesktop.js +6 -2
  380. package/source/class/qx/ui/window/IWindowManager.js +10 -4
  381. package/source/class/qx/ui/window/MDesktop.js +2 -1
  382. package/source/class/qx/ui/window/Manager.js +1 -1
  383. package/source/class/qx/ui/window/Window.js +6 -4
  384. package/source/class/qx/util/OOUtil.js +8 -9
  385. package/source/class/qx/util/PropertyUtil.js +34 -154
  386. package/source/class/qx/util/ResponseParser.js +2 -0
  387. package/source/class/qx/util/Serializer.js +69 -114
  388. package/source/class/qx/util/format/DateFormat.js +3 -2
  389. package/source/global.d.ts +4 -0
  390. package/source/resource/qx/tool/bin/download-assets +0 -2
  391. package/source/resource/qx/tool/{cli → compiler/cli}/templates/loader/loader-node.tmpl.js +1 -0
  392. package/{lib/resource/qx/tool → source/resource/qx/tool/compiler}/cli/templates/template_vars.js +12 -9
  393. package/{lib/resource/qx/tool → source/resource/qx/tool/compiler}/schema/Manifest-1-0-0.json +2 -2
  394. package/source/resource/qx/tool/{schema → compiler/schema}/Manifest-2-0-0.json +2 -2
  395. package/source/resource/qx/tool/{schema → compiler/schema}/compile-1-0-0.json +15 -3
  396. package/{lib/resource/qx/tool → source/resource/qx/tool/compiler}/schema/qooxdoo-1-0-0.json +1 -1
  397. package/source/resource/qx/tool/website/build/404.html +22 -22
  398. package/source/resource/qx/tool/website/build/about.html +23 -23
  399. package/source/resource/qx/tool/website/build/assets/common.js +30 -18
  400. package/source/resource/qx/tool/website/build/assets/custom.css +290 -0
  401. package/source/resource/qx/tool/website/build/assets/qxWeb.js +28 -0
  402. package/source/resource/qx/tool/website/build/diagnostics/dependson.html +30 -30
  403. package/source/resource/qx/tool/website/build/diagnostics/dependson.js +49 -40
  404. package/source/resource/qx/tool/website/build/diagnostics/requiredby.html +20 -23
  405. package/source/resource/qx/tool/website/build/diagnostics/requiredby.js +38 -31
  406. package/source/resource/qx/tool/website/build/index.html +24 -24
  407. package/source/resource/qx/tool/website/build/scripts/serve.js +63 -65
  408. package/source/resource/qx/tool/website/partials/footer.html +8 -13
  409. package/source/resource/qx/tool/website/partials/head.html +9 -7
  410. package/source/resource/qx/tool/website/partials/header.html +3 -3
  411. package/source/resource/qx/tool/website/src/assets/common.js +32 -0
  412. package/source/resource/qx/tool/website/src/assets/custom.css +290 -0
  413. package/source/resource/qx/tool/website/src/assets/qxWeb.js +28 -0
  414. package/source/resource/qx/tool/website/src/diagnostics/dependson.js +49 -40
  415. package/source/resource/qx/tool/website/src/diagnostics/requiredby.js +38 -31
  416. package/source/resource/qx/tool/website/src/index.html +2 -2
  417. package/source/resource/qx/tool/website/src/scripts/serve.js +63 -65
  418. package/lib/resource/qx/tool/bin/build-devtools +0 -13
  419. package/lib/resource/qx/tool/bin/build-website +0 -15
  420. package/lib/resource/qx/tool/bin/download-assets +0 -23
  421. package/lib/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/css/custom.css.map +0 -1
  422. package/lib/resource/qx/tool/website/build/assets/bootstrap.css +0 -7
  423. package/lib/resource/qx/tool/website/build/assets/bootstrap.min.css +0 -7
  424. package/lib/resource/qx/tool/website/build/assets/bootstrap.min.css.map +0 -1
  425. package/lib/resource/qx/tool/website/build/assets/jquery.js +0 -5453
  426. package/lib/resource/qx/tool/website/build/qooxdoo.css +0 -21
  427. package/lib/resource/qx/tool/website/sass/qooxdoo.css +0 -3
  428. package/lib/resource/qx/tool/website/sass/qooxdoo.css.map +0 -1
  429. package/lib/resource/qx/tool/website/src/assets/bootstrap.css +0 -7
  430. package/lib/resource/qx/tool/website/src/assets/bootstrap.min.css +0 -7
  431. package/lib/resource/qx/tool/website/src/assets/bootstrap.min.css.map +0 -1
  432. package/lib/resource/qx/tool/website/src/assets/jquery.js +0 -5453
  433. package/source/class/qx/core/Property.js +0 -2100
  434. package/source/class/qx/tool/cli/Application.js +0 -47
  435. package/source/class/qx/tool/cli/Cli.js +0 -713
  436. package/source/class/qx/tool/cli/commands/Add.js +0 -46
  437. package/source/class/qx/tool/cli/commands/Lint.js +0 -255
  438. package/source/class/qx/tool/cli/commands/Pkg.js +0 -56
  439. package/source/class/qx/tool/cli/commands/package/Migrate.js +0 -37
  440. package/source/class/qx/tool/compiler/app/Cldr.js +0 -725
  441. package/source/resource/qx/tool/bin/build-devtools +0 -13
  442. package/source/resource/qx/tool/bin/build-website +0 -15
  443. package/source/resource/qx/tool/website/build/assets/bootstrap.css +0 -7
  444. package/source/resource/qx/tool/website/build/assets/bootstrap.min.css +0 -7
  445. package/source/resource/qx/tool/website/build/assets/bootstrap.min.css.map +0 -1
  446. package/source/resource/qx/tool/website/build/assets/jquery.js +0 -5453
  447. package/source/resource/qx/tool/website/build/qooxdoo.css +0 -21
  448. package/source/resource/qx/tool/website/sass/qooxdoo.scss +0 -31
  449. package/source/resource/qx/tool/website/src/assets/bootstrap.css +0 -7
  450. package/source/resource/qx/tool/website/src/assets/bootstrap.min.css +0 -7
  451. package/source/resource/qx/tool/website/src/assets/bootstrap.min.css.map +0 -1
  452. package/source/resource/qx/tool/website/src/assets/jquery.js +0 -5453
  453. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/TypeScriptWriter-base_declaration.d.ts +0 -0
  454. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/class/default.tmpl.js +0 -0
  455. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/class/header.tmpl.js +0 -0
  456. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/class/interface.tmpl.js +0 -0
  457. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/class/mixin.tmpl.js +0 -0
  458. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/class/singleton.tmpl.js +0 -0
  459. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/loader/loader-browser.tmpl.js +0 -0
  460. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/loader/loader-rhino.tmpl.js +0 -0
  461. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/.gitignore.tmpl +0 -0
  462. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/Manifest.tmpl.json +0 -0
  463. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/compile.tmpl.json +0 -0
  464. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/readme.tmpl.md +0 -0
  465. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/boot/index.tmpl.html +0 -0
  466. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/boot/nojs.tmpl.html +0 -0
  467. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/Application.tmpl.js +0 -0
  468. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/__init__.tmpl.js +0 -0
  469. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/test/DemoTest.tmpl.js +0 -0
  470. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Appearance.tmpl.js +0 -0
  471. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Color.tmpl.js +0 -0
  472. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Decoration.tmpl.js +0 -0
  473. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Font.tmpl.js +0 -0
  474. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Theme.tmpl.js +0 -0
  475. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/app.png +0 -0
  476. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/favicon.png +0 -0
  477. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/js_256x256.png +0 -0
  478. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/test.png +0 -0
  479. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/translation/readme.txt +0 -0
  480. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/.gitignore.tmpl +0 -0
  481. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/Manifest.tmpl.json +0 -0
  482. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/compile.tmpl.json +0 -0
  483. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/readme.tmpl.md +0 -0
  484. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/boot/index.tmpl.html +0 -0
  485. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/boot/nojs.tmpl.html +0 -0
  486. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/Application.tmpl.js +0 -0
  487. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/__init__.tmpl.js +0 -0
  488. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/page/Login.tmpl.js +0 -0
  489. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/page/Overview.tmpl.js +0 -0
  490. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/page/__init__.tmpl.js +0 -0
  491. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/app.png +0 -0
  492. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/css/.gitignore.tmpl +0 -0
  493. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/favicon.png +0 -0
  494. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/js_256x256.png +0 -0
  495. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/theme/custom/css/custom.css +0 -0
  496. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/translation/readme.txt +0 -0
  497. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/.gitignore.tmpl +0 -0
  498. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/Manifest.tmpl.json +0 -0
  499. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/compile.tmpl.json +0 -0
  500. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/readme.tmpl.md +0 -0
  501. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/Button.tmpl.js +0 -0
  502. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/__init__.tmpl.js +0 -0
  503. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/demo/Application.tmpl.js +0 -0
  504. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/resource/custom/test.png +0 -0
  505. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/test/DemoTest.tmpl.js +0 -0
  506. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Appearance.tmpl.js +0 -0
  507. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Color.tmpl.js +0 -0
  508. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Decoration.tmpl.js +0 -0
  509. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Font.tmpl.js +0 -0
  510. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Theme.tmpl.js +0 -0
  511. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/resource/custom/test.png +0 -0
  512. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/translation/readme.txt +0 -0
  513. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/.gitignore.tmpl +0 -0
  514. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/Manifest.tmpl.json +0 -0
  515. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/compile.tmpl.json +0 -0
  516. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/readme.tmpl.txt +0 -0
  517. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/class/custom/Application.tmpl.js +0 -0
  518. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/class/custom/__init__.tmpl.js +0 -0
  519. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/class/custom/test/DemoTest.tmpl.js +0 -0
  520. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/resource/custom/.gitignore.tmpl +0 -0
  521. /package/lib/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/translation/readme.txt +0 -0
  522. /package/lib/resource/qx/tool/{loadsass.js → compiler/loadsass.js} +0 -0
  523. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/TypeScriptWriter-base_declaration.d.ts +0 -0
  524. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/class/default.tmpl.js +0 -0
  525. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/class/header.tmpl.js +0 -0
  526. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/class/interface.tmpl.js +0 -0
  527. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/class/mixin.tmpl.js +0 -0
  528. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/class/singleton.tmpl.js +0 -0
  529. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/loader/loader-browser.tmpl.js +0 -0
  530. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/loader/loader-rhino.tmpl.js +0 -0
  531. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/.gitignore.tmpl +0 -0
  532. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/Manifest.tmpl.json +0 -0
  533. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/compile.tmpl.json +0 -0
  534. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/readme.tmpl.md +0 -0
  535. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/boot/index.tmpl.html +0 -0
  536. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/boot/nojs.tmpl.html +0 -0
  537. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/Application.tmpl.js +0 -0
  538. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/__init__.tmpl.js +0 -0
  539. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/test/DemoTest.tmpl.js +0 -0
  540. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Appearance.tmpl.js +0 -0
  541. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Color.tmpl.js +0 -0
  542. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Decoration.tmpl.js +0 -0
  543. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Font.tmpl.js +0 -0
  544. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/class/custom/theme/Theme.tmpl.js +0 -0
  545. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/app.png +0 -0
  546. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/favicon.png +0 -0
  547. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/js_256x256.png +0 -0
  548. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/resource/custom/test.png +0 -0
  549. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/desktop/source/translation/readme.txt +0 -0
  550. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/.gitignore.tmpl +0 -0
  551. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/Manifest.tmpl.json +0 -0
  552. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/compile.tmpl.json +0 -0
  553. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/readme.tmpl.md +0 -0
  554. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/boot/index.tmpl.html +0 -0
  555. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/boot/nojs.tmpl.html +0 -0
  556. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/Application.tmpl.js +0 -0
  557. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/__init__.tmpl.js +0 -0
  558. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/page/Login.tmpl.js +0 -0
  559. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/page/Overview.tmpl.js +0 -0
  560. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/class/custom/page/__init__.tmpl.js +0 -0
  561. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/app.png +0 -0
  562. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/css/.gitignore.tmpl +0 -0
  563. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/favicon.png +0 -0
  564. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/resource/custom/js_256x256.png +0 -0
  565. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/theme/custom/scss/_styles.scss +0 -0
  566. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/theme/custom/scss/custom.scss +0 -0
  567. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/mobile/source/translation/readme.txt +0 -0
  568. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/.gitignore.tmpl +0 -0
  569. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/Manifest.tmpl.json +0 -0
  570. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/compile.tmpl.json +0 -0
  571. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/readme.tmpl.md +0 -0
  572. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/Button.tmpl.js +0 -0
  573. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/__init__.tmpl.js +0 -0
  574. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/demo/Application.tmpl.js +0 -0
  575. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/resource/custom/test.png +0 -0
  576. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/test/DemoTest.tmpl.js +0 -0
  577. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Appearance.tmpl.js +0 -0
  578. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Color.tmpl.js +0 -0
  579. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Decoration.tmpl.js +0 -0
  580. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Font.tmpl.js +0 -0
  581. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/class/custom/theme/Theme.tmpl.js +0 -0
  582. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/resource/custom/test.png +0 -0
  583. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/package/source/translation/readme.txt +0 -0
  584. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/.gitignore.tmpl +0 -0
  585. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/Manifest.tmpl.json +0 -0
  586. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/compile.tmpl.json +0 -0
  587. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/readme.tmpl.txt +0 -0
  588. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/class/custom/Application.tmpl.js +0 -0
  589. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/class/custom/__init__.tmpl.js +0 -0
  590. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/class/custom/test/DemoTest.tmpl.js +0 -0
  591. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/resource/custom/.gitignore.tmpl +0 -0
  592. /package/source/resource/qx/tool/{cli → compiler/cli}/templates/skeleton/server/source/translation/readme.txt +0 -0
  593. /package/source/resource/qx/tool/{loadsass.js → compiler/loadsass.js} +0 -0
@@ -46,34 +46,16 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
46
46
  },
47
47
 
48
48
  testStringPropertyBinding() {
49
- qx.data.SingleValueBinding.bind(
50
- this.__a,
51
- "appearance",
52
- this.__b,
53
- "appearance"
54
- );
49
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
55
50
 
56
51
  this.__a.setAppearance("affe");
57
- this.assertEquals(
58
- "affe",
59
- this.__b.getAppearance(),
60
- "String binding does not work!"
61
- );
52
+ this.assertEquals("affe", this.__b.getAppearance(), "String binding does not work!");
62
53
 
63
54
  var affe = new qx.test.data.singlevalue.TextFieldDummy();
64
55
  affe.setAppearance("Jonny");
65
- qx.data.SingleValueBinding.bind(
66
- affe,
67
- "appearance",
68
- this.__b,
69
- "appearance"
70
- );
56
+ qx.data.SingleValueBinding.bind(affe, "appearance", this.__b, "appearance");
71
57
 
72
- this.assertEquals(
73
- "Jonny",
74
- this.__b.getAppearance(),
75
- "String binding does not work!"
76
- );
58
+ this.assertEquals("Jonny", this.__b.getAppearance(), "String binding does not work!");
77
59
 
78
60
  qx.data.SingleValueBinding.removeAllBindingsForObject(affe);
79
61
  affe.dispose();
@@ -88,27 +70,14 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
88
70
  testNumberPropertyBinding() {
89
71
  qx.data.SingleValueBinding.bind(this.__a, "zIndex", this.__b, "zIndex");
90
72
  this.__a.setZIndex(2456);
91
- this.assertEquals(
92
- 2456,
93
- this.__b.getZIndex(),
94
- "Number binding does not work!"
95
- );
73
+ this.assertEquals(2456, this.__b.getZIndex(), "Number binding does not work!");
96
74
  },
97
75
 
98
76
  testColorPropertyBinding() {
99
- qx.data.SingleValueBinding.bind(
100
- this.__a,
101
- "backgroundColor",
102
- this.__b,
103
- "backgroundColor"
104
- );
77
+ qx.data.SingleValueBinding.bind(this.__a, "backgroundColor", this.__b, "backgroundColor");
105
78
 
106
79
  this.__a.setBackgroundColor("red");
107
- this.assertEquals(
108
- "red",
109
- this.__b.getBackgroundColor(),
110
- "Color binding does not work!"
111
- );
80
+ this.assertEquals("red", this.__b.getBackgroundColor(), "Color binding does not work!");
112
81
  },
113
82
 
114
83
  testWrongPropertyNames() {
@@ -121,12 +90,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
121
90
  // wrong source
122
91
  this.assertException(
123
92
  function () {
124
- qx.data.SingleValueBinding.bind(
125
- a,
126
- "BacccccckgroundColor",
127
- b,
128
- "backgroundColor"
129
- );
93
+ qx.data.SingleValueBinding.bind(a, "BacccccckgroundColor", b, "backgroundColor");
130
94
  },
131
95
  qx.core.AssertionError,
132
96
  null,
@@ -159,50 +123,23 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
159
123
  testDefaultConversion() {
160
124
  // String to number
161
125
  this.__a.setAppearance("0");
162
- qx.data.SingleValueBinding.bind(
163
- this.__a,
164
- "appearance",
165
- this.__b,
166
- "zIndex"
167
- );
126
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "zIndex");
168
127
 
169
128
  this.__a.setAppearance("4879");
170
- this.assertEquals(
171
- 4879,
172
- this.__b.getZIndex(),
173
- "String --> Number does not work!"
174
- );
129
+ this.assertEquals(4879, this.__b.getZIndex(), "String --> Number does not work!");
175
130
 
176
131
  // number to String
177
132
  this.__a.setZIndex(568);
178
- qx.data.SingleValueBinding.bind(
179
- this.__a,
180
- "zIndex",
181
- this.__b,
182
- "appearance"
183
- );
133
+ qx.data.SingleValueBinding.bind(this.__a, "zIndex", this.__b, "appearance");
184
134
 
185
135
  this.__a.setZIndex(1234);
186
- this.assertEquals(
187
- "1234",
188
- this.__b.getAppearance(),
189
- "Number --> String does not work!"
190
- );
136
+ this.assertEquals("1234", this.__b.getAppearance(), "Number --> String does not work!");
191
137
 
192
138
  // boolean to string
193
- qx.data.SingleValueBinding.bind(
194
- this.__a,
195
- "enabled",
196
- this.__b,
197
- "appearance"
198
- );
139
+ qx.data.SingleValueBinding.bind(this.__a, "enabled", this.__b, "appearance");
199
140
 
200
141
  this.__a.setEnabled(true);
201
- this.assertEquals(
202
- "true",
203
- this.__b.getAppearance(),
204
- "Boolean --> String does not work!"
205
- );
142
+ this.assertEquals("true", this.__b.getAppearance(), "Boolean --> String does not work!");
206
143
 
207
144
  // string to float
208
145
  var s = new qx.test.data.singlevalue.TextFieldDummy();
@@ -210,11 +147,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
210
147
 
211
148
  qx.data.SingleValueBinding.bind(s, "floatt", this.__b, "appearance");
212
149
  s.setFloatt(13.5);
213
- this.assertEquals(
214
- "13.5",
215
- this.__b.getAppearance(),
216
- "Float --> String does not work!"
217
- );
150
+ this.assertEquals("13.5", this.__b.getAppearance(), "Float --> String does not work!");
218
151
 
219
152
  qx.data.SingleValueBinding.removeAllBindingsForObject(s);
220
153
  s.dispose();
@@ -222,35 +155,20 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
222
155
 
223
156
  testRemoveBinding() {
224
157
  // add a binding
225
- var id = qx.data.SingleValueBinding.bind(
226
- this.__a,
227
- "appearance",
228
- this.__b,
229
- "appearance"
230
- );
158
+ var id = qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
231
159
 
232
160
  // set and chech the name
233
161
  this.__a.setAppearance("hans");
234
- this.assertEquals(
235
- "hans",
236
- this.__b.getAppearance(),
237
- "String binding does not work!"
238
- );
162
+ this.assertEquals("hans", this.__b.getAppearance(), "String binding does not work!");
239
163
 
240
164
  // remove the binding
241
165
  qx.data.SingleValueBinding.removeBindingFromObject(this.__a, id);
242
166
  // set and chech the name
243
167
  this.__a.setAppearance("hans2");
244
- this.assertEquals(
245
- "hans",
246
- this.__b.getAppearance(),
247
- "Did not remove the binding!"
248
- );
168
+ this.assertEquals("hans", this.__b.getAppearance(), "Did not remove the binding!");
249
169
 
250
170
  // test if the binding is not listed anymore
251
- var bindings = qx.data.SingleValueBinding.getAllBindingsForObject(
252
- this.__a
253
- );
171
+ var bindings = qx.data.SingleValueBinding.getAllBindingsForObject(this.__a);
254
172
 
255
173
  this.assertEquals(0, bindings.length, "Binding still in the registry!");
256
174
 
@@ -271,39 +189,19 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
271
189
 
272
190
  testGetAllBindingsForObject() {
273
191
  // add two binding
274
- var id = qx.data.SingleValueBinding.bind(
275
- this.__a,
276
- "appearance",
277
- this.__b,
278
- "appearance"
279
- );
192
+ var id = qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
280
193
 
281
- var id2 = qx.data.SingleValueBinding.bind(
282
- this.__a,
283
- "zIndex",
284
- this.__b,
285
- "zIndex"
286
- );
194
+ var id2 = qx.data.SingleValueBinding.bind(this.__a, "zIndex", this.__b, "zIndex");
287
195
 
288
196
  // set and chech the binding
289
197
  this.__a.setAppearance("hans");
290
- this.assertEquals(
291
- "hans",
292
- this.__b.getAppearance(),
293
- "String binding does not work!"
294
- );
198
+ this.assertEquals("hans", this.__b.getAppearance(), "String binding does not work!");
295
199
 
296
200
  this.__a.setZIndex(89);
297
- this.assertEquals(
298
- 89,
299
- this.__b.getZIndex(),
300
- "Number binding does not work!"
301
- );
201
+ this.assertEquals(89, this.__b.getZIndex(), "Number binding does not work!");
302
202
 
303
203
  // check the method
304
- var bindings = qx.data.SingleValueBinding.getAllBindingsForObject(
305
- this.__a
306
- );
204
+ var bindings = qx.data.SingleValueBinding.getAllBindingsForObject(this.__a);
307
205
 
308
206
  this.assertEquals(2, bindings.length, "There are more than 2 bindings!");
309
207
  this.assertEquals(id, bindings[0][0], "Binding 1 not in the array.");
@@ -316,51 +214,28 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
316
214
 
317
215
  testRemoveAllBindingsForObject() {
318
216
  // add two bindings
319
- qx.data.SingleValueBinding.bind(
320
- this.__a,
321
- "appearance",
322
- this.__b,
323
- "appearance"
324
- );
217
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
325
218
 
326
219
  qx.data.SingleValueBinding.bind(this.__a, "zIndex", this.__b, "zIndex");
327
220
  // set and check the binding
328
221
  this.__a.setAppearance("hans");
329
- this.assertEquals(
330
- "hans",
331
- this.__b.getAppearance(),
332
- "String binding does not work!"
333
- );
222
+ this.assertEquals("hans", this.__b.getAppearance(), "String binding does not work!");
334
223
 
335
224
  this.__a.setZIndex(89);
336
- this.assertEquals(
337
- 89,
338
- this.__b.getZIndex(),
339
- "Number binding does not work!"
340
- );
225
+ this.assertEquals(89, this.__b.getZIndex(), "Number binding does not work!");
341
226
 
342
227
  // remove the bindings at once
343
228
  qx.data.SingleValueBinding.removeAllBindingsForObject(this.__a);
344
229
 
345
230
  // set and check the binding
346
231
  this.__a.setAppearance("hans2");
347
- this.assertEquals(
348
- "hans",
349
- this.__b.getAppearance(),
350
- "String binding not removed!"
351
- );
232
+ this.assertEquals("hans", this.__b.getAppearance(), "String binding not removed!");
352
233
 
353
234
  this.__a.setZIndex(892);
354
- this.assertEquals(
355
- 89,
356
- this.__b.getZIndex(),
357
- "Number binding not removed!"
358
- );
235
+ this.assertEquals(89, this.__b.getZIndex(), "Number binding not removed!");
359
236
 
360
237
  // check if they are internally removed
361
- var bindings = qx.data.SingleValueBinding.getAllBindingsForObject(
362
- this.__a
363
- );
238
+ var bindings = qx.data.SingleValueBinding.getAllBindingsForObject(this.__a);
364
239
 
365
240
  this.assertEquals(0, bindings.length, "Still bindings there!");
366
241
 
@@ -384,79 +259,34 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
384
259
 
385
260
  testGetAllBindings() {
386
261
  // add three bindings
387
- var id1 = qx.data.SingleValueBinding.bind(
388
- this.__a,
389
- "appearance",
390
- this.__b,
391
- "appearance"
392
- );
262
+ var id1 = qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
393
263
 
394
- var id2 = qx.data.SingleValueBinding.bind(
395
- this.__a,
396
- "zIndex",
397
- this.__b,
398
- "zIndex"
399
- );
264
+ var id2 = qx.data.SingleValueBinding.bind(this.__a, "zIndex", this.__b, "zIndex");
400
265
 
401
- var id3 = qx.data.SingleValueBinding.bind(
402
- this.__b,
403
- "zIndex",
404
- this.__a,
405
- "zIndex"
406
- );
266
+ var id3 = qx.data.SingleValueBinding.bind(this.__b, "zIndex", this.__a, "zIndex");
407
267
 
408
268
  // get all bindings
409
269
  var allBindings = qx.data.SingleValueBinding.getAllBindings();
410
270
 
411
271
  // check for the binding ids
412
- this.assertEquals(
413
- id1,
414
- allBindings[this.__a.toHashCode()][0][0],
415
- "This id should be in!"
416
- );
272
+ this.assertEquals(id1, allBindings[this.__a.toHashCode()][0][0], "This id should be in!");
417
273
 
418
- this.assertEquals(
419
- id2,
420
- allBindings[this.__a.toHashCode()][1][0],
421
- "This id should be in!"
422
- );
274
+ this.assertEquals(id2, allBindings[this.__a.toHashCode()][1][0], "This id should be in!");
423
275
 
424
- this.assertEquals(
425
- id3,
426
- allBindings[this.__b.toHashCode()][0][0],
427
- "This id should be in!"
428
- );
276
+ this.assertEquals(id3, allBindings[this.__b.toHashCode()][0][0], "This id should be in!");
429
277
 
430
278
  // check for the length
431
- this.assertEquals(
432
- 2,
433
- allBindings[this.__a.toHashCode()].length,
434
- "Not the right amount in the data!"
435
- );
279
+ this.assertEquals(2, allBindings[this.__a.toHashCode()].length, "Not the right amount in the data!");
436
280
 
437
- this.assertEquals(
438
- 1,
439
- allBindings[this.__b.toHashCode()].length,
440
- "Not the right amount in the data!"
441
- );
281
+ this.assertEquals(1, allBindings[this.__b.toHashCode()].length, "Not the right amount in the data!");
442
282
  },
443
283
 
444
284
  testDebugStuff() {
445
285
  // just a test if the method runs threw without an exception
446
- var id1 = qx.data.SingleValueBinding.bind(
447
- this.__a,
448
- "appearance",
449
- this.__b,
450
- "appearance"
451
- );
286
+ var id1 = qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
452
287
 
453
288
  qx.data.SingleValueBinding.bind(this.__a, "zIndex", this.__b, "zIndex");
454
- qx.data.SingleValueBinding.bind(
455
- this.__b,
456
- "appearance",
457
- this.__a,
458
- "appearance"
459
- );
289
+ qx.data.SingleValueBinding.bind(this.__b, "appearance", this.__a, "appearance");
460
290
 
461
291
  qx.data.SingleValueBinding.bind(this.__b, "zIndex", this.__a, "zIndex");
462
292
  // test the single log
@@ -467,20 +297,12 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
467
297
  // create a new Binding
468
298
  var id1 = this.__a.bind("appearance", this.__b, "appearance");
469
299
  this.__a.setAppearance("hulk");
470
- this.assertEquals(
471
- "hulk",
472
- this.__b.getAppearance(),
473
- "String binding does not work!"
474
- );
300
+ this.assertEquals("hulk", this.__b.getAppearance(), "String binding does not work!");
475
301
 
476
302
  // remove the binding
477
303
  this.__a.removeBinding(id1);
478
304
  this.__a.setAppearance("hulk2");
479
- this.assertEquals(
480
- "hulk",
481
- this.__b.getAppearance(),
482
- "Unbinding does not work!"
483
- );
305
+ this.assertEquals("hulk", this.__b.getAppearance(), "Unbinding does not work!");
484
306
 
485
307
  // add another two bindings
486
308
  var id1 = this.__a.bind("changeAppearance", this.__b, "appearance");
@@ -502,34 +324,16 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
502
324
  qx.data.SingleValueBinding.DEBUG_ON = true;
503
325
 
504
326
  // just do some bindings and invoke the changes
505
- qx.data.SingleValueBinding.bind(
506
- this.__a,
507
- "appearance",
508
- this.__b,
509
- "appearance"
510
- );
327
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
511
328
 
512
329
  this.__a.setAppearance("affe");
513
- this.assertEquals(
514
- "affe",
515
- this.__b.getAppearance(),
516
- "String binding does not work!"
517
- );
330
+ this.assertEquals("affe", this.__b.getAppearance(), "String binding does not work!");
518
331
 
519
332
  var affe = new qx.test.data.singlevalue.TextFieldDummy();
520
333
  affe.setAppearance("Jonny");
521
- qx.data.SingleValueBinding.bind(
522
- affe,
523
- "appearance",
524
- this.__b,
525
- "appearance"
526
- );
334
+ qx.data.SingleValueBinding.bind(affe, "appearance", this.__b, "appearance");
527
335
 
528
- this.assertEquals(
529
- "Jonny",
530
- this.__b.getAppearance(),
531
- "String binding does not work!"
532
- );
336
+ this.assertEquals("Jonny", this.__b.getAppearance(), "String binding does not work!");
533
337
 
534
338
  qx.data.SingleValueBinding.removeAllBindingsForObject(affe);
535
339
  affe.dispose();
@@ -540,21 +344,13 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
540
344
  this.__a.bind("value", this.__b, "value");
541
345
 
542
346
  this.__a.setValue("affe");
543
- this.assertEquals(
544
- this.__a.getValue(),
545
- this.__b.getValue(),
546
- "change event binding is not working."
547
- );
347
+ this.assertEquals(this.__a.getValue(), this.__b.getValue(), "change event binding is not working.");
548
348
 
549
349
  // event binding
550
350
  this.__a.bind("changeZIndex", this.__b, "zIndex");
551
351
 
552
352
  this.__a.setZIndex(123);
553
- this.assertEquals(
554
- this.__a.getZIndex(),
555
- this.__b.getZIndex(),
556
- "Event binding is not working."
557
- );
353
+ this.assertEquals(this.__a.getZIndex(), this.__b.getZIndex(), "Event binding is not working.");
558
354
  },
559
355
 
560
356
  testNullWithConverter() {
@@ -590,17 +386,14 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
590
386
  this.assertEquals("affe", t.getA(), "Converter will not be executed.");
591
387
 
592
388
  this.__a.setZIndex(10);
593
- this.assertEquals(
594
- this.__a.getZIndex() + "",
595
- t.getA(),
596
- "Wrong start binding."
597
- );
389
+ this.assertEquals(this.__a.getZIndex() + "", t.getA(), "Wrong start binding.");
598
390
 
599
391
  // set the zIndex to null
600
392
  this.__a.setZIndex(null);
601
393
  this.assertEquals("affe", t.getA(), "Converter will not be executed.");
602
394
 
603
395
  t.dispose();
396
+ qx.Class.undefine("qx.Test");
604
397
  },
605
398
 
606
399
  testCallbacksOnInitialSet() {
@@ -656,6 +449,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
656
449
  this.assertTrue(fail, "onSetFail not called.");
657
450
  this.assertFalse(ok, "onUpdate called?!");
658
451
  target.dispose();
452
+ qx.Class.undefine("qx.Target");
659
453
  },
660
454
 
661
455
  testConversionClass() {
@@ -670,83 +464,48 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
670
464
  var o = new qx.test.TwoProperties();
671
465
 
672
466
  // number to string
673
- var id = qx.data.SingleValueBinding.bind(
674
- o,
675
- "a",
676
- o,
677
- "b",
678
- qx.data.Conversion.TOSTRINGOPTIONS
679
- );
467
+ var id = qx.data.SingleValueBinding.bind(o, "a", o, "b", qx.data.Conversion.TOSTRINGOPTIONS);
680
468
 
681
469
  o.setA(10);
682
470
  this.assertEquals("10", o.getB(), "Number -> String");
683
471
  qx.data.SingleValueBinding.removeBindingFromObject(o, id);
684
472
 
685
473
  // boolean to string
686
- var id = qx.data.SingleValueBinding.bind(
687
- o,
688
- "a",
689
- o,
690
- "b",
691
- qx.data.Conversion.TOSTRINGOPTIONS
692
- );
474
+ var id = qx.data.SingleValueBinding.bind(o, "a", o, "b", qx.data.Conversion.TOSTRINGOPTIONS);
693
475
 
694
476
  o.setA(true);
695
477
  this.assertEquals("true", o.getB(), "Boolean -> String");
696
478
  qx.data.SingleValueBinding.removeBindingFromObject(o, id);
697
479
 
698
480
  // date to string
699
- var id = qx.data.SingleValueBinding.bind(
700
- o,
701
- "a",
702
- o,
703
- "b",
704
- qx.data.Conversion.TOSTRINGOPTIONS
705
- );
481
+ var id = qx.data.SingleValueBinding.bind(o, "a", o, "b", qx.data.Conversion.TOSTRINGOPTIONS);
706
482
 
707
483
  o.setA(new Date());
708
484
  this.assertTrue(qx.lang.Type.isString(o.getB()), "Date -> String");
709
485
  qx.data.SingleValueBinding.removeBindingFromObject(o, id);
710
486
 
711
487
  // string to number
712
- var id = qx.data.SingleValueBinding.bind(
713
- o,
714
- "a",
715
- o,
716
- "b",
717
- qx.data.Conversion.TONUMBEROPTIONS
718
- );
488
+ var id = qx.data.SingleValueBinding.bind(o, "a", o, "b", qx.data.Conversion.TONUMBEROPTIONS);
719
489
 
720
490
  o.setA("123");
721
491
  this.assertEquals(123, o.getB(), "String -> Number");
722
492
  qx.data.SingleValueBinding.removeBindingFromObject(o, id);
723
493
 
724
494
  // string to boolean
725
- var id = qx.data.SingleValueBinding.bind(
726
- o,
727
- "a",
728
- o,
729
- "b",
730
- qx.data.Conversion.TOBOOLEANOPTIONS
731
- );
495
+ var id = qx.data.SingleValueBinding.bind(o, "a", o, "b", qx.data.Conversion.TOBOOLEANOPTIONS);
732
496
 
733
497
  o.setA("123");
734
498
  this.assertEquals(true, o.getB(), "String -> Boolean");
735
499
  qx.data.SingleValueBinding.removeBindingFromObject(o, id);
736
500
 
737
501
  // number to boolean
738
- var id = qx.data.SingleValueBinding.bind(
739
- o,
740
- "a",
741
- o,
742
- "b",
743
- qx.data.Conversion.TOBOOLEANOPTIONS
744
- );
502
+ var id = qx.data.SingleValueBinding.bind(o, "a", o, "b", qx.data.Conversion.TOBOOLEANOPTIONS);
745
503
 
746
504
  o.setA(0);
747
505
  this.assertEquals(false, o.getB(), "Number -> Boolean");
748
506
  qx.data.SingleValueBinding.removeBindingFromObject(o, id);
749
507
  o.dispose();
508
+ qx.Class.undefine("qx.test.TwoProperties");
750
509
  },
751
510
 
752
511
  testResetNotNull() {
@@ -813,7 +572,8 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
813
572
  properties: {
814
573
  x: {
815
574
  nullable: true,
816
- init: "affe"
575
+ init: "affe",
576
+ event: null
817
577
  }
818
578
  }
819
579
  });
@@ -848,20 +608,10 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
848
608
  }
849
609
  };
850
610
 
851
- qx.data.SingleValueBinding.bind(
852
- this.__a,
853
- "appearance",
854
- this.__b,
855
- "appearance",
856
- options
857
- );
611
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance", options);
858
612
 
859
613
  this.__a.setAppearance("affe");
860
- this.assertEquals(
861
- "affe",
862
- this.__b.getAppearance(),
863
- "String binding does not work!"
864
- );
614
+ this.assertEquals("affe", this.__b.getAppearance(), "String binding does not work!");
865
615
  },
866
616
 
867
617
  testWrongArguments() {
@@ -869,12 +619,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
869
619
 
870
620
  this.assertException(
871
621
  function () {
872
- qx.data.SingleValueBinding.bind(
873
- this.__a,
874
- "appearance",
875
- this.__b,
876
- undefined
877
- );
622
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, undefined);
878
623
  },
879
624
  qx.core.AssertionError,
880
625
  ""
@@ -882,12 +627,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
882
627
 
883
628
  this.assertException(
884
629
  function () {
885
- qx.data.SingleValueBinding.bind(
886
- this.__a,
887
- "appearance",
888
- undefined,
889
- "appearance"
890
- );
630
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", undefined, "appearance");
891
631
  },
892
632
  qx.core.AssertionError,
893
633
  ""
@@ -895,12 +635,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
895
635
 
896
636
  this.assertException(
897
637
  function () {
898
- qx.data.SingleValueBinding.bind(
899
- this.__a,
900
- undefined,
901
- this.__b,
902
- "appearance"
903
- );
638
+ qx.data.SingleValueBinding.bind(this.__a, undefined, this.__b, "appearance");
904
639
  },
905
640
  qx.core.AssertionError,
906
641
  ""
@@ -908,12 +643,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
908
643
 
909
644
  this.assertException(
910
645
  function () {
911
- qx.data.SingleValueBinding.bind(
912
- undefined,
913
- "appearance",
914
- this.__b,
915
- "appearance"
916
- );
646
+ qx.data.SingleValueBinding.bind(undefined, "appearance", this.__b, "appearance");
917
647
  },
918
648
  qx.core.AssertionError,
919
649
  ""
@@ -924,12 +654,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
924
654
  var c = new qx.test.data.singlevalue.TextFieldDummy();
925
655
 
926
656
  // add three bindings
927
- qx.data.SingleValueBinding.bind(
928
- this.__a,
929
- "appearance",
930
- this.__b,
931
- "appearance"
932
- );
657
+ qx.data.SingleValueBinding.bind(this.__a, "appearance", this.__b, "appearance");
933
658
 
934
659
  qx.data.SingleValueBinding.bind(this.__a, "zIndex", this.__b, "zIndex");
935
660
  qx.data.SingleValueBinding.bind(this.__b, "zIndex", this.__a, "zIndex");
@@ -941,13 +666,9 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
941
666
  qx.data.SingleValueBinding.bind(c, "appearance", this.__b, "appearance");
942
667
 
943
668
  // check if the bindings are there
944
- var bindingsA = qx.data.SingleValueBinding.getAllBindingsForObject(
945
- this.__a
946
- );
669
+ var bindingsA = qx.data.SingleValueBinding.getAllBindingsForObject(this.__a);
947
670
 
948
- var bindingsB = qx.data.SingleValueBinding.getAllBindingsForObject(
949
- this.__b
950
- );
671
+ var bindingsB = qx.data.SingleValueBinding.getAllBindingsForObject(this.__b);
951
672
 
952
673
  this.assertEquals(4, bindingsA.length, "There are more than 4 bindings!");
953
674
  this.assertEquals(4, bindingsB.length, "There are more than 3 bindings!");
@@ -958,18 +679,12 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
958
679
  // __a object should have one binding to object c
959
680
  bindingsA = qx.data.SingleValueBinding.getAllBindingsForObject(this.__a);
960
681
  this.assertEquals(1, bindingsA.length, "There must be one binding!");
961
- this.assertTrue(
962
- bindingsA[0][1] === c,
963
- "Source object of the binding must be object 'c'!"
964
- );
682
+ this.assertTrue(bindingsA[0][1] === c, "Source object of the binding must be object 'c'!");
965
683
 
966
684
  // __b object should have one binding to object c
967
685
  bindingsB = qx.data.SingleValueBinding.getAllBindingsForObject(this.__b);
968
686
  this.assertEquals(1, bindingsB.length, "There must be one binding!");
969
- this.assertTrue(
970
- bindingsA[0][1] === c,
971
- "Source object of the binding must be object 'c'!"
972
- );
687
+ this.assertTrue(bindingsA[0][1] === c, "Source object of the binding must be object 'c'!");
973
688
  },
974
689
 
975
690
  testNonExistingSetup() {
@@ -991,9 +706,7 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
991
706
  qx.data.SingleValueBinding.bind(a, "b.c.d.e.f", a, "target");
992
707
  this.assertNull(a.getTarget());
993
708
 
994
- a.getB().setC(
995
- qx.data.marshal.Json.createModel({ d: { e: { f: "txt" } } })
996
- );
709
+ a.getB().setC(qx.data.marshal.Json.createModel({ d: { e: { f: "txt" } } }));
997
710
 
998
711
  this.assertEquals("txt", a.getTarget());
999
712
  },
@@ -1026,6 +739,58 @@ qx.Class.define("qx.test.data.singlevalue.Simple", {
1026
739
 
1027
740
  a.getB().setC(qx.data.marshal.Json.createModel({ d: {} }));
1028
741
  this.assertNull(a.getTarget());
742
+ },
743
+
744
+ testIgnoreConverter() {
745
+ qx.Class.undefine("qx.test.data.singlevalue.simple.Person");
746
+ let Person = qx.Class.define("qx.test.data.singlevalue.simple.Person", {
747
+ extend: qx.core.Object,
748
+ construct(name) {
749
+ this.constructor.superclass.constructor.call(this);
750
+ if (name) {
751
+ this.setName(name);
752
+ }
753
+ },
754
+
755
+ properties: {
756
+ name: {
757
+ check: "String",
758
+ init: "Patryk",
759
+ nullable: true,
760
+ event: "changeName"
761
+ },
762
+ friend: {
763
+ check: "qx.test.data.singlevalue.simple.Person?",
764
+ event: "changePerson"
765
+ }
766
+ }
767
+ });
768
+
769
+ let person1 = new Person("Jake");
770
+ let person2 = new Person("Anna");
771
+ person1.setFriend(person2);
772
+ person2.setFriend(person2);
773
+
774
+ let person3 = new Person();
775
+
776
+ let timesCalled = 0;
777
+ person1.bind("friend.friend.name", person3, "name", {
778
+ converter(data, model, source, target) {
779
+ timesCalled++;
780
+ return data;
781
+ },
782
+ ignoreConverter: "friend"
783
+ });
784
+ this.assertEquals("Anna", person3.getName(), "Initial value not set correctly.");
785
+ this.assertEquals(1, timesCalled, "Converter should be called during initial set.");
786
+ person2.setName(null);
787
+ this.assertEquals(2, timesCalled, "Converter should be called during null set.");
788
+ this.assertNull(person3.getName(), "Null value should be set.");
789
+ person2.setName("Anna");
790
+ this.assertEquals(3, timesCalled, "Converter should be called after null set.");
791
+ person2.setFriend(null);
792
+ this.assertEquals(3, timesCalled, "Converter should not be called when chain is broken and ignoreConverter is set and matches.");
793
+ this.assertEquals("Patryk", person3.getName(), "Target should be reset when chain is broken");
1029
794
  }
1030
795
  }
1031
796
  });