Commit Graph

111 Commits

Author SHA1 Message Date
Ulf Hermann 2c3419e127 Generate registrations for all examples
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>
2020-01-13 16:47:57 +01:00
Fabian Kosmale 4eff729950 Binding example: Fix type registration
Fixes: QTBUG-81335
Change-Id: Ie93c9b7ad49703bce245592e659ccdb6ea2b7ed9
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2020-01-13 13:27:36 +01:00
Ulf Hermann 0a649f2581 Fix xmlhttprequest example
The "pressed" property belongs to mouseArea, not button.

Change-Id: Ib35c520b75e30c2cb9a3a7dee0b482a2209040c8
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-11-14 10:09:36 +01:00
Ulf Hermann cc1a604c70 Specify parameters of type registration in class declarations
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>
2019-09-26 12:32:17 +02:00
Ulf Hermann d045cd4330 Reference Examples: Fix calls to exec() and exit codes
exec() is a static member of QCoreApplication and should be called as
such. In case of errors we should return a non-0 exit code from main().

Change-Id: I0fefa006841b367d06a9de1fd1284cb7caf467bd
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-30 17:57:38 +02:00
Ulf Hermann 76282f480e Use qmlRegisterAnonymousType in examples and tests
Change-Id: I511d18ad8f73ea77a208e4448a8f86e5be5facc3
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-27 16:20:55 +02:00
Ulf Hermann a2e1025354 Reference Examples: Avoid static_cast on function arguments
qobject_cast is safer and not very expensive here.

Change-Id: Ie87219e2a5092e453d257064a95a790de31015f5
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-20 08:43:01 +02:00
Ulf Hermann adcb79025a Reference Examples: Use override for overridden virtual functions
Change-Id: I9f4225bf312856d08fd08431353f3cb36d0f7fa5
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-20 08:42:49 +02:00
Ulf Hermann 3cc226ffe7 Reference Examples: Use nullptr
Change-Id: I325cfdcf488e9d238e618ca23ef40aedf7c5eec1
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-20 08:42:30 +02:00
Ulf Hermann 66fabff253 Reference Examples: Use auto for results of new and component.create()
Change-Id: Ibfd92fbc5a99b38cf8b31a11c0adfdfa69e2bb36
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-20 08:42:16 +02:00
Ulf Hermann 73a9c52fed Reference Examples: Use initializer lists to avoid repeating type naems
Change-Id: Iff0b31d9b641a55ea246235ba1d7a066592ef0c0
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-20 08:42:01 +02:00
Marc Mutz 11344a9070 Port from QLineEdit::getTextMargins() to textMargins()
getTextMargins() will be deprecated soon.

Change-Id: I328f87553585fd1450c85191422013ebc0c8f7f8
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2019-07-03 13:29:47 +00:00
Kai Koehne 369998639b i18n examples: Add en translation dummies
We endorse using QTranslator::install(const QLocale&...), because
it tries loading translations from all QLocale::uiLanguages() instead
of the commonly used QLocale::system().name() setup.

Anyhow, the first method requires an English translation - otherwise
a second favorite language might be used.

Pave the way to making the switch by adding (empty) English translations
to our examples.

Task-number: QTBUG-69196
Change-Id: Ie85be875e34e29e80c1693bbf477b962e35a7d87
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2018-07-17 08:55:11 +00:00
Kai Koehne 33a9fb9f4b i18n examples: Update .ts files
Change-Id: I3c1987bac8251b087fab98d6caaaba267dcc4be8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-07-17 08:55:06 +00:00
Paul Wicking ed3a93feee Doc: Add missing dots (qtdeclarative)
Task-number: QTBUG-68933
Change-Id: Ibb5aa227e82825085e7214e17dcffcb17fd44157
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-06-19 12:44:48 +00:00
Mårten Nordheim 44e398f64e Clarify ownership around QQmlEngine::setNAMF
We were leaking an instance of MyNetworkAccessManagerFactory in the
"NetworkAccessManagerFactory"-example. To add to this the documentation
around QQmlEngine::setNetworkAccessManagerFactory did not specify
whether or not it took ownership, causing confusion.

Change-Id: Ic9eee2c45682c752bcb4aa98943fc0af2b630795
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
2018-04-26 19:55:13 +00:00
J-P Nurmi d2ed475b84 Examples: remove bogus return
Change-Id: I653974c80c6767d9af95b9157a73c09dbdeb76cc
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
2018-04-03 12:36:21 +00:00
Shawn Rutledge e17c89f4ce use the override keyword consistently and correctly (clang-tidy)
Change-Id: If9e28d143f8cba3df3c757476b4f2265e2eb8b2a
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
2018-02-27 08:27:38 +00:00
Shawn Rutledge 499ec43937 use nullptr consistently (clang-tidy)
From now on we prefer nullptr instead of 0 to clarify cases where
we are assigning or testing a pointer rather than a numeric zero.

Also, replaced cases where 0 was passed as Qt::KeyboardModifiers
with Qt::NoModifier (clang-tidy replaced them with nullptr, which
waas wrong, so it was just as well to make the tests more readable
rather than to revert those lines).

Change-Id: I4735d35e4d9f42db5216862ce091429eadc6e65d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2018-02-26 07:13:18 +00:00
Kai Koehne 341a04377b Fix outdated FDL license header
Change-Id: I76dccf547de40b5e72fd7abaa062fa96cb2c118a
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2017-10-17 11:18:21 +00:00
Kai Koehne ea6cd0de3c Fix outdated BSD license header
Change-Id: Icc08925454445fc9497fb3bfd2c26efe90605983
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2017-10-17 11:18:11 +00:00
Topi Reinio 2baea9d0c3 Doc: Fix capitalization in section titles
...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>
2017-08-29 09:54:41 +00:00
Friedemann Kleint 85bb44539a Fix GCC 7 warnings in examples
plugin.cpp: In member function 'virtual void MinuteTimer::timerEvent(QTimerEvent*)':
plugin.cpp:85:28: warning: ignoring return value of 'QTime QTime::addSecs(int) const', declared with attribute nodiscard [-Wunused-result]
             time.addSecs(60);

main.cpp: In function 'int qMain(int, char**)':
main.cpp:71:1: warning: no return statement in function returning non-void [-Wreturn-type]

Task-number: QTBUG-60630
Change-Id: I0c0002533aa28c480a4d9eb45856dd10753d2476
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2017-06-21 06:13:32 +00:00
Nico Vertriest b63c210f5a Doc: make screen xmlhttprequest compatible with Designer
Change-Id: Ieaf45a817d4568bd2cd7c3cbbfee62435c2e2594
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2017-05-03 12:06:29 +00:00
Simon Hausmann 7f32589663 Merge remote-tracking branch 'origin/5.8' into 5.9
Conflicts:
	src/qml/compiler/qqmltypecompiler.cpp
	src/qml/compiler/qqmltypecompiler_p.h
	src/qml/qml/qqmltypeloader.cpp
	src/qml/qml/qqmltypeloader_p.h

Change-Id: I4894555ab7a0879b56bbda7a46d16d1c40c19e7c
2017-03-15 10:44:33 +01:00
Nico Vertriest 46468c4762 Doc: added snippets to Extension Objects Example
Change-Id: Icbd2393d4b8523e24328f765e76869c86afb3e72
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2017-03-13 11:40:25 +00:00
Michael Winkelmann a54f08e1ea Replace QList<Person*> with QVector<Person*> and function pointers
The usage of the QQmlListProperty QList constructor is discouraged since
QList violates QML's memory management rules.
Replaced the QList with a QVector and passed the function pointers to the
QQmlListProperty constructor instead, as officially recommended.

Change-Id: I6d28a43530cc3edd5e7d89c351bad70deb721689
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-03-07 07:11:44 +00:00
Nico Vertriest a0ed2b0ef3 Doc: added specs to Extending QML - Methods Example
Change-Id: I7386c2bd738776455a71bde8cffdcedb9e292b24
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2017-01-09 09:38:14 +00:00
Nico Vertriest 27ea28b0f4 Doc: Rearranged order of Extending QML Examples
Rearranged in logical order of example build up

Change-Id: I6af8e39bd900d4ce058de46e0b3ebd5e368222c8
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2017-01-09 09:38:01 +00:00
Nico Vertriest 0f911e46c5 Doc: minor grammar mistake
Change-Id: If3aebd27e886181ebe0d41532935afdfb974586c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
2016-12-21 13:17:23 +00:00
Lars Knoll e579076bb3 Get rid of most QT_NO_FOO usages
Instead use QT_CONFIG(foo). This change actually detected a few
mis-spelled macros and invalid usages.

Change-Id: I06ac327098dd1a458e6bc379d637b8e2dac52f85
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2016-11-29 10:10:27 +00:00
Lars Knoll 4ee2bc4e9c Turn the no-network support into a configurable feature
Change-Id: Ic70f60c124fe166b37fbe9b853735be3c5e0d46d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2016-10-10 14:11:47 +00:00
Edward Welbourne 74f0d15e08 Merge remote-tracking branch 'origin/5.7' into dev
Conflicts:
	src/quick/items/qquickshadereffect.cpp
5.7 had a bug-fix in code dev has replaced wholesale.

	src/quick/items/qquickwindow.cpp
	src/quick/items/qquickwindow_p.h
One side changed a method's signature; the other side renamed a method
declared adjacent to it and changed some code using it, moving some
from the public class to its private partner.

	tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp
One side added a blank line before a comment the other re-wrote.
Kept the re-write, killed the stray blank.

	.qmake.conf
Ignore 5.7's change to MODULE_VERSION.

	src/qml/compiler/qqmltypecompiler.cpp
	src/qml/compiler/qqmlpropertyvalidator.cpp
5.7 changed code in the former that dev moved to the latter.
Reflect 5.7's changes there, adapted to dev's form.

	src/qml/qml/qqmlobjectcreator.cpp
One side added new QVariant types; the other changed how it handled
each type of QVariant (without git seeing any conflict); adapted the
new stanzas to work the same as the transformed ones.

	tests/manual/v4/test262
dev had a broken sha1 for it; so used 5.7's 9741ac4655808ac46c127e3d1d8ba3d27ada618e

Change-Id: I1fbe2255b97d6ef405cdd1d0cea7fab8dc351d6f
2016-08-02 18:34:30 +02:00
Edward Welbourne c8c1d4964b PieChart examples: initialize members
Coverity (CID 161680, 161678) pointed out that constructors don't
initialize some members; getters would have returned drivel if called
before setters.  Unimportant but we should set a good example in our
example code.

Change-Id: Ia0483cfbe2cae379a0e84f10db1d8edc9cb5c52b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2016-07-15 08:22:01 +00:00
Liang Qi 8ae479a8ea Merge remote-tracking branch 'origin/5.7' into dev
Conflicts:
	src/qml/jsruntime/qv4engine_p.h
	src/qml/jsruntime/qv4runtime_p.h
	src/qml/qml/qqmldelayedcallqueue.cpp
	src/qml/qml/qqmlvaluetypewrapper.cpp
	src/qml/qml/qqmlvmemetaobject.cpp
	src/qml/qml/v8/qv8engine_p.h
	tests/auto/quick/qquicktext/tst_qquicktext.cpp

Change-Id: I3f0608c7beb88088cbbef4d0db59920f56deaea9
2016-05-24 14:00:39 +02:00
Liang Qi ae745746a6 Merge remote-tracking branch 'origin/5.7' into dev
Conflicts:
	src/qml/jsapi/qjsengine.cpp
	src/qml/qml/qqmlengine_p.h
	src/quick/items/qquickanchors.cpp
	src/quick/items/qquickanimatedimage_p_p.h
	src/quick/items/qquickitem_p.h
	tests/auto/qml/qqmlecmascript/testtypes.h
	tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp
	tests/benchmarks/qml/creation/tst_creation.cpp

Change-Id: I65861e32f16e8a04c7090a90231627e1ebf6ba6f
2016-05-13 08:28:27 +02:00
Oswald Buddenhagen ee874f7e0a actually build and install the qml tutorials
Change-Id: Idf81981140e210b29239e91ff5b6b7c40e2f36de
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2016-05-13 04:35:27 +00:00
Oswald Buddenhagen e6581ed818 fix example installs
Change-Id: Ie6a219392a48fd6b1a32037cc215dc20d408e819
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2016-05-13 04:35:24 +00:00
Oswald Buddenhagen 578d271719 make use of COPIES
Change-Id: I479c9523a89be1d64364e8205daa5860e16882cc
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2016-05-13 04:35:22 +00:00
Topi Reinio 35e2f29cde QML extensions tutorial: Add import plugin to app. bundle on OS X
The application in chapter 6 of this tutorial failed to import
the custom extension plugin on OS X, as it could not see it's
import path outside the application bundle.

Change-Id: Icdca1f0553020e0460e4efabc5461a3447b32086
Task-number: QTBUG-47003
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-04-16 02:25:23 +00:00
Sebastian Lösch 392c7b9934 Instantiate static Qml plugins declaring QQmlExtensionInterface only
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>
2016-04-11 14:10:54 +00:00
Liang Qi b9eca979f8 Merge remote-tracking branch 'origin/5.7' into dev
Change-Id: I48c493b537e65276107ed7ee029312e294947e8b
2016-04-08 23:42:37 +02:00
Edward Welbourne ca0765d283 Purge sRGB chunks from PNGs in examples.
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>
2016-03-24 19:40:15 +00:00
Paolo Angelelli c7ac28fa35 QtLite: no_network option for QtDeclarative
This patch adds the support for a no_network option for
QtDeclarative, and the necessary #ifndef all around the
code.
no_network changes the interface of some classes, therefore
using it breaks source compatibility.

Change-Id: Iff612fb07041b8a7db99bd595bf038efaac2dd8a
Reviewed-by: Risto Avila <risto.avila@theqtcompany.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2016-03-04 13:09:51 +00:00
Nico Vertriest 919ef02b03 Doc: Fixed several link errors
Change-Id: I684b8c0d238b7592b49abc0156bbc9791fdf6991
Task-number: QTBUG-43810
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-09-07 08:44:57 +00:00
Ulf Hermann eb30e3d7ee Merge remote-tracking branch 'origin/5.5' into 5.6
Conflicts:
	src/qml/debugger/qv4debugservice.cpp
	src/qml/jsruntime/qv4value_inl_p.h
	src/qml/jsruntime/qv4value_p.h
	src/qml/memory/qv4mm.cpp
	src/qml/memory/qv4mm_p.h
	src/qml/qml/qqmlnotifier_p.h
	src/qml/qml/qqmlproperty.cpp
	src/quick/items/qquickflickable.cpp
	src/quick/items/qquicktextedit.cpp
	tests/auto/quick/qquickwindow/BLACKLIST

The extra changes in qqmlbinding.cpp are ported from changes to
qqmlproperty.cpp that occurred in parallel with writeBinding() being
moved to qqmlbinding.cpp.

Change-Id: I16d1920abf448c29a01822256f52153651a56356
2015-08-18 10:29:47 +02:00
Friedemann Kleint 1e2e356f0f Port examples to new connection syntax.
Change-Id: I121c59ac0ad56acb4cd54b99ecd37567368385ce
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
2015-07-22 22:16:19 +00:00
Oswald Buddenhagen 5931caca23 Merge remote-tracking branch 'origin/5.4' into 5.5
Conflicts:
	tests/auto/quick/qquickwindow/tst_qquickwindow.cpp

Change-Id: I272074fa2ca259439cae2f686325932f7f9d7c01
2015-07-20 12:08:27 +02:00
Venugopal Shivashankar 72c042fa3e Doc: Added the missing \brief and \image to the example docs
Task-number: QTBUG-41996
Change-Id: Ica6e069c7753a2004a4a4c0e93a49d1f240569d3
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-06-02 20:03:42 +00:00
Simon Hausmann 2647ea9481 Fix qml-i18n example
Commit f0e2853818 renamed the example, but
it did not adjust the context in the translations. From that point on the
context didn't match anymore and the entire example stopped working.

Change-Id: I491d518235aea07768b69c52d13b2bbf5060f61f
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-05-05 07:38:58 +00:00