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>
This helps plugin objects to shut down cleanly
Change-Id: I167f63220a35a7428f50715a4cb9072320ef1c87
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
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>
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>
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>
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>
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>
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>
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>
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>
Since 56bbf3c2d5b31142e5a1b872a0118479edcf874b (qtbase)
So public signals must be dumped.
Change-Id: Ic7047660fbac40f78c7a205e760c059256c71d6f
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
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>
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>
this will enable us to switch the default to nonrelocatable
Change-Id: Ic4bff6466ee2fb6d4d1dd89829034ad239422a7e
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
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>
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>
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>
Change copyrights and license headers from Nokia to Digia
Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
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>
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>
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>
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>
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>
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>
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>
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>
QtQuick1 is now contained in a separate repository.
Task-number: QTBUG-23737
Change-Id: I09eae67af5693a22b896b916f816f73ccc3a89b1
Reviewed-by: Martin Jones <martin.jones@nokia.com>
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>
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>
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>
Refactors drag API to improve compatibility with traditional drag and
drop by reusing events and adding drop actions.
Event sending is removed from MouseArea, instead the Drag object can
be attached to the item that is dragged and it will send drag events
when the position of that item is changed or when its active
property changes.
The DragTarget item is renamed to DropArea and can now communicate
supported and suggested actions.
Task-number: QTBUG-19747
Change-Id: I46cb77e68cf1ff32bbcbf0945facb593c9c2243c
Reviewed-on: http://codereview.qt-project.org/4638
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Every property automatically has a xyzChanged signal anyway.
Change-Id: I470875a94792c0fc5a6378c8be1e0eddc24a1d5a
Reviewed-on: http://codereview.qt-project.org/6144
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Prefer to store types as QStrings. It's only when we manipulate
raw (compiled, meta-)data that utf conversion is needed.
Change-Id: Ie138a69c9a409804e1b90b21c1d60dedea35bddb
Reviewed-on: http://codereview.qt-project.org/5781
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This allows the QtQuick1 types to be dumped with --builtin and to be
skipped when dumping other plugins that use them.
Change-Id: I23ecba5cea7c11e998861746f1c7056e8911abf3
Reviewed-on: http://codereview.qt.nokia.com/3650
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
Previously, the import statement was not necessarily set up correctly
for the type we wanted to instantiate. We simply use
QDeclarativeType::create now and thus can skip finding the right import.
Mirrors qtcreator/f326bd067d455e979b5d83195e19581a9e2fd494
Mirrors qt4.8/bdbc3ff0a32bb37a32dc4825413e60f9d75e5007
Change-Id: Ic9e652b341854941c0e6a51f49f23dfaae4f87d7
Reviewed-on: http://codereview.qt.nokia.com/1648
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Change-Id: I41a280de2739ee08202f4be2519e5012870090f2
Reviewed-on: http://codereview.qt.nokia.com/1391
Reviewed-by: Martin Jones <martin.jones@nokia.com>
To be future-proof should QtQuick 1.0 ever go away.
Change-Id: I9bf46bc9f60f5ff61deb60fa2ffa90ea89c9c8d5
Reviewed-on: http://codereview.qt.nokia.com/899
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
If the current working directory was a direct parent of the qmldir path
the exported modules had the path as the module URI on macs.
Also changes the QtQuick export back to 1.0 to make it work with
Qt 4.7.3. The version of that import statement does not actually matter
as long as it's valid.
Mirrors a change in Qt Creator:
http://codereview.qt.nokia.com/896
(cherry picked from commit d7ab0007d4b051f3cf12f01157b8b78d2fddf7c8)
Change-Id: Ib8caa8eda7f237b10e82df3afd560c118427aa8f
Reviewed-on: http://codereview.qt.nokia.com/897
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Compare the full uri/name, not just the uri. Also
QDeclarativeType::module was not available in 4.7.3.
Mirrors http://codereview.qt.nokia.com/759
(cherry picked from commit a0bd8d2dc68fdf993821b5eb881769448b34dffd)
Change-Id: Ib66ec79b929bd29e3aa27a1b70e5a5c1ec2d51e5
Reviewed-on: http://codereview.qt.nokia.com/762
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Mirrors a change to qmlplugindump in
qtcreator/715cee76a9e46efb7f8245004aaa8a1c47b1618d
Reviewed-by: Kai Koehne
(cherry picked from commit 10f16bc55b9e5535bc3353260f97a32e18d70cf1)
Mirrors a change to qmldump in
qt-creator/6e3274240077fc356a37d3de735b3b2da9654d2e
Reviewed-by: Roberto Raggi
(cherry picked from commit b0392d398e2f28682cdce6e85546d38a838440f7)
Since we can't import by such a path, we instead use a "." import
and set the uri of the component to the correct path.
Mirrors a change to qmldump in
qt-creator/0c8b4e38fab1862e3427aac7e7db68623bc7f174
Reviewed-by: Thomas Hartmann