@qooxdoo/framework 8.0.0-beta.2 → 8.0.0-beta.3

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 (29) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/Manifest.json +1 -1
  3. package/lib/compiler/compile-info.json +42 -43
  4. package/lib/compiler/index.js +555 -645
  5. package/package.json +1 -1
  6. package/source/class/qx/Class.js +23 -4
  7. package/source/class/qx/Mixin.js +15 -6
  8. package/source/class/qx/core/check/AbstractCheck.js +5 -1
  9. package/source/class/qx/core/check/CheckFactory.js +6 -0
  10. package/source/class/qx/core/check/DynamicTypeCheck.js +5 -0
  11. package/source/class/qx/core/property/ExplicitPropertyStorage.js +7 -19
  12. package/source/class/qx/core/property/IPropertyStorage.js +2 -21
  13. package/source/class/qx/core/property/Property.js +96 -72
  14. package/source/class/qx/core/property/SimplePropertyStorage.js +2 -18
  15. package/source/class/qx/data/MBinding.js +1 -1
  16. package/source/class/qx/data/SingleValueBinding.js +58 -100
  17. package/source/class/qx/data/binding/AbstractSegment.js +15 -10
  18. package/source/class/qx/data/binding/PropNameSegment.js +34 -11
  19. package/source/class/qx/test/Mixin.js +219 -0
  20. package/source/class/qx/test/Promise.js +10 -11
  21. package/source/class/qx/test/core/Property.js +22 -16
  22. package/source/class/qx/test/data/singlevalue/Async.js +17 -4
  23. package/source/class/qx/test/performance/Property.js +0 -1
  24. package/source/class/qx/test/ui/core/SingleSelectionManager.js +150 -0
  25. package/source/class/qx/tool/compiler/cli/api/CompilerApi.js +1 -2
  26. package/source/class/qx/ui/core/SingleSelectionManager.js +4 -4
  27. package/source/class/qx/ui/form/validation/Manager.js +1 -1
  28. package/source/resource/qx/decoration/Modern/table/boolean-false.png +0 -0
  29. package/source/resource/qx/decoration/Modern/table/boolean-true.png +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Upcoming
2
2
 
3
+ # 8.0.0-beta.2
4
+
5
+ ## Breaking changes
6
+ - Removed `async: true` key from property definition, because now all properties have `setAsync` methods, which can be used to await the apply function's return value and the event handlers when a property is set. The meaning of this setting wasn't very clear, also given that we now have async property storage.
7
+ - Only properties with storages that support async get will create `getPropertyAsync` on the object.
8
+ - Changed the behaviour of `MBinding.bindAsync`. Previously, the only different between `bind` and `bindAsync` was that `bindAsync` always returned a promise whereas `bind` only returned a promise if it had to do something asynchronously. Now, `bindAsync` will call `setAsync` when setting the target path's property while `bind` always calls `set`. If we call `bind` and have to get a property asynchronously, a warning will be shown telling the user to use `bindAsync`.
9
+ - `qx.Class.getProperties` now requires a Qooxdoo class, whereas before it could sometimes work on any class.
10
+ - `object.getPropertyAsync` will now only work if the property storage supports an async getter.
11
+
3
12
  # v8.0.0_beta
4
13
 
5
14
  ## Fixes
package/Manifest.json CHANGED
@@ -79,7 +79,7 @@
79
79
  "email": "dietrich.streifert@visionet.de"
80
80
  }
81
81
  ],
82
- "version": "8.0.0-beta.2",
82
+ "version": "8.0.0-beta.3",
83
83
  "sourceViewUri": "https://github.com/qooxdoo/qooxdoo/blob/%{qxGitBranch}/framework/source/class/%{classFilePath}#L%{lineNumber}"
84
84
  },
85
85
  "provides": {
@@ -128,7 +128,6 @@
128
128
  "qx.bom.Font",
129
129
  "qx.bom.webfonts.WebFontLoader",
130
130
  "qx.bom.webfonts.WebFont",
131
- "qx.util.PropertyUtil",
132
131
  "qx.data.binding.AbstractSegment",
133
132
  "qx.data.binding.PropNameSegment",
134
133
  "qx.data.binding.ArrayIndexSegment",
@@ -304,6 +303,10 @@
304
303
  }
305
304
  ],
306
305
  "resources": [
306
+ "qx/decoration/Simple/cursors/alias.gif",
307
+ "qx/decoration/Simple/cursors/copy.gif",
308
+ "qx/decoration/Simple/cursors/move.gif",
309
+ "qx/decoration/Simple/cursors/nodrop.gif",
307
310
  "qx/decoration/Simple/checkbox/checked-disabled.png",
308
311
  "qx/decoration/Simple/checkbox/checked.png",
309
312
  "qx/decoration/Simple/checkbox/undetermined-disabled.png",
@@ -312,10 +315,6 @@
312
315
  "qx/decoration/Simple/colorselector/brightness-handle.gif",
313
316
  "qx/decoration/Simple/colorselector/huesaturation-field.jpg",
314
317
  "qx/decoration/Simple/colorselector/huesaturation-handle.gif",
315
- "qx/decoration/Simple/cursors/alias.gif",
316
- "qx/decoration/Simple/cursors/copy.gif",
317
- "qx/decoration/Simple/cursors/move.gif",
318
- "qx/decoration/Simple/cursors/nodrop.gif",
319
318
  "qx/decoration/Simple/arrows/down-invert.gif",
320
319
  "qx/decoration/Simple/arrows/down-small.gif",
321
320
  "qx/decoration/Simple/arrows/down.gif",
@@ -332,8 +331,6 @@
332
331
  "qx/decoration/Simple/menu/checkbox.gif",
333
332
  "qx/decoration/Simple/menu/radiobutton-invert.gif",
334
333
  "qx/decoration/Simple/menu/radiobutton.gif",
335
- "qx/decoration/Simple/splitpane/knob-horizontal.png",
336
- "qx/decoration/Simple/splitpane/knob-vertical.png",
337
334
  "qx/decoration/Simple/table/ascending-invert.png",
338
335
  "qx/decoration/Simple/table/ascending.png",
339
336
  "qx/decoration/Simple/table/boolean-false.png",
@@ -356,6 +353,8 @@
356
353
  "qx/decoration/Simple/treevirtual/start.gif",
357
354
  "qx/decoration/Simple/treevirtual/start_minus.gif",
358
355
  "qx/decoration/Simple/treevirtual/start_plus.gif",
356
+ "qx/decoration/Simple/splitpane/knob-horizontal.png",
357
+ "qx/decoration/Simple/splitpane/knob-vertical.png",
359
358
  "qx/decoration/Simple/window/close-white.gif",
360
359
  "qx/decoration/Simple/window/close.gif",
361
360
  "qx/decoration/Simple/window/maximize-white.gif",
@@ -368,18 +367,22 @@
368
367
  "qx/tool/compiler/loadsass.js",
369
368
  "qx/tool/compiler/schema/compile-1-0-0.json",
370
369
  "qx/tool/compiler/schema/Manifest-1-0-0.json",
371
- "qx/tool/compiler/schema/Manifest-2-0-0.json",
372
370
  "qx/tool/compiler/schema/qooxdoo-1-0-0.json",
371
+ "qx/tool/compiler/schema/Manifest-2-0-0.json",
373
372
  "qx/tool/compiler/cli/templates/template_vars.js",
374
373
  "qx/tool/compiler/cli/templates/TypeScriptWriter-base_declaration.d.ts",
375
- "qx/tool/compiler/cli/templates/loader/loader-browser.tmpl.js",
376
- "qx/tool/compiler/cli/templates/loader/loader-node.tmpl.js",
377
- "qx/tool/compiler/cli/templates/loader/loader-rhino.tmpl.js",
378
374
  "qx/tool/compiler/cli/templates/class/default.tmpl.js",
379
375
  "qx/tool/compiler/cli/templates/class/header.tmpl.js",
380
376
  "qx/tool/compiler/cli/templates/class/interface.tmpl.js",
381
377
  "qx/tool/compiler/cli/templates/class/mixin.tmpl.js",
382
378
  "qx/tool/compiler/cli/templates/class/singleton.tmpl.js",
379
+ "qx/tool/compiler/cli/templates/loader/loader-browser.tmpl.js",
380
+ "qx/tool/compiler/cli/templates/loader/loader-rhino.tmpl.js",
381
+ "qx/tool/compiler/cli/templates/loader/loader-node.tmpl.js",
382
+ "qx/tool/compiler/cli/templates/skeleton/mobile/.gitignore.tmpl",
383
+ "qx/tool/compiler/cli/templates/skeleton/mobile/Manifest.tmpl.json",
384
+ "qx/tool/compiler/cli/templates/skeleton/mobile/compile.tmpl.json",
385
+ "qx/tool/compiler/cli/templates/skeleton/mobile/readme.tmpl.md",
383
386
  "qx/tool/compiler/cli/templates/skeleton/desktop/.gitignore.tmpl",
384
387
  "qx/tool/compiler/cli/templates/skeleton/desktop/compile.tmpl.json",
385
388
  "qx/tool/compiler/cli/templates/skeleton/desktop/Manifest.tmpl.json",
@@ -388,59 +391,55 @@
388
391
  "qx/tool/compiler/cli/templates/skeleton/package/compile.tmpl.json",
389
392
  "qx/tool/compiler/cli/templates/skeleton/package/Manifest.tmpl.json",
390
393
  "qx/tool/compiler/cli/templates/skeleton/package/readme.tmpl.md",
391
- "qx/tool/compiler/cli/templates/skeleton/mobile/.gitignore.tmpl",
392
- "qx/tool/compiler/cli/templates/skeleton/mobile/compile.tmpl.json",
393
- "qx/tool/compiler/cli/templates/skeleton/mobile/Manifest.tmpl.json",
394
- "qx/tool/compiler/cli/templates/skeleton/mobile/readme.tmpl.md",
395
394
  "qx/tool/compiler/cli/templates/skeleton/server/.gitignore.tmpl",
396
395
  "qx/tool/compiler/cli/templates/skeleton/server/compile.tmpl.json",
397
396
  "qx/tool/compiler/cli/templates/skeleton/server/Manifest.tmpl.json",
398
397
  "qx/tool/compiler/cli/templates/skeleton/server/readme.tmpl.txt",
398
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/boot/index.tmpl.html",
399
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/boot/nojs.tmpl.html",
400
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/translation/readme.txt",
399
401
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/boot/index.tmpl.html",
400
402
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/boot/nojs.tmpl.html",
401
403
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/translation/readme.txt",
402
404
  "qx/tool/compiler/cli/templates/skeleton/package/source/translation/readme.txt",
403
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/boot/index.tmpl.html",
404
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/boot/nojs.tmpl.html",
405
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/translation/readme.txt",
406
405
  "qx/tool/compiler/cli/templates/skeleton/server/source/translation/readme.txt",
406
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/Application.tmpl.js",
407
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/__init__.tmpl.js",
408
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/app.png",
409
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/favicon.png",
410
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/js_256x256.png",
407
411
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/Application.tmpl.js",
408
412
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/__init__.tmpl.js",
409
413
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/resource/custom/app.png",
410
414
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/resource/custom/favicon.png",
411
415
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/resource/custom/js_256x256.png",
412
416
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/resource/custom/test.png",
417
+ "qx/tool/compiler/cli/templates/skeleton/package/source/resource/custom/test.png",
413
418
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/Button.tmpl.js",
414
419
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/__init__.tmpl.js",
415
- "qx/tool/compiler/cli/templates/skeleton/package/source/resource/custom/test.png",
416
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/Application.tmpl.js",
417
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/__init__.tmpl.js",
418
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/app.png",
419
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/favicon.png",
420
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/js_256x256.png",
421
420
  "qx/tool/compiler/cli/templates/skeleton/server/source/class/custom/Application.tmpl.js",
422
421
  "qx/tool/compiler/cli/templates/skeleton/server/source/class/custom/__init__.tmpl.js",
423
422
  "qx/tool/compiler/cli/templates/skeleton/server/source/resource/custom/.gitignore.tmpl",
423
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/theme/custom/scss/custom.scss",
424
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/theme/custom/scss/_styles.scss",
425
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/page/Login.tmpl.js",
426
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/page/Overview.tmpl.js",
427
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/page/__init__.tmpl.js",
428
+ "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/css/.gitignore.tmpl",
424
429
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/test/DemoTest.tmpl.js",
425
430
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/theme/Appearance.tmpl.js",
426
431
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/theme/Color.tmpl.js",
427
432
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/theme/Decoration.tmpl.js",
428
- "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/theme/Font.tmpl.js",
429
433
  "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/theme/Theme.tmpl.js",
434
+ "qx/tool/compiler/cli/templates/skeleton/desktop/source/class/custom/theme/Font.tmpl.js",
430
435
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/demo/Application.tmpl.js",
431
436
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/test/DemoTest.tmpl.js",
432
437
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/theme/Appearance.tmpl.js",
433
438
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/theme/Color.tmpl.js",
434
- "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/theme/Font.tmpl.js",
435
439
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/theme/Decoration.tmpl.js",
440
+ "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/theme/Font.tmpl.js",
436
441
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/theme/Theme.tmpl.js",
437
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/page/Login.tmpl.js",
438
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/page/Overview.tmpl.js",
439
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/class/custom/page/__init__.tmpl.js",
440
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/theme/custom/scss/custom.scss",
441
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/theme/custom/scss/_styles.scss",
442
442
  "qx/tool/compiler/cli/templates/skeleton/server/source/class/custom/test/DemoTest.tmpl.js",
443
- "qx/tool/compiler/cli/templates/skeleton/mobile/source/resource/custom/css/.gitignore.tmpl",
444
443
  "qx/tool/compiler/cli/templates/skeleton/package/source/class/custom/resource/custom/test.png",
445
444
  "qx/tool/website/.gitignore",
446
445
  "qx/tool/website/build/404.html",
@@ -458,27 +457,22 @@
458
457
  "qx/tool/website/src/about.md",
459
458
  "qx/tool/website/src/index.html",
460
459
  "qx/tool/website/build/diagnostics/dependson.html",
461
- "qx/tool/website/build/diagnostics/dependson.js",
462
460
  "qx/tool/website/build/diagnostics/requiredby.html",
461
+ "qx/tool/website/build/diagnostics/dependson.js",
463
462
  "qx/tool/website/build/diagnostics/requiredby.js",
464
463
  "qx/tool/website/build/assets/abel.css",
465
- "qx/tool/website/build/assets/buttons.js",
466
464
  "qx/tool/website/build/assets/common.js",
465
+ "qx/tool/website/build/assets/buttons.js",
467
466
  "qx/tool/website/build/assets/custom.css",
468
467
  "qx/tool/website/build/assets/favicon.png",
469
468
  "qx/tool/website/build/assets/fontawesome-all.js",
470
469
  "qx/tool/website/build/assets/logo.svg",
471
470
  "qx/tool/website/build/assets/qx-api.png",
472
- "qx/tool/website/build/assets/qx-ide.png",
473
471
  "qx/tool/website/build/assets/qx-oo.png",
472
+ "qx/tool/website/build/assets/qx-ide.png",
474
473
  "qx/tool/website/build/assets/qx-white.svg",
475
474
  "qx/tool/website/build/assets/qxWeb.js",
476
475
  "qx/tool/website/build/scripts/serve.js",
477
- "qx/tool/website/src/diagnostics/dependson.html",
478
- "qx/tool/website/src/diagnostics/dependson.js",
479
- "qx/tool/website/src/diagnostics/requiredby.html",
480
- "qx/tool/website/src/diagnostics/requiredby.js",
481
- "qx/tool/website/src/scripts/serve.js",
482
476
  "qx/tool/website/src/assets/abel.css",
483
477
  "qx/tool/website/src/assets/buttons.js",
484
478
  "qx/tool/website/src/assets/common.js",
@@ -490,7 +484,12 @@
490
484
  "qx/tool/website/src/assets/qx-ide.png",
491
485
  "qx/tool/website/src/assets/qx-oo.png",
492
486
  "qx/tool/website/src/assets/qx-white.svg",
493
- "qx/tool/website/src/assets/qxWeb.js"
487
+ "qx/tool/website/src/assets/qxWeb.js",
488
+ "qx/tool/website/src/scripts/serve.js",
489
+ "qx/tool/website/src/diagnostics/dependson.html",
490
+ "qx/tool/website/src/diagnostics/dependson.js",
491
+ "qx/tool/website/src/diagnostics/requiredby.html",
492
+ "qx/tool/website/src/diagnostics/requiredby.js"
494
493
  ],
495
494
  "locales": [
496
495
  "en"
@@ -528,9 +527,9 @@
528
527
  "qx.promise.warnings": true,
529
528
  "qx.promise.longStackTraces": true,
530
529
  "qx.compiler": true,
531
- "qx.compiler.version": "8.0.0-beta.2",
530
+ "qx.compiler.version": "8.0.0-beta.3",
532
531
  "qx.Promise.useNativePromise": true,
533
- "qx.version": "8.0.0-beta.2",
532
+ "qx.version": "8.0.0-beta.3",
534
533
  "qx.compiler.targetType": "source",
535
534
  "qx.compiler.outputDir": "compiled/node/build/",
536
535
  "qx.target.privateArtifacts": false,