Now that we can generate all QML type information at build time, we
should also use it.
Change-Id: I647c72bbe38fdb2deb565b75c86a696af3d15b61
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Removed dependencies.yaml because we don't use it yet in wip/cmake.
Fixed conflict in qmlcachegen.cpp.
Change-Id: Ie1060c737bee1daa85779903598e5b6d5020d922
Using this technique we can automatically register all necessary
revisions and minor versions of a type, using the metaobject system.
This greatly reduces the potential for mistakes and resulting
incompatibilities between versions of imports.
We assume that for each type we need to register all revisions of its
super types and its attached type, and that the revisions match. That
is, if you import version X of type A, you will also get version X of
its attached type and of any super types. As we previously didn't take
these dependencies into account when manually registering the types, a
number of extra revisions are now registered for some types.
Potentially, we can now generate the qmltypes files at compile time,
using moc.
Change-Id: I7abb8a5c39f5e63ad1a0cb41a783f2c91909491b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Add qt6_add_qml_module() as a public API for building QML modules.
Since the shared implementation details are small, it was easier
to just reimplement the shared code than to unmangle the more
complicated version we use to build Qt from QtBuild.
This patch includes an example conversion. Changes for pro2cmake
will follow in a separate patch in qtbase.
Change-Id: I942526cc7d978e2d8309b506e785f9c1509d0bbc
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This patch converts all examples in qtdeclarative except for a few
exceptions which require a public facing qml plugin api.
Change-Id: I2cd2b1bb455be8b48796893a8235dea7f8b35aa2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
...and fix some section titles to be less confusing.
Change-Id: If83c3faffead9e2e9be7fc0fb360f1c5b8b1bb51
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Nico Vertriest <nico.vertriest@qt.io>
boundingRect is not documented for public use, and there's no need to
repeatedly call it either.
Change-Id: I844c704da0c0e7a5e94b387c5ebe9b26dc6b59fe
Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
When instantiating static plugins no check is done whether the
QQmlExtensionInterface is declared. Therefore all user plugins are
instantiated in the Qml thread, which may cause problems.
Task-number: QTBUG-52012
Change-Id: Ia91ec5ec7b2a9721bd11e3648cdc161855b4454e
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
This change also fixes the build of two benchmarks, tst_affectors
and tst_emission.
Conflicts:
src/plugins/qmltooling/qmldbg_native/qmldbg_native.pro
src/qml/qml/ftw/qhashfield_p.h
tests/benchmarks/particles/affectors/tst_affectors.cpp
tests/benchmarks/particles/emission/tst_emission.cpp
tests/benchmarks/qml/pointers/pointers.pro
tests/benchmarks/qml/pointers/tst_pointers.cpp
tests/benchmarks/qml/qmltime/qmltime.pro
tests/benchmarks/qml/qquickwindow/qquickwindow.pro
Change-Id: I595309d1e183c18371cb9b07af6e4681059de3b2
Subjects each *.png file that matched grep -law "sRGB" to:
pngcrush -ow -brute -rem allb -reduce -force
Various tools grumble about sRGB tables in PNG images; and our
handling of them doesn't pay attention to these, so purging them
makes the images smaller with no loss to the images.
Change-Id: I23d7a43ba6c6ce6cafa11c1950a118a73f4d07cd
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
Subjects each *.png file that matched grep -law "sRGB" to:
pngcrush -ow -brute -rem allb -reduce
Various tools grumble about sRGB tables in PNG images; and our
handling of them doesn't pay attention to these, so purging them
makes the images smaller with no loss to the images.
Change-Id: If3baf60fb7c0045446ddfddecef96374845e739e
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
Makes no sense to maintain the documentation
in a separate directory outside the example
source tree.
Task-number: QTBUG-50405
Change-Id: I660ea712603aed5e7cbbd7b060ca064480de4e11
Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
From Qt 5.7 -> examples are lisenced under BSD license, see
http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/
Updated license headers to use new BSD header instead of LGPL21 one
(in those files which will be under BSD)
Change-Id: I09ba19590e9425d5116a6c27cbc183debb485dde
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Qt copyrights are now in The Qt Company, so we could update the source
code headers accordingly. In the same go we should also fix the links to
point to qt.io.
Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9
Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
Now the slider remains at a position that is equivalent to the old
position based on the previous percentage.
This change is most commonly triggered during orientation changes on
mobile device. That is the reason why the app was converted to a
proper Qt project. This way it was possible to test this behavior
on Android.
Task-number: QTBUG-18423
Change-Id: If05e6a1e42249f90a821c4882021d28cf212fc52
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
examples/quick/customitems contains all the examples found in
examples/quick/ui-components, plus 2 more (maskedmousearea and
painteditem). There are some very minor differences between the
duplicated files, regarding the "smooth" property. Apart from that, the
examples are identical.
The only file that is unique to examples/quick/ui-components is
example-slideswitch.qdoc. Moving it does not change the generated HTML
filename. The other examples do not produce any documentation.
Change-Id: I507d9064a60fd1f3a1469c1e423d4c0a72c7dc41
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
This was the one convenience that was lost when transitioning templates
from QQuickView + Item{} to QQmlApplicationEngine + Window{}.
As the default window incubation controller was tied to the first
window's frameSwapped, we could easily run into a situation where
a secondary window required incubation while the first window
was idle. This would then starve the incubation controller. Instead
make it so that the renderloop emits "timeToIncubate" once it
is done with a renderpass over all windows, so the incubator
gets to run once and exactly once per vsync when animating.
The incubator logic was also flawed in that it could post
a lot of events to itself as a result of incubatingObjectCountChanged
and thus starve system events while processing incubation requests.
Now we start a timer and don't start it again until we have
completed an incubation pass.
Task-number: QTBUG-31203
Change-Id: Iea9e2c81efb46bb7875c70ccda0cdc4b3b3e58e7
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
qt is already added by spec_pre.prf, warn_on by default_pre.prf and dll
by qt_module.prf.
Change-Id: I449e49275622bac39b7d76af8855c417ddce21e9
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Make examples shadow-build-friendly by using resource
files instead of trying to derive the qml path from
applicationDirPath().
Change-Id: I669424554c772d9b261249b366247190f5fbd8b1
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Enable examples to be built in the target tree. This entails installing
the project files and possibly other missing stuff.
Task-number: QTBUG-27977
Change-Id: I159fd8e3ebc7077e1d68e085c4947acc058ce594
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
Leave the "qtdeclarative" dir for Qt Quick 1, which is where it used
to be in Qt 4.
Change-Id: I44997771d77617564fc608c1aba95e3ada8f9a69
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
Change copyrights and license headers from Nokia to Digia
Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
-inline \example pages into separate .qdoc files
-fixed broken links to paths
-moved ui-components under examples/quick
Change-Id: I6e009b9213be3e1f4bed51bdbeb76a7a2142c80b
Reviewed-by: Martin Smith <martin.smith@digia.com>
How to make a custom QSGGeometry, how to use QSGSimpleMaterial and how
to use render with raw GL.
Change-Id: I3e5a32b6ae12d7d781c11050ed26a54845e92cca
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Under examples the next directory level distinguishes imports/modules
and the next directory level distinguishes examples.
Change-Id: Icabadaac6ccb9c1c424efa9c9e64a7d94bc7c0da
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>