Commit Graph

172 Commits

Author SHA1 Message Date
Lars Knoll 55a671ea73 Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts:
	src/qml/compiler/qv4compileddata.cpp
	src/qml/compiler/qv4compileddata_p.h
	src/qml/jsruntime/qv4engine.cpp
	src/qml/jsruntime/qv4qmlcontext.cpp
	src/qml/jsruntime/qv4qmlcontext_p.h
	src/qml/jsruntime/qv4regexpobject.cpp
	src/qml/jsruntime/qv4regexpobject_p.h
	src/qml/types/qqmllistmodel.cpp
	src/quick/items/qquickanimatedimage_p.h
	src/quick/scenegraph/qsgrenderloop.cpp
	tests/auto/qml/qmlcachegen/tst_qmlcachegen.cpp

Change-Id: If20ef62b2c98bdf656cb2f5d27b1897b754d3dc0
2017-09-20 14:27:41 +02:00
Marco Benelli 9464138014 qmlplugindump: skip imports containing "private"
Skipping paths that ends with "private" is not enough.

Task-number: QTBUG-47027
Change-Id: I25af518b76f594c268db6b77dbafd343f2f57ee8
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-09-08 08:42:34 +00:00
Simon Hausmann 51763b1b19 Merge remote-tracking branch 'origin/5.9' into dev
Conflicts:
	tests/auto/qml/debugger/qqmlenginedebuginspectorintegrationtest/tst_qqmlenginedebuginspectorintegration.cpp

Change-Id: I31375151eb239f348bec988d2d0506c2b4d9604c
2017-08-23 13:48:29 +02:00
Marco Benelli 93ff90d943 qmlplugindump: fix bug in reading command line
Task-number: QTBUG-58264
Change-Id: I317fb18d9ceb8738f2f132b8703dc1af3b17d35b
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-08-21 06:56:03 +00:00
Simon Hausmann 43a615e309 Merge remote-tracking branch 'origin/5.9' into dev
Conflicts:
	src/qml/compiler/qqmltypecompiler.cpp
	src/qml/jsruntime/qv4qmlcontext.cpp
	src/qml/jsruntime/qv4qobjectwrapper.cpp
	src/qml/qml/qqmlcustomparser.cpp
	src/qml/qml/qqmlimport.cpp
	src/qml/qml/qqmlimport_p.h
	src/qml/qml/qqmlmetatype.cpp
	src/qml/qml/qqmlmetatype_p.h
	src/qml/qml/qqmltypenamecache.cpp
	src/qml/qml/qqmltypenamecache_p.h
	src/qml/qml/qqmltypewrapper.cpp
	src/qml/qml/qqmltypewrapper_p.h
	src/qml/qml/qqmlvmemetaobject.cpp
	src/qml/util/qqmladaptormodel.cpp

Change-Id: Ic959d03e6f9c328fb02710d9abbb0f27cddde131
2017-08-18 11:46:11 +02:00
Mitch Curtis 2b7a9aa1c7 qmlplugindump: fix "useQApplication set but not used" build error
Change-Id: If6c3e513814a7fab62ecdf7de728939c7d61263b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-04 13:18:30 +00:00
Lars Knoll e61dca7268 Change data structures in QQmlMetaTypeData
Make sure any QQmlType stored in the meta type data
has a refcount of 1. This should now make it possible
to clean out unused types by iterating over the
list of types and removing those that have a refcount
of 1.

Some care is still needed for C++ registered types, that
will need to get one more refcount, so we don't accidentally
remove them.

Task-number: QTBUG-61536
Change-Id: Id2a18dae5ddcb815f34013f5fde1f05d2d9d0214
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-08-02 16:32:56 +00:00
Lars Knoll 49a11e8820 Use QQmlType by value
QQmlType is now refcounted, and we need to use it by
value, to control it's lifetime properly. This is
required, so we can clean up the QQmlMetaTypeData
cache on engine destruction and with trimComponentCache()

Task-number: QTBUG-61536
Change-Id: If86391c86ea20a646ded7c9925d8f743f628fb91
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-02 16:32:43 +00:00
Liang Qi b1fa22c168 Merge remote-tracking branch 'origin/5.8' into 5.9
Conflicts:
	src/qml/compiler/qv4ssa.cpp
	src/quick/accessible/qaccessiblequickview_p.h
	src/quick/items/qquickmousearea.cpp
	src/quick/util/qquickanimatorjob.cpp
	tools/qmlplugindump/main.cpp

Change-Id: I84474cf39895b9b757403971d2e9196e8c9d1809
2017-02-24 11:48:14 +01:00
Marco Benelli dfa468904d qmlplugindump: reports qmlimportscanner's message
Report to the user the stderr of qmlimportscanner, if needed.

Task-number: QTBUG-58930
Change-Id: Ib8ddf12cb3d18c936eb151f12991900a32175576
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2017-02-17 14:38:37 +00:00
Marco Benelli 12db36d8a6 qmlplugindump: import paths clean-up
Remove "qrc:/qt-project.org/imports" from the paths list passed to
qmlimportscanner.
qmlimportscanner will error out on a path that does not exist.
Since the internal qrc:/qt-project.org/imports path only exists if
the plugins are compiled in statically into qmlimportscanner, we
have to remove this path to stop it from erroring out.

Task-number: QTBUG-58930
Change-Id: I39525f2b6ff29c02b38f5f701342026dea871701
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-02-17 14:38:11 +00:00
Peter Varga 0ceac04beb Fix typo in qmlplugindump error message
Change-Id: Icbe18330ae665b693047f098e219c3b665be22e9
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-01-31 13:55:22 +00:00
Marco Benelli bdb18b5471 qmlplugindump: add -qapp option
Some modules (ie QtChart) require a QApplication instead of the
QGuiApplication that qmlplugindump use by default.
This option let the user specify if a QApplication is needed.

Task-number: QTBUG-58264
Change-Id: I10e68d0d3eab2afad315b57fef9ce92c42e70124
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2017-01-31 09:55:19 +00:00
Liang Qi 60300fda46 Merge remote-tracking branch 'origin/5.8' into dev
Conflicts:
	.qmake.conf

Change-Id: I9d87ed86e95b5901a86cc3aa65d7ac39b0b708c2
2017-01-14 22:17:32 +01:00
Jacques GUILLOU 321726cb5e qmlplugindump : Add a "-output" argument to specify the output file
Having only the possibility to redirect the stdout of
qmlplugindump to a file is both unconvenient and unreliable
since some plugins might write content (such as logs) to
stdout, which pollute the output.

Change-Id: I8b1d482d7674945e6145d59aea839c54600e7784
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2017-01-05 16:54:38 +00:00
Liang Qi 0e80d28aa5 Merge remote-tracking branch 'origin/5.8' into dev
Conflicts:
	src/plugins/qmltooling/qmldbg_debugger/qv4debugjob.cpp
	src/plugins/qmltooling/qmldbg_inspector/globalinspector.cpp
	src/plugins/qmltooling/qmldbg_nativedebugger/qqmlnativedebugservice.cpp
	src/qml/qml/qqmlimport.cpp
	src/quick/items/context2d/qquickcontext2dtexture_p.h
	tools/qmleasing/splineeditor.h

Change-Id: I8f6630fcac243824350986c8e9f4bd6483bf20b5
2016-12-14 19:01:23 +01:00
Marco Benelli ee347ee875 qmlplugindump: avoid warnings
Wrap all global variable in an anonymous namespace in order to avoid
compiler warnings on the uninizialized ones.

Change-Id: Ifabb790d2d76b6056d706580b9e4c0f12f5119f0
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2016-12-08 09:17:29 +00:00
Liang Qi 5d4cbf4094 Merge remote-tracking branch 'origin/5.8' into dev
Conflicts:
	src/qml/jsruntime/qv4object_p.h

Change-Id: Iff4d3aba7710a999b8befdc493cbe959e1ce02f9
2016-11-23 10:49:37 +01:00
Friedemann Kleint 05e3cdd8ab Set Qt version on tools
Change-Id: I21d77b2eba7107528fc00db0cf5d87f8347b63be
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2016-11-09 09:18:44 +00:00
Liang Qi cb5cbe9eb7 Merge remote-tracking branch 'origin/5.8' into dev
Conflicts:
	src/qml/compiler/qv4isel_moth_p.h

Change-Id: I8e86a649d1ef8ad27dc66cc8c290093b2faabc69
2016-09-21 09:24:03 +02:00
Marco Benelli d82ce2b82c qmlplugindump: update QtQuick references to 2.8
Change-Id: I2d418d50c6300e107795dd4ebdd95c78cb1b2175
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2016-09-12 17:22:55 +00:00
Anton Kudryavtsev 457bb7a465 tools: use const (and const APIs) more
For CoW types, prefer const methods to avoid needless detach()ing.

Change-Id: If9018391c001eba3b4b2061d06c4caa8136811ab
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2016-08-22 16:44:33 +00:00
Anton Kudryavtsev 909d6498ed tools: replace 'foreach' with 'range for'
Catch rvalues to prevent detach()'ing.

Change-Id: I7be159a405c994429c0eee10805bfe96fcf4c806
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2016-08-22 08:32:23 +00:00
Anton Kudryavtsev 3ef4fac9ff tools: replace 'foreach' with 'range for'
Mark some local variables or parameters as const
to prevent detach()'ing.
Use qAsConst where is not possible mark as const.

Change-Id: I0a777c3bd855abd3bb1ad0907152360cf4a1050e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2016-08-20 06:52:34 +00:00
Andreas Cord-Landwehr 78f5b9e7f7 Do not override QT_QPA_PLATFORM env variables
The QGuiApplication documentation explicitly says that QT_QPA_PLATFORM
can be used to specify the QPA for every QGuiApplication. Unconditionally
overriding this value within the application is a unexpected behavior.

Task-number: QTBUG-54789
Change-Id: Ia7a61a0f2921ef8ec27fe630e8d307d20ba1eb37
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2016-08-16 11:24:49 +00:00
Kai Koehne ac44a5b574 qmlplugindump: Avoid warnings about missing createPlatformOpenGLContext
Fixes a regression introduced in 541eb6b704. There's no point in
setting AA_ShareOpenGLContexts for the minimal plugin.

Change-Id: Ibcc65ede41acf5a8cf22eacef4b94c20048a354a
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2016-06-29 10:06:08 +00:00
Marco Benelli 818abf6a8c qmlplugindump: add a command line option.
Add the option -noforceqtquick that prevent the inclusion of the
QtQuick dependency in the resulting qmltypes file.

Including the QtQuick dependency interfere with the generation of some
qmltypes, such that the one of QtQuick itself.

Change-Id: I63a44632b8dbabdd1ffecf16da050a9429e557da
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2016-05-25 07:33:11 +00:00
Kai Koehne 541eb6b704 qmlplugindump: Allow dumping of WebEngine plugins
WebEngineView requires a shared opengl context. The plugin checks for
this when initializing.

Change-Id: I686b9c22be95f7ef16ea68ea49b8f9aee47789ae
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2016-05-20 09:12:09 +00:00
Marco Benelli 1ddc20c967 qmlplugindump: skip "private" directories.
qmlplugindump used to skip directories called "Private". It seems that
some directory called "private" are added, notably the one in
QtGraphicalEffects.  Such directories cause qmlplugindump to fail, so
the name check is now case-insensitive.

Change-Id: Ie564db7bf96d6596d5cd674adc125a9bcdcba7bb
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2016-04-28 11:42:18 +00:00
Liang Qi 20a51e87fd Merge remote-tracking branch 'origin/5.6' into dev
Conflicts:
	.qmake.conf

Change-Id: I356ec83cf687bd2833f9a7c5e820d56b1efa8979
2016-02-12 10:53:43 +01:00
Marco Benelli 7b38d8e002 qmlplugindump: option to merge qmltypes.
QtCreator does not handle dependencies between Qml types defined in
different qmltypes files.  Sometimes manual editing of qmltypes file is
needed to let QtCreator find the missing type information.
With the new -merge option it is possible to merge a qmltypes file to
the output of qmlplugindump.  Dependencies are correctly merged but
components are simply added, so they could cause conflict.

Change-Id: I6569339e4f05d37ea63fa2173983b4d595ae0ad6
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-02-02 14:58:21 +00:00
Simon Hausmann f286db98ee Merge remote-tracking branch 'origin/5.6' into dev
Change-Id: I4af0bf8ec1569097d97f8ce0bb8bf1a0e4a989ec
2016-01-22 15:21:06 +01:00
Jani Heikkinen 38ec3bd755 Updated license headers
From Qt 5.7 -> tools & applications are lisenced under GPL v3 with some
exceptions, see
http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/

Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one
(in those files which will be under GPL 3 with exceptions)

Change-Id: I04760a0801837cfc516d1c7c02d4f503f6bb70b6
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-01-20 11:46:25 +00:00
Marco Benelli a28bf00a6c qmlplugindump: avoid generating conflicting types.
qmlplugindump used to import QtQuick, therefore skipping all QtQuick
types when dumping.  Now that it imports only Qt, it is no longer the
case, and all QtQuick types would be dumped in the module's qmltypes
file.  It can be avoided by specifyng 'QtQuick' as dependency in qmldir
file or in a json file passed as -dependencies option.  It seems however
that people are not used to that, so in order to restore the old
behavior, the QtQuick dependency is automatically added when the
dependency list is empty.

Change-Id: I5fb2e57893607a877d284767b3fd09159b45ff42
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-01-20 09:01:17 +00:00
Anton Kudryavtsev 7c9e51e7e7 QmlPluginDump: use QFileInfo::exist(f) instead of
... QFileInfo(f).exists(). It's faster.

Change-Id: Id9dd30f5532ed73c487caffcaad3860a6475e832
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-01-19 08:04:45 +00:00
Anton Kudryavtsev 201f84f204 Tools: fix expensive iteration over QHash::keys()
Change-Id: I902bafdbc2ddfceeacfc9ef274513a2b0a23aed7
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
2016-01-15 14:11:38 +00:00
Albert Astals Cid ac68eb35e6 qmlplugindump: Don't try to import Qt.test.qtestroot
Qt.test.qtestroot is only provided by quick_test_main so
if we find any plugin that tries to inherit from TestCase.qml
qmlplugindump will fail trying to import this unexistant import

Change-Id: Idee881fa641267a17594dd3c92e929ca3473f3df
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Timo Jyrinki <timo.jyrinki@canonical.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-12-15 05:09:22 +00:00
Marco Benelli a3cde0b1ac QmlJs: separate dumping of Qt built-ins and QtQml.
builtins.qmltypes used to contain also definitions that belong to
QtQml. This patch makes qmlplugindump dump only Qt built-ins when
called with the '-builtin' option, and makes dumping of QtQml work
correctly.

Change-Id: I123b9cae6f2557cf281f857df51fae095cbc25cc
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-11-27 11:09:19 +00:00
Marco Benelli d66d323f93 Proper handling of composite types with different versions.
Change-Id: I967da2eb1867f218d47faf8a589d1773e6f57fc7
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2015-11-03 14:55:43 +00:00
Friedemann Kleint 16154fba86 Tools: Fix single-character string literals.
Use character literals where applicable.

Change-Id: I55679dcc13c4c79567712c0dfaaabc2b84fee010
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
2015-10-13 13:40:44 +00:00
J-P Nurmi 8e7d1a9119 Make QML composite types inherit attached properties
Change-Id: Ic06af4805da987dd08e361f2668e7a1788d3eefe
Task-number: QTBUG-43581
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-10-09 13:06:35 +00:00
Kai Koehne d0025a064c qmlplugindump: Drop '.exe' suffix in comment
This generates just noise in the diffs.

Change-Id: I09d1dbc6d8255a9cf5055abf96eb06ca78a80a94
Reviewed-by: Marco Benelli <marco.benelli@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-09-23 06:41:45 +00:00
Simon Hausmann 149ece7a0c Merge remote-tracking branch 'origin/5.5' into 5.6
Change-Id: Ibc7a47f7ce6d15dff79fdc59f8ded297d1b8d50d
2015-09-02 17:19:48 +02:00
Marco Benelli d43333cd1e Warn if a composite type is not ready and continue.
Change-Id: Ib28f484188466831e4c64aee0e36a27dd4842b06
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2015-09-01 14:49:13 +00:00
Sérgio Martins 52d91eeea4 Add 28 QList::reserve() calls
Change-Id: Id4820ac458f48b10f2bf457144767efdef9e2c07
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-06-08 11:35:42 +00:00
Marco Benelli d185a5c204 qmlplugindump: add dependencies
Change-Id: I53b2a394ba1f6c8a7a88f7456fba8646cdf35bf4
Task-number: QTBUG-41079
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-04-21 10:37:19 +00:00
Jani Heikkinen c5796292ad Update copyright headers
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>
2015-02-12 10:28:11 +00:00
Konstantin Ritt 802a996693 Fix build on MinGW
- alloca() needs malloc.h
- crtdbg.h couldn't be found on MinGW

Change-Id: Ibbf91a58d39ef1e2572baae3c409393acf7aa5df
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-12-28 18:46:59 +01:00
Friedemann Kleint 3f1156ee5f qmlplugindump: Use _CrtSetReportMode() for MSVC only.
Fix warnings when using MinGW:

main.cpp: In function 'int main(int, char**)':
main.cpp:734:55: warning: statement has no effect [-Wunused-value]
     _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
                                                       ^
main.cpp:735:53: warning: statement has no effect [-Wunused-value]
     _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_DEBUG);
                                                     ^
main.cpp:736:54: warning: statement has no effect [-Wunused-value]
     _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_DEBUG);

where _CrtSetReportMode() is an empty macro.

Change-Id: I644bc207b5a3df62d6390811f53b2c0948979d58
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-09-19 12:41:00 +02:00
Jani Heikkinen e7ceacda70 Update license headers and add new licenses
- Renamed LICENSE.LGPL to LICENSE.LGPLv21
- Added LICENSE.LGPLv3 & LICENSE.GPLv2
- Removed LICENSE.GPL

Change-Id: I84a565e2e0caa3b76bf291a7d188a57a4b00e1b0
Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
2014-08-25 11:28:46 +02:00
Fawzi Mohamed d676b0ec01 qmlplugindumper: do not pop up a window if an assert is triggered
On windows the debug version of qmlplugindumper used to show a panel on
assert failure. Failure should be silent.

Done-with: Thomas Hartmann <thomas.hartmann@digia.com>
Task-number: QTCREATORBUG-12644
Change-Id: Ib5036754b37cdd5e3820e0cfd60b3ef7df3f1fb6
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-08-01 22:18:29 +02:00
Daiwei Li 8e1b88e457 Delete objects created by qmlplugindump
This helps plugin objects to shut down cleanly

Change-Id: I167f63220a35a7428f50715a4cb9072320ef1c87
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-06-30 11:10:27 +02:00
Fawzi Mohamed 007683512f qmlplugindump: correctly merge composite types
When hiding part of the hierarchy during the merging of composite
types properties/methods/signals that are hidden should not be dumped
twice.

Task-number: QTBUG-38354
Change-Id: I328cf25dd5a70e1c0fce017e8ae572e8a9e56245
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
2014-04-18 07:39:38 +02:00
Fawzi Mohamed 1658aa971b qmlplugindump: set isCreatable true in composite types
the qmlengine defines isCreatable as "is creatable through the C++
interface", for the qmltypes and qml code model it makes sense to
define isCreatable as "can appear as component in QML"

Change-Id: Ib26cf25dd5a70e1c03ce017e8ae572e8a9e562c1
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2014-04-09 22:16:15 +02:00
Fawzi Mohamed 124b8b2f82 qmlplugindump: adding isComposite
Change-Id: Ia742c26402156b09bc91590cef6a10755a8df754
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
2014-02-26 09:55:41 +01:00
Fawzi Mohamed 32cd6183c0 qmlplugindump: adding writeBooleanBinding to write booleans
Change-Id: I13077ad0d6522d91af0dab7d7bc30346b188ee4b
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-02-25 11:05:22 +01:00
Ulf Hermann 3466bcd8fb Force QML engine debug output to stderr in qmlplugindump
In this case the debug output is actually meant to be read by the user.
Logging it to some system facility, as on BlackBerry doesn't help. To
fix that a message handler that redirects all debug output to stderr
is installed.

Task-number: QTBUG-36378
Change-Id: I16dbca8bc4d07e0aabc2b41ce93b56bd679fa166
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-02-05 18:17:56 +01:00
Daniel Pesch f628067b9e Qmlplugindump error messages are not written consistently
For errors in command line parameters qmplugindump uses cerr
but errors during plugin loading are logged using qWarning().
It would be better to log always to cerr in case of problem
because some platforms (BB10) have logging from Qt redirected.

Task-number: QTBUG-36378
Change-Id: I04506c2f12b87190966e66c482f4ac5aed44af05
Signed-off-by: Daniel Pesch <dpesch@blackberry.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-01-23 15:07:46 +01:00
Daniel Pesch 1b53fb1b6f qmplugindump is not able to dump all registered components
This patch implements a new function QQmlMetaType::qmlAllTypes() used
by qmlplugindump that returns list of all registered components. Previous
implementation used QQmlMetaType::qmlATypes() call that returned only
components with defined QML name.

Task-number: QTBUG-36199
Change-Id: I85acba61cfa511973a004934cf0650f38cc46ed9
Signed-off-by: Daniel Pesch <dpesch@blackberry.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-01-21 09:14:29 +01:00
Daniel Pesch 4c5cd2f04f qmlplugindump: New component properties isCreatable and isSingleton
Qmlplugindump tool does not generate information about singleton status
and creatability from QML for a component. This patch adds two new boolean
properties that contain this information. It is used by Momentics IDE for
providing better code validation and could be used by QtCreator in future
in similar way.

Task-number: QTBUG-36139
Change-Id: If85374a1854aaa0727670b27df735d481cab5337
Signed-off-by: Daniel Pesch <dpesch@blackberry.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-01-20 17:21:02 +01:00
Fawzi Mohamed a5052ea1e7 qmlplugindump: adding verbose output for the instantiation operations
Change-Id: Ic18d85de92f05c01b6ce00b071ef9b94d878434f
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
2013-09-19 21:42:02 +02:00
Caroline Chao 93ecd34c32 qmlplugindump: Update the description for the generated file
The full command was written in the generated file including
the full path to the qmlplugindump tool.
Now only the tool name without its full path will be
printed with the adjacent arguments.

Change-Id: I03aa7350d1cd6b96ce00341796f8944669989793
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-09-18 18:48:24 +02:00
Caroline Chao b3f45a1172 qmlplugindump: Add --defaultplatform argument
QT_QPA_PLATFORM is set to minimal by default unless
--defaultplatform is set when running the qmlplugindump tool.

This is for example useful for the QtQuick.Dialogs module.

Change-Id: I1194526ee0641d11802c4db20bd3043aebd1e261
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-09-18 18:48:24 +02:00
Caroline Chao 13d56d51ad qmlplugindump: QMetaMethod signals have public access
Since 56bbf3c2d5b31142e5a1b872a0118479edcf874b (qtbase)

So public signals must be dumped.

Change-Id: Ic7047660fbac40f78c7a205e760c059256c71d6f
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-09-18 18:48:24 +02:00
Caroline Chao 739483926b qmlplugindump: fix prototypes identification for composite types
The prototype name for the composite type is the first "default"
prototype found in the reachable types. If none is found then
the default value is QObject.

Change-Id: I40b4fefaab40e4c9f83d24c89bd026579be63e7b
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2013-09-17 15:39:15 +02:00
Caroline Chao 0ef673efe8 qmlplugindump: Add support for composite types
Task-number: QTBUG-33106

Change-Id: I80fc817eb59256e860f3fdd591104930688ef84c
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-09-13 08:51:33 +02:00
Giuseppe D'Angelo 4df73e62a7 Remove qSort usages from declarative
QtAlgorithms is getting deprecated,
see http://www.mail-archive.com/development@qt-project.org/msg01603.html

Change-Id: I8fa7d0186cc8f0ba562695974829e37f1eb87f2f
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-09-13 01:10:37 +02:00
Alan Alpert 0462193b6f Add --noinstantiate to qmlplugindump
This flag allows you to run qmlplugindump on plugins which cannot safely
create objects, such as plugins with unusual requirements or missing
essential dependencies.

Change-Id: Ifcc542b8dec5358fc8a76d78a2a272c9cbf5d78a
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-05-29 16:23:51 +02:00
Fawzi Mohamed fa4cafacff qmlplugindump: add an explicit -relocatable switch
this will enable us to switch the default to nonrelocatable

Change-Id: Ic4bff6466ee2fb6d4d1dd89829034ad239422a7e
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-04-24 13:39:04 +02:00
Sze Howe Koh e72f577658 Doc: Fix module name format
Follow the conventions at
http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation

QtGui        -> Qt GUI
QtMultimedia -> Qt Multimedia
QtScript     -> Qt Script
QtSensors    -> Qt Sensors
QtSvg        -> Qt SVG
QtWebkit     -> Qt WebKit

Also fix a broken link to "Qt WebKit QML Types"

Change-Id: Ica6081024d3957a3ca2ef3d870f623506c69d877
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-04-23 18:29:25 +02:00
Fawzi Mohamed 3bbed9ee8f qmlplugindump: always output exportMetaObjectRevisions
Some people were confused about exportMetaObjectRevisions, and
the "all 0" as default was not expected.
Make it explicit so we might change the default in the future.

Change-Id: I1f208ba54e2b9aa1a5d46fb9971572467b69ab56
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
2013-04-15 10:46:15 +02:00
Shawn Rutledge d0491c87a9 qmlplugindump: don't crash if a composite type was a registered
This doesn't actually result in putting any information about the
composite type into the output, though.

Change-Id: I160702578f0acd22eff98e8afa288b3c9fb20076
Reviewed-by: Alan Alpert <aalpert@rim.com>
2013-02-18 17:51:35 +01:00
Sergio Ahumada 83deab8d1b Update copyright year in Digia's license headers
Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76
Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-01-10 19:52:37 +01:00
Kai Koehne 237027f8bb QmlPluginDump: Prevent crash if run without WM
Make sure that the minimal platform plugin is used by default.

Change-Id: I2362649dafaf823b00ab37519b516aef9ac3166b
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-11-30 11:10:59 +01:00
Iikka Eklund 46010aa7a2 Change copyrights from Nokia to Digia
Change copyrights and license headers from Nokia to Digia

Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-09-23 08:22:24 +02:00
Kai Koehne cb5c253062 qmlplugindump: Update help output
Qt.labs.particles 4.7 doesn't work since ages. Instead use
Qt.labs.folderlistmodel 2.0.

Change-Id: Ie11133adad88ac6120ab05aef9713f8e768f8bc8
Reviewed-by: Christian Kamm <kamm@incasoftware.de>
2012-09-18 08:46:50 +02:00
Kai Koehne a1e5bd1a4b qmlplugindump: Fix handling of implicit signals
Change I70affc450 added inverted logic.

Change-Id: I6cb25d3881a0487545a3eeac289a34fedcc21d8f
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2012-09-10 14:24:56 +02:00
Sergio Ahumada 5b4c2f5910 doc: fix some more typos
Change-Id: I7fa055049b9e5900d597754c6004febb153de12b
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
2012-09-10 12:26:28 +02:00
Kai Koehne 5b47966f5c qmlplugindump: Fix dumping of types
Dumping broke with commit 70a2c049.

Change-Id: Ifbae3dbc3e2d255c1e7f8848c579c04d0bf4b48e
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2012-09-07 13:57:13 +02:00
Kai Koehne 7cc5fec697 qmlplugindump: Take care of 'void' types
QMetaMethod::typeName() does now return "void" instead of an empty string (change 22d621dd).

Change-Id: I70affc450a7dd36b121cbcf580c0ca6fd5944f0b
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2012-09-07 13:57:13 +02:00
Chris Adams 70a2c0491d Refactor singleton type registration code
Previously each singleton type was registered as an implicit separate
import.  This commit changes the code so that these types are treated
just like any other type in the registration sense.

It also ensures that singleton types are instantiated per-engine.

Change-Id: I5c81c4ca5bf65210f7125d74a62a282a21838068
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
2012-08-28 04:32:48 +02:00
Glenn Watson 6ebf215fda Add type name to singleton (module api) implementations.
This change renames the previous module api implementation
to singleton types.

When a singleton type is registered, a type name must be provided
that is used when accessing the API from QML. This makes the
implementation more consistent with the rest of QML.

Task-number: QTBUG-26549
Change-Id: Iab0bb1ccf516bd3ae20aee562a64d22976e0aecd
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
2012-08-08 07:55:19 +02:00
Thomas McGuire 937bccd0e1 qmlplugindump: Add comment to file that it was auto-generated
This prevents people who do not know about this tool from
accidentally changing these files by hand.

Change-Id: I8ff889b953f7c637f914f8b5b8b07a36f3cdf58f
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-07-04 10:12:10 +02:00
Thiago Macieira 44f9412bf7 Change uses of {to,from}Ascii to {to,from}Latin1
This operation should be a no-op anyway, since at this point in time,
the fromAscii and toAscii functions simply call their fromLatin1 and
toLatin1 counterparts.

Task-number: QTBUG-21872
Change-Id: I03084595ddc425a988374b8352fd23e9504ffba6
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
2012-05-04 10:36:17 +02:00
Kent Hansen 4dd4c442e1 Adapt to Qt5 meta-object changes
QMetaMethod::signature() has been renamed to methodSignature(), and
it now returns a QByteArray. Also, the new function
QMetaMethod::isValid() should be used to determine whether a method
is valid, instead of relying on signature() returning a 0 pointer.

Where it makes sense, the existing code that was using signature()
and parameterTypes() has been changed to use the new API
QMetaMethod::name(), parameterCount(), and parameterType(int).

Also, in the new meta-object revision (7), the QMetaObject stringdata
member is now of type QByteArrayData*. QFastMetaBuilder will be
ported to generate the new format, but for now it's sufficient to
reinterpret_cast the stringdata assignment to keep it compiling.

Change-Id: Ie340ef17bcebc3afa4aae6450dfe2d06e4d881a4
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
2012-03-13 12:58:48 +01:00
Matthew Vogt 0284817d6c Merge master <-> api_changes
Change-Id: Iad2f07b989b25349fd2d4fff010e24dcd5a1688f
2012-03-05 11:39:54 +10:00
Matthew Vogt b855240b78 Rename QDeclarative symbols to QQuick and QQml
Symbols beginning with QDeclarative are already exported
by the quick1 module.

Users can apply the bin/rename-qtdeclarative-symbols.sh
script to modify client code using the previous names of the
renamed symbols.

Task-number: QTBUG-23737
Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66
Reviewed-by: Martin Jones <martin.jones@nokia.com>
2012-02-24 04:51:31 +01:00
Matthew Vogt 01dc7e2ea4 Remove QtQuick1 elements from qtdeclarative
QtQuick1 is now contained in a separate repository.

Task-number: QTBUG-23737
Change-Id: I09eae67af5693a22b896b916f816f73ccc3a89b1
Reviewed-by: Martin Jones <martin.jones@nokia.com>
2012-02-03 00:39:18 +01:00
Jason McDonald 45b14259fc Remove "All rights reserved" line from license headers.
As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.

Change-Id: If39bd256b0fa85eba17ea30f8ab87ea27d758908
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-30 23:52:43 +01:00
Jason McDonald e6b224aa28 Update obsolete contact address.
Replace Nokia contact email address with Qt Project website.

Change-Id: I6a730abc0c396fb545a48b2d6938abedac2e3f1c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
2012-01-23 06:28:53 +01:00
Jason McDonald da0839735c Update copyright year in license headers.
Change-Id: I0a8d99909cac867dce72da70b1bbcb649989a51b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-05 09:12:53 +01:00
Christian Kamm 86ca326d9f qmlplugindump: Don't depend on qtquick1 and widgets.
Change-Id: I38baaf2d8d02c3f35d2dece9fc580c6e1fee872d
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2011-12-09 11:47:09 +01:00
Christian Kamm 8c82a7bade qmlplugindump: Fix dumping of extended QGraphicsWidget.
Change-Id: Id574b4ee98f7d985ef06619956b2c02cac68b553
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-12-08 14:22:57 +01:00
Kent Hansen 6c8378eaf1 Say hello to QtQuick module
This change moves the QtQuick 2 types and C++ API (including
SceneGraph) to a new module (AKA library), QtQuick.

99% of this change is moving files from src/declarative to
src/quick, and from tests/auto/declarative to
tests/auto/qtquick2.

The loading of QtQuick 2 ("import QtQuick 2.0") is now delegated to
a plugin, src/imports/qtquick2, just like it's done for QtQuick 1.

All tools, examples, and tests that use QtQuick C++ API have gotten
"QT += quick" or "QT += quick-private" added to their .pro file.

A few additional internal QtDeclarative classes had to be exported
(via Q_DECLARATIVE_PRIVATE_EXPORT) since they're needed by the
QtQuick 2 implementation.

The old header locations (e.g. QtDeclarative/qquickitem.h) will
still be supported for some time, but will produce compile-time
warnings. (To avoid the QtQuick implementation using the
compatibility headers (since QtDeclarative's includepath comes
first), a few include statements were modified, e.g. from
"#include <qsgnode.h>" to "#include <QtQuick/qsgnode.h>".)

There's a change in qtbase that automatically adds QtQuick to the
module list if QtDeclarative is used. Together with the compatibility
headers, this should help reduce the migration pain for existing
projects.

In theory, simply getting an existing QtDeclarative-based project
to compile and link shouldn't require any changes for now -- but
porting to the new scheme is of course recommended, and will
eventually become mandatory.

Task-number: QTBUG-22889
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Change-Id: Ia52be9373172ba2f37e7623231ecb060316c96a7
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
2011-12-02 14:18:20 +01:00
Christian Kamm 409aecbe1e qmlplugindump: Avoid reporting types as attaching to themselves.
Task-number: QTCREATORBUG-6625
Change-Id: I9f778757b490cb5d79249b92f8c7b6d9d1df66e6
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2011-11-29 11:31:50 +01:00
Christian Kamm 774eebf997 qmlplugindump: Fix QObject dump.
* Hide deleteLater and the destroyed signal.
* Add destroy and toString functions.

Task-number: QTCREATORBUG-4903
Change-Id: Icbae3e1c82605baa84ac9cc8f38cd747e4dcf687
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
2011-11-22 12:16:13 +01:00
Christian Kamm fb3851edd0 qmlplugindump: Fix dumping empty names for generated QMetaObjects.
Task-number: QTCREATORBUG-6543
Reviewed-by: Roberto Raggi

Change-Id: I2e85432ea8ff84ea4172e462782c0484ed75dcde
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2011-11-17 13:58:29 +01:00
Christian Kamm 8482c9d176 qmlplugindump: Add flush to fix output redirection on windows.
Task-number: QTCREATORBUG-5825
Change-Id: I26c2ecb77a89b352de97c70ff17fd076872a636b
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2011-11-03 11:39:25 +01:00
Christian Kamm f4130410d3 qmlplugindump: Dump QObject based module api.
Change-Id: Icc18392f63cd505e0264567e6c7d2d4cf7dac021
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-10-28 07:27:03 +02:00
Kent Hansen bfb3c424ab Rename Qt Quick-specific classes to QQuick*
The QSG (SceneGraph) prefix is too generic for
Qt Quick(2)-specific classes.

All the classes and files in the declarative/items
directory have been renamed.

In particular, for classes that are currently public,
the renaming is as follows:

QSGView --> QQuickView
QSGCanvas --> QQuickCanvas
QSGItem --> QQuickItem
QSGPaintedItem --> QQuickPaintedItem

The header files have been renamed accordingly
(e.g. qsgview.h --> qquickview.h).

Change-Id: Iac937fff81db20bb639486a793c3aeb5230b038c
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2011-10-21 11:53:26 +02:00