diff options
author | Martin Jones <martin.jones@nokia.com> | 2009-12-04 01:57:05 (GMT) |
---|---|---|
committer | Martin Jones <martin.jones@nokia.com> | 2009-12-04 01:57:05 (GMT) |
commit | c37cdb5a8e8eea672fa59a3cb427b74d6a928a30 (patch) | |
tree | 89dde1623a991a24a9287de1e6ed4ea3bece103e /src/declarative | |
parent | 261c8600253ad17f41c3b4830b9086a8a034fa4a (diff) | |
parent | b664d980f4c3b6fb379d68e54b6087b83a4c26b0 (diff) | |
download | Qt-c37cdb5a8e8eea672fa59a3cb427b74d6a928a30.zip Qt-c37cdb5a8e8eea672fa59a3cb427b74d6a928a30.tar.gz Qt-c37cdb5a8e8eea672fa59a3cb427b74d6a928a30.tar.bz2 |
Merge branch 'kinetic-declarativeui' of scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'src/declarative')
243 files changed, 1980 insertions, 1427 deletions
diff --git a/src/declarative/3rdparty/3rdparty.pri b/src/declarative/3rdparty/3rdparty.pri index 09cf0bb..fbdcc11 100644 --- a/src/declarative/3rdparty/3rdparty.pri +++ b/src/declarative/3rdparty/3rdparty.pri @@ -1,5 +1,7 @@ +INCLUDEPATH += $$PWD + HEADERS += \ - 3rdparty/qlistmodelinterface_p.h\ + $$PWD/qlistmodelinterface_p.h\ SOURCES += \ - 3rdparty/qlistmodelinterface.cpp \ + $$PWD/qlistmodelinterface.cpp \ diff --git a/src/declarative/3rdparty/qlistmodelinterface_p.h b/src/declarative/3rdparty/qlistmodelinterface_p.h index 738378e..f7c956a 100644 --- a/src/declarative/3rdparty/qlistmodelinterface_p.h +++ b/src/declarative/3rdparty/qlistmodelinterface_p.h @@ -45,7 +45,6 @@ #include <QtCore/QHash> #include <QtCore/QVariant> - QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/debugger/debugger.pri b/src/declarative/debugger/debugger.pri index 6cffb28..261b2ff 100644 --- a/src/declarative/debugger/debugger.pri +++ b/src/declarative/debugger/debugger.pri @@ -1,11 +1,15 @@ -SOURCES += debugger/qmldebuggerstatus.cpp \ - debugger/qpacketprotocol.cpp \ - debugger/qmldebugservice.cpp \ - debugger/qmldebugclient.cpp \ - debugger/qmldebug.cpp +INCLUDEPATH += $$PWD -HEADERS += debugger/qmldebuggerstatus_p.h \ - debugger/qpacketprotocol_p.h \ - debugger/qmldebugservice_p.h \ - debugger/qmldebugclient_p.h \ - debugger/qmldebug_p.h +SOURCES += \ + $$PWD/qmldebuggerstatus.cpp \ + $$PWD/qpacketprotocol.cpp \ + $$PWD/qmldebugservice.cpp \ + $$PWD/qmldebugclient.cpp \ + $$PWD/qmldebug.cpp + +HEADERS += \ + $$PWD/qmldebuggerstatus_p.h \ + $$PWD/qpacketprotocol_p.h \ + $$PWD/qmldebugservice_p.h \ + $$PWD/qmldebugclient_p.h \ + $$PWD/qmldebug_p.h diff --git a/src/declarative/debugger/qmldebug.cpp b/src/declarative/debugger/qmldebug.cpp index 72f613a..dc779ac 100644 --- a/src/declarative/debugger/qmldebug.cpp +++ b/src/declarative/debugger/qmldebug.cpp @@ -38,10 +38,14 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ + #include "qmldebug_p.h" + #include "qmldebugclient_p.h" + +#include <qmlenginedebug_p.h> + #include <private/qobject_p.h> -#include <private/qmlenginedebug_p.h> class QmlEngineDebugClient : public QmlDebugClient { diff --git a/src/declarative/debugger/qmldebugclient.cpp b/src/declarative/debugger/qmldebugclient.cpp index 2cd1301..68e14c2 100644 --- a/src/declarative/debugger/qmldebugclient.cpp +++ b/src/declarative/debugger/qmldebugclient.cpp @@ -40,11 +40,14 @@ ****************************************************************************/ #include "qmldebugclient_p.h" -#include <private/qobject_p.h> -#include <private/qpacketprotocol_p.h> + +#include "qpacketprotocol_p.h" + #include <QtCore/qdebug.h> #include <QtCore/qstringlist.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlDebugConnectionPrivate : public QObject @@ -201,4 +204,4 @@ void QmlDebugClient::messageReceived(const QByteArray &) QT_END_NAMESPACE -#include "qmldebugclient.moc" +#include <qmldebugclient.moc> diff --git a/src/declarative/debugger/qmldebugservice.cpp b/src/declarative/debugger/qmldebugservice.cpp index b54ad63..810fbed 100644 --- a/src/declarative/debugger/qmldebugservice.cpp +++ b/src/declarative/debugger/qmldebugservice.cpp @@ -40,13 +40,16 @@ ****************************************************************************/ #include "qmldebugservice_p.h" + +#include "qpacketprotocol_p.h" + #include <QtCore/qdebug.h> #include <QtNetwork/qtcpserver.h> #include <QtNetwork/qtcpsocket.h> -#include <private/qobject_p.h> -#include <private/qpacketprotocol_p.h> #include <QtCore/qstringlist.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlDebugServerPrivate; @@ -387,4 +390,4 @@ void QmlDebugService::messageReceived(const QByteArray &) QT_END_NAMESPACE -#include "qmldebugservice.moc" +#include <qmldebugservice.moc> diff --git a/src/declarative/debugger/qpacketprotocol.cpp b/src/declarative/debugger/qpacketprotocol.cpp index 6698472..b76c461 100644 --- a/src/declarative/debugger/qpacketprotocol.cpp +++ b/src/declarative/debugger/qpacketprotocol.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qpacketprotocol_p.h" + #include <QBuffer> QT_BEGIN_NAMESPACE @@ -494,5 +495,4 @@ QPacketAutoSend::~QPacketAutoSend() QT_END_NAMESPACE -#include "qpacketprotocol.moc" - +#include <qpacketprotocol.moc> diff --git a/src/declarative/declarative.pro b/src/declarative/declarative.pro index d1e2ee8..0669d13 100644 --- a/src/declarative/declarative.pro +++ b/src/declarative/declarative.pro @@ -14,8 +14,6 @@ exists("qml_enable_gcov") { LIBS += -lgcov } -INCLUDEPATH += ../../include/QtDeclarative - include(../qbase.pri) #modules diff --git a/src/declarative/graphicsitems/graphicsitems.pri b/src/declarative/graphicsitems/graphicsitems.pri index da3a0d4..728c9c0 100644 --- a/src/declarative/graphicsitems/graphicsitems.pri +++ b/src/declarative/graphicsitems/graphicsitems.pri @@ -1,88 +1,89 @@ +INCLUDEPATH += $$PWD + HEADERS += \ - graphicsitems/qmlgraphicsanchors_p.h \ - graphicsitems/qmlgraphicsanchors_p_p.h \ - graphicsitems/qmlgraphicsevents_p_p.h \ - graphicsitems/qmlgraphicsflickable_p.h \ - graphicsitems/qmlgraphicsflickable_p_p.h \ - graphicsitems/qmlgraphicsflipable_p.h \ - graphicsitems/qmlgraphicsgridview_p.h \ - graphicsitems/qmlgraphicsimage_p.h \ - graphicsitems/qmlgraphicsimagebase_p.h \ - graphicsitems/qmlgraphicsborderimage_p.h \ - graphicsitems/qmlgraphicspainteditem_p.h \ - graphicsitems/qmlgraphicspainteditem_p_p.h \ - graphicsitems/qmlgraphicsimage_p_p.h \ - graphicsitems/qmlgraphicsborderimage_p_p.h \ - graphicsitems/qmlgraphicsimagebase_p_p.h \ - graphicsitems/qmlgraphicsanimatedimage_p.h \ - graphicsitems/qmlgraphicsanimatedimage_p_p.h \ - graphicsitems/qmlgraphicsitem.h \ - graphicsitems/qmlgraphicsitem_p.h \ - graphicsitems/qmlgraphicsfocuspanel_p.h \ - graphicsitems/qmlgraphicsfocusscope_p.h \ - graphicsitems/qmlgraphicspositioners_p.h \ - graphicsitems/qmlgraphicspositioners_p_p.h \ - graphicsitems/qmlgraphicsloader_p.h \ - graphicsitems/qmlgraphicsloader_p_p.h \ - graphicsitems/qmlgraphicsmouseregion_p.h \ - graphicsitems/qmlgraphicsmouseregion_p_p.h \ - graphicsitems/qmlgraphicspath_p.h \ - graphicsitems/qmlgraphicspath_p_p.h \ - graphicsitems/qmlgraphicspathview_p.h \ - graphicsitems/qmlgraphicspathview_p_p.h \ - graphicsitems/qmlgraphicsrectangle_p.h \ - graphicsitems/qmlgraphicsrectangle_p_p.h \ - graphicsitems/qmlgraphicsrepeater_p.h \ - graphicsitems/qmlgraphicsrepeater_p_p.h \ - graphicsitems/qmlgraphicsscalegrid_p_p.h \ - graphicsitems/qmlgraphicstextinput_p.h \ - graphicsitems/qmlgraphicstextinput_p_p.h \ - graphicsitems/qmlgraphicstextedit_p.h \ - graphicsitems/qmlgraphicstextedit_p_p.h \ - graphicsitems/qmlgraphicstext_p.h \ - graphicsitems/qmlgraphicstext_p_p.h \ - graphicsitems/qmlgraphicsvisualitemmodel_p.h \ - graphicsitems/qmlgraphicslistview_p.h \ - graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h \ - graphicsitems/qmlgraphicsparticles_p.h \ - graphicsitems/qmlgraphicslayoutitem_p.h \ - graphicsitems/qmlgraphicseffects.cpp + $$PWD/qmlgraphicsanchors_p.h \ + $$PWD/qmlgraphicsanchors_p_p.h \ + $$PWD/qmlgraphicsevents_p_p.h \ + $$PWD/qmlgraphicsflickable_p.h \ + $$PWD/qmlgraphicsflickable_p_p.h \ + $$PWD/qmlgraphicsflipable_p.h \ + $$PWD/qmlgraphicsgridview_p.h \ + $$PWD/qmlgraphicsimage_p.h \ + $$PWD/qmlgraphicsimagebase_p.h \ + $$PWD/qmlgraphicsborderimage_p.h \ + $$PWD/qmlgraphicspainteditem_p.h \ + $$PWD/qmlgraphicspainteditem_p_p.h \ + $$PWD/qmlgraphicsimage_p_p.h \ + $$PWD/qmlgraphicsborderimage_p_p.h \ + $$PWD/qmlgraphicsimagebase_p_p.h \ + $$PWD/qmlgraphicsanimatedimage_p.h \ + $$PWD/qmlgraphicsanimatedimage_p_p.h \ + $$PWD/qmlgraphicsitem.h \ + $$PWD/qmlgraphicsitem_p.h \ + $$PWD/qmlgraphicsfocuspanel_p.h \ + $$PWD/qmlgraphicsfocusscope_p.h \ + $$PWD/qmlgraphicspositioners_p.h \ + $$PWD/qmlgraphicspositioners_p_p.h \ + $$PWD/qmlgraphicsloader_p.h \ + $$PWD/qmlgraphicsloader_p_p.h \ + $$PWD/qmlgraphicsmouseregion_p.h \ + $$PWD/qmlgraphicsmouseregion_p_p.h \ + $$PWD/qmlgraphicspath_p.h \ + $$PWD/qmlgraphicspath_p_p.h \ + $$PWD/qmlgraphicspathview_p.h \ + $$PWD/qmlgraphicspathview_p_p.h \ + $$PWD/qmlgraphicsrectangle_p.h \ + $$PWD/qmlgraphicsrectangle_p_p.h \ + $$PWD/qmlgraphicsrepeater_p.h \ + $$PWD/qmlgraphicsrepeater_p_p.h \ + $$PWD/qmlgraphicsscalegrid_p_p.h \ + $$PWD/qmlgraphicstextinput_p.h \ + $$PWD/qmlgraphicstextinput_p_p.h \ + $$PWD/qmlgraphicstextedit_p.h \ + $$PWD/qmlgraphicstextedit_p_p.h \ + $$PWD/qmlgraphicstext_p.h \ + $$PWD/qmlgraphicstext_p_p.h \ + $$PWD/qmlgraphicsvisualitemmodel_p.h \ + $$PWD/qmlgraphicslistview_p.h \ + $$PWD/qmlgraphicsgraphicsobjectcontainer_p.h \ + $$PWD/qmlgraphicsparticles_p.h \ + $$PWD/qmlgraphicslayoutitem_p.h \ + $$PWD/qmlgraphicseffects.cpp SOURCES += \ - graphicsitems/qmlgraphicsanchors.cpp \ - graphicsitems/qmlgraphicsevents.cpp \ - graphicsitems/qmlgraphicsflickable.cpp \ - graphicsitems/qmlgraphicsflipable.cpp \ - graphicsitems/qmlgraphicsgridview.cpp \ - graphicsitems/qmlgraphicsimage.cpp \ - graphicsitems/qmlgraphicsborderimage.cpp \ - graphicsitems/qmlgraphicsimagebase.cpp \ - graphicsitems/qmlgraphicsanimatedimage.cpp \ - graphicsitems/qmlgraphicspainteditem.cpp \ - graphicsitems/qmlgraphicsitem.cpp \ - graphicsitems/qmlgraphicsfocuspanel.cpp \ - graphicsitems/qmlgraphicsfocusscope.cpp \ - graphicsitems/qmlgraphicspositioners.cpp \ - graphicsitems/qmlgraphicsloader.cpp \ - graphicsitems/qmlgraphicsmouseregion.cpp \ - graphicsitems/qmlgraphicspath.cpp \ - graphicsitems/qmlgraphicspathview.cpp \ - graphicsitems/qmlgraphicsrectangle.cpp \ - graphicsitems/qmlgraphicsrepeater.cpp \ - graphicsitems/qmlgraphicsscalegrid.cpp \ - graphicsitems/qmlgraphicstextinput.cpp \ - graphicsitems/qmlgraphicstext.cpp \ - graphicsitems/qmlgraphicstextedit.cpp \ - graphicsitems/qmlgraphicsvisualitemmodel.cpp \ - graphicsitems/qmlgraphicslistview.cpp \ - graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp \ - graphicsitems/qmlgraphicsparticles.cpp \ - graphicsitems/qmlgraphicslayoutitem.cpp \ + $$PWD/qmlgraphicsanchors.cpp \ + $$PWD/qmlgraphicsevents.cpp \ + $$PWD/qmlgraphicsflickable.cpp \ + $$PWD/qmlgraphicsflipable.cpp \ + $$PWD/qmlgraphicsgridview.cpp \ + $$PWD/qmlgraphicsimage.cpp \ + $$PWD/qmlgraphicsborderimage.cpp \ + $$PWD/qmlgraphicsimagebase.cpp \ + $$PWD/qmlgraphicsanimatedimage.cpp \ + $$PWD/qmlgraphicspainteditem.cpp \ + $$PWD/qmlgraphicsitem.cpp \ + $$PWD/qmlgraphicsfocuspanel.cpp \ + $$PWD/qmlgraphicsfocusscope.cpp \ + $$PWD/qmlgraphicspositioners.cpp \ + $$PWD/qmlgraphicsloader.cpp \ + $$PWD/qmlgraphicsmouseregion.cpp \ + $$PWD/qmlgraphicspath.cpp \ + $$PWD/qmlgraphicspathview.cpp \ + $$PWD/qmlgraphicsrectangle.cpp \ + $$PWD/qmlgraphicsrepeater.cpp \ + $$PWD/qmlgraphicsscalegrid.cpp \ + $$PWD/qmlgraphicstextinput.cpp \ + $$PWD/qmlgraphicstext.cpp \ + $$PWD/qmlgraphicstextedit.cpp \ + $$PWD/qmlgraphicsvisualitemmodel.cpp \ + $$PWD/qmlgraphicslistview.cpp \ + $$PWD/qmlgraphicsgraphicsobjectcontainer.cpp \ + $$PWD/qmlgraphicsparticles.cpp \ + $$PWD/qmlgraphicslayoutitem.cpp \ contains(QT_CONFIG, webkit) { QT+=webkit - SOURCES += graphicsitems/qmlgraphicswebview.cpp - HEADERS += graphicsitems/qmlgraphicswebview_p.h - HEADERS += graphicsitems/qmlgraphicswebview_p_p.h + SOURCES += $$PWD/qmlgraphicswebview.cpp + HEADERS += $$PWD/qmlgraphicswebview_p.h + HEADERS += $$PWD/qmlgraphicswebview_p_p.h } - diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors.cpp b/src/declarative/graphicsitems/qmlgraphicsanchors.cpp index 8642476..c838d7d 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanchors.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsanchors.cpp @@ -40,11 +40,14 @@ ****************************************************************************/ #include "qmlgraphicsanchors_p_p.h" + #include "qmlgraphicsitem.h" #include "qmlgraphicsitem_p.h" -#include <QDebug> + #include <qmlinfo.h> +#include <QDebug> + QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,Anchors,QmlGraphicsAnchors) @@ -1006,7 +1009,7 @@ bool QmlGraphicsAnchorsPrivate::checkVAnchorValid(QmlGraphicsAnchorLine anchor) return true; } -#include "moc_qmlgraphicsanchors_p.cpp" +#include <moc_qmlgraphicsanchors_p.cpp> QT_END_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors_p.h b/src/declarative/graphicsitems/qmlgraphicsanchors_p.h index 507b4d8..2f2ca74 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanchors_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsanchors_p.h @@ -42,9 +42,11 @@ #ifndef QMLGRAPHICSANCHORS_H #define QMLGRAPHICSANCHORS_H -#include <QtCore/QObject> +#include "qmlgraphicsitem.h" + #include <qml.h> -#include <qmlgraphicsitem.h> + +#include <QtCore/QObject> QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h b/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h index 2156565..be3b6dc 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h @@ -54,7 +54,8 @@ // #include "qmlgraphicsanchors_p.h" -#include "private/qobject_p.h" + +#include <private/qobject_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp b/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp index f389295..670b38b 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp @@ -39,10 +39,12 @@ ** ****************************************************************************/ -#include <QMovie> -#include <qmlengine.h> #include "qmlgraphicsanimatedimage_p.h" #include "qmlgraphicsanimatedimage_p_p.h" + +#include <qmlengine.h> + +#include <QMovie> #include <QNetworkRequest> #include <QNetworkReply> diff --git a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h index 79daa0f..a837702 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSANIMATEDIMAGE_H #define QMLGRAPHICSANIMATEDIMAGE_H -#include <private/qmlgraphicsimage_p.h> +#include "qmlgraphicsimage_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h index c24afa0..0d1c749 100644 --- a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h @@ -53,7 +53,7 @@ // We mean it. // -#include <private/qmlgraphicsimage_p_p.h> +#include "qmlgraphicsimage_p_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp b/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp index d7d725b..01c3e37 100644 --- a/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp @@ -41,10 +41,12 @@ #include "qmlgraphicsborderimage_p.h" #include "qmlgraphicsborderimage_p_p.h" + +#include <qmlengine.h> + #include <QNetworkRequest> #include <QNetworkReply> #include <QFile> -#include <qmlengine.h> QT_BEGIN_NAMESPACE @@ -69,7 +71,6 @@ QML_DEFINE_TYPE(Qt,4,6,BorderImage,QmlGraphicsBorderImage) QmlGraphicsBorderImage::QmlGraphicsBorderImage(QmlGraphicsItem *parent) : QmlGraphicsImageBase(*(new QmlGraphicsBorderImagePrivate), parent) { - setFlag(QGraphicsItem::ItemHasNoContents, false); } QmlGraphicsBorderImage::~QmlGraphicsBorderImage() diff --git a/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h b/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h index 18195e2..cf3c518 100644 --- a/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h @@ -42,9 +42,10 @@ #ifndef QMLGRAPHICSBORDERIMAGE_H #define QMLGRAPHICSBORDERIMAGE_H -#include <QtNetwork/qnetworkreply.h> #include "qmlgraphicsimagebase_p.h" +#include <QtNetwork/qnetworkreply.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicseffects.cpp b/src/declarative/graphicsitems/qmlgraphicseffects.cpp index 0523fd5..e1f5687 100644 --- a/src/declarative/graphicsitems/qmlgraphicseffects.cpp +++ b/src/declarative/graphicsitems/qmlgraphicseffects.cpp @@ -38,7 +38,9 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ + #include <qml.h> + #include <QtGui/qgraphicseffect.h> QML_DECLARE_TYPE(QGraphicsEffect) diff --git a/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h b/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h index 567a509..b07fd88 100644 --- a/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h @@ -54,6 +54,7 @@ // #include <qml.h> + #include <QtCore/qobject.h> #include <QtGui/qevent.h> diff --git a/src/declarative/graphicsitems/qmlgraphicsflickable.cpp b/src/declarative/graphicsitems/qmlgraphicsflickable.cpp index d827cda..89c7657 100644 --- a/src/declarative/graphicsitems/qmlgraphicsflickable.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsflickable.cpp @@ -1287,4 +1287,4 @@ QT_END_NAMESPACE QML_DECLARE_TYPE(QmlGraphicsFlickableVisibleArea) QML_DEFINE_TYPE(Qt,4,6,VisibleArea,QmlGraphicsFlickableVisibleArea) -#include "qmlgraphicsflickable.moc" +#include <qmlgraphicsflickable.moc> diff --git a/src/declarative/graphicsitems/qmlgraphicsflickable_p.h b/src/declarative/graphicsitems/qmlgraphicsflickable_p.h index 9610ac1..aa29f3e 100644 --- a/src/declarative/graphicsitems/qmlgraphicsflickable_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsflickable_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSFLICKABLE_H #define QMLGRAPHICSFLICKABLE_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h b/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h index 5ccdaad..b19a08c 100644 --- a/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h @@ -53,12 +53,15 @@ // We mean it. // -#include "qdatetime.h" #include "qmlgraphicsflickable_p.h" + #include "qmlgraphicsitem_p.h" -#include "qml.h" -#include "private/qmltimeline_p_p.h" -#include "private/qmlanimation_p_p.h" + +#include <qml.h> +#include <qmltimeline_p_p.h> +#include <qmlanimation_p_p.h> + +#include <qdatetime.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsflipable.cpp b/src/declarative/graphicsitems/qmlgraphicsflipable.cpp index b964e22..ff8995b 100644 --- a/src/declarative/graphicsitems/qmlgraphicsflipable.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsflipable.cpp @@ -40,10 +40,13 @@ ****************************************************************************/ #include "qmlgraphicsflipable_p.h" -#include "private/qmlgraphicsitem_p.h" -#include "QtGui/qgraphicstransform.h" + +#include "qmlgraphicsitem_p.h" + #include <qmlinfo.h> +#include <QtGui/qgraphicstransform.h> + QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,Flipable,QmlGraphicsFlipable) diff --git a/src/declarative/graphicsitems/qmlgraphicsflipable_p.h b/src/declarative/graphicsitems/qmlgraphicsflipable_p.h index 8f075ac..c189786 100644 --- a/src/declarative/graphicsitems/qmlgraphicsflipable_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsflipable_p.h @@ -42,9 +42,10 @@ #ifndef QMLGRAPHICSFLIPABLE_H #define QMLGRAPHICSFLIPABLE_H +#include "qmlgraphicsitem.h" + #include <QtCore/QObject> #include <QtGui/QTransform> -#include <qmlgraphicsitem.h> #include <QtGui/qvector3d.h> QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp b/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp index ae7ffda..333b689 100644 --- a/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmlgraphicsfocuspanel_p.h" + #include <QtGui/qgraphicsscene.h> #include <QEvent> diff --git a/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h b/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h index d1824e7..4c5cc14 100644 --- a/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSFOCUSPANEL_H #define QMLGRAPHICSFOCUSPANEL_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp b/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp index b0ad32f..828756c 100644 --- a/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp @@ -41,7 +41,6 @@ #include "qmlgraphicsfocusscope_p.h" - QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,FocusScope,QmlGraphicsFocusScope) diff --git a/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h b/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h index 3744240..0ea9da5 100644 --- a/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSFOCUSSCOPE_H #define QMLGRAPHICSFOCUSSCOPE_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp index 294a374..275d38d 100644 --- a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp @@ -40,10 +40,12 @@ ****************************************************************************/ #include "qmlgraphicsgraphicsobjectcontainer_p.h" + +#include "qmlgraphicsitem_p.h" + #include <QGraphicsObject> #include <QGraphicsWidget> #include <QGraphicsSceneResizeEvent> -#include <private/qmlgraphicsitem_p.h> QT_BEGIN_NAMESPACE @@ -225,6 +227,6 @@ void QmlGraphicsGraphicsObjectContainerPrivate::_q_updateSize() }*/ } -#include "moc_qmlgraphicsgraphicsobjectcontainer_p.cpp" +#include <moc_qmlgraphicsgraphicsobjectcontainer_p.cpp> QT_END_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h index 7d16685..1091145 100644 --- a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSGRAPHICSOBJECTCONTAINER_H #define QMLGRAPHICSGRAPHICSOBJECTCONTAINER_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsgridview.cpp b/src/declarative/graphicsitems/qmlgraphicsgridview.cpp index 4e2a366..f4d94aa 100644 --- a/src/declarative/graphicsitems/qmlgraphicsgridview.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsgridview.cpp @@ -40,11 +40,13 @@ ****************************************************************************/ #include "qmlgraphicsgridview_p.h" -#include <private/qmlgraphicsvisualitemmodel_p.h> -#include <private/qlistmodelinterface_p.h> -#include <private/qmleasefollow_p.h> -#include <private/qmlgraphicsflickable_p_p.h> +#include "qmlgraphicsvisualitemmodel_p.h" +#include "qmlgraphicsflickable_p_p.h" + +#include <qmleasefollow_p.h> + +#include <qlistmodelinterface_p.h> #include <QKeyEvent> QT_BEGIN_NAMESPACE @@ -1681,4 +1683,4 @@ QML_DEFINE_TYPE(Qt, 4,6, GridView, QmlGraphicsGridView) QT_END_NAMESPACE -#include "qmlgraphicsgridview.moc" +#include <qmlgraphicsgridview.moc> diff --git a/src/declarative/graphicsitems/qmlgraphicsgridview_p.h b/src/declarative/graphicsitems/qmlgraphicsgridview_p.h index 99515a3..1615469 100644 --- a/src/declarative/graphicsitems/qmlgraphicsgridview_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsgridview_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSGRIDVIEW_H #define QMLGRAPHICSGRIDVIEW_H -#include <private/qmlgraphicsflickable_p.h> +#include "qmlgraphicsflickable_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsimage.cpp b/src/declarative/graphicsitems/qmlgraphicsimage.cpp index 38df0c7..a777de7 100644 --- a/src/declarative/graphicsitems/qmlgraphicsimage.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsimage.cpp @@ -128,13 +128,11 @@ QML_DEFINE_TYPE(Qt,4,6,Image,QmlGraphicsImage) QmlGraphicsImage::QmlGraphicsImage(QmlGraphicsItem *parent) : QmlGraphicsImageBase(*(new QmlGraphicsImagePrivate), parent) { - setFlag(QGraphicsItem::ItemHasNoContents, false); } QmlGraphicsImage::QmlGraphicsImage(QmlGraphicsImagePrivate &dd, QmlGraphicsItem *parent) : QmlGraphicsImageBase(dd, parent) { - setFlag(QGraphicsItem::ItemHasNoContents, false); } QmlGraphicsImage::~QmlGraphicsImage() diff --git a/src/declarative/graphicsitems/qmlgraphicsimage_p.h b/src/declarative/graphicsitems/qmlgraphicsimage_p.h index 47cdcd6..2547b78 100644 --- a/src/declarative/graphicsitems/qmlgraphicsimage_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsimage_p.h @@ -42,9 +42,10 @@ #ifndef QMLGRAPHICSIMAGE_H #define QMLGRAPHICSIMAGE_H -#include <QtNetwork/qnetworkreply.h> #include "qmlgraphicsimagebase_p.h" +#include <QtNetwork/qnetworkreply.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp b/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp index 8374c9f..70ca59c 100644 --- a/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp @@ -41,18 +41,20 @@ #include "qmlgraphicsimagebase_p.h" #include "qmlgraphicsimagebase_p_p.h" + +#include <qmlengine.h> +#include <qmlpixmapcache_p.h> + #include <QNetworkRequest> #include <QNetworkReply> #include <QFile> -#include <qmlengine.h> -#include <private/qmlpixmapcache_p.h> QT_BEGIN_NAMESPACE QmlGraphicsImageBase::QmlGraphicsImageBase(QmlGraphicsImageBasePrivate &dd, QmlGraphicsItem *parent) : QmlGraphicsItem(dd, parent) { - setFlag(QGraphicsItem::ItemHasNoContents, true); + setFlag(QGraphicsItem::ItemHasNoContents, false); } QmlGraphicsImageBase::~QmlGraphicsImageBase() diff --git a/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h b/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h index 4936794..61ea975 100644 --- a/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSIMAGEBASE_H #define QMLGRAPHICSIMAGEBASE_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h b/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h index e7f85a6..44b2332 100644 --- a/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h @@ -54,6 +54,7 @@ // #include "qmlgraphicsitem_p.h" + #include <QtCore/QPointer> QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsitem.cpp b/src/declarative/graphicsitems/qmlgraphicsitem.cpp index db59cf2..68a565d 100644 --- a/src/declarative/graphicsitems/qmlgraphicsitem.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsitem.cpp @@ -39,6 +39,19 @@ ** ****************************************************************************/ +#include "qmlgraphicsitem_p.h" +#include "qmlgraphicsitem.h" + +#include "qmlgraphicsevents_p_p.h" + +#include <qfxperf_p_p.h> +#include <qmlengine.h> +#include <qmlopenmetaobject_p.h> +#include <qmlstate_p.h> +#include <qmlview.h> +#include <qmlstategroup_p.h> +#include <qmlcomponent.h> + #include <QDebug> #include <QPen> #include <QFile> @@ -47,22 +60,9 @@ #include <QNetworkRequest> #include <QGraphicsSceneMouseEvent> #include <QtScript/qscriptengine.h> -#include <private/qfxperf_p_p.h> #include <QtGui/qgraphicstransform.h> #include <QtGui/qgraphicseffect.h> - -#include <qmlengine.h> -#include <private/qmlopenmetaobject_p.h> -#include <private/qmlstate_p.h> -#include <private/qlistmodelinterface_p.h> - -#include "qmlview.h" -#include <private/qmlstategroup_p.h> - -#include "qmlgraphicsitem_p.h" -#include "qmlgraphicsitem.h" -#include <private/qmlgraphicsevents_p_p.h> -#include <qmlcomponent.h> +#include <qlistmodelinterface_p.h> QT_BEGIN_NAMESPACE @@ -1442,13 +1442,14 @@ QmlGraphicsKeysAttached *QmlGraphicsKeysAttached::qmlAttachedProperties(QObject \internal */ -static inline void qfxitem_registerAnchorLine() { - static bool registered = false; - if (!registered) { +// ### Must fix +struct RegisterAnchorLineAtStartup { + RegisterAnchorLineAtStartup() { qRegisterMetaType<QmlGraphicsAnchorLine>("QmlGraphicsAnchorLine"); - registered = true; } -} +}; +static RegisterAnchorLineAtStartup registerAnchorLineAtStartup; + /*! \fn QmlGraphicsItem::QmlGraphicsItem(QmlGraphicsItem *parent) @@ -1459,7 +1460,6 @@ QmlGraphicsItem::QmlGraphicsItem(QmlGraphicsItem* parent) : QGraphicsObject(*(new QmlGraphicsItemPrivate), parent, 0) { Q_D(QmlGraphicsItem); - qfxitem_registerAnchorLine(); d->init(parent); } @@ -1469,7 +1469,6 @@ QmlGraphicsItem::QmlGraphicsItem(QmlGraphicsItemPrivate &dd, QmlGraphicsItem *pa : QGraphicsObject(dd, parent, 0) { Q_D(QmlGraphicsItem); - qfxitem_registerAnchorLine(); d->init(parent); } @@ -1492,6 +1491,7 @@ QmlGraphicsItem::~QmlGraphicsItem() d->dependantAnchors.clear(); delete d->_anchorLines; d->_anchorLines = 0; delete d->_anchors; d->_anchors = 0; + delete d->_stateGroup; d->_stateGroup = 0; } /*! @@ -2621,7 +2621,7 @@ QmlStateGroup *QmlGraphicsItemPrivate::states() { Q_Q(QmlGraphicsItem); if (!_stateGroup) { - _stateGroup = new QmlStateGroup(q); + _stateGroup = new QmlStateGroup; if (!_componentComplete) _stateGroup->classBegin(); QObject::connect(_stateGroup, SIGNAL(stateChanged(QString)), @@ -2994,6 +2994,9 @@ QDebug operator<<(QDebug debug, QmlGraphicsItem *item) return debug; } +int QmlGraphicsItemPrivate::heightIdx = -1; +int QmlGraphicsItemPrivate::widthIdx = -1; + int QmlGraphicsItemPrivate::consistentTime = -1; void QmlGraphicsItemPrivate::setConsistentTime(int t) { @@ -3031,8 +3034,8 @@ int QmlGraphicsItemPrivate::restart(QTime &t) return n; } -#include "qmlgraphicsitem.moc" -#include "moc_qmlgraphicsitem.cpp" +#include <qmlgraphicsitem.moc> +#include <moc_qmlgraphicsitem.cpp> QT_END_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsitem.h b/src/declarative/graphicsitems/qmlgraphicsitem.h index d092896..df8c634 100644 --- a/src/declarative/graphicsitems/qmlgraphicsitem.h +++ b/src/declarative/graphicsitems/qmlgraphicsitem.h @@ -42,10 +42,11 @@ #ifndef QMLGRAPHICSITEM_H #define QMLGRAPHICSITEM_H -#include <QtCore/QObject> -#include <QtCore/QList> #include <qml.h> #include <qmlcomponent.h> + +#include <QtCore/QObject> +#include <QtCore/QList> #include <QtGui/qgraphicsitem.h> #include <QtGui/qgraphicstransform.h> #include <QtGui/qfont.h> diff --git a/src/declarative/graphicsitems/qmlgraphicsitem_p.h b/src/declarative/graphicsitems/qmlgraphicsitem_p.h index 0c722ac..82950c2 100644 --- a/src/declarative/graphicsitems/qmlgraphicsitem_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsitem_p.h @@ -53,17 +53,21 @@ // We mean it. // -#include <qmlgraphicsitem.h> -#include <private/qmlstate_p.h> -#include <private/qmlgraphicsanchors_p.h> -#include <private/qmlnullablevalue_p_p.h> -#include <private/qmlgraphicsanchors_p_p.h> +#include "qmlgraphicsitem.h" + +#include "qmlgraphicsanchors_p.h" +#include "qmlgraphicsanchors_p_p.h" + +#include <qmlstate_p.h> +#include <qmlnullablevalue_p_p.h> #include <qml.h> #include <qmlcontext.h> + #include <QtCore/qlist.h> -#include <private/qgraphicsitem_p.h> #include <QtCore/qdebug.h> +#include <private/qgraphicsitem_p.h> + QT_BEGIN_NAMESPACE class QNetworkReply; @@ -109,7 +113,12 @@ public: _componentComplete(true), _keepMouse(false), smooth(false), keyHandler(0), width(0), height(0), implicitWidth(0), implicitHeight(0) - {} + { + if (widthIdx == -1) { + widthIdx = QmlGraphicsItem::staticMetaObject.indexOfSignal("widthChanged()"); + heightIdx = QmlGraphicsItem::staticMetaObject.indexOfSignal("heightChanged()"); + } + } ~QmlGraphicsItemPrivate() { delete _anchors; } @@ -249,6 +258,19 @@ public: } virtual void otherSiblingOrderChange(QmlGraphicsItemPrivate* other) {Q_UNUSED(other)} + bool connectToWidthChanged(QObject *object, int index) { + return QMetaObject::connect(q_func(), widthIdx, object, index); + } + bool disconnectFromWidthChanged(QObject *object, int index) { + return QMetaObject::disconnect(q_func(), widthIdx, object, index); + } + + bool connectToHeightChanged(QObject *object, int index) { + return QMetaObject::connect(q_func(), heightIdx, object, index); + } + bool disconnectFromHeightChanged(QObject *object, int index) { + return QMetaObject::disconnect(q_func(), heightIdx, object, index); + } static int consistentTime; static QTime currentTime(); @@ -256,6 +278,8 @@ public: static void start(QTime &); static int elapsed(QTime &); static int restart(QTime &); + static int widthIdx; + static int heightIdx; }; QT_END_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp b/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp index fafef0e..7227eb0 100644 --- a/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp +++ b/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp @@ -40,7 +40,9 @@ ****************************************************************************/ #include "qmlgraphicslayoutitem_p.h" + #include <QDebug> + #include <limits.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h b/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h index 35905b5..3278b63 100644 --- a/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h +++ b/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h @@ -41,8 +41,9 @@ #ifndef QMLGRAPHICSGRAPHICSLAYOUTITEM_H #define QMLGRAPHICSGRAPHICSLAYOUTITEM_H +#include "qmlgraphicsitem.h" + #include <QGraphicsLayoutItem> -#include <QmlGraphicsItem> #include <QSizeF> QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicslistview.cpp b/src/declarative/graphicsitems/qmlgraphicslistview.cpp index 6958f7f..2711059 100644 --- a/src/declarative/graphicsitems/qmlgraphicslistview.cpp +++ b/src/declarative/graphicsitems/qmlgraphicslistview.cpp @@ -39,13 +39,15 @@ ** ****************************************************************************/ -#include "private/qmlgraphicsflickable_p_p.h" -#include <private/qmleasefollow_p.h> -#include <private/qlistmodelinterface_p.h> -#include "qmlgraphicsvisualitemmodel_p.h" #include "qmlgraphicslistview_p.h" + +#include "qmlgraphicsflickable_p_p.h" +#include "qmlgraphicsvisualitemmodel_p.h" + +#include <qmleasefollow_p.h> #include <qmlexpression.h> +#include <qlistmodelinterface_p.h> #include <QKeyEvent> QT_BEGIN_NAMESPACE @@ -481,8 +483,12 @@ public: bool autoHighlight : 1; bool haveHighlightRange : 1; bool correctFlick : 1; + + static int itemResizedIdx; }; +int QmlGraphicsListViewPrivate::itemResizedIdx = -1; + void QmlGraphicsListViewPrivate::init() { Q_Q(QmlGraphicsListView); @@ -491,6 +497,8 @@ void QmlGraphicsListViewPrivate::init() QObject::connect(q, SIGNAL(widthChanged()), q, SLOT(refill())); QObject::connect(q, SIGNAL(movementEnded()), q, SLOT(animStopped())); q->setFlickDirection(QmlGraphicsFlickable::VerticalFlick); + if (itemResizedIdx == -1) + itemResizedIdx = QmlGraphicsListView::staticMetaObject.indexOfSlot("itemResized()"); } void QmlGraphicsListViewPrivate::clear() @@ -531,10 +539,11 @@ FxListItem *QmlGraphicsListViewPrivate::createItem(int modelIndex) model->completeItem(); listItem->item->setZValue(1); listItem->item->setParent(q->viewport()); + QmlGraphicsItemPrivate *itemPrivate = static_cast<QmlGraphicsItemPrivate*>(QGraphicsItemPrivate::get(item)); if (orient == QmlGraphicsListView::Vertical) - QObject::connect(listItem->item, SIGNAL(heightChanged()), q, SLOT(itemResized())); + itemPrivate->connectToHeightChanged(q, itemResizedIdx); else - QObject::connect(listItem->item, SIGNAL(widthChanged()), q, SLOT(itemResized())); + itemPrivate->connectToWidthChanged(q, itemResizedIdx); } requestedIndex = -1; @@ -556,10 +565,11 @@ void QmlGraphicsListViewPrivate::releaseItem(FxListItem *item) if (model->release(item->item) == 0) { // item was not destroyed, and we no longer reference it. unrequestedItems.insert(item->item, model->indexOf(item->item, q)); + QmlGraphicsItemPrivate *itemPrivate = static_cast<QmlGraphicsItemPrivate*>(QGraphicsItemPrivate::get(item->item)); if (orient == QmlGraphicsListView::Vertical) - QObject::disconnect(item->item, SIGNAL(heightChanged()), q, SLOT(itemResized())); + itemPrivate->disconnectFromHeightChanged(q, itemResizedIdx); else - QObject::disconnect(item->item, SIGNAL(widthChanged()), q, SLOT(itemResized())); + itemPrivate->disconnectFromWidthChanged(q, itemResizedIdx); } delete item; } @@ -1902,26 +1912,23 @@ void QmlGraphicsListView::viewportMoved() } } - if ((d->haveHighlightRange && d->highlightRange == QmlGraphicsListView::StrictlyEnforceRange) - || d->snapMode == QmlGraphicsListView::SnapToItem) { - if (d->flicked && d->correctFlick) { - // Near an end and it seems that the extent has changed? - // Recalculate the flick so that we don't end up in an odd position. - if (d->velocityY > 0) { - if (d->flickTargetY - d->_moveY.value() < height()/2 && minYExtent() != d->flickTargetY) - d->flickY(-d->verticalVelocity.value()); - } else if (d->velocityY < 0) { - if (d->_moveY.value() - d->flickTargetY < height()/2 && maxYExtent() != d->flickTargetY) - d->flickY(-d->verticalVelocity.value()); - } + if (d->flicked && d->correctFlick) { + // Near an end and it seems that the extent has changed? + // Recalculate the flick so that we don't end up in an odd position. + if (d->velocityY > 0) { + if (d->flickTargetY - d->_moveY.value() < height()/2 && minYExtent() != d->flickTargetY) + d->flickY(-d->verticalVelocity.value()); + } else if (d->velocityY < 0) { + if (d->_moveY.value() - d->flickTargetY < height()/2 && maxYExtent() != d->flickTargetY) + d->flickY(-d->verticalVelocity.value()); + } - if (d->velocityX > 0) { - if (d->flickTargetX - d->_moveX.value() < height()/2 && minXExtent() != d->flickTargetX) - d->flickX(-d->verticalVelocity.value()); - } else if (d->velocityX < 0) { - if (d->_moveX.value() - d->flickTargetX < height()/2 && maxXExtent() != d->flickTargetX) - d->flickX(-d->verticalVelocity.value()); - } + if (d->velocityX > 0) { + if (d->flickTargetX - d->_moveX.value() < height()/2 && minXExtent() != d->flickTargetX) + d->flickX(-d->verticalVelocity.value()); + } else if (d->velocityX < 0) { + if (d->_moveX.value() - d->flickTargetX < height()/2 && maxXExtent() != d->flickTargetX) + d->flickX(-d->verticalVelocity.value()); } } } @@ -2266,6 +2273,8 @@ void QmlGraphicsListView::itemsInserted(int modelIndex, int count) d->updateUnrequestedPositions(); d->updateViewport(); d->updateSections(); + d->updateHeader(); + d->updateFooter(); emit countChanged(); } @@ -2485,4 +2494,4 @@ QML_DEFINE_TYPE(Qt,4,6,ListView,QmlGraphicsListView) QT_END_NAMESPACE -#include "qmlgraphicslistview.moc" +#include <qmlgraphicslistview.moc> diff --git a/src/declarative/graphicsitems/qmlgraphicslistview_p.h b/src/declarative/graphicsitems/qmlgraphicslistview_p.h index 241fb05..6dc131c 100644 --- a/src/declarative/graphicsitems/qmlgraphicslistview_p.h +++ b/src/declarative/graphicsitems/qmlgraphicslistview_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSLISTVIEW_H #define QMLGRAPHICSLISTVIEW_H -#include <private/qmlgraphicsflickable_p.h> +#include "qmlgraphicsflickable_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsloader.cpp b/src/declarative/graphicsitems/qmlgraphicsloader.cpp index c841efe..86239cf 100644 --- a/src/declarative/graphicsitems/qmlgraphicsloader.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsloader.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmlgraphicsloader_p_p.h" -#include <private/qmlengine_p.h> + +#include <qmlengine_p.h> QT_BEGIN_NAMESPACE @@ -396,6 +397,6 @@ QmlGraphicsItem *QmlGraphicsLoader::item() const return d->item; } -#include "moc_qmlgraphicsloader_p.cpp" +#include <moc_qmlgraphicsloader_p.cpp> QT_END_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsloader_p.h b/src/declarative/graphicsitems/qmlgraphicsloader_p.h index bca65fa..88cc70d 100644 --- a/src/declarative/graphicsitems/qmlgraphicsloader_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsloader_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSLOADER_H #define QMLGRAPHICSLOADER_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h b/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h index cd7316d..569e1a5 100644 --- a/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h @@ -53,9 +53,10 @@ // We mean it. // -#include "qmlgraphicsitem_p.h" #include "qmlgraphicsloader_p.h" +#include "qmlgraphicsitem_p.h" + QT_BEGIN_NAMESPACE class QmlContext; diff --git a/src/declarative/graphicsitems/qmlgraphicsmouseregion.cpp b/src/declarative/graphicsitems/qmlgraphicsmouseregion.cpp index ec613af..159fc29 100644 --- a/src/declarative/graphicsitems/qmlgraphicsmouseregion.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsmouseregion.cpp @@ -41,9 +41,10 @@ #include "qmlgraphicsmouseregion_p.h" #include "qmlgraphicsmouseregion_p_p.h" + #include "qmlgraphicsevents_p_p.h" -#include <QGraphicsSceneMouseEvent> +#include <QGraphicsSceneMouseEvent> QT_BEGIN_NAMESPACE static const qreal DragThreshold = 5; @@ -119,6 +120,12 @@ void QmlGraphicsDrag::setYmax(qreal m) _ymax = m; } +QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate() +{ + delete drag; +} + + /*! \qmlclass MouseRegion QmlGraphicsMouseRegion \brief The MouseRegion item enables simple mouse handling. @@ -339,8 +346,10 @@ void QmlGraphicsMouseRegion::mousePressEvent(QGraphicsSceneMouseEvent *event) else { d->longPress = false; d->saveEvent(event); - d->dragX = drag()->axis() & QmlGraphicsDrag::XAxis; - d->dragY = drag()->axis() & QmlGraphicsDrag::YAxis; + if (d->drag) { + d->dragX = drag()->axis() & QmlGraphicsDrag::XAxis; + d->dragY = drag()->axis() & QmlGraphicsDrag::YAxis; + } d->dragged = false; setHovered(true); d->start = event->pos(); @@ -371,7 +380,7 @@ void QmlGraphicsMouseRegion::mouseMoveEvent(QGraphicsSceneMouseEvent *event) else if (!d->hovered && contains) setHovered(true); - if (drag()->target()) { + if (d->drag && d->drag->target()) { if (!d->moved) { if (d->dragX) d->startX = drag()->target()->x(); if (d->dragY) d->startY = drag()->target()->y(); @@ -616,7 +625,9 @@ bool QmlGraphicsMouseRegion::setPressed(bool p) QmlGraphicsDrag *QmlGraphicsMouseRegion::drag() { Q_D(QmlGraphicsMouseRegion); - return &(d->drag); + if (!d->drag) + d->drag = new QmlGraphicsDrag; + return d->drag; } /*! diff --git a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p.h b/src/declarative/graphicsitems/qmlgraphicsmouseregion_p.h index 998183d..0ddad1b 100644 --- a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsmouseregion_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSMOUSEREGION_H #define QMLGRAPHICSMOUSEREGION_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p_p.h b/src/declarative/graphicsitems/qmlgraphicsmouseregion_p_p.h index ad7cc9f..0f1b0d4 100644 --- a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsmouseregion_p_p.h @@ -53,11 +53,12 @@ // We mean it. // -#include "qdatetime.h" -#include "qbasictimer.h" -#include "qgraphicssceneevent.h" #include "qmlgraphicsitem_p.h" +#include <qdatetime.h> +#include <qbasictimer.h> +#include <qgraphicssceneevent.h> + QT_BEGIN_NAMESPACE class QmlGraphicsMouseRegionPrivate : public QmlGraphicsItemPrivate @@ -70,6 +71,8 @@ public: { } + ~QmlGraphicsMouseRegionPrivate(); + void init() { Q_Q(QmlGraphicsMouseRegion); @@ -97,7 +100,7 @@ public: bool dragX : 1; bool dragY : 1; bool dragged : 1; - QmlGraphicsDrag drag; + QmlGraphicsDrag *drag; QPointF start; QPointF startScene; qreal startX; diff --git a/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp b/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp index 948f69a..146b1e4 100644 --- a/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp +++ b/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp @@ -50,6 +50,7 @@ #include <QGraphicsSceneMouseEvent> #include <QPainter> #include <QPaintEngine> +#include <qmath.h> QT_BEGIN_NAMESPACE @@ -98,9 +99,13 @@ static int inpaint_clearcache=0; void QmlGraphicsPaintedItem::dirtyCache(const QRect& rect) { Q_D(QmlGraphicsPaintedItem); + QRect srect(qCeil(rect.x()*d->contentsScale), + qCeil(rect.y()*d->contentsScale), + qCeil(rect.width()*d->contentsScale), + qCeil(rect.height()*d->contentsScale)); for (int i=0; i < d->imagecache.count(); ) { QmlGraphicsPaintedItemPrivate::ImageCacheItem *c = d->imagecache[i]; - QRect isect = (c->area & rect) | c->dirty; + QRect isect = (c->area & srect) | c->dirty; if (isect == c->area && !inpaint) { delete d->imagecache.takeAt(i); } else { @@ -147,10 +152,32 @@ void QmlGraphicsPaintedItem::setContentsSize(const QSize &size) Q_D(QmlGraphicsPaintedItem); if (d->contentsSize == size) return; d->contentsSize = size; + setImplicitWidth(size.width()*d->contentsScale); + setImplicitHeight(size.height()*d->contentsScale); clearCache(); update(); + emit contentsSizeChanged(); } +qreal QmlGraphicsPaintedItem::contentsScale() const +{ + Q_D(const QmlGraphicsPaintedItem); + return d->contentsScale; +} + +void QmlGraphicsPaintedItem::setContentsScale(qreal scale) +{ + Q_D(QmlGraphicsPaintedItem); + if (d->contentsScale == scale) return; + d->contentsScale = scale; + setImplicitWidth(d->contentsSize.width()*scale); + setImplicitHeight(d->contentsSize.height()*scale); + clearCache(); + update(); + emit contentsScaleChanged(); +} + + /*! Constructs a new QmlGraphicsPaintedItem with the given \a parent. */ @@ -204,7 +231,8 @@ void QmlGraphicsPaintedItem::setCacheFrozen(bool frozen) void QmlGraphicsPaintedItem::paint(QPainter *p, const QStyleOptionGraphicsItem *, QWidget *) { Q_D(QmlGraphicsPaintedItem); - const QRect content(QPoint(0,0),d->contentsSize); + const QRect content(0,0,qCeil(d->contentsSize.width()*d->contentsScale), + qCeil(d->contentsSize.height()*d->contentsScale)); if (content.width() <= 0 || content.height() <= 0) return; @@ -244,21 +272,27 @@ void QmlGraphicsPaintedItem::paint(QPainter *p, const QStyleOptionGraphicsItem * if (!d->cachefrozen) { if (!d->imagecache[i]->dirty.isNull() && topaint.contains(d->imagecache[i]->dirty)) { QPainter qp(&d->imagecache[i]->image); - qp.setRenderHints(QPainter::HighQualityAntialiasing | QPainter::Antialiasing | QPainter::TextAntialiasing | QPainter::SmoothPixmapTransform, d->smoothCache); + qp.setRenderHints(QPainter::HighQualityAntialiasing | QPainter::TextAntialiasing | QPainter::SmoothPixmapTransform, d->smoothCache); qp.translate(-area.x(), -area.y()); + qp.scale(d->contentsScale,d->contentsScale); + QRect clip = d->imagecache[i]->dirty; + QRect sclip(qFloor(clip.x()/d->contentsScale), + qFloor(clip.y()/d->contentsScale), + qCeil(clip.width()/d->contentsScale+clip.x()/d->contentsScale-qFloor(clip.x()/d->contentsScale)), + qCeil(clip.height()/d->contentsScale+clip.y()/d->contentsScale-qFloor(clip.y()/d->contentsScale))); + qp.setClipRect(sclip); if (d->fillColor.isValid()){ if(d->fillColor.alpha() < 255){ // ### Might not work outside of raster paintengine QPainter::CompositionMode prev = qp.compositionMode(); qp.setCompositionMode(QPainter::CompositionMode_Source); - qp.fillRect(d->imagecache[i]->dirty,d->fillColor); + qp.fillRect(sclip,d->fillColor); qp.setCompositionMode(prev); }else{ - qp.fillRect(d->imagecache[i]->dirty,d->fillColor); + qp.fillRect(sclip,d->fillColor); } } - qp.setClipRect(d->imagecache[i]->dirty); - drawContents(&qp, d->imagecache[i]->dirty); + drawContents(&qp, sclip); d->imagecache[i]->dirty = QRect(); } } @@ -300,10 +334,15 @@ void QmlGraphicsPaintedItem::paint(QPainter *p, const QStyleOptionGraphicsItem * img.fill(d->fillColor); { QPainter qp(&img); - qp.setRenderHints(QPainter::HighQualityAntialiasing | QPainter::Antialiasing | QPainter::TextAntialiasing | QPainter::SmoothPixmapTransform, d->smoothCache); + qp.setRenderHints(QPainter::HighQualityAntialiasing | QPainter::TextAntialiasing | QPainter::SmoothPixmapTransform, d->smoothCache); qp.translate(-r.x(),-r.y()); - drawContents(&qp, r); + qp.scale(d->contentsScale,d->contentsScale); + QRect sclip(qFloor(r.x()/d->contentsScale), + qFloor(r.y()/d->contentsScale), + qCeil(r.width()/d->contentsScale+r.x()/d->contentsScale-qFloor(r.x()/d->contentsScale)), + qCeil(r.height()/d->contentsScale+r.y()/d->contentsScale-qFloor(r.y()/d->contentsScale))); + drawContents(&qp, sclip); } QmlGraphicsPaintedItemPrivate::ImageCacheItem *newitem = new QmlGraphicsPaintedItemPrivate::ImageCacheItem; newitem->area = r; diff --git a/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h b/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h index f6bb078..ab21f36 100644 --- a/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h @@ -42,8 +42,7 @@ #ifndef QMLGRAPHICSIMAGEITEM_H #define QMLGRAPHICSIMAGEITEM_H -#include <qmlgraphicsitem.h> - +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER @@ -56,10 +55,11 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsPaintedItem : public QmlGraphicsItem { Q_OBJECT - Q_PROPERTY(QSize contentsSize READ contentsSize WRITE setContentsSize) + Q_PROPERTY(QSize contentsSize READ contentsSize WRITE setContentsSize NOTIFY contentsSizeChanged) Q_PROPERTY(QColor fillColor READ fillColor WRITE setFillColor NOTIFY fillColorChanged) Q_PROPERTY(int pixelCacheSize READ pixelCacheSize WRITE setPixelCacheSize) Q_PROPERTY(bool smoothCache READ smoothCache WRITE setSmoothCache) + Q_PROPERTY(qreal contentsScale READ contentsScale WRITE setContentsScale NOTIFY contentsScaleChanged) public: @@ -69,6 +69,9 @@ public: QSize contentsSize() const; void setContentsSize(const QSize &); + qreal contentsScale() const; + void setContentsScale(qreal); + int pixelCacheSize() const; void setPixelCacheSize(int pixels); @@ -89,6 +92,8 @@ protected: Q_SIGNALS: void fillColorChanged(); + void contentsSizeChanged(); + void contentsScaleChanged(); protected Q_SLOTS: void dirtyCache(const QRect &); diff --git a/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h b/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h index a938ecf..6bcc51a 100644 --- a/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h @@ -53,7 +53,7 @@ // We mean it. // -#include <private/qmlgraphicsitem_p.h> +#include "qmlgraphicsitem_p.h" QT_BEGIN_NAMESPACE @@ -63,7 +63,7 @@ class QmlGraphicsPaintedItemPrivate : public QmlGraphicsItemPrivate public: QmlGraphicsPaintedItemPrivate() - : max_imagecache_size(100000), fillColor(Qt::transparent), cachefrozen(false), smoothCache(true) + : max_imagecache_size(100000), contentsScale(1.0), fillColor(Qt::transparent), cachefrozen(false), smoothCache(true) { } @@ -80,6 +80,7 @@ public: int max_imagecache_size; QSize contentsSize; + qreal contentsScale; QColor fillColor; bool cachefrozen; bool smoothCache; diff --git a/src/declarative/graphicsitems/qmlgraphicsparticles.cpp b/src/declarative/graphicsitems/qmlgraphicsparticles.cpp index f15d9f6..63c7658 100644 --- a/src/declarative/graphicsitems/qmlgraphicsparticles.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsparticles.cpp @@ -39,10 +39,22 @@ ** ****************************************************************************/ -#include "private/qmlgraphicsitem_p.h" +#include "qmlgraphicsparticles_p.h" + +#include "qmlgraphicsitem_p.h" + +#include <qmlpixmapcache_p.h> +#include <qfxperf_p_p.h> +#include <qmlanimation_p_p.h> + +#include <QNetworkReply> +#include <QPainter> +#include <QtGui/qdrawutil.h> +#include <QVarLengthArray> #include <stdlib.h> #include <math.h> + #ifndef M_PI #define M_PI 3.14159265358979323846 #define M_PI_2 (M_PI / 2.) @@ -50,15 +62,6 @@ #ifndef INT_MAX #define INT_MAX 2147483647 #endif -#include <private/qmlpixmapcache_p.h> -#include <private/qfxperf_p_p.h> -#include <private/qmlanimation_p_p.h> -#include <QNetworkReply> - -#include "qmlgraphicsparticles_p.h" -#include <QPainter> -#include <QtGui/qdrawutil.h> -#include <QVarLengthArray> QT_BEGIN_NAMESPACE #define PI_SQR 9.8696044 diff --git a/src/declarative/graphicsitems/qmlgraphicsparticles_p.h b/src/declarative/graphicsitems/qmlgraphicsparticles_p.h index 3cb3ff6..c34d55b 100644 --- a/src/declarative/graphicsitems/qmlgraphicsparticles_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsparticles_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSPARTICLES_H #define QMLGRAPHICSPARTICLES_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicspath.cpp b/src/declarative/graphicsitems/qmlgraphicspath.cpp index 1791074..18f27af 100644 --- a/src/declarative/graphicsitems/qmlgraphicspath.cpp +++ b/src/declarative/graphicsitems/qmlgraphicspath.cpp @@ -41,10 +41,12 @@ #include "qmlgraphicspath_p.h" #include "qmlgraphicspath_p_p.h" -#include <private/qfxperf_p_p.h> -#include <private/qbezier_p.h> + +#include <qfxperf_p_p.h> + #include <QSet> +#include <private/qbezier_p.h> QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,Path,QmlGraphicsPath) diff --git a/src/declarative/graphicsitems/qmlgraphicspath_p.h b/src/declarative/graphicsitems/qmlgraphicspath_p.h index 30a377e..2b4b0fd 100644 --- a/src/declarative/graphicsitems/qmlgraphicspath_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspath_p.h @@ -42,11 +42,12 @@ #ifndef QMLGRAPHICSPATH_H #define QMLGRAPHICSPATH_H -#include <QtCore/QObject> -#include <QtGui/QPainterPath> +#include "qmlgraphicsitem.h" + #include <qml.h> -#include <qmlgraphicsitem.h> +#include <QtCore/QObject> +#include <QtGui/QPainterPath> QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicspath_p_p.h b/src/declarative/graphicsitems/qmlgraphicspath_p_p.h index 8c4c962..04342a8 100644 --- a/src/declarative/graphicsitems/qmlgraphicspath_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspath_p_p.h @@ -53,10 +53,11 @@ // We mean it. // -#include "private/qobject_p.h" #include "qmlgraphicspath_p.h" -#include "qml.h" +#include <qml.h> + +#include <private/qobject_p.h> QT_BEGIN_NAMESPACE class QmlGraphicsPathPrivate : public QObjectPrivate diff --git a/src/declarative/graphicsitems/qmlgraphicspathview.cpp b/src/declarative/graphicsitems/qmlgraphicspathview.cpp index 92751a0..705462a 100644 --- a/src/declarative/graphicsitems/qmlgraphicspathview.cpp +++ b/src/declarative/graphicsitems/qmlgraphicspathview.cpp @@ -39,17 +39,19 @@ ** ****************************************************************************/ -#include <math.h> +#include "qmlgraphicspathview_p.h" +#include "qmlgraphicspathview_p_p.h" + +#include <qmlstate_p.h> +#include <qmlopenmetaobject_p.h> + #include <QDebug> #include <QEvent> -#include <private/qmlstate_p.h> -#include <private/qlistmodelinterface_p.h> -#include <private/qmlopenmetaobject_p.h> - -#include <private/qmlgraphicspathview_p.h> -#include <private/qmlgraphicspathview_p_p.h> +#include <qlistmodelinterface_p.h> #include <QGraphicsSceneEvent> +#include <math.h> + static const int FlickThreshold = 5; QT_BEGIN_NAMESPACE @@ -892,4 +894,4 @@ QObject *QmlGraphicsPathView::qmlAttachedProperties(QObject *obj) QT_END_NAMESPACE -#include "qmlgraphicspathview.moc" +#include <qmlgraphicspathview.moc> diff --git a/src/declarative/graphicsitems/qmlgraphicspathview_p.h b/src/declarative/graphicsitems/qmlgraphicspathview_p.h index 38f1cd8..17106a2 100644 --- a/src/declarative/graphicsitems/qmlgraphicspathview_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspathview_p.h @@ -42,8 +42,8 @@ #ifndef QMLGRAPHICSPATHVIEW_H #define QMLGRAPHICSPATHVIEW_H -#include <qmlgraphicsitem.h> -#include <private/qmlgraphicspath_p.h> +#include "qmlgraphicsitem.h" +#include "qmlgraphicspath_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h b/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h index a0f2a3d..7ffe6ac 100644 --- a/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h @@ -53,12 +53,15 @@ // We mean it. // -#include "qdatetime.h" #include "qmlgraphicspathview_p.h" + #include "qmlgraphicsitem_p.h" #include "qmlgraphicsvisualitemmodel_p.h" -#include "qml.h" -#include "private/qmlanimation_p_p.h" + +#include <qml.h> +#include <qmlanimation_p_p.h> + +#include <qdatetime.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicspositioners.cpp b/src/declarative/graphicsitems/qmlgraphicspositioners.cpp index 65e63eb..db0cc7c 100644 --- a/src/declarative/graphicsitems/qmlgraphicspositioners.cpp +++ b/src/declarative/graphicsitems/qmlgraphicspositioners.cpp @@ -39,49 +39,52 @@ ** ****************************************************************************/ +#include "qmlgraphicspositioners_p.h" +#include "qmlgraphicspositioners_p_p.h" + +#include <qml.h> +#include <qmlstate_p.h> +#include <qmlstategroup_p.h> +#include <qmlstateoperations_p.h> +#include <qfxperf_p_p.h> + #include <QDebug> #include <QCoreApplication> -#include "qml.h" -#include <private/qmlstate_p.h> -#include <private/qmlstategroup_p.h> -#include <private/qmlstateoperations_p.h> -#include <private/qfxperf_p_p.h> -#include <private/qmlgraphicspositioners_p.h> -#include <private/qmlgraphicspositioners_p_p.h> - QT_BEGIN_NAMESPACE +int QmlGraphicsBasePositionerPrivate::prePosIdx = -1; +int QmlGraphicsBasePositionerPrivate::visibleIdx = -1; +int QmlGraphicsBasePositionerPrivate::opacityIdx = -1; + + void QmlGraphicsBasePositionerPrivate::watchChanges(QmlGraphicsItem *other) { Q_Q(QmlGraphicsBasePositioner); - QObject::connect(other, SIGNAL(visibleChanged()), - q, SLOT(prePositioning())); - QObject::connect(other, SIGNAL(opacityChanged()), - q, SLOT(prePositioning())); - QObject::connect(other, SIGNAL(heightChanged()), - q, SLOT(prePositioning())); - QObject::connect(other, SIGNAL(widthChanged()), - q, SLOT(prePositioning())); - static_cast<QmlGraphicsItemPrivate*>(QGraphicsItemPrivate::get(other))->registerSiblingOrderNotification(this); + QMetaObject::connect(other, visibleIdx, q, prePosIdx); + QMetaObject::connect(other, opacityIdx, q, prePosIdx); + + QmlGraphicsItemPrivate *otherPrivate = static_cast<QmlGraphicsItemPrivate*>(QGraphicsItemPrivate::get(other)); + + otherPrivate->connectToHeightChanged(q, prePosIdx); + otherPrivate->connectToWidthChanged(q, prePosIdx); + + otherPrivate->registerSiblingOrderNotification(this); watched << other; } void QmlGraphicsBasePositionerPrivate::unwatchChanges(QmlGraphicsItem* other) { Q_Q(QmlGraphicsBasePositioner); + QmlGraphicsItemPrivate *otherPrivate = static_cast<QmlGraphicsItemPrivate*>(QGraphicsItemPrivate::get(other)); bool stillAlive = false; //Use the return from disconnect to see if it was deleted or just reparented - stillAlive |= QObject::disconnect(other, SIGNAL(visibleChanged()), - q, SLOT(prePositioning())); - stillAlive |= QObject::disconnect(other, SIGNAL(opacityChanged()), - q, SLOT(prePositioning())); - stillAlive |= QObject::disconnect(other, SIGNAL(heightChanged()), - q, SLOT(prePositioning())); - stillAlive |= QObject::disconnect(other, SIGNAL(widthChanged()), - q, SLOT(prePositioning())); + stillAlive |= QMetaObject::disconnect(other, visibleIdx, q, prePosIdx); + stillAlive |= QMetaObject::disconnect(other, opacityIdx, q, prePosIdx); + stillAlive |= otherPrivate->disconnectFromHeightChanged(q, prePosIdx); + stillAlive |= otherPrivate->disconnectFromWidthChanged(q, prePosIdx); + if(stillAlive) - static_cast<QmlGraphicsItemPrivate*>(QGraphicsItemPrivate::get(other)) - ->unregisterSiblingOrderNotification(this); + otherPrivate->unregisterSiblingOrderNotification(this); watched.removeAll(other); } @@ -242,36 +245,52 @@ void QmlGraphicsBasePositioner::prePositioning() d->_ep = true; QCoreApplication::postEvent(this, new QEvent(QEvent::User)); } - QSet<QmlGraphicsItem *> allItems; //Need to order children by creation order modified by stacking order //###can we avoid using the QGraphicsItemPrivate? QList<QGraphicsItem *> children = childItems(); qSort(children.begin(), children.end(), d->insertionOrder); - positionedItems = QList<QmlGraphicsItem*>(); + positionedItems.clear(); - for (int ii = 0; ii < children.count(); ++ii) { - QmlGraphicsItem *child = qobject_cast<QmlGraphicsItem *>(children.at(ii)); - if (!child) - continue; - if (!d->_items.contains(child)){ + if (d->_items.isEmpty()) { + for (int ii = 0; ii < children.count(); ++ii) { + QmlGraphicsItem *child = qobject_cast<QmlGraphicsItem *>(children.at(ii)); + if (!child) + continue; d->watchChanges(child); d->_items += child; + if (child->opacity() != 0.0) + d->_newItems += child; + positionedItems << child; } - if (child->opacity() == 0.0){ - if (d->_stableItems.contains(child)){ - d->_leavingItems += child; - d->_stableItems -= child; + } else { + QSet<QmlGraphicsItem *> allItems; + allItems.reserve(children.count()); + for (int ii = 0; ii < children.count(); ++ii) { + QmlGraphicsItem *child = qobject_cast<QmlGraphicsItem *>(children.at(ii)); + if (!child) + continue; + if (!d->_items.contains(child)){ + d->watchChanges(child); + d->_items += child; + } + if (child->opacity() == 0.0){ + if (d->_stableItems.contains(child)){ + d->_leavingItems += child; + d->_stableItems -= child; + } + }else if (!d->_stableItems.contains(child)){ + d->_newItems+=child; + } + allItems += child; + positionedItems << child; + } + if (d->_items.count() != allItems.count()) { + QSet<QmlGraphicsItem *> deletedItems = d->_items - allItems; + foreach(QmlGraphicsItem *child, deletedItems){ + d->unwatchChanges(child); + d->_items -= child; } - }else if (!d->_stableItems.contains(child)){ - d->_newItems+=child; } - allItems += child; - positionedItems << child; - } - QSet<QmlGraphicsItem *> deletedItems = d->_items - allItems; - foreach(QmlGraphicsItem *child, deletedItems){ - d->unwatchChanges(child); - d->_items -= child; } d->_animated.clear(); doPositioning(); @@ -471,7 +490,7 @@ QmlGraphicsColumn::QmlGraphicsColumn(QmlGraphicsItem *parent) { } -inline bool isInvisible(QmlGraphicsItem *child) +static inline bool isInvisible(QmlGraphicsItem *child) { return child->opacity() == 0.0 || !child->isVisible() || !child->width() || !child->height(); } @@ -495,12 +514,15 @@ void QmlGraphicsColumn::doPositioning() bool needMove = (child->y() != voffset || child->x()); - QList<QPair<QString, QVariant> > changes; - changes << qMakePair(QString(QLatin1String("y")),QVariant(voffset)); - changes << qMakePair(QString(QLatin1String("x")),QVariant(0)); - if (needMove && items()->contains(child) && move()) { + if (needMove && move() && items()->contains(child)) { + QList<QPair<QString, QVariant> > changes; + changes << qMakePair(QString(QLatin1String("y")),QVariant(voffset)); + changes << qMakePair(QString(QLatin1String("x")),QVariant(0)); applyMove(changes,child); - } else if (!items()->contains(child) && add()) { + } else if (add() && !items()->contains(child)) { + QList<QPair<QString, QVariant> > changes; + changes << qMakePair(QString(QLatin1String("y")),QVariant(voffset)); + changes << qMakePair(QString(QLatin1String("x")),QVariant(0)); applyAdd(changes,child); } else if (needMove) { setMovingItem(child); @@ -630,12 +652,15 @@ void QmlGraphicsRow::doPositioning() bool needMove = (child->x() != hoffset || child->y()); - QList<QPair<QString, QVariant> > changes; - changes << qMakePair(QString(QLatin1String("x")),QVariant(hoffset)); - changes << qMakePair(QString(QLatin1String("y")),QVariant(0)); - if (needMove && items()->contains(child) && move()) { + if (needMove && move() && items()->contains(child)) { + QList<QPair<QString, QVariant> > changes; + changes << qMakePair(QString(QLatin1String("x")),QVariant(hoffset)); + changes << qMakePair(QString(QLatin1String("y")),QVariant(0)); applyMove(changes,child); - } else if (!items()->contains(child) && add()) { + } else if (add() && !items()->contains(child)) { + QList<QPair<QString, QVariant> > changes; + changes << qMakePair(QString(QLatin1String("x")),QVariant(hoffset)); + changes << qMakePair(QString(QLatin1String("y")),QVariant(0)); applyAdd(changes,child); } else if (needMove) { setMovingItem(child); diff --git a/src/declarative/graphicsitems/qmlgraphicspositioners_p.h b/src/declarative/graphicsitems/qmlgraphicspositioners_p.h index a0665ae..03e0f41 100644 --- a/src/declarative/graphicsitems/qmlgraphicspositioners_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspositioners_p.h @@ -42,11 +42,12 @@ #ifndef QMLGRAPHICSLAYOUTS_H #define QMLGRAPHICSLAYOUTS_H +#include "qmlgraphicsitem.h" + +#include <qmlstate_p.h> + #include <QtCore/QObject> #include <QtCore/QString> -#include <qmlgraphicsitem.h> -#include <private/qmlstate_p.h> - QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h b/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h index d7a31a3..b079f6a 100644 --- a/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h @@ -53,13 +53,16 @@ // We mean it. // -#include <private/qmlgraphicsitem_p.h> +#include "qmlgraphicspositioners_p.h" + +#include "qmlgraphicsitem_p.h" + +#include <qmlstate_p.h> +#include <qmltransitionmanager_p_p.h> +#include <qmlstateoperations_p.h> + #include <QtCore/QObject> #include <QtCore/QString> -#include <private/qmlgraphicspositioners_p.h> -#include <private/qmlstate_p.h> -#include <private/qmltransitionmanager_p_p.h> -#include <private/qmlstateoperations_p.h> #include <QtCore/QTimer> QT_BEGIN_NAMESPACE @@ -85,6 +88,11 @@ public: void init(QmlGraphicsBasePositioner::AutoUpdateType at) { aut = at; + if (prePosIdx == -1) { + prePosIdx = QmlGraphicsBasePositioner::staticMetaObject.indexOfSlot("prePositioning()"); + visibleIdx = QmlGraphicsItem::staticMetaObject.indexOfSignal("visibleChanged()"); + opacityIdx = QmlGraphicsItem::staticMetaObject.indexOfSignal("opacityChanged()"); + } } bool _ep; @@ -105,7 +113,6 @@ public: QmlTransitionManager addTransitionManager; QmlTransitionManager moveTransitionManager; QmlTransitionManager removeTransitionManager; -// QmlStateGroup *stateGroup; QmlGraphicsItem *_movingItem; void watchChanges(QmlGraphicsItem *other); @@ -113,6 +120,10 @@ public: QList<QGuard<QmlGraphicsItem> > watched; bool queuedPositioning; + static int prePosIdx; + static int visibleIdx; + static int opacityIdx; + virtual void otherSiblingOrderChange(QmlGraphicsItemPrivate* other) { Q_Q(QmlGraphicsBasePositioner); diff --git a/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h b/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h index fe8c403..4f4c1cf 100644 --- a/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h @@ -42,9 +42,9 @@ #ifndef QMLGRAPHICSRECT_H #define QMLGRAPHICSRECT_H -#include <qmlgraphicsitem.h> -#include <QtGui/qbrush.h> +#include "qmlgraphicsitem.h" +#include <QtGui/qbrush.h> QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp b/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp index be10c24..a650999 100644 --- a/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp @@ -41,10 +41,12 @@ #include "qmlgraphicsrepeater_p.h" #include "qmlgraphicsrepeater_p_p.h" -#include <private/qmllistaccessor_p.h> -#include <private/qmlgraphicsvisualitemmodel_p.h> -#include <private/qlistmodelinterface_p.h> +#include "qmlgraphicsvisualitemmodel_p.h" + +#include <qmllistaccessor_p.h> + +#include <qlistmodelinterface_p.h> QT_BEGIN_NAMESPACE QmlGraphicsRepeaterPrivate::QmlGraphicsRepeaterPrivate() diff --git a/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h b/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h index c5d0166..61f82d7 100644 --- a/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSREPEATER_H #define QMLGRAPHICSREPEATER_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h b/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h index 4af0d9e..e6d7bfd 100644 --- a/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h @@ -53,10 +53,11 @@ // We mean it. // -#include "qmlgraphicsitem_p.h" #include "qmlgraphicsrepeater_p.h" -#include <QPointer> +#include "qmlgraphicsitem_p.h" + +#include <QPointer> QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp b/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp index 7517a3c..3fd14bb 100644 --- a/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp @@ -39,11 +39,12 @@ ** ****************************************************************************/ -#include <QBuffer> -#include <qml.h> -#include <QDebug> #include "qmlgraphicsscalegrid_p_p.h" +#include <qml.h> + +#include <QBuffer> +#include <QDebug> QT_BEGIN_NAMESPACE /*! diff --git a/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h b/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h index 82e0a94..c7d067d 100644 --- a/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h @@ -42,12 +42,13 @@ #ifndef QMLGRAPHICSSCALEGRID_H #define QMLGRAPHICSSCALEGRID_H -#include <QtCore/QString> -#include <QtCore/QObject> -#include <private/qmlpixmapcache_p.h> -#include <qml.h> #include "qmlgraphicsborderimage_p.h" +#include <qmlpixmapcache_p.h> +#include <qml.h> + +#include <QtCore/QString> +#include <QtCore/QObject> QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicstext.cpp b/src/declarative/graphicsitems/qmlgraphicstext.cpp index d0aec8d..854d503 100644 --- a/src/declarative/graphicsitems/qmlgraphicstext.cpp +++ b/src/declarative/graphicsitems/qmlgraphicstext.cpp @@ -42,8 +42,8 @@ #include "qmlgraphicstext_p.h" #include "qmlgraphicstext_p_p.h" -#include <private/qtextcontrol_p.h> -#include <private/qfxperf_p_p.h> +#include <qfxperf_p_p.h> + #include <QTextLayout> #include <QTextLine> #include <QTextDocument> @@ -52,6 +52,8 @@ #include <QPainter> #include <qmath.h> +#include <private/qtextcontrol_p.h> + QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,Text,QmlGraphicsText) @@ -116,6 +118,13 @@ QmlGraphicsText::~QmlGraphicsText() { } + +QmlGraphicsTextPrivate::~QmlGraphicsTextPrivate() +{ + delete control; + delete doc; +} + /*! \qmlproperty string Text::font.family \qmlproperty bool Text::font.bold diff --git a/src/declarative/graphicsitems/qmlgraphicstext_p.h b/src/declarative/graphicsitems/qmlgraphicstext_p.h index b6a5932..6ca460b 100644 --- a/src/declarative/graphicsitems/qmlgraphicstext_p.h +++ b/src/declarative/graphicsitems/qmlgraphicstext_p.h @@ -42,7 +42,7 @@ #ifndef QMLGRAPHICSTEXT_H #define QMLGRAPHICSTEXT_H -#include <qmlgraphicsitem.h> +#include "qmlgraphicsitem.h" QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicstext_p_p.h b/src/declarative/graphicsitems/qmlgraphicstext_p_p.h index 4ca1ad4..0ddae57 100644 --- a/src/declarative/graphicsitems/qmlgraphicstext_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicstext_p_p.h @@ -55,7 +55,9 @@ #include "qmlgraphicsitem.h" #include "qmlgraphicsitem_p.h" -#include "qml.h" + +#include <qml.h> + #include <QtGui/qtextlayout.h> QT_BEGIN_NAMESPACE @@ -76,6 +78,8 @@ public: { } + ~QmlGraphicsTextPrivate(); + void updateSize(); void checkImgCache(); diff --git a/src/declarative/graphicsitems/qmlgraphicstextedit.cpp b/src/declarative/graphicsitems/qmlgraphicstextedit.cpp index 3521638..747e2fb 100644 --- a/src/declarative/graphicsitems/qmlgraphicstextedit.cpp +++ b/src/declarative/graphicsitems/qmlgraphicstextedit.cpp @@ -41,17 +41,20 @@ #include "qmlgraphicstextedit_p.h" #include "qmlgraphicstextedit_p_p.h" -#include <private/qtextcontrol_p.h> -#include <private/qfxperf_p_p.h> -#include <private/qmlgraphicsevents_p_p.h> + +#include "qmlgraphicsevents_p_p.h" + +#include <qfxperf_p_p.h> + #include <QTextLayout> #include <QTextLine> #include <QTextDocument> #include <QGraphicsSceneMouseEvent> - #include <QDebug> #include <QPainter> +#include <private/qtextcontrol_p.h> + QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,TextEdit,QmlGraphicsTextEdit) diff --git a/src/declarative/graphicsitems/qmlgraphicstextedit_p.h b/src/declarative/graphicsitems/qmlgraphicstextedit_p.h index 1ddfa6b..0fe09f3 100644 --- a/src/declarative/graphicsitems/qmlgraphicstextedit_p.h +++ b/src/declarative/graphicsitems/qmlgraphicstextedit_p.h @@ -42,15 +42,14 @@ #ifndef QMLGRAPHICSTEXTEDIT_H #define QMLGRAPHICSTEXTEDIT_H -#include <private/qmlgraphicstext_p.h> -#include <private/qmlgraphicspainteditem_p.h> +#include "qmlgraphicstext_p.h" +#include "qmlgraphicspainteditem_p.h" #include <QtGui/qtextdocument.h> #include <QtGui/qtextoption.h> #include <QtGui/qtextcursor.h> #include <QtGui/qtextformat.h> - QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h b/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h index 6541921..8914bfd 100644 --- a/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h @@ -55,8 +55,8 @@ #include "qmlgraphicsitem.h" #include "qmlgraphicspainteditem_p_p.h" -#include "qml.h" +#include <qml.h> QT_BEGIN_NAMESPACE class QTextLayout; diff --git a/src/declarative/graphicsitems/qmlgraphicstextinput.cpp b/src/declarative/graphicsitems/qmlgraphicstextinput.cpp index b7d4e8c..ff6c32c 100644 --- a/src/declarative/graphicsitems/qmlgraphicstextinput.cpp +++ b/src/declarative/graphicsitems/qmlgraphicstextinput.cpp @@ -41,7 +41,9 @@ #include "qmlgraphicstextinput_p.h" #include "qmlgraphicstextinput_p_p.h" -#include "qmlinfo.h" + +#include <qmlinfo.h> + #include <QValidator> #include <QApplication> #include <QFontMetrics> diff --git a/src/declarative/graphicsitems/qmlgraphicstextinput_p.h b/src/declarative/graphicsitems/qmlgraphicstextinput_p.h index 87ceccf..c22c637 100644 --- a/src/declarative/graphicsitems/qmlgraphicstextinput_p.h +++ b/src/declarative/graphicsitems/qmlgraphicstextinput_p.h @@ -44,6 +44,7 @@ #include "qmlgraphicstext_p.h" #include "qmlgraphicspainteditem_p.h" + #include <QGraphicsSceneMouseEvent> #include <QIntValidator> diff --git a/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h b/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h index 4e9f209..9eb6e07 100644 --- a/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h @@ -43,10 +43,15 @@ #define QMLGRAPHICSTEXTINPUT_P_H #include "qmlgraphicstextinput_p.h" -#include "qml.h" + #include "qmlgraphicspainteditem_p_p.h" -#include "private/qlinecontrol_p.h" + +#include <qml.h> + #include <QPointer> + +#include <private/qlinecontrol_p.h> + // // W A R N I N G // ------------- diff --git a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp index e8ee196..b973d6c 100644 --- a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp @@ -39,22 +39,26 @@ ** ****************************************************************************/ -#include <private/qlistmodelinterface_p.h> +#include "qmlgraphicsvisualitemmodel_p.h" + #include "qmlgraphicsitem.h" + #include <qmlcontext.h> #include <qmlexpression.h> -#include <private/qmlpackage_p.h> -#include "qhash.h" -#include "qlist.h" -#include "private/qobject_p.h" -#include "private/qmetaobjectbuilder_p.h" -#include <private/qmlopenmetaobject_p.h> -#include <private/qmllistaccessor_p.h> -#include "qmlinfo.h" -#include "qmlgraphicsvisualitemmodel_p.h" -#include "private/qguard_p.h" +#include <qmlpackage_p.h> +#include <qmlopenmetaobject_p.h> +#include <qmllistaccessor_p.h> +#include <qmlinfo.h> + +#include <qlistmodelinterface_p.h> +#include <qhash.h> +#include <qlist.h> +#include <qmetaobjectbuilder_p.h> #include <QtCore/qdebug.h> +#include <private/qobject_p.h> +#include <private/qguard_p.h> + QML_DECLARE_TYPE(QListModelInterface) QT_BEGIN_NAMESPACE @@ -1055,4 +1059,4 @@ QML_DEFINE_TYPE(Qt,4,6,VisualDataModel,QmlGraphicsVisualDataModel) QT_END_NAMESPACE -#include "qmlgraphicsvisualitemmodel.moc" +#include <qmlgraphicsvisualitemmodel.moc> diff --git a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h index 9855867..4e76aee 100644 --- a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h +++ b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h @@ -42,10 +42,10 @@ #ifndef QMLGRAPHICSVISUALDATAMODEL_H #define QMLGRAPHICSVISUALDATAMODEL_H -#include <QtCore/qobject.h> -#include <QtCore/qabstractitemmodel.h> #include <qml.h> +#include <QtCore/qobject.h> +#include <QtCore/qabstractitemmodel.h> QT_BEGIN_HEADER diff --git a/src/declarative/graphicsitems/qmlgraphicswebview.cpp b/src/declarative/graphicsitems/qmlgraphicswebview.cpp index e21bda3..d2b8289 100644 --- a/src/declarative/graphicsitems/qmlgraphicswebview.cpp +++ b/src/declarative/graphicsitems/qmlgraphicswebview.cpp @@ -39,6 +39,15 @@ ** ****************************************************************************/ +#include "qmlgraphicswebview_p.h" +#include "qmlgraphicswebview_p_p.h" + +#include "qmlgraphicspainteditem_p_p.h" + +#include <qml.h> +#include <qmlengine.h> +#include <qmlstate_p.h> + #include <QDebug> #include <QPen> #include <QFile> @@ -52,15 +61,7 @@ #include <QtWebKit/QWebFrame> #include <QtWebKit/QWebElement> #include <QtWebKit/QWebSettings> - -#include "qml.h" -#include "qmlengine.h" -#include <private/qmlstate_p.h> -#include <private/qlistmodelinterface_p.h> - -#include "qmlgraphicswebview_p.h" -#include "qmlgraphicswebview_p_p.h" -#include <private/qmlgraphicspainteditem_p_p.h> +#include <qlistmodelinterface_p.h> QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,WebView,QmlGraphicsWebView) @@ -317,8 +318,6 @@ void QmlGraphicsWebView::setUrl(const QUrl &url) page()->setViewportSize(QSize( d->preferredwidth>0 ? d->preferredwidth : width(), d->preferredheight>0 ? d->preferredheight : height())); - if (d->preferredwidth > 0 && d->preferredheight > 0) - page()->setPreferredContentsSize(QSize(d->preferredwidth,d->preferredheight)); QUrl seturl = url; if (seturl.isEmpty()) seturl = QUrl(QLatin1String("about:blank")); @@ -349,7 +348,7 @@ void QmlGraphicsWebView::setPreferredWidth(int iw) Q_D(QmlGraphicsWebView); if (d->preferredwidth == iw) return; d->preferredwidth = iw; - expandToWebPage(); + //expandToWebPage(); emit preferredWidthChanged(); } @@ -397,7 +396,7 @@ void QmlGraphicsWebView::initialLayout() // nothing useful to do at this point } -void QmlGraphicsWebView::contentsSizeChanged(const QSize&) +void QmlGraphicsWebView::noteContentsSizeChanged(const QSize&) { expandToWebPage(); } @@ -416,10 +415,9 @@ void QmlGraphicsWebView::expandToWebPage() cs.setHeight(height()); if (cs != page()->viewportSize()) { page()->setViewportSize(cs); - clearCache(); - setImplicitWidth(cs.width()); - setImplicitHeight(cs.height()); } + if (cs != contentsSize()) + setContentsSize(cs); } void QmlGraphicsWebView::geometryChanged(const QRectF &newGeometry, @@ -432,9 +430,6 @@ void QmlGraphicsWebView::geometryChanged(const QRectF &newGeometry, void QmlGraphicsWebView::paintPage(const QRect& r) { - Q_D(QmlGraphicsWebView); - if (d->page->mainFrame()->contentsSize() != contentsSize()) - setContentsSize(d->page->mainFrame()->contentsSize()); dirtyCache(r); update(); } @@ -536,7 +531,7 @@ void QmlGraphicsWebView::drawContents(QPainter *p, const QRect &r) page()->mainFrame()->render(p,r); } -static QMouseEvent *sceneMouseEventToMouseEvent(QGraphicsSceneMouseEvent *e) +QMouseEvent *QmlGraphicsWebView::sceneMouseEventToMouseEvent(QGraphicsSceneMouseEvent *e) { QEvent::Type t; switch(e->type()) { @@ -555,15 +550,15 @@ static QMouseEvent *sceneMouseEventToMouseEvent(QGraphicsSceneMouseEvent *e) break; } - QMouseEvent *me = new QMouseEvent(t, e->pos().toPoint(), e->button(), e->buttons(), 0); + QMouseEvent *me = new QMouseEvent(t, (e->pos()/contentsScale()).toPoint(), e->button(), e->buttons(), 0); return me; } -static QMouseEvent *sceneHoverMoveEventToMouseEvent(QGraphicsSceneHoverEvent *e) +QMouseEvent *QmlGraphicsWebView::sceneHoverMoveEventToMouseEvent(QGraphicsSceneHoverEvent *e) { QEvent::Type t = QEvent::MouseMove; - QMouseEvent *me = new QMouseEvent(t, e->pos().toPoint(), Qt::NoButton, Qt::NoButton, 0); + QMouseEvent *me = new QMouseEvent(t, (e->pos()/contentsScale()).toPoint(), Qt::NoButton, Qt::NoButton, 0); return me; } @@ -601,15 +596,15 @@ void QmlGraphicsWebView::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) bool QmlGraphicsWebView::heuristicZoom(int clickX, int clickY, qreal maxzoom) { Q_D(QmlGraphicsWebView); - qreal ozf = zoomFactor(); - if (ozf >= maxzoom) + if (contentsScale() >= maxzoom/zoomFactor()) return false; + qreal ozf = contentsScale(); QRect showarea = elementAreaAt(clickX, clickY, d->preferredwidth/maxzoom, d->preferredheight/maxzoom); - qreal z = qMin(qreal(d->preferredwidth)*ozf/showarea.width(),qreal(d->preferredheight)*ozf/showarea.height()); - if (z > maxzoom) - z = maxzoom; - if (z/ozf > 1.1) { - QRectF r(showarea.left()/ozf*z, showarea.top()/ozf*z, showarea.width()/ozf*z, showarea.height()/ozf*z); + qreal z = qMin(qreal(d->preferredwidth)/showarea.width(),qreal(d->preferredheight)/showarea.height()); + if (z > maxzoom/zoomFactor()) + z = maxzoom/zoomFactor(); + if (z/ozf > 1.2) { + QRectF r(showarea.left()*z, showarea.top()*z, showarea.width()*z, showarea.height()*z); emit zoomTo(z,r.x()+r.width()/2, r.y()+r.height()/2); return true; } else { @@ -963,7 +958,7 @@ void QmlGraphicsWebView::setPage(QWebPage *page) connect(d->page->mainFrame(),SIGNAL(urlChanged(QUrl)),this,SLOT(pageUrlChanged())); connect(d->page->mainFrame(), SIGNAL(titleChanged(QString)), this, SIGNAL(titleChanged(QString))); connect(d->page->mainFrame(), SIGNAL(iconChanged()), this, SIGNAL(iconChanged())); - connect(d->page->mainFrame(), SIGNAL(contentsSizeChanged(QSize)), this, SLOT(contentsSizeChanged(QSize))); + connect(d->page->mainFrame(), SIGNAL(contentsSizeChanged(QSize)), this, SLOT(noteContentsSizeChanged(QSize))); connect(d->page->mainFrame(), SIGNAL(initialLayoutCompleted()), this, SLOT(initialLayout())); connect(d->page,SIGNAL(loadStarted()),this,SLOT(doLoadStarted())); @@ -1204,6 +1199,7 @@ QString QmlGraphicsWebPage::chooseFile(QWebFrame *originatingFrame, const QStrin void QmlGraphicsWebPage::javaScriptAlert(QWebFrame *originatingFrame, const QString& msg) { + Q_UNUSED(originatingFrame) emit viewItem()->alert(msg); } @@ -1218,6 +1214,10 @@ bool QmlGraphicsWebPage::javaScriptConfirm(QWebFrame *originatingFrame, const QS bool QmlGraphicsWebPage::javaScriptPrompt(QWebFrame *originatingFrame, const QString& msg, const QString& defaultValue, QString* result) { // Not supported (it's modal) + Q_UNUSED(originatingFrame) + Q_UNUSED(msg) + Q_UNUSED(defaultValue) + Q_UNUSED(result) return false; } @@ -1322,4 +1322,4 @@ QWebPage *QmlGraphicsWebPage::createWindow(WebWindowType type) QT_END_NAMESPACE -#include "qmlgraphicswebview.moc" +#include <qmlgraphicswebview.moc> diff --git a/src/declarative/graphicsitems/qmlgraphicswebview_p.h b/src/declarative/graphicsitems/qmlgraphicswebview_p.h index 7ff51f3..0b2ba07 100644 --- a/src/declarative/graphicsitems/qmlgraphicswebview_p.h +++ b/src/declarative/graphicsitems/qmlgraphicswebview_p.h @@ -42,9 +42,10 @@ #ifndef QMLGRAPHICSWEBVIEW_H #define QMLGRAPHICSWEBVIEW_H +#include "qmlgraphicspainteditem_p.h" + #include <QtGui/QAction> #include <QtCore/QUrl> -#include <private/qmlgraphicspainteditem_p.h> #include <QtNetwork/qnetworkaccessmanager.h> #include <QtWebKit/QWebPage> @@ -210,7 +211,7 @@ private Q_SLOTS: void setStatusText(const QString&); void windowObjectCleared(); void pageUrlChanged(); - void contentsSizeChanged(const QSize&); + void noteContentsSizeChanged(const QSize&); void initialLayout(); protected: @@ -235,6 +236,8 @@ private: virtual void componentComplete(); Q_DISABLE_COPY(QmlGraphicsWebView) Q_DECLARE_PRIVATE_D(QGraphicsItem::d_ptr.data(), QmlGraphicsWebView) + QMouseEvent *sceneMouseEventToMouseEvent(QGraphicsSceneMouseEvent *); + QMouseEvent *sceneHoverMoveEventToMouseEvent(QGraphicsSceneHoverEvent *); friend class QmlGraphicsWebPage; }; diff --git a/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h b/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h index 5063669..5659059 100644 --- a/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h +++ b/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h @@ -43,6 +43,7 @@ #define QMLGRAPHICSWEBVIEW_P_H #include <qml.h> + #include <QtWebKit/QWebPage> QT_BEGIN_HEADER diff --git a/src/declarative/qml/parser/parser.pri b/src/declarative/qml/parser/parser.pri index 986b146..4530479 100644 --- a/src/declarative/qml/parser/parser.pri +++ b/src/declarative/qml/parser/parser.pri @@ -1,22 +1,21 @@ - INCLUDEPATH += $$PWD -DEPENDPATH += $$PWD - -HEADERS += $$PWD/qmljsast_p.h \ - $$PWD/qmljsastfwd_p.h \ - $$PWD/qmljsastvisitor_p.h \ - $$PWD/qmljsengine_p.h \ - $$PWD/qmljsgrammar_p.h \ - $$PWD/qmljslexer_p.h \ - $$PWD/qmljsmemorypool_p.h \ - $$PWD/qmljsnodepool_p.h \ - $$PWD/qmljsparser_p.h \ - $$PWD/qmljsglobal_p.h -SOURCES += $$PWD/qmljsast.cpp \ - $$PWD/qmljsastvisitor.cpp \ - $$PWD/qmljsengine_p.cpp \ - $$PWD/qmljsgrammar.cpp \ - $$PWD/qmljslexer.cpp \ - $$PWD/qmljsparser.cpp +HEADERS += \ + $$PWD/qmljsast_p.h \ + $$PWD/qmljsastfwd_p.h \ + $$PWD/qmljsastvisitor_p.h \ + $$PWD/qmljsengine_p.h \ + $$PWD/qmljsgrammar_p.h \ + $$PWD/qmljslexer_p.h \ + $$PWD/qmljsmemorypool_p.h \ + $$PWD/qmljsnodepool_p.h \ + $$PWD/qmljsparser_p.h \ + $$PWD/qmljsglobal_p.h +SOURCES += \ + $$PWD/qmljsast.cpp \ + $$PWD/qmljsastvisitor.cpp \ + $$PWD/qmljsengine_p.cpp \ + $$PWD/qmljsgrammar.cpp \ + $$PWD/qmljslexer.cpp \ + $$PWD/qmljsparser.cpp diff --git a/src/declarative/qml/parser/qmljsast.cpp b/src/declarative/qml/parser/qmljsast.cpp index 6986bd2..2a39aae 100644 --- a/src/declarative/qml/parser/qmljsast.cpp +++ b/src/declarative/qml/parser/qmljsast.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmljsast_p.h" + #include "qmljsastvisitor_p.h" QT_QML_BEGIN_NAMESPACE diff --git a/src/declarative/qml/parser/qmljsast_p.h b/src/declarative/qml/parser/qmljsast_p.h index 388bc12..032fbb1 100644 --- a/src/declarative/qml/parser/qmljsast_p.h +++ b/src/declarative/qml/parser/qmljsast_p.h @@ -55,6 +55,7 @@ #include "qmljsastvisitor_p.h" #include "qmljsglobal_p.h" + #include <QtCore/QString> QT_QML_BEGIN_NAMESPACE @@ -118,7 +119,7 @@ _T1 cast(_T2 *ast) return 0; } -class Node +class QML_PARSER_EXPORT Node { public: enum Kind { @@ -242,7 +243,7 @@ public: int kind; }; -class ExpressionNode: public Node +class QML_PARSER_EXPORT ExpressionNode: public Node { public: ExpressionNode() {} @@ -254,7 +255,7 @@ public: virtual SourceLocation lastSourceLocation() const = 0; }; -class Statement: public Node +class QML_PARSER_EXPORT Statement: public Node { public: Statement() {} @@ -266,7 +267,7 @@ public: virtual SourceLocation lastSourceLocation() const = 0; }; -class UiFormal: public Node +class QML_PARSER_EXPORT UiFormal: public Node { public: QMLJS_DECLARE_AST_NODE(UiFormal) @@ -291,7 +292,7 @@ public: SourceLocation aliasToken; }; -class UiFormalList: public Node +class QML_PARSER_EXPORT UiFormalList: public Node { public: QMLJS_DECLARE_AST_NODE(UiFormalList) @@ -326,7 +327,7 @@ public: UiFormalList *next; }; -class UiSignature: public Node +class QML_PARSER_EXPORT UiSignature: public Node { public: QMLJS_DECLARE_AST_NODE(UiSignature) @@ -349,7 +350,7 @@ public: SourceLocation rparenToken; }; -class NestedExpression: public ExpressionNode +class QML_PARSER_EXPORT NestedExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(NestedExpression) @@ -372,7 +373,7 @@ public: SourceLocation rparenToken; }; -class ThisExpression: public ExpressionNode +class QML_PARSER_EXPORT ThisExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(ThisExpression) @@ -392,7 +393,7 @@ public: SourceLocation thisToken; }; -class IdentifierExpression: public ExpressionNode +class QML_PARSER_EXPORT IdentifierExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(IdentifierExpression) @@ -415,7 +416,7 @@ public: SourceLocation identifierToken; }; -class NullExpression: public ExpressionNode +class QML_PARSER_EXPORT NullExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(NullExpression) @@ -435,7 +436,7 @@ public: SourceLocation nullToken; }; -class TrueLiteral: public ExpressionNode +class QML_PARSER_EXPORT TrueLiteral: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(TrueLiteral) @@ -455,7 +456,7 @@ public: SourceLocation trueToken; }; -class FalseLiteral: public ExpressionNode +class QML_PARSER_EXPORT FalseLiteral: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(FalseLiteral) @@ -475,7 +476,7 @@ public: SourceLocation falseToken; }; -class NumericLiteral: public ExpressionNode +class QML_PARSER_EXPORT NumericLiteral: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(NumericLiteral) @@ -497,7 +498,7 @@ public: SourceLocation literalToken; }; -class StringLiteral: public ExpressionNode +class QML_PARSER_EXPORT StringLiteral: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(StringLiteral) @@ -520,7 +521,7 @@ public: SourceLocation literalToken; }; -class RegExpLiteral: public ExpressionNode +class QML_PARSER_EXPORT RegExpLiteral: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(RegExpLiteral) @@ -544,7 +545,7 @@ public: SourceLocation literalToken; }; -class ArrayLiteral: public ExpressionNode +class QML_PARSER_EXPORT ArrayLiteral: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(ArrayLiteral) @@ -579,7 +580,7 @@ public: SourceLocation rbracketToken; }; -class ObjectLiteral: public ExpressionNode +class QML_PARSER_EXPORT ObjectLiteral: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(ObjectLiteral) @@ -606,7 +607,7 @@ public: SourceLocation rbraceToken; }; -class ElementList: public Node +class QML_PARSER_EXPORT ElementList: public Node { public: QMLJS_DECLARE_AST_NODE(ElementList) @@ -641,7 +642,7 @@ public: SourceLocation commaToken; }; -class Elision: public Node +class QML_PARSER_EXPORT Elision: public Node { public: QMLJS_DECLARE_AST_NODE(Elision) @@ -672,7 +673,7 @@ public: SourceLocation commaToken; }; -class PropertyNameAndValueList: public Node +class QML_PARSER_EXPORT PropertyNameAndValueList: public Node { public: QMLJS_DECLARE_AST_NODE(PropertyNameAndValueList) @@ -708,7 +709,7 @@ public: SourceLocation commaToken; }; -class PropertyName: public Node +class QML_PARSER_EXPORT PropertyName: public Node { public: QMLJS_DECLARE_AST_NODE(PropertyName) @@ -720,7 +721,7 @@ public: SourceLocation propertyNameToken; }; -class IdentifierPropertyName: public PropertyName +class QML_PARSER_EXPORT IdentifierPropertyName: public PropertyName { public: QMLJS_DECLARE_AST_NODE(IdentifierPropertyName) @@ -736,7 +737,7 @@ public: NameId *id; }; -class StringLiteralPropertyName: public PropertyName +class QML_PARSER_EXPORT StringLiteralPropertyName: public PropertyName { public: QMLJS_DECLARE_AST_NODE(StringLiteralPropertyName) @@ -751,7 +752,7 @@ public: NameId *id; }; -class NumericLiteralPropertyName: public PropertyName +class QML_PARSER_EXPORT NumericLiteralPropertyName: public PropertyName { public: QMLJS_DECLARE_AST_NODE(NumericLiteralPropertyName) @@ -766,7 +767,7 @@ public: double id; }; -class ArrayMemberExpression: public ExpressionNode +class QML_PARSER_EXPORT ArrayMemberExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(ArrayMemberExpression) @@ -792,7 +793,7 @@ public: SourceLocation rbracketToken; }; -class FieldMemberExpression: public ExpressionNode +class QML_PARSER_EXPORT FieldMemberExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(FieldMemberExpression) @@ -818,7 +819,7 @@ public: SourceLocation identifierToken; }; -class NewMemberExpression: public ExpressionNode +class QML_PARSER_EXPORT NewMemberExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(NewMemberExpression) @@ -845,7 +846,7 @@ public: SourceLocation rparenToken; }; -class NewExpression: public ExpressionNode +class QML_PARSER_EXPORT NewExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(NewExpression) @@ -868,7 +869,7 @@ public: SourceLocation newToken; }; -class CallExpression: public ExpressionNode +class QML_PARSER_EXPORT CallExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(CallExpression) @@ -894,7 +895,7 @@ public: SourceLocation rparenToken; }; -class ArgumentList: public Node +class QML_PARSER_EXPORT ArgumentList: public Node { public: QMLJS_DECLARE_AST_NODE(ArgumentList) @@ -928,7 +929,7 @@ public: SourceLocation commaToken; }; -class PostIncrementExpression: public ExpressionNode +class QML_PARSER_EXPORT PostIncrementExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(PostIncrementExpression) @@ -951,7 +952,7 @@ public: SourceLocation incrementToken; }; -class PostDecrementExpression: public ExpressionNode +class QML_PARSER_EXPORT PostDecrementExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(PostDecrementExpression) @@ -974,7 +975,7 @@ public: SourceLocation decrementToken; }; -class DeleteExpression: public ExpressionNode +class QML_PARSER_EXPORT DeleteExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(DeleteExpression) @@ -996,7 +997,7 @@ public: SourceLocation deleteToken; }; -class VoidExpression: public ExpressionNode +class QML_PARSER_EXPORT VoidExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(VoidExpression) @@ -1019,7 +1020,7 @@ public: SourceLocation voidToken; }; -class TypeOfExpression: public ExpressionNode +class QML_PARSER_EXPORT TypeOfExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(TypeOfExpression) @@ -1042,7 +1043,7 @@ public: SourceLocation typeofToken; }; -class PreIncrementExpression: public ExpressionNode +class QML_PARSER_EXPORT PreIncrementExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(PreIncrementExpression) @@ -1065,7 +1066,7 @@ public: SourceLocation incrementToken; }; -class PreDecrementExpression: public ExpressionNode +class QML_PARSER_EXPORT PreDecrementExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(PreDecrementExpression) @@ -1088,7 +1089,7 @@ public: SourceLocation decrementToken; }; -class UnaryPlusExpression: public ExpressionNode +class QML_PARSER_EXPORT UnaryPlusExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(UnaryPlusExpression) @@ -1111,7 +1112,7 @@ public: SourceLocation plusToken; }; -class UnaryMinusExpression: public ExpressionNode +class QML_PARSER_EXPORT UnaryMinusExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(UnaryMinusExpression) @@ -1134,7 +1135,7 @@ public: SourceLocation minusToken; }; -class TildeExpression: public ExpressionNode +class QML_PARSER_EXPORT TildeExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(TildeExpression) @@ -1157,7 +1158,7 @@ public: SourceLocation tildeToken; }; -class NotExpression: public ExpressionNode +class QML_PARSER_EXPORT NotExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(NotExpression) @@ -1180,7 +1181,7 @@ public: SourceLocation notToken; }; -class BinaryExpression: public ExpressionNode +class QML_PARSER_EXPORT BinaryExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(BinaryExpression) @@ -1208,7 +1209,7 @@ public: SourceLocation operatorToken; }; -class ConditionalExpression: public ExpressionNode +class QML_PARSER_EXPORT ConditionalExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(ConditionalExpression) @@ -1235,7 +1236,7 @@ public: SourceLocation colonToken; }; -class Expression: public ExpressionNode // ### rename +class QML_PARSER_EXPORT Expression: public ExpressionNode // ### rename { public: QMLJS_DECLARE_AST_NODE(Expression) @@ -1259,7 +1260,7 @@ public: SourceLocation commaToken; }; -class Block: public Statement +class QML_PARSER_EXPORT Block: public Statement { public: QMLJS_DECLARE_AST_NODE(Block) @@ -1283,7 +1284,7 @@ public: SourceLocation rbraceToken; }; -class StatementList: public Node +class QML_PARSER_EXPORT StatementList: public Node { public: QMLJS_DECLARE_AST_NODE(StatementList) @@ -1316,7 +1317,7 @@ public: StatementList *next; }; -class VariableStatement: public Statement +class QML_PARSER_EXPORT VariableStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(VariableStatement) @@ -1341,7 +1342,7 @@ public: SourceLocation semicolonToken; }; -class VariableDeclaration: public Node +class QML_PARSER_EXPORT VariableDeclaration: public Node { public: QMLJS_DECLARE_AST_NODE(VariableDeclaration) @@ -1361,7 +1362,7 @@ public: SourceLocation identifierToken; }; -class VariableDeclarationList: public Node +class QML_PARSER_EXPORT VariableDeclarationList: public Node { public: QMLJS_DECLARE_AST_NODE(VariableDeclarationList) @@ -1400,7 +1401,7 @@ public: SourceLocation commaToken; }; -class EmptyStatement: public Statement +class QML_PARSER_EXPORT EmptyStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(EmptyStatement) @@ -1420,7 +1421,7 @@ public: SourceLocation semicolonToken; }; -class ExpressionStatement: public Statement +class QML_PARSER_EXPORT ExpressionStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(ExpressionStatement) @@ -1443,7 +1444,7 @@ public: SourceLocation semicolonToken; }; -class IfStatement: public Statement +class QML_PARSER_EXPORT IfStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(IfStatement) @@ -1477,7 +1478,7 @@ public: SourceLocation elseToken; }; -class DoWhileStatement: public Statement +class QML_PARSER_EXPORT DoWhileStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(DoWhileStatement) @@ -1506,7 +1507,7 @@ public: SourceLocation semicolonToken; }; -class WhileStatement: public Statement +class QML_PARSER_EXPORT WhileStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(WhileStatement) @@ -1533,7 +1534,7 @@ public: SourceLocation rparenToken; }; -class ForStatement: public Statement +class QML_PARSER_EXPORT ForStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(ForStatement) @@ -1564,7 +1565,7 @@ public: SourceLocation rparenToken; }; -class LocalForStatement: public Statement +class QML_PARSER_EXPORT LocalForStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(LocalForStatement) @@ -1596,7 +1597,7 @@ public: SourceLocation rparenToken; }; -class ForEachStatement: public Statement +class QML_PARSER_EXPORT ForEachStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(ForEachStatement) @@ -1625,7 +1626,7 @@ public: SourceLocation rparenToken; }; -class LocalForEachStatement: public Statement +class QML_PARSER_EXPORT LocalForEachStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(LocalForEachStatement) @@ -1655,7 +1656,7 @@ public: SourceLocation rparenToken; }; -class ContinueStatement: public Statement +class QML_PARSER_EXPORT ContinueStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(ContinueStatement) @@ -1680,7 +1681,7 @@ public: SourceLocation semicolonToken; }; -class BreakStatement: public Statement +class QML_PARSER_EXPORT BreakStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(BreakStatement) @@ -1705,7 +1706,7 @@ public: SourceLocation semicolonToken; }; -class ReturnStatement: public Statement +class QML_PARSER_EXPORT ReturnStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(ReturnStatement) @@ -1729,7 +1730,7 @@ public: SourceLocation semicolonToken; }; -class WithStatement: public Statement +class QML_PARSER_EXPORT WithStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(WithStatement) @@ -1756,7 +1757,7 @@ public: SourceLocation rparenToken; }; -class CaseBlock: public Node +class QML_PARSER_EXPORT CaseBlock: public Node { public: QMLJS_DECLARE_AST_NODE(CaseBlock) @@ -1777,7 +1778,7 @@ public: SourceLocation rbraceToken; }; -class SwitchStatement: public Statement +class QML_PARSER_EXPORT SwitchStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(SwitchStatement) @@ -1804,7 +1805,7 @@ public: SourceLocation rparenToken; }; -class CaseClauses: public Node +class QML_PARSER_EXPORT CaseClauses: public Node { public: QMLJS_DECLARE_AST_NODE(CaseClauses) @@ -1837,7 +1838,7 @@ public: CaseClauses *next; }; -class CaseClause: public Node +class QML_PARSER_EXPORT CaseClause: public Node { public: QMLJS_DECLARE_AST_NODE(CaseClause) @@ -1857,7 +1858,7 @@ public: SourceLocation colonToken; }; -class DefaultClause: public Node +class QML_PARSER_EXPORT DefaultClause: public Node { public: QMLJS_DECLARE_AST_NODE(DefaultClause) @@ -1876,7 +1877,7 @@ public: SourceLocation colonToken; }; -class LabelledStatement: public Statement +class QML_PARSER_EXPORT LabelledStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(LabelledStatement) @@ -1902,7 +1903,7 @@ public: SourceLocation colonToken; }; -class ThrowStatement: public Statement +class QML_PARSER_EXPORT ThrowStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(ThrowStatement) @@ -1926,7 +1927,7 @@ public: SourceLocation semicolonToken; }; -class Catch: public Node +class QML_PARSER_EXPORT Catch: public Node { public: QMLJS_DECLARE_AST_NODE(Catch) @@ -1948,7 +1949,7 @@ public: SourceLocation rparenToken; }; -class Finally: public Node +class QML_PARSER_EXPORT Finally: public Node { public: QMLJS_DECLARE_AST_NODE(Finally) @@ -1966,7 +1967,7 @@ public: SourceLocation finallyToken; }; -class TryStatement: public Statement +class QML_PARSER_EXPORT TryStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(TryStatement) @@ -2007,7 +2008,7 @@ public: SourceLocation tryToken; }; -class FunctionExpression: public ExpressionNode +class QML_PARSER_EXPORT FunctionExpression: public ExpressionNode { public: QMLJS_DECLARE_AST_NODE(FunctionExpression) @@ -2038,7 +2039,7 @@ public: SourceLocation rbraceToken; }; -class FunctionDeclaration: public FunctionExpression +class QML_PARSER_EXPORT FunctionDeclaration: public FunctionExpression { public: QMLJS_DECLARE_AST_NODE(FunctionDeclaration) @@ -2052,7 +2053,7 @@ public: virtual void accept0(Visitor *visitor); }; -class FormalParameterList: public Node +class QML_PARSER_EXPORT FormalParameterList: public Node { public: QMLJS_DECLARE_AST_NODE(FormalParameterList) @@ -2087,7 +2088,7 @@ public: SourceLocation identifierToken; }; -class FunctionBody: public Node +class QML_PARSER_EXPORT FunctionBody: public Node { public: QMLJS_DECLARE_AST_NODE(FunctionBody) @@ -2104,7 +2105,7 @@ public: SourceElements *elements; }; -class Program: public Node +class QML_PARSER_EXPORT Program: public Node { public: QMLJS_DECLARE_AST_NODE(Program) @@ -2121,7 +2122,7 @@ public: SourceElements *elements; }; -class SourceElements: public Node +class QML_PARSER_EXPORT SourceElements: public Node { public: QMLJS_DECLARE_AST_NODE(SourceElements) @@ -2154,7 +2155,7 @@ public: SourceElements *next; }; -class SourceElement: public Node +class QML_PARSER_EXPORT SourceElement: public Node { public: QMLJS_DECLARE_AST_NODE(SourceElement) @@ -2165,7 +2166,7 @@ public: virtual ~SourceElement() {} }; -class FunctionSourceElement: public SourceElement +class QML_PARSER_EXPORT FunctionSourceElement: public SourceElement { public: QMLJS_DECLARE_AST_NODE(FunctionSourceElement) @@ -2182,7 +2183,7 @@ public: FunctionDeclaration *declaration; }; -class StatementSourceElement: public SourceElement +class QML_PARSER_EXPORT StatementSourceElement: public SourceElement { public: QMLJS_DECLARE_AST_NODE(StatementSourceElement) @@ -2199,7 +2200,7 @@ public: Statement *statement; }; -class DebuggerStatement: public Statement +class QML_PARSER_EXPORT DebuggerStatement: public Statement { public: QMLJS_DECLARE_AST_NODE(DebuggerStatement) @@ -2222,7 +2223,7 @@ public: SourceLocation semicolonToken; }; -class UiProgram: public Node +class QML_PARSER_EXPORT UiProgram: public Node { public: QMLJS_DECLARE_AST_NODE(UiProgram) @@ -2238,7 +2239,7 @@ public: UiObjectMemberList *members; }; -class UiQualifiedId: public Node +class QML_PARSER_EXPORT UiQualifiedId: public Node { public: QMLJS_DECLARE_AST_NODE(UiQualifiedId) @@ -2272,7 +2273,7 @@ public: SourceLocation identifierToken; }; -class UiImport: public Node +class QML_PARSER_EXPORT UiImport: public Node { public: QMLJS_DECLARE_AST_NODE(UiImport) @@ -2305,7 +2306,7 @@ public: SourceLocation semicolonToken; }; -class UiImportList: public Node +class QML_PARSER_EXPORT UiImportList: public Node { public: QMLJS_DECLARE_AST_NODE(UiImportList) @@ -2352,7 +2353,7 @@ public: UiImportList *next; }; -class UiObjectMember: public Node +class QML_PARSER_EXPORT UiObjectMember: public Node { public: virtual SourceLocation firstSourceLocation() const = 0; @@ -2361,7 +2362,7 @@ public: virtual UiObjectMember *uiObjectMemberCast(); }; -class UiObjectMemberList: public Node +class QML_PARSER_EXPORT UiObjectMemberList: public Node { public: QMLJS_DECLARE_AST_NODE(UiObjectMemberList) @@ -2392,7 +2393,7 @@ public: UiObjectMember *member; }; -class UiArrayMemberList: public Node +class QML_PARSER_EXPORT UiArrayMemberList: public Node { public: QMLJS_DECLARE_AST_NODE(UiArrayMemberList) @@ -2424,7 +2425,7 @@ public: SourceLocation commaToken; }; -class UiObjectInitializer: public Node +class QML_PARSER_EXPORT UiObjectInitializer: public Node { public: QMLJS_DECLARE_AST_NODE(UiObjectInitializer) @@ -2441,7 +2442,7 @@ public: SourceLocation rbraceToken; }; -class UiParameterList: public Node +class QML_PARSER_EXPORT UiParameterList: public Node { public: QMLJS_DECLARE_AST_NODE(UiParameterList) @@ -2477,7 +2478,7 @@ public: SourceLocation identifierToken; }; -class UiPublicMember: public UiObjectMember +class QML_PARSER_EXPORT UiPublicMember: public UiObjectMember { public: QMLJS_DECLARE_AST_NODE(UiPublicMember) @@ -2529,7 +2530,7 @@ public: SourceLocation semicolonToken; }; -class UiObjectDefinition: public UiObjectMember +class QML_PARSER_EXPORT UiObjectDefinition: public UiObjectMember { public: QMLJS_DECLARE_AST_NODE(UiObjectDefinition) @@ -2552,7 +2553,7 @@ public: UiObjectInitializer *initializer; }; -class UiSourceElement: public UiObjectMember +class QML_PARSER_EXPORT UiSourceElement: public UiObjectMember { public: QMLJS_DECLARE_AST_NODE(UiSourceElement) @@ -2588,7 +2589,7 @@ public: Node *sourceElement; }; -class UiObjectBinding: public UiObjectMember +class QML_PARSER_EXPORT UiObjectBinding: public UiObjectMember { public: QMLJS_DECLARE_AST_NODE(UiObjectBinding) @@ -2616,7 +2617,7 @@ public: SourceLocation colonToken; }; -class UiScriptBinding: public UiObjectMember +class QML_PARSER_EXPORT UiScriptBinding: public UiObjectMember { public: QMLJS_DECLARE_AST_NODE(UiScriptBinding) @@ -2641,7 +2642,7 @@ public: SourceLocation colonToken; }; -class UiArrayBinding: public UiObjectMember +class QML_PARSER_EXPORT UiArrayBinding: public UiObjectMember { public: QMLJS_DECLARE_AST_NODE(UiArrayBinding) diff --git a/src/declarative/qml/parser/qmljsastfwd_p.h b/src/declarative/qml/parser/qmljsastfwd_p.h index b558a23..f571a2e 100644 --- a/src/declarative/qml/parser/qmljsastfwd_p.h +++ b/src/declarative/qml/parser/qmljsastfwd_p.h @@ -42,9 +42,10 @@ #ifndef QMLJSAST_FWD_P_H #define QMLJSAST_FWD_P_H -#include <QtCore/qglobal.h> #include "qmljsglobal_p.h" +#include <QtCore/qglobal.h> + // // W A R N I N G // ------------- diff --git a/src/declarative/qml/parser/qmljsastvisitor_p.h b/src/declarative/qml/parser/qmljsastvisitor_p.h index 7db84b0..1b50bcc 100644 --- a/src/declarative/qml/parser/qmljsastvisitor_p.h +++ b/src/declarative/qml/parser/qmljsastvisitor_p.h @@ -60,7 +60,7 @@ QT_QML_BEGIN_NAMESPACE namespace QmlJS { namespace AST { -class Visitor +class QML_PARSER_EXPORT Visitor { public: Visitor(); diff --git a/src/declarative/qml/parser/qmljsengine_p.cpp b/src/declarative/qml/parser/qmljsengine_p.cpp index cee90a3..b8ecd18 100644 --- a/src/declarative/qml/parser/qmljsengine_p.cpp +++ b/src/declarative/qml/parser/qmljsengine_p.cpp @@ -39,9 +39,11 @@ ** ****************************************************************************/ -#include "qmljsglobal_p.h" #include "qmljsengine_p.h" + +#include "qmljsglobal_p.h" #include "qmljsnodepool_p.h" + #include <qnumeric.h> #include <QHash> diff --git a/src/declarative/qml/parser/qmljsengine_p.h b/src/declarative/qml/parser/qmljsengine_p.h index a60c515..2c15af3 100644 --- a/src/declarative/qml/parser/qmljsengine_p.h +++ b/src/declarative/qml/parser/qmljsengine_p.h @@ -53,16 +53,16 @@ // We mean it. // -#include <QString> -#include <QSet> - #include "qmljsglobal_p.h" #include "qmljsastfwd_p.h" +#include <QString> +#include <QSet> + QT_QML_BEGIN_NAMESPACE namespace QmlJS { -class NameId +class QML_PARSER_EXPORT NameId { QString _text; @@ -101,7 +101,7 @@ class NodePool; namespace Ecma { -class RegExp +class QML_PARSER_EXPORT RegExp { public: enum RegExpFlag { @@ -117,7 +117,7 @@ public: } // end of namespace Ecma -class DiagnosticMessage +class QML_PARSER_EXPORT DiagnosticMessage { public: enum Kind { Warning, Error }; @@ -139,7 +139,7 @@ public: QString message; }; -class Engine +class QML_PARSER_EXPORT Engine { Lexer *_lexer; NodePool *_nodePool; diff --git a/src/declarative/qml/parser/qmljsglobal_p.h b/src/declarative/qml/parser/qmljsglobal_p.h index c91de49..59762ff 100644 --- a/src/declarative/qml/parser/qmljsglobal_p.h +++ b/src/declarative/qml/parser/qmljsglobal_p.h @@ -44,11 +44,21 @@ #include <QtCore/qglobal.h> #ifdef QT_CREATOR -#define QT_QML_BEGIN_NAMESPACE -#define QT_QML_END_NAMESPACE +# define QT_QML_BEGIN_NAMESPACE +# define QT_QML_END_NAMESPACE + +# ifdef QML_BUILD_LIB +# define QML_PARSER_EXPORT Q_DECL_EXPORT +# elif QML_BUILD_STATIC_LIB +# define QML_PARSER_EXPORT +# else +# define QML_PARSER_EXPORT Q_DECL_IMPORT +# endif // QML_BUILD_LIB + #else // !QT_CREATOR -#define QT_QML_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE -#define QT_QML_END_NAMESPACE QT_END_NAMESPACE +# define QT_QML_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE +# define QT_QML_END_NAMESPACE QT_END_NAMESPACE +# define QML_PARSER_EXPORT #endif // QT_CREATOR #endif // QMLJSGLOBAL_P_H diff --git a/src/declarative/qml/parser/qmljslexer.cpp b/src/declarative/qml/parser/qmljslexer.cpp index d316f93..e9ea604 100644 --- a/src/declarative/qml/parser/qmljslexer.cpp +++ b/src/declarative/qml/parser/qmljslexer.cpp @@ -40,12 +40,13 @@ ****************************************************************************/ #ifdef HAVE_CONFIG_H -#include "config.h" +#include <config.h> #endif +#include "qmljslexer_p.h" + #include "qmljsglobal_p.h" #include "qmljsengine_p.h" -#include "qmljslexer_p.h" #include "qmljsgrammar_p.h" #include <QtGui/qapplication.h> diff --git a/src/declarative/qml/parser/qmljslexer_p.h b/src/declarative/qml/parser/qmljslexer_p.h index f499750..b830071 100644 --- a/src/declarative/qml/parser/qmljslexer_p.h +++ b/src/declarative/qml/parser/qmljslexer_p.h @@ -53,10 +53,10 @@ // We mean it. // -#include <QtCore/QString> - #include "qmljsglobal_p.h" +#include <QtCore/QString> + QT_QML_BEGIN_NAMESPACE namespace QmlJS { @@ -64,7 +64,7 @@ namespace QmlJS { class Engine; class NameId; -class Lexer +class QML_PARSER_EXPORT Lexer { public: Lexer(Engine *eng, bool tokenizeComments = false); diff --git a/src/declarative/qml/parser/qmljsmemorypool_p.h b/src/declarative/qml/parser/qmljsmemorypool_p.h index 24a2145..3da2678 100644 --- a/src/declarative/qml/parser/qmljsmemorypool_p.h +++ b/src/declarative/qml/parser/qmljsmemorypool_p.h @@ -53,17 +53,18 @@ // We mean it. // +#include "qmljsglobal_p.h" + #include <QtCore/qglobal.h> #include <QtCore/qshareddata.h> -#include <string.h> -#include "qmljsglobal_p.h" +#include <string.h> QT_QML_BEGIN_NAMESPACE namespace QmlJS { -class MemoryPool : public QSharedData +class QML_PARSER_EXPORT MemoryPool : public QSharedData { public: enum { maxBlockCount = -1 }; diff --git a/src/declarative/qml/parser/qmljsnodepool_p.h b/src/declarative/qml/parser/qmljsnodepool_p.h index ca4d729..abe4cc8 100644 --- a/src/declarative/qml/parser/qmljsnodepool_p.h +++ b/src/declarative/qml/parser/qmljsnodepool_p.h @@ -53,12 +53,12 @@ // We mean it. // -#include <QtCore/QHash> -#include <QtCore/QString> - #include "qmljsglobal_p.h" #include "qmljsmemorypool_p.h" +#include <QtCore/QHash> +#include <QtCore/QString> + QT_QML_BEGIN_NAMESPACE namespace QmlJS { @@ -106,7 +106,7 @@ inline NodeType *makeAstNode(MemoryPool *storage, Arg1 arg1, Arg2 arg2, Arg3 arg return node; } -class NodePool : public MemoryPool +class QML_PARSER_EXPORT NodePool : public MemoryPool { public: NodePool(const QString &fileName, Engine *engine); diff --git a/src/declarative/qml/parser/qmljsparser.cpp b/src/declarative/qml/parser/qmljsparser.cpp index 453503b..7a81557 100644 --- a/src/declarative/qml/parser/qmljsparser.cpp +++ b/src/declarative/qml/parser/qmljsparser.cpp @@ -41,21 +41,19 @@ ** ****************************************************************************/ -#include <QtCore/QtDebug> -#include <QtGui/QApplication> - -#include <string.h> +#include "qmljsparser_p.h" #include "qmljsengine_p.h" #include "qmljslexer_p.h" #include "qmljsast_p.h" #include "qmljsnodepool_p.h" - - -#include "qmljsparser_p.h" +#include <QtCore/QtDebug> +#include <QtGui/QApplication> #include <QVarLengthArray> +#include <string.h> + // // This file is automatically generated from qmljs.g. // Changes will be lost. diff --git a/src/declarative/qml/parser/qmljsparser_p.h b/src/declarative/qml/parser/qmljsparser_p.h index 7fad58a..2cefb5c 100644 --- a/src/declarative/qml/parser/qmljsparser_p.h +++ b/src/declarative/qml/parser/qmljsparser_p.h @@ -75,7 +75,7 @@ namespace QmlJS { class Engine; class NameId; -class Parser: protected QmlJSGrammar +class QML_PARSER_EXPORT Parser: protected QmlJSGrammar { public: union Value { diff --git a/src/declarative/qml/qmetaobjectbuilder.cpp b/src/declarative/qml/qmetaobjectbuilder.cpp index c421c76..11b9f80 100644 --- a/src/declarative/qml/qmetaobjectbuilder.cpp +++ b/src/declarative/qml/qmetaobjectbuilder.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmetaobjectbuilder_p.h" + #ifndef Q_OS_WIN #include <stdint.h> #endif diff --git a/src/declarative/qml/qml.h b/src/declarative/qml/qml.h index 323525b..c009093 100644 --- a/src/declarative/qml/qml.h +++ b/src/declarative/qml/qml.h @@ -42,15 +42,16 @@ #ifndef QML_H #define QML_H +#include "qmlmetatype.h" +#include "qmlmetaproperty.h" +#include "qmlparserstatus.h" +#include "qmlpropertyvaluesource.h" +#include "qmllist.h" + #include <QtCore/qbytearray.h> #include <QtCore/qstringlist.h> #include <QtCore/qurl.h> #include <QtCore/qmetaobject.h> -#include <qmlmetatype.h> -#include <qmlmetaproperty.h> -#include <qmlparserstatus.h> -#include <qmlpropertyvaluesource.h> -#include <qmllist.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qml.pri b/src/declarative/qml/qml.pri index 2167ab3..1155a36 100644 --- a/src/declarative/qml/qml.pri +++ b/src/declarative/qml/qml.pri @@ -1,118 +1,122 @@ -SOURCES += qml/qmlparser.cpp \ - qml/qmlinstruction.cpp \ - qml/qmlvmemetaobject.cpp \ - qml/qmlengine.cpp \ - qml/qmlexpression.cpp \ - qml/qmlbinding.cpp \ - qml/qmlmetaproperty.cpp \ - qml/qmlcomponent.cpp \ - qml/qmlcontext.cpp \ - qml/qmlcustomparser.cpp \ - qml/qmlpropertyvaluesource.cpp \ - qml/qmlpropertyvalueinterceptor.cpp \ - qml/qmlproxymetaobject.cpp \ - qml/qmlvme.cpp \ - qml/qmlcompiler.cpp \ - qml/qmlcompileddata.cpp \ - qml/qmlboundsignal.cpp \ - qml/qmldom.cpp \ - qml/qmlrefcount.cpp \ - qml/qmlprivate.cpp \ - qml/qmlmetatype.cpp \ - qml/qmlstringconverters.cpp \ - qml/qmlclassfactory.cpp \ - qml/qmlparserstatus.cpp \ - qml/qmlcompositetypemanager.cpp \ - qml/qmlinfo.cpp \ - qml/qmlerror.cpp \ - qml/qmlscriptparser.cpp \ - qml/qmlenginedebug.cpp \ - qml/qmlrewrite.cpp \ - qml/qmlbasicscript.cpp \ - qml/qmlvaluetype.cpp \ - qml/qmlbindingoptimizations.cpp \ - qml/qmlxmlhttprequest.cpp \ - qml/qmlsqldatabase.cpp \ - qml/qmetaobjectbuilder.cpp \ - qml/qmlwatcher.cpp \ - qml/qmlscript.cpp \ - qml/qmlcleanup.cpp \ - qml/qmlpropertycache.cpp \ - qml/qmlintegercache.cpp \ - qml/qmltypenamecache.cpp \ - qml/qmlscriptstring.cpp \ - qml/qmlobjectscriptclass.cpp \ - qml/qmlcontextscriptclass.cpp \ - qml/qmlglobalscriptclass.cpp \ - qml/qmlvaluetypescriptclass.cpp \ - qml/qmltypenamescriptclass.cpp \ - qml/qmllistscriptclass.cpp \ - qml/qmlworkerscript.cpp +INCLUDEPATH += $$PWD + +SOURCES += \ + $$PWD/qmlparser.cpp \ + $$PWD/qmlinstruction.cpp \ + $$PWD/qmlvmemetaobject.cpp \ + $$PWD/qmlengine.cpp \ + $$PWD/qmlexpression.cpp \ + $$PWD/qmlbinding.cpp \ + $$PWD/qmlmetaproperty.cpp \ + $$PWD/qmlcomponent.cpp \ + $$PWD/qmlcontext.cpp \ + $$PWD/qmlcustomparser.cpp \ + $$PWD/qmlpropertyvaluesource.cpp \ + $$PWD/qmlpropertyvalueinterceptor.cpp \ + $$PWD/qmlproxymetaobject.cpp \ + $$PWD/qmlvme.cpp \ + $$PWD/qmlcompiler.cpp \ + $$PWD/qmlcompileddata.cpp \ + $$PWD/qmlboundsignal.cpp \ + $$PWD/qmldom.cpp \ + $$PWD/qmlrefcount.cpp \ + $$PWD/qmlprivate.cpp \ + $$PWD/qmlmetatype.cpp \ + $$PWD/qmlstringconverters.cpp \ + $$PWD/qmlclassfactory.cpp \ + $$PWD/qmlparserstatus.cpp \ + $$PWD/qmlcompositetypemanager.cpp \ + $$PWD/qmlinfo.cpp \ + $$PWD/qmlerror.cpp \ + $$PWD/qmlscriptparser.cpp \ + $$PWD/qmlenginedebug.cpp \ + $$PWD/qmlrewrite.cpp \ + $$PWD/qmlbasicscript.cpp \ + $$PWD/qmlvaluetype.cpp \ + $$PWD/qmlbindingoptimizations.cpp \ + $$PWD/qmlxmlhttprequest.cpp \ + $$PWD/qmlsqldatabase.cpp \ + $$PWD/qmetaobjectbuilder.cpp \ + $$PWD/qmlwatcher.cpp \ + $$PWD/qmlscript.cpp \ + $$PWD/qmlcleanup.cpp \ + $$PWD/qmlpropertycache.cpp \ + $$PWD/qmlintegercache.cpp \ + $$PWD/qmltypenamecache.cpp \ + $$PWD/qmlscriptstring.cpp \ + $$PWD/qmlobjectscriptclass.cpp \ + $$PWD/qmlcontextscriptclass.cpp \ + $$PWD/qmlglobalscriptclass.cpp \ + $$PWD/qmlvaluetypescriptclass.cpp \ + $$PWD/qmltypenamescriptclass.cpp \ + $$PWD/qmllistscriptclass.cpp \ + $$PWD/qmlworkerscript.cpp + +HEADERS += \ + $$PWD/qmlparser_p.h \ + $$PWD/qmlglobal_p.h \ + $$PWD/qmlinstruction_p.h \ + $$PWD/qmlvmemetaobject_p.h \ + $$PWD/qml.h \ + $$PWD/qmlbinding.h \ + $$PWD/qmlbinding_p.h \ + $$PWD/qmlmetaproperty.h \ + $$PWD/qmlcomponent.h \ + $$PWD/qmlcomponent_p.h \ + $$PWD/qmlcustomparser_p.h \ + $$PWD/qmlcustomparser_p_p.h \ + $$PWD/qmlpropertyvaluesource.h \ + $$PWD/qmlpropertyvalueinterceptor.h \ + $$PWD/qmlboundsignal_p.h \ + $$PWD/qmlparserstatus.h \ + $$PWD/qmlproxymetaobject_p.h \ + $$PWD/qmlvme_p.h \ + $$PWD/qmlcompiler_p.h \ + $$PWD/qmlengine_p.h \ + $$PWD/qmlexpression_p.h \ + $$PWD/qmlprivate.h \ + $$PWD/qmldom.h \ + $$PWD/qmldom_p.h \ + $$PWD/qmlrefcount_p.h \ + $$PWD/qmlmetatype.h \ + $$PWD/qmlengine.h \ + $$PWD/qmlcontext.h \ + $$PWD/qmlexpression.h \ + $$PWD/qmlstringconverters_p.h \ + $$PWD/qmlclassfactory_p.h \ + $$PWD/qmlinfo.h \ + $$PWD/qmlmetaproperty_p.h \ + $$PWD/qmlcontext_p.h \ + $$PWD/qmlcompositetypedata_p.h \ + $$PWD/qmlcompositetypemanager_p.h \ + $$PWD/qmllist.h \ + $$PWD/qmldeclarativedata_p.h \ + $$PWD/qmlerror.h \ + $$PWD/qmlscriptparser_p.h \ + $$PWD/qmlbasicscript_p.h \ + $$PWD/qmlenginedebug_p.h \ + $$PWD/qmlrewrite_p.h \ + $$PWD/qpodvector_p.h \ + $$PWD/qbitfield_p.h \ + $$PWD/qmlvaluetype_p.h \ + $$PWD/qmlbindingoptimizations_p.h \ + $$PWD/qmlxmlhttprequest_p.h \ + $$PWD/qmlsqldatabase_p.h \ + $$PWD/qmetaobjectbuilder_p.h \ + $$PWD/qmlwatcher_p.h \ + $$PWD/qmlcleanup_p.h \ + $$PWD/qmlpropertycache_p.h \ + $$PWD/qmlintegercache_p.h \ + $$PWD/qmltypenamecache_p.h \ + $$PWD/qmlscriptstring.h \ + $$PWD/qmlobjectscriptclass_p.h \ + $$PWD/qmlcontextscriptclass_p.h \ + $$PWD/qmlglobalscriptclass_p.h \ + $$PWD/qmlvaluetypescriptclass_p.h \ + $$PWD/qmltypenamescriptclass_p.h \ + $$PWD/qmllistscriptclass_p.h \ + $$PWD/qmlworkerscript_p.h -HEADERS += qml/qmlparser_p.h \ - qml/qmlglobal_p.h \ - qml/qmlinstruction_p.h \ - qml/qmlvmemetaobject_p.h \ - qml/qml.h \ - qml/qmlbinding.h \ - qml/qmlbinding_p.h \ - qml/qmlmetaproperty.h \ - qml/qmlcomponent.h \ - qml/qmlcomponent_p.h \ - qml/qmlcustomparser_p.h \ - qml/qmlcustomparser_p_p.h \ - qml/qmlpropertyvaluesource.h \ - qml/qmlpropertyvalueinterceptor.h \ - qml/qmlboundsignal_p.h \ - qml/qmlparserstatus.h \ - qml/qmlproxymetaobject_p.h \ - qml/qmlvme_p.h \ - qml/qmlcompiler_p.h \ - qml/qmlengine_p.h \ - qml/qmlexpression_p.h \ - qml/qmlprivate.h \ - qml/qmldom.h \ - qml/qmldom_p.h \ - qml/qmlrefcount_p.h \ - qml/qmlmetatype.h \ - qml/qmlengine.h \ - qml/qmlcontext.h \ - qml/qmlexpression.h \ - qml/qmlstringconverters_p.h \ - qml/qmlclassfactory_p.h \ - qml/qmlinfo.h \ - qml/qmlmetaproperty_p.h \ - qml/qmlcontext_p.h \ - qml/qmlcompositetypedata_p.h \ - qml/qmlcompositetypemanager_p.h \ - qml/qmllist.h \ - qml/qmldeclarativedata_p.h \ - qml/qmlerror.h \ - qml/qmlscriptparser_p.h \ - qml/qmlbasicscript_p.h \ - qml/qmlenginedebug_p.h \ - qml/qmlrewrite_p.h \ - qml/qpodvector_p.h \ - qml/qbitfield_p.h \ - qml/qmlvaluetype_p.h \ - qml/qmlbindingoptimizations_p.h \ - qml/qmlxmlhttprequest_p.h \ - qml/qmlsqldatabase_p.h \ - qml/qmetaobjectbuilder_p.h \ - qml/qmlwatcher_p.h \ - qml/qmlcleanup_p.h \ - qml/qmlpropertycache_p.h \ - qml/qmlintegercache_p.h \ - qml/qmltypenamecache_p.h \ - qml/qmlscriptstring.h \ - qml/qmlobjectscriptclass_p.h \ - qml/qmlcontextscriptclass_p.h \ - qml/qmlglobalscriptclass_p.h \ - qml/qmlvaluetypescriptclass_p.h \ - qml/qmltypenamescriptclass_p.h \ - qml/qmllistscriptclass_p.h \ - qml/qmlworkerscript_p.h - QT += sql include(parser/parser.pri) diff --git a/src/declarative/qml/qmlbasicscript.cpp b/src/declarative/qml/qmlbasicscript.cpp index b3bcf42..6a32df7 100644 --- a/src/declarative/qml/qmlbasicscript.cpp +++ b/src/declarative/qml/qmlbasicscript.cpp @@ -40,16 +40,19 @@ ****************************************************************************/ #include "qmlbasicscript_p.h" + +#include "qmlengine_p.h" +#include "qmlcontext_p.h" +#include "qmlrefcount_p.h" +#include "qmlglobal_p.h" + +#include <qfxperf_p_p.h> +#include <qmljsast_p.h> +#include <qmljsengine_p.h> + #include <QColor> #include <QDebug> -#include <private/qmlengine_p.h> -#include <private/qmlcontext_p.h> #include <QStack> -#include <private/qfxperf_p_p.h> -#include <private/qmlrefcount_p.h> -#include <private/qmljsast_p.h> -#include <private/qmljsengine_p.h> -#include <private/qmlglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlbasicscript_p.h b/src/declarative/qml/qmlbasicscript_p.h index 57d4fa7..830d2bd 100644 --- a/src/declarative/qml/qmlbasicscript_p.h +++ b/src/declarative/qml/qmlbasicscript_p.h @@ -53,10 +53,11 @@ // We mean it. // +#include "qmlparser_p.h" + #include <QtCore/QList> #include <QtCore/QByteArray> #include <QtCore/QVariant> -#include <private/qmlparser_p.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlbinding.cpp b/src/declarative/qml/qmlbinding.cpp index ef92308..56d5807 100644 --- a/src/declarative/qml/qmlbinding.cpp +++ b/src/declarative/qml/qmlbinding.cpp @@ -39,17 +39,20 @@ ** ****************************************************************************/ -#include <qml.h> #include "qmlbinding.h" #include "qmlbinding_p.h" -#include <qmlcontext.h> -#include <qmlinfo.h> + +#include "qml.h" +#include "qmlcontext.h" +#include "qmlinfo.h" +#include "qmlcontext_p.h" +#include "qmldeclarativedata_p.h" +#include "qmlstringconverters_p.h" + +#include <qfxperf_p_p.h> + #include <QVariant> -#include <private/qfxperf_p_p.h> #include <QtCore/qdebug.h> -#include <private/qmlcontext_p.h> -#include <private/qmldeclarativedata_p.h> -#include <private/qmlstringconverters_p.h> Q_DECLARE_METATYPE(QList<QObject *>); @@ -111,7 +114,7 @@ QmlBindingPrivate::QmlBindingPrivate() { } -QmlBinding::QmlBinding(void *data, QmlRefCount *rc, QObject *obj, QmlContext *ctxt, const QUrl &url, int lineNumber, QObject *parent) +QmlBinding::QmlBinding(void *data, QmlRefCount *rc, QObject *obj, QmlContext *ctxt, const QString &url, int lineNumber, QObject *parent) : QmlExpression(ctxt, data, rc, obj, url, lineNumber, *new QmlBindingPrivate) { setParent(parent); @@ -177,7 +180,7 @@ void QmlBinding::update(QmlMetaProperty::WriteFlags flags) if (isUndefined && !data->error.isValid()) { - QUrl url = data->url; + QUrl url = QUrl(data->url); int line = data->line; if (url.isEmpty()) url = QUrl(QLatin1String("<Unknown File>")); @@ -189,7 +192,7 @@ void QmlBinding::update(QmlMetaProperty::WriteFlags flags) } else if (!isUndefined && data->property.object() && !data->property.write(value, flags)) { - QUrl url = data->url; + QUrl url = QUrl(data->url); int line = data->line; if (url.isEmpty()) url = QUrl(QLatin1String("<Unknown File>")); diff --git a/src/declarative/qml/qmlbinding.h b/src/declarative/qml/qmlbinding.h index 8fbe441..6f2d4f1 100644 --- a/src/declarative/qml/qmlbinding.h +++ b/src/declarative/qml/qmlbinding.h @@ -42,10 +42,11 @@ #ifndef QMLBINDING_H #define QMLBINDING_H +#include "qml.h" +#include "qmlpropertyvaluesource.h" +#include "qmlexpression.h" + #include <QtCore/QObject> -#include <qml.h> -#include <qmlpropertyvaluesource.h> -#include <qmlexpression.h> #include <QtCore/QMetaProperty> QT_BEGIN_HEADER @@ -92,7 +93,7 @@ class Q_DECLARATIVE_EXPORT QmlBinding : public QmlExpression, Q_OBJECT public: QmlBinding(const QString &, QObject *, QmlContext *, QObject *parent=0); - QmlBinding(void *, QmlRefCount *, QObject *, QmlContext *, const QUrl &, int, + QmlBinding(void *, QmlRefCount *, QObject *, QmlContext *, const QString &, int, QObject *parent); ~QmlBinding(); diff --git a/src/declarative/qml/qmlbinding_p.h b/src/declarative/qml/qmlbinding_p.h index 30a31ab..945b659 100644 --- a/src/declarative/qml/qmlbinding_p.h +++ b/src/declarative/qml/qmlbinding_p.h @@ -53,8 +53,9 @@ // We mean it. // -#include <qmlbinding.h> -#include <qmlmetaproperty.h> +#include "qmlbinding.h" + +#include "qmlmetaproperty.h" #include "qmlexpression_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlbindingoptimizations.cpp b/src/declarative/qml/qmlbindingoptimizations.cpp index 0efa600..0f2e199 100644 --- a/src/declarative/qml/qmlbindingoptimizations.cpp +++ b/src/declarative/qml/qmlbindingoptimizations.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmlbindingoptimizations_p.h" -#include <private/qmlcontext_p.h> + +#include "qmlcontext_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlbindingoptimizations_p.h b/src/declarative/qml/qmlbindingoptimizations_p.h index 2cdc07d..4ce145d 100644 --- a/src/declarative/qml/qmlbindingoptimizations_p.h +++ b/src/declarative/qml/qmlbindingoptimizations_p.h @@ -53,8 +53,8 @@ // We mean it. // -#include <private/qmlexpression_p.h> -#include <qmlbinding.h> +#include "qmlexpression_p.h" +#include "qmlbinding.h" QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlboundsignal.cpp b/src/declarative/qml/qmlboundsignal.cpp index f21b781..110a56c 100644 --- a/src/declarative/qml/qmlboundsignal.cpp +++ b/src/declarative/qml/qmlboundsignal.cpp @@ -40,15 +40,17 @@ ****************************************************************************/ #include "qmlboundsignal_p.h" -#include "private/qmetaobjectbuilder_p.h" -#include "private/qmlengine_p.h" -#include "private/qmlexpression_p.h" -#include "private/qmlcontext_p.h" -#include <qmlmetatype.h> -#include <qml.h> -#include <qmlcontext.h> + +#include "qmetaobjectbuilder_p.h" +#include "qmlengine_p.h" +#include "qmlexpression_p.h" +#include "qmlcontext_p.h" +#include "qmlmetatype.h" +#include "qml.h" +#include "qmlcontext.h" +#include "qmlglobal_p.h" + #include <QtCore/qdebug.h> -#include <private/qmlglobal_p.h> QT_BEGIN_NAMESPACE @@ -259,4 +261,4 @@ int QmlBoundSignalParameters::metaCall(QMetaObject::Call c, int id, void **a) QT_END_NAMESPACE -#include "qmlboundsignal.moc" +#include <qmlboundsignal.moc> diff --git a/src/declarative/qml/qmlboundsignal_p.h b/src/declarative/qml/qmlboundsignal_p.h index 53a5a6b..971fc89 100644 --- a/src/declarative/qml/qmlboundsignal_p.h +++ b/src/declarative/qml/qmlboundsignal_p.h @@ -53,10 +53,12 @@ // We mean it. // -#include <qmlexpression.h> -#include <private/qobject_p.h> +#include "qmlexpression.h" + #include <QtCore/qmetaobject.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlAbstractBoundSignal : public QObject diff --git a/src/declarative/qml/qmlcleanup.cpp b/src/declarative/qml/qmlcleanup.cpp index ef803d0..0da6452 100644 --- a/src/declarative/qml/qmlcleanup.cpp +++ b/src/declarative/qml/qmlcleanup.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmlcleanup_p.h" -#include <private/qmlengine_p.h> + +#include "qmlengine_p.h" /*! \internal diff --git a/src/declarative/qml/qmlcompileddata.cpp b/src/declarative/qml/qmlcompileddata.cpp index 9b931c5..8b165c6 100644 --- a/src/declarative/qml/qmlcompileddata.cpp +++ b/src/declarative/qml/qmlcompileddata.cpp @@ -45,9 +45,11 @@ #include "qmlcomponent_p.h" #include "qmlcontext.h" #include "qmlcontext_p.h" -#include <private/qobject_p.h> + #include <QtCore/qdebug.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE int QmlCompiledData::pack(const char *data, size_t size) @@ -85,6 +87,16 @@ int QmlCompiledData::indexForByteArray(const QByteArray &data) return idx; } +int QmlCompiledData::indexForUrl(const QUrl &data) +{ + int idx = urls.indexOf(data); + if (idx == -1) { + idx = urls.count(); + urls << data; + } + return idx; +} + int QmlCompiledData::indexForFloat(float *data, int count) { Q_ASSERT(count > 0); diff --git a/src/declarative/qml/qmlcompiler.cpp b/src/declarative/qml/qmlcompiler.cpp index aac2e02..2404702 100644 --- a/src/declarative/qml/qmlcompiler.cpp +++ b/src/declarative/qml/qmlcompiler.cpp @@ -39,40 +39,42 @@ ** ****************************************************************************/ -#include "private/qmlcompiler_p.h" -#include "private/qmlcompositetypedata_p.h" -#include <private/qfxperf_p_p.h> +#include "qmlcompiler_p.h" + +#include "qmlcompositetypedata_p.h" #include "qmlparser_p.h" -#include "private/qmlscriptparser_p.h" -#include <qmlpropertyvaluesource.h> -#include <qmlcomponent.h> -#include "private/qmetaobjectbuilder_p.h" +#include "qmlscriptparser_p.h" +#include "qmlpropertyvaluesource.h" +#include "qmlcomponent.h" +#include "qmetaobjectbuilder_p.h" #include "qmlbasicscript_p.h" +#include "qmlstringconverters_p.h" +#include "qmlengine_p.h" +#include "qmlengine.h" +#include "qmlcontext.h" +#include "qmlmetatype.h" +#include "qmlcustomparser_p_p.h" +#include "qmlcontext_p.h" +#include "qmlcomponent_p.h" +#include "parser/qmljsast_p.h" +#include "qmlvmemetaobject_p.h" +#include "qmlexpression_p.h" +#include "qmlmetaproperty_p.h" +#include "qmlrewrite_p.h" +#include "qmlscriptstring.h" +#include "qmlglobal_p.h" +#include "qmlscriptparser_p.h" + +#include <qfxperf_p_p.h> + #include <QColor> #include <QDebug> #include <QPointF> #include <QSizeF> #include <QRectF> #include <QAtomicInt> -#include <private/qmlstringconverters_p.h> -#include <private/qmlengine_p.h> -#include <qmlengine.h> -#include <qmlcontext.h> -#include <qmlmetatype.h> #include <QtCore/qdebug.h> #include <QtGui/qapplication.h> -#include "private/qmlcustomparser_p_p.h" -#include <private/qmlcontext_p.h> -#include <private/qmlcomponent_p.h> -#include "parser/qmljsast_p.h" -#include <private/qmlvmemetaobject_p.h> -#include <private/qmlexpression_p.h> -#include "qmlmetaproperty_p.h" -#include "qmlrewrite_p.h" -#include <qmlscriptstring.h> -#include <private/qmlglobal_p.h> - -#include "qmlscriptparser_p.h" QT_BEGIN_NAMESPACE @@ -374,7 +376,7 @@ void QmlCompiler::genLiteralAssignment(const QMetaProperty &prop, instr.type = QmlInstruction::StoreUrl; QUrl u = string.isEmpty() ? QUrl() : output->url.resolved(QUrl(string)); instr.storeUrl.propertyIndex = prop.propertyIndex(); - instr.storeUrl.value = output->indexForString(u.toString()); + instr.storeUrl.value = output->indexForUrl(u); } break; case QVariant::UInt: @@ -1577,11 +1579,10 @@ void QmlCompiler::genPropertyAssignment(QmlParser::Property *prop, store.type = QmlInstruction::StoreValueSource; store.line = v->object->location.start.line; if (valueTypeProperty) { - store.assignValueSource.property = QmlMetaPropertyPrivate::saveValueType(valueTypeProperty->index, prop->index); + store.assignValueSource.property = genValueTypeData(prop, valueTypeProperty); store.assignValueSource.owner = 1; } else { - store.assignValueSource.property = - QmlMetaPropertyPrivate::saveProperty(prop->index); + store.assignValueSource.property = genPropertyData(prop); store.assignValueSource.owner = 0; } QmlType *valueType = QmlMetaType::qmlType(v->object->metatype); @@ -1595,11 +1596,10 @@ void QmlCompiler::genPropertyAssignment(QmlParser::Property *prop, store.type = QmlInstruction::StoreValueInterceptor; store.line = v->object->location.start.line; if (valueTypeProperty) { - store.assignValueInterceptor.property = QmlMetaPropertyPrivate::saveValueType(valueTypeProperty->index, prop->index); + store.assignValueInterceptor.property = genValueTypeData(prop, valueTypeProperty); store.assignValueInterceptor.owner = 1; } else { - store.assignValueInterceptor.property = - QmlMetaPropertyPrivate::saveProperty(prop->index); + store.assignValueInterceptor.property = genPropertyData(prop); store.assignValueInterceptor.owner = 0; } QmlType *valueType = QmlMetaType::qmlType(v->object->metatype); @@ -2307,7 +2307,8 @@ bool QmlCompiler::buildDynamicMeta(QmlParser::Object *obj, DynamicMetaMode mode) return true; } -#include <private/qmljsparser_p.h> +#include <qmljsparser_p.h> + static QStringList astNodeToStringList(QmlJS::AST::Node *node) { if (node->kind == QmlJS::AST::Node::Kind_IdentifierExpression) { @@ -2467,12 +2468,9 @@ void QmlCompiler::genBindingAssignment(QmlParser::Value *binding, Q_ASSERT(ref.bindingContext.owner == 0 || (ref.bindingContext.owner != 0 && valueTypeProperty)); if (ref.bindingContext.owner) { - store.assignBinding.property = - QmlMetaPropertyPrivate::saveValueType(valueTypeProperty->index, - prop->index); + store.assignBinding.property = genValueTypeData(prop, valueTypeProperty); } else { - store.assignBinding.property = - QmlMetaPropertyPrivate::saveProperty(prop->index); + store.assignBinding.property = genPropertyData(prop); } output->bytecode << store; @@ -2494,6 +2492,17 @@ int QmlCompiler::genContextCache() return output->contextCaches.count() - 1; } +int QmlCompiler::genValueTypeData(QmlParser::Property *valueTypeProp, + QmlParser::Property *prop) +{ + return output->indexForByteArray(QmlMetaPropertyPrivate::saveValueType(prop->parent->metaObject(), prop->index, valueTypeProp->index, valueTypeProp->type)); +} + +int QmlCompiler::genPropertyData(QmlParser::Property *prop) +{ + return output->indexForByteArray(QmlMetaPropertyPrivate::saveProperty(prop->parent->metaObject(), prop->index)); +} + bool QmlCompiler::completeComponentBuild() { componentStat.ids = compileState.ids.count(); diff --git a/src/declarative/qml/qmlcompiler_p.h b/src/declarative/qml/qmlcompiler_p.h index 542fb48..809cc72 100644 --- a/src/declarative/qml/qmlcompiler_p.h +++ b/src/declarative/qml/qmlcompiler_p.h @@ -53,18 +53,19 @@ // We mean it. // +#include "qml.h" +#include "qmlerror.h" +#include "qmlinstruction_p.h" +#include "qmlcompositetypemanager_p.h" +#include "qmlparser_p.h" +#include "qmlengine_p.h" +#include "qbitfield_p.h" +#include "qmlpropertycache_p.h" +#include "qmlintegercache_p.h" +#include "qmltypenamecache_p.h" + #include <QtCore/qbytearray.h> #include <QtCore/qset.h> -#include <qml.h> -#include <qmlerror.h> -#include <private/qmlinstruction_p.h> -#include <private/qmlcompositetypemanager_p.h> -#include <private/qmlparser_p.h> -#include <private/qmlengine_p.h> -#include <private/qbitfield_p.h> -#include <private/qmlpropertycache_p.h> -#include <private/qmlintegercache_p.h> -#include <private/qmltypenamecache_p.h> QT_BEGIN_NAMESPACE @@ -79,7 +80,7 @@ public: QmlCompiledData(); virtual ~QmlCompiledData(); - QByteArray name; + QString name; QUrl url; QmlEnginePrivate::Imports imports; QmlTypeNameCache *importCache; @@ -118,6 +119,7 @@ public: QList<QmlPropertyCache *> propertyCaches; QList<QmlIntegerCache *> contextCaches; QList<QmlParser::Object::ScriptBlock> scripts; + QList<QUrl> urls; void dumpInstructions(); private: @@ -134,6 +136,7 @@ private: int indexForInt(int *, int); int indexForLocation(const QmlParser::Location &); int indexForLocation(const QmlParser::LocationSpan &); + int indexForUrl(const QUrl &); }; class QMetaObjectBuilder; @@ -246,6 +249,9 @@ private: QmlParser::Property *valueTypeProperty = 0); int genContextCache(); + int genValueTypeData(QmlParser::Property *prop, QmlParser::Property *valueTypeProp); + int genPropertyData(QmlParser::Property *prop); + int componentTypeRef(); static int findSignalByName(const QMetaObject *, const QByteArray &name); diff --git a/src/declarative/qml/qmlcomponent.cpp b/src/declarative/qml/qmlcomponent.cpp index 85da2c1..b66e026 100644 --- a/src/declarative/qml/qmlcomponent.cpp +++ b/src/declarative/qml/qmlcomponent.cpp @@ -41,24 +41,26 @@ #include "qmlcomponent.h" #include "qmlcomponent_p.h" + #include "qmlcompiler_p.h" -#include "private/qmlcontext_p.h" -#include "private/qmlcompositetypedata_p.h" -#include "private/qmlengine_p.h" +#include "qmlcontext_p.h" +#include "qmlcompositetypedata_p.h" +#include "qmlengine_p.h" #include "qmlvme_p.h" #include "qml.h" +#include "qmlengine.h" +#include "qmlbinding.h" +#include "qmlbinding_p.h" +#include "qmlglobal_p.h" +#include "qmlscriptparser_p.h" + +#include <qfxperf_p_p.h> + #include <QStack> -#include <private/qfxperf_p_p.h> #include <QStringList> -#include <qmlengine.h> #include <QFileInfo> -#include "qmlbinding.h" #include <QtCore/qdebug.h> #include <QApplication> -#include <private/qmlbinding_p.h> -#include <private/qmlglobal_p.h> - -#include "qmlscriptparser_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlcomponent.h b/src/declarative/qml/qmlcomponent.h index 0abb58f..1cc5937 100644 --- a/src/declarative/qml/qmlcomponent.h +++ b/src/declarative/qml/qmlcomponent.h @@ -42,11 +42,12 @@ #ifndef QMLCOMPONENT_H #define QMLCOMPONENT_H +#include "qml.h" +#include "qmlerror.h" + #include <QtCore/qobject.h> #include <QtCore/qstring.h> #include <QtScript/qscriptvalue.h> -#include <qml.h> -#include <qmlerror.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlcomponent_p.h b/src/declarative/qml/qmlcomponent_p.h index 61a8a10..1372d98 100644 --- a/src/declarative/qml/qmlcomponent_p.h +++ b/src/declarative/qml/qmlcomponent_p.h @@ -53,16 +53,19 @@ // We mean it. // +#include "qmlcomponent.h" + +#include "qmlengine_p.h" +#include "qmlcompositetypemanager_p.h" +#include "qbitfield_p.h" +#include "qmlerror.h" +#include "qml.h" + #include <QtCore/QString> #include <QtCore/QStringList> #include <QtCore/QList> + #include <private/qobject_p.h> -#include <private/qmlengine_p.h> -#include <private/qmlcompositetypemanager_p.h> -#include <private/qbitfield_p.h> -#include <qmlerror.h> -#include <qmlcomponent.h> -#include <qml.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlcompositetypedata_p.h b/src/declarative/qml/qmlcompositetypedata_p.h index 0d2843d..c8b9f25 100644 --- a/src/declarative/qml/qmlcompositetypedata_p.h +++ b/src/declarative/qml/qmlcompositetypedata_p.h @@ -53,8 +53,9 @@ // We mean it. // +#include "qmlengine_p.h" + #include <QtCore/qglobal.h> -#include <private/qmlengine_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlcompositetypemanager.cpp b/src/declarative/qml/qmlcompositetypemanager.cpp index fa68951..9590718 100644 --- a/src/declarative/qml/qmlcompositetypemanager.cpp +++ b/src/declarative/qml/qmlcompositetypemanager.cpp @@ -39,17 +39,19 @@ ** ****************************************************************************/ -#include <private/qmlcompositetypedata_p.h> -#include <private/qmlcompositetypemanager_p.h> -#include <private/qmlscriptparser_p.h> -#include <qmlengine.h> +#include "qmlcompositetypemanager_p.h" + +#include "qmlcompositetypedata_p.h" +#include "qmlscriptparser_p.h" +#include "qmlengine.h" +#include "qmlengine_p.h" +#include "qmlcomponent.h" +#include "qmlcomponent_p.h" +#include "qmlcompiler_p.h" + #include <QtNetwork/qnetworkreply.h> -#include <private/qmlengine_p.h> #include <QtCore/qdebug.h> #include <QtCore/qfile.h> -#include <qmlcomponent.h> -#include <private/qmlcomponent_p.h> -#include <private/qmlcompiler_p.h> QT_BEGIN_NAMESPACE @@ -119,7 +121,7 @@ QmlCompositeTypeData::toCompiledComponent(QmlEngine *engine) compiledComponent = new QmlCompiledData; compiledComponent->url = imports.baseUrl(); - compiledComponent->name = compiledComponent->url.toString().toUtf8(); + compiledComponent->name = compiledComponent->url.toString(); QmlCompiler compiler; if (!compiler.compile(engine, this, compiledComponent)) { diff --git a/src/declarative/qml/qmlcompositetypemanager_p.h b/src/declarative/qml/qmlcompositetypemanager_p.h index 0abbfb5..0169bff 100644 --- a/src/declarative/qml/qmlcompositetypemanager_p.h +++ b/src/declarative/qml/qmlcompositetypemanager_p.h @@ -53,11 +53,12 @@ // We mean it. // +#include "qmlscriptparser_p.h" +#include "qmlrefcount_p.h" +#include "qmlerror.h" +#include "qmlengine.h" + #include <QtCore/qglobal.h> -#include <private/qmlscriptparser_p.h> -#include <private/qmlrefcount_p.h> -#include <qmlerror.h> -#include <qmlengine.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlcontext.cpp b/src/declarative/qml/qmlcontext.cpp index 38cbcfa..c3971ae 100644 --- a/src/declarative/qml/qmlcontext.cpp +++ b/src/declarative/qml/qmlcontext.cpp @@ -39,23 +39,27 @@ ** ****************************************************************************/ -#include <qmlcontext.h> -#include <private/qmlcontext_p.h> -#include <private/qmlexpression_p.h> -#include <private/qmlengine_p.h> -#include <qmlengine.h> +#include "qmlcontext.h" +#include "qmlcontext_p.h" + +#include "qmlexpression_p.h" +#include "qmlengine_p.h" +#include "qmlengine.h" +#include "qmlbindingoptimizations_p.h" +#include "qmlinfo.h" + #include <qscriptengine.h> #include <QtCore/qvarlengtharray.h> #include <QtCore/qdebug.h> -#include <private/qmlbindingoptimizations_p.h> + #include <private/qscriptdeclarativeclass_p.h> -#include <qmlinfo.h> QT_BEGIN_NAMESPACE QmlContextPrivate::QmlContextPrivate() : parent(0), engine(0), isInternal(false), propertyNames(0), notifyIndex(-1), - highPriorityCount(0), imports(0), expressions(0), idValues(0), idValueCount(0) + highPriorityCount(0), imports(0), expressions(0), contextObjects(0), + idValues(0), idValueCount(0) { } @@ -283,14 +287,14 @@ QmlContext::~QmlContext() expression = nextExpression; } - for (int ii = 0; ii < d->contextObjects.count(); ++ii) { - QObjectPrivate *p = QObjectPrivate::get(d->contextObjects.at(ii)); - QmlDeclarativeData *data = - static_cast<QmlDeclarativeData *>(p->declarativeData); - if(data) - data->context = 0; + while (d->contextObjects) { + QmlDeclarativeData *co = d->contextObjects; + d->contextObjects = d->contextObjects->nextContextObject; + + co->context = 0; + co->nextContextObject = 0; + co->prevContextObject = 0; } - d->contextObjects.clear(); delete [] d->idValues; diff --git a/src/declarative/qml/qmlcontext_p.h b/src/declarative/qml/qmlcontext_p.h index c8d0b2d..0229056 100644 --- a/src/declarative/qml/qmlcontext_p.h +++ b/src/declarative/qml/qmlcontext_p.h @@ -53,16 +53,19 @@ // We mean it. // -#include <qmlcontext.h> -#include <private/qobject_p.h> -#include <private/qmldeclarativedata_p.h> +#include "qmlcontext.h" + +#include "qmldeclarativedata_p.h" +#include "qmlengine_p.h" +#include "qmlintegercache_p.h" +#include "qmltypenamecache_p.h" + #include <QtCore/qhash.h> #include <QtScript/qscriptvalue.h> #include <QtCore/qset.h> + +#include <private/qobject_p.h> #include <private/qguard_p.h> -#include <private/qmlengine_p.h> -#include <private/qmlintegercache_p.h> -#include <private/qmltypenamecache_p.h> QT_BEGIN_NAMESPACE @@ -106,7 +109,7 @@ public: QmlAbstractExpression *expressions; - QObjectList contextObjects; + QmlDeclarativeData *contextObjects; struct ContextGuard : public QGuard<QObject> { diff --git a/src/declarative/qml/qmlcontextscriptclass.cpp b/src/declarative/qml/qmlcontextscriptclass.cpp index a95400a..5635ceb 100644 --- a/src/declarative/qml/qmlcontextscriptclass.cpp +++ b/src/declarative/qml/qmlcontextscriptclass.cpp @@ -40,9 +40,10 @@ ****************************************************************************/ #include "qmlcontextscriptclass_p.h" -#include <private/qmlengine_p.h> -#include <private/qmlcontext_p.h> -#include <private/qmltypenamescriptclass_p.h> + +#include "qmlengine_p.h" +#include "qmlcontext_p.h" +#include "qmltypenamescriptclass_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlcontextscriptclass_p.h b/src/declarative/qml/qmlcontextscriptclass_p.h index 10b848a..a577d52 100644 --- a/src/declarative/qml/qmlcontextscriptclass_p.h +++ b/src/declarative/qml/qmlcontextscriptclass_p.h @@ -53,9 +53,11 @@ // We mean it. // +#include "qmltypenamecache_p.h" + #include <QtScript/qscriptclass.h> + #include <private/qscriptdeclarativeclass_p.h> -#include <private/qmltypenamecache_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlcustomparser.cpp b/src/declarative/qml/qmlcustomparser.cpp index 32a745c..9085440 100644 --- a/src/declarative/qml/qmlcustomparser.cpp +++ b/src/declarative/qml/qmlcustomparser.cpp @@ -41,6 +41,7 @@ #include "qmlcustomparser_p.h" #include "qmlcustomparser_p_p.h" + #include "qmlparser_p.h" #include <QtCore/qdebug.h> diff --git a/src/declarative/qml/qmlcustomparser_p.h b/src/declarative/qml/qmlcustomparser_p.h index 88a264f..9502b08 100644 --- a/src/declarative/qml/qmlcustomparser_p.h +++ b/src/declarative/qml/qmlcustomparser_p.h @@ -53,11 +53,12 @@ // We mean it. // +#include "qmlmetatype.h" +#include "qmlerror.h" +#include "qmlparser_p.h" + #include <QtCore/qbytearray.h> #include <QtCore/qxmlstream.h> -#include <qmlmetatype.h> -#include <qmlerror.h> -#include <private/qmlparser_p.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlcustomparser_p_p.h b/src/declarative/qml/qmlcustomparser_p_p.h index 2e0f14a..c27a5bc 100644 --- a/src/declarative/qml/qmlcustomparser_p_p.h +++ b/src/declarative/qml/qmlcustomparser_p_p.h @@ -53,10 +53,12 @@ // We mean it. // -#include <QtCore/qglobal.h> #include "qmlcustomparser_p.h" + #include "qmlparser_p.h" +#include <QtCore/qglobal.h> + QT_BEGIN_NAMESPACE class QmlCustomParserNodePrivate diff --git a/src/declarative/qml/qmldeclarativedata_p.h b/src/declarative/qml/qmldeclarativedata_p.h index aa82f32..bdbb5c8 100644 --- a/src/declarative/qml/qmldeclarativedata_p.h +++ b/src/declarative/qml/qmldeclarativedata_p.h @@ -53,9 +53,10 @@ // We mean it. // -#include <private/qobject_p.h> #include <QtScript/qscriptvalue.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlCompiledData; @@ -72,6 +73,10 @@ public: QmlContext *context; QmlAbstractBinding *bindings; + // Linked list for QmlContext::contextObjects + QmlDeclarativeData *nextContextObject; + QmlDeclarativeData**prevContextObject; + int bindingBitsSize; quint32 *bindingBits; bool hasBindingBit(int) const; diff --git a/src/declarative/qml/qmldom.cpp b/src/declarative/qml/qmldom.cpp index f4a137c..8812c31 100644 --- a/src/declarative/qml/qmldom.cpp +++ b/src/declarative/qml/qmldom.cpp @@ -41,14 +41,16 @@ #include "qmldom.h" #include "qmldom_p.h" -#include "private/qmlcompositetypedata_p.h" -#include "private/qmlcompiler_p.h" -#include "private/qmlengine_p.h" + +#include "qmlcompositetypedata_p.h" +#include "qmlcompiler_p.h" +#include "qmlengine_p.h" +#include "qmlscriptparser_p.h" +#include "qmlglobal_p.h" + #include <QtCore/QByteArray> #include <QtCore/QDebug> #include <QtCore/QString> -#include "qmlscriptparser_p.h" -#include <private/qmlglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmldom.h b/src/declarative/qml/qmldom.h index ad28d0d..24710f1 100644 --- a/src/declarative/qml/qmldom.h +++ b/src/declarative/qml/qmldom.h @@ -42,9 +42,10 @@ #ifndef QMLDOM_H #define QMLDOM_H +#include "qmlerror.h" + #include <QtCore/qlist.h> #include <QtCore/qshareddata.h> -#include <qmlerror.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmldom_p.h b/src/declarative/qml/qmldom_p.h index cb0d884..df6a980 100644 --- a/src/declarative/qml/qmldom_p.h +++ b/src/declarative/qml/qmldom_p.h @@ -53,9 +53,10 @@ // We mean it. // -#include <QtCore/QtGlobal> #include "qmlparser_p.h" +#include <QtCore/QtGlobal> + QT_BEGIN_NAMESPACE class QmlDomDocumentPrivate : public QSharedData diff --git a/src/declarative/qml/qmlengine.cpp b/src/declarative/qml/qmlengine.cpp index df8383e..cac94cd 100644 --- a/src/declarative/qml/qmlengine.cpp +++ b/src/declarative/qml/qmlengine.cpp @@ -39,14 +39,33 @@ ** ****************************************************************************/ -#include <QtCore/qmetaobject.h> -#include <private/qmlengine_p.h> -#include <private/qmlcontext_p.h> -#include <private/qobject_p.h> -#include <private/qmlcompiler_p.h> -#include <private/qscriptdeclarativeclass_p.h> -#include <private/qmlglobalscriptclass_p.h> +#include "qmlengine_p.h" +#include "qmlengine.h" + +#include "qmlcontext_p.h" +#include "qmlcompiler_p.h" +#include "qmlglobalscriptclass_p.h" +#include "qml.h" +#include "qmlbasicscript_p.h" +#include "qmlcontext.h" +#include "qmlexpression.h" +#include "qmlcomponent.h" +#include "qmlmetaproperty_p.h" +#include "qmlbinding_p.h" +#include "qmlvme_p.h" +#include "qmlenginedebug_p.h" +#include "qmlstringconverters_p.h" +#include "qmlxmlhttprequest_p.h" +#include "qmlsqldatabase_p.h" +#include "qmltypenamescriptclass_p.h" +#include "qmllistscriptclass_p.h" +#include "qmlscriptstring.h" +#include "qmlglobal_p.h" +#include "qmlworkerscript_p.h" + +#include <qfxperf_p_p.h> +#include <QtCore/qmetaobject.h> #include <QScriptClass> #include <QNetworkReply> #include <QNetworkRequest> @@ -57,13 +76,7 @@ #include <QPair> #include <QDebug> #include <QMetaObject> -#include "qml.h" -#include <private/qfxperf_p_p.h> #include <QStack> -#include "private/qmlbasicscript_p.h" -#include "qmlengine.h" -#include "qmlcontext.h" -#include "qmlexpression.h" #include <QtCore/qthreadstorage.h> #include <QtCore/qthread.h> #include <QtCore/qcoreapplication.h> @@ -72,24 +85,15 @@ #include <QtGui/qvector3d.h> #include <QtGui/qsound.h> #include <QGraphicsObject> -#include <qmlcomponent.h> -#include <private/qmlmetaproperty_p.h> -#include <private/qmlbinding_p.h> -#include <private/qmlvme_p.h> -#include <private/qmlenginedebug_p.h> -#include <private/qmlstringconverters_p.h> -#include <private/qmlxmlhttprequest_p.h> -#include <private/qmlsqldatabase_p.h> -#include <private/qmltypenamescriptclass_p.h> -#include <private/qmllistscriptclass_p.h> -#include <qmlscriptstring.h> -#include <private/qmlglobal_p.h> #include <QtCore/qcryptographichash.h> -#include <private/qmlworkerscript_p.h> + +#include <private/qobject_p.h> +#include <private/qscriptdeclarativeclass_p.h> #ifdef Q_OS_WIN // for %APPDATA% -#include "qt_windows.h" -#include "qlibrary.h" +#include <qt_windows.h> +#include <qlibrary.h> + #define CSIDL_APPDATA 0x001a // <username>\Application Data #endif @@ -440,7 +444,8 @@ void QmlEngine::setContextForObject(QObject *object, QmlContext *context) } data->context = context; - context->d_func()->contextObjects.append(object); + data->nextContextObject = context->d_func()->contextObjects; + data->prevContextObject = &context->d_func()->contextObjects; } void qmlExecuteDeferred(QObject *object) @@ -493,9 +498,10 @@ QObject *qmlAttachedPropertiesObjectById(int id, const QObject *object, bool cre } QmlDeclarativeData::QmlDeclarativeData(QmlContext *ctxt) -: context(ctxt), bindings(0), bindingBitsSize(0), bindingBits(0), - outerContext(0), lineNumber(0), columnNumber(0), deferredComponent(0), - deferredIdx(0), attachedProperties(0), propertyCache(0) +: context(ctxt), bindings(0), nextContextObject(0), prevContextObject(0), + bindingBitsSize(0), bindingBits(0), outerContext(0), lineNumber(0), + columnNumber(0), deferredComponent(0), deferredIdx(0), attachedProperties(0), + propertyCache(0) { } @@ -505,8 +511,11 @@ void QmlDeclarativeData::destroyed(QObject *object) deferredComponent->release(); if (attachedProperties) delete attachedProperties; - if (context) - static_cast<QmlContextPrivate *>(QObjectPrivate::get(context))->contextObjects.removeAll(object); + + if (nextContextObject) + nextContextObject->prevContextObject = prevContextObject; + if (prevContextObject) + *prevContextObject = nextContextObject; QmlAbstractBinding *binding = bindings; while (binding) { @@ -1210,8 +1219,9 @@ QmlEnginePrivate::Imports::~Imports() delete d; } -#include <qmlmetatype.h> -#include <private/qmltypenamecache_p.h> +#include "qmlmetatype.h" +#include "qmltypenamecache_p.h" + static QmlTypeNameCache *cacheForNamespace(QmlEngine *engine, const QmlEnginePrivate::ImportedNamespace &set, QmlTypeNameCache *cache) { if (!cache) diff --git a/src/declarative/qml/qmlengine_p.h b/src/declarative/qml/qmlengine_p.h index 4eb9843..68dcb2d 100644 --- a/src/declarative/qml/qmlengine_p.h +++ b/src/declarative/qml/qmlengine_p.h @@ -53,6 +53,22 @@ // We mean it. // +#include "qmlengine.h" + +#include "qmlclassfactory_p.h" +#include "qmlcompositetypemanager_p.h" +#include "qpodvector_p.h" +#include "qml.h" +#include "qmlbasicscript_p.h" +#include "qmlvaluetype_p.h" +#include "qmlcontext.h" +#include "qmlexpression.h" +#include "qmlmetaproperty_p.h" +#include "qmlpropertycache_p.h" +#include "qmlobjectscriptclass_p.h" +#include "qmlcontextscriptclass_p.h" +#include "qmlvaluetypescriptclass_p.h" + #include <QtScript/QScriptClass> #include <QtScript/QScriptValue> #include <QtScript/QScriptString> @@ -60,22 +76,9 @@ #include <QtCore/qlist.h> #include <QtCore/qpair.h> #include <QtCore/qstack.h> -#include <private/qobject_p.h> -#include <private/qmlclassfactory_p.h> -#include <private/qmlcompositetypemanager_p.h> -#include <private/qpodvector_p.h> -#include <qml.h> -#include <private/qmlbasicscript_p.h> -#include <private/qmlvaluetype_p.h> -#include <qmlcontext.h> -#include <qmlengine.h> -#include <qmlexpression.h> #include <QtScript/qscriptengine.h> -#include <private/qmlmetaproperty_p.h> -#include <private/qmlpropertycache_p.h> -#include <private/qmlobjectscriptclass_p.h> -#include <private/qmlcontextscriptclass_p.h> -#include <private/qmlvaluetypescriptclass_p.h> + +#include <private/qobject_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlenginedebug.cpp b/src/declarative/qml/qmlenginedebug.cpp index 6871236..034e4f5 100644 --- a/src/declarative/qml/qmlenginedebug.cpp +++ b/src/declarative/qml/qmlenginedebug.cpp @@ -40,16 +40,18 @@ ****************************************************************************/ #include "qmlenginedebug_p.h" + #include "qmlboundsignal_p.h" -#include <QtCore/qdebug.h> -#include <QtCore/qmetaobject.h> -#include <qmlengine.h> -#include <qmlmetatype.h> -#include <qmlmetaproperty.h> -#include <qmlbinding.h> +#include "qmlengine.h" +#include "qmlmetatype.h" +#include "qmlmetaproperty.h" +#include "qmlbinding.h" #include "qmlcontext_p.h" #include "qmlwatcher_p.h" +#include <QtCore/qdebug.h> +#include <QtCore/qmetaobject.h> + QT_BEGIN_NAMESPACE QList<QmlEngine *> QmlEngineDebugServer::m_engines; diff --git a/src/declarative/qml/qmlenginedebug_p.h b/src/declarative/qml/qmlenginedebug_p.h index 8ba3d38..c173fdc 100644 --- a/src/declarative/qml/qmlenginedebug_p.h +++ b/src/declarative/qml/qmlenginedebug_p.h @@ -53,7 +53,8 @@ // We mean it. // -#include <private/qmldebugservice_p.h> +#include <qmldebugservice_p.h> + #include <QtCore/qurl.h> #include <QtCore/qvariant.h> diff --git a/src/declarative/qml/qmlerror.cpp b/src/declarative/qml/qmlerror.cpp index 3532cf5..7cb68cf 100644 --- a/src/declarative/qml/qmlerror.cpp +++ b/src/declarative/qml/qmlerror.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmlerror.h" + #include <QtCore/qdebug.h> #include <QtCore/qfile.h> #include <QtCore/qstringlist.h> diff --git a/src/declarative/qml/qmlexpression.cpp b/src/declarative/qml/qmlexpression.cpp index 2239d77..ab9f9ea 100644 --- a/src/declarative/qml/qmlexpression.cpp +++ b/src/declarative/qml/qmlexpression.cpp @@ -41,12 +41,15 @@ #include "qmlexpression.h" #include "qmlexpression_p.h" + #include "qmlengine_p.h" #include "qmlcontext_p.h" #include "qmlrewrite_p.h" -#include "QtCore/qdebug.h" #include "qmlcompiler_p.h" + +#include <QtCore/qdebug.h> #include <QtScript/qscriptprogram.h> + #include <private/qscriptdeclarativeclass_p.h> Q_DECLARE_METATYPE(QList<QObject *>); @@ -91,7 +94,7 @@ void QmlExpressionPrivate::init(QmlContext *ctxt, const QString &expr, } void QmlExpressionPrivate::init(QmlContext *ctxt, void *expr, QmlRefCount *rc, - QObject *me, const QUrl &url, int lineNumber) + QObject *me, const QString &url, int lineNumber) { data->url = url; data->line = lineNumber; @@ -120,7 +123,7 @@ void QmlExpressionPrivate::init(QmlContext *ctxt, void *expr, QmlRefCount *rc, if (!dd->cachedClosures.at(progIdx)) { QScriptContext *scriptContext = QScriptDeclarativeClass::pushCleanContext(scriptEngine); scriptContext->pushScope(ep->contextClass->newSharedContext()); - dd->cachedClosures[progIdx] = new QScriptValue(scriptEngine->evaluate(data->expression, data->url.toString(), data->line)); + dd->cachedClosures[progIdx] = new QScriptValue(scriptEngine->evaluate(data->expression, data->url, data->line)); scriptEngine->popContext(); } @@ -133,7 +136,7 @@ void QmlExpressionPrivate::init(QmlContext *ctxt, void *expr, QmlRefCount *rc, #if !defined(Q_OS_SYMBIAN) //XXX Why doesn't this work? if (!dd->cachedPrograms.at(progIdx)) { dd->cachedPrograms[progIdx] = - new QScriptProgram(data->expression, data->url.toString(), data->line); + new QScriptProgram(data->expression, data->url, data->line); } #endif @@ -174,7 +177,7 @@ QmlExpression::QmlExpression() /*! \internal */ QmlExpression::QmlExpression(QmlContext *ctxt, void *expr, QmlRefCount *rc, QObject *me, - const QUrl &url, int lineNumber, + const QString &url, int lineNumber, QmlExpressionPrivate &dd) : QObject(dd, 0) { @@ -331,7 +334,7 @@ QVariant QmlExpressionPrivate::evalQtScript(QObject *secondaryScope, bool *isUnd if (data->expressionRewritten) { data->expressionFunction = scriptEngine->evaluate(data->expression, - data->url.toString(), data->line); + data->url, data->line); } else { QmlRewrite::RewriteBinding rewriteBinding; @@ -341,7 +344,7 @@ QVariant QmlExpressionPrivate::evalQtScript(QObject *secondaryScope, bool *isUnd scriptEngine->popContext(); return QVariant(); } - data->expressionFunction = scriptEngine->evaluate(code, data->url.toString(), data->line); + data->expressionFunction = scriptEngine->evaluate(code, data->url, data->line); } scriptEngine->popContext(); @@ -521,7 +524,7 @@ void QmlExpression::setTrackChange(bool trackChange) Returns the source file URL for this expression. The source location must have been previously set by calling setSourceLocation(). */ -QUrl QmlExpression::sourceFile() const +QString QmlExpression::sourceFile() const { Q_D(const QmlExpression); return d->data->url; @@ -541,7 +544,7 @@ int QmlExpression::lineNumber() const Set the location of this expression to \a line of \a url. This information is used by the script engine. */ -void QmlExpression::setSourceLocation(const QUrl &url, int line) +void QmlExpression::setSourceLocation(const QString &url, int line) { Q_D(QmlExpression); d->data->url = url; diff --git a/src/declarative/qml/qmlexpression.h b/src/declarative/qml/qmlexpression.h index cbea58a..c019f21 100644 --- a/src/declarative/qml/qmlexpression.h +++ b/src/declarative/qml/qmlexpression.h @@ -42,9 +42,10 @@ #ifndef QMLEXPRESSION_H #define QMLEXPRESSION_H +#include "qmlerror.h" + #include <QtCore/qobject.h> #include <QtCore/qvariant.h> -#include <qmlerror.h> QT_BEGIN_HEADER @@ -77,9 +78,9 @@ public: bool trackChange() const; void setTrackChange(bool); - QUrl sourceFile() const; + QString sourceFile() const; int lineNumber() const; - void setSourceLocation(const QUrl &fileName, int line); + void setSourceLocation(const QString &fileName, int line); QObject *scopeObject() const; @@ -96,7 +97,7 @@ Q_SIGNALS: protected: QmlExpression(QmlContext *, const QString &, QObject *, QmlExpressionPrivate &dd); - QmlExpression(QmlContext *, void *, QmlRefCount *rc, QObject *me, const QUrl &, + QmlExpression(QmlContext *, void *, QmlRefCount *rc, QObject *me, const QString &, int, QmlExpressionPrivate &dd); private Q_SLOTS: diff --git a/src/declarative/qml/qmlexpression_p.h b/src/declarative/qml/qmlexpression_p.h index dbb12ba..57a3ce2 100644 --- a/src/declarative/qml/qmlexpression_p.h +++ b/src/declarative/qml/qmlexpression_p.h @@ -53,12 +53,15 @@ // We mean it. // -#include "qmlbasicscript_p.h" #include "qmlexpression.h" + +#include "qmlbasicscript_p.h" #include "qmlengine_p.h" -#include <private/qguard_p.h> + #include <QtScript/qscriptvalue.h> +#include <private/qguard_p.h> + QT_BEGIN_NAMESPACE class QmlAbstractExpression @@ -103,7 +106,7 @@ public: bool isShared; - QUrl url; + QString url; // This is a QString for a reason. QUrls are slooooooow... int line; struct SignalGuard : public QGuard<QObject> { @@ -143,7 +146,7 @@ public: }; void init(QmlContext *, const QString &, QObject *); - void init(QmlContext *, void *, QmlRefCount *, QObject *, const QUrl &, int); + void init(QmlContext *, void *, QmlRefCount *, QObject *, const QString &, int); QmlExpressionData *data; diff --git a/src/declarative/qml/qmlglobalscriptclass.cpp b/src/declarative/qml/qmlglobalscriptclass.cpp index fd270e3..478a874 100644 --- a/src/declarative/qml/qmlglobalscriptclass.cpp +++ b/src/declarative/qml/qmlglobalscriptclass.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmlglobalscriptclass_p.h" + #include <QtScript/qscriptstring.h> #include <QtScript/qscriptengine.h> #include <QtScript/qscriptvalueiterator.h> diff --git a/src/declarative/qml/qmlinfo.cpp b/src/declarative/qml/qmlinfo.cpp index bbd6022..2dbc968 100644 --- a/src/declarative/qml/qmlinfo.cpp +++ b/src/declarative/qml/qmlinfo.cpp @@ -40,8 +40,10 @@ ****************************************************************************/ #include "qmlinfo.h" -#include <private/qmldeclarativedata_p.h> -#include <qmlcontext.h> + +#include "qmldeclarativedata_p.h" +#include "qmlcontext.h" + #include <QtGui/qapplication.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlinstruction.cpp b/src/declarative/qml/qmlinstruction.cpp index 65d070c..010010d 100644 --- a/src/declarative/qml/qmlinstruction.cpp +++ b/src/declarative/qml/qmlinstruction.cpp @@ -40,7 +40,9 @@ ****************************************************************************/ #include "qmlinstruction_p.h" + #include "qmlcompiler_p.h" + #include <QtCore/qdebug.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlintegercache.cpp b/src/declarative/qml/qmlintegercache.cpp index 1103ef2..1968873 100644 --- a/src/declarative/qml/qmlintegercache.cpp +++ b/src/declarative/qml/qmlintegercache.cpp @@ -40,8 +40,9 @@ ****************************************************************************/ #include "qmlintegercache_p.h" -#include <private/qmlengine_p.h> -#include <qmlmetatype.h> + +#include "qmlengine_p.h" +#include "qmlmetatype.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlintegercache_p.h b/src/declarative/qml/qmlintegercache_p.h index 2b10dcc..d9df52a 100644 --- a/src/declarative/qml/qmlintegercache_p.h +++ b/src/declarative/qml/qmlintegercache_p.h @@ -53,11 +53,13 @@ // We mean it. // -#include <private/qmlrefcount_p.h> -#include <private/qscriptdeclarativeclass_p.h> -#include <private/qmlcleanup_p.h> +#include "qmlrefcount_p.h" +#include "qmlcleanup_p.h" + #include <QtCore/qhash.h> +#include <private/qscriptdeclarativeclass_p.h> + QT_BEGIN_NAMESPACE class QmlType; diff --git a/src/declarative/qml/qmllist.h b/src/declarative/qml/qmllist.h index e51b078..ad2d874 100644 --- a/src/declarative/qml/qmllist.h +++ b/src/declarative/qml/qmllist.h @@ -42,7 +42,7 @@ #ifndef QMLLIST_H #define QMLLIST_H -#include <qmlprivate.h> +#include "qmlprivate.h" QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmllistscriptclass.cpp b/src/declarative/qml/qmllistscriptclass.cpp index a180e49..d93498d 100644 --- a/src/declarative/qml/qmllistscriptclass.cpp +++ b/src/declarative/qml/qmllistscriptclass.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmllistscriptclass_p.h" -#include <private/qmlengine_p.h> + +#include "qmlengine_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlmetaproperty.cpp b/src/declarative/qml/qmlmetaproperty.cpp index 8bde318..2b3b385 100644 --- a/src/declarative/qml/qmlmetaproperty.cpp +++ b/src/declarative/qml/qmlmetaproperty.cpp @@ -41,18 +41,22 @@ #include "qmlmetaproperty.h" #include "qmlmetaproperty_p.h" + #include "qmlcompositetypedata_p.h" -#include <qml.h> -#include <private/qfxperf_p_p.h> -#include <QStringList> +#include "qml.h" #include "qmlbinding.h" -#include <qmlcontext.h> +#include "qmlcontext.h" #include "qmlboundsignal_p.h" -#include <math.h> +#include "qmlengine.h" +#include "qmlengine_p.h" +#include "qmldeclarativedata_p.h" + +#include <qfxperf_p_p.h> + +#include <QStringList> #include <QtCore/qdebug.h> -#include <qmlengine.h> -#include <private/qmlengine_p.h> -#include <private/qmldeclarativedata_p.h> + +#include <math.h> Q_DECLARE_METATYPE(QList<QObject *>); @@ -293,7 +297,7 @@ const char *QmlMetaProperty::propertyTypeName() const else valueType = QmlValueTypeFactory::valueType(d->core.propType); Q_ASSERT(valueType); - const char *rv = valueType->metaObject()->property(d->valueTypeCoreIdx).typeName(); + const char *rv = valueType->metaObject()->property(d->valueType.valueTypeCoreIdx).typeName(); if (!ep) delete valueType; @@ -315,8 +319,7 @@ bool QmlMetaProperty::operator==(const QmlMetaProperty &other) const // from the other members return d->object == other.d->object && d->core == other.d->core && - d->valueTypeCoreIdx == other.d->valueTypeCoreIdx && - d->valueTypePropType == other.d->valueTypePropType && + d->valueType == other.d->valueType && d->attachedFunc == other.d->attachedFunc; } @@ -333,7 +336,7 @@ int QmlMetaPropertyPrivate::propertyType() const { uint type = q->type(); if (type & QmlMetaProperty::ValueTypeProperty) { - return valueTypePropType; + return valueType.valueTypePropType; } else if (type & QmlMetaProperty::Attached) { return qMetaTypeId<QObject *>(); } else if (type & QmlMetaProperty::Property) { @@ -355,7 +358,7 @@ QmlMetaProperty::Type QmlMetaProperty::type() const return SignalProperty; else if (d->attachedFunc != -1) return Attached; - else if (d->valueTypeCoreIdx != -1) + else if (d->valueType.valueTypeCoreIdx != -1) return (Type)(Property | ValueTypeProperty); else if (d->core.isValid()) return (Type)(Property | ((d->isDefaultProperty)?Default:0)); @@ -398,8 +401,7 @@ QmlMetaProperty &QmlMetaProperty::operator=(const QmlMetaProperty &other) d->isDefaultProperty = other.d->isDefaultProperty; d->core = other.d->core; - d->valueTypeCoreIdx = other.d->valueTypeCoreIdx; - d->valueTypePropType = other.d->valueTypePropType; + d->valueType = other.d->valueType; d->attachedFunc = other.d->attachedFunc; return *this; @@ -449,29 +451,34 @@ bool QmlMetaProperty::isValid() const */ QString QmlMetaProperty::name() const { - if (type() & ValueTypeProperty) { - QString rv = d->core.name + QLatin1String("."); + if (!d->isNameCached) { + // ### + if (!d->object) { + } else if (type() & ValueTypeProperty) { + QString rv = d->core.name(d->object) + QLatin1String("."); - QmlEnginePrivate *ep = d->context?QmlEnginePrivate::get(d->context->engine()):0; - QmlValueType *valueType = 0; - if (ep) valueType = ep->valueTypes[d->core.propType]; - else valueType = QmlValueTypeFactory::valueType(d->core.propType); - Q_ASSERT(valueType); + QmlEnginePrivate *ep = d->context?QmlEnginePrivate::get(d->context->engine()):0; + QmlValueType *valueType = 0; + if (ep) valueType = ep->valueTypes[d->core.propType]; + else valueType = QmlValueTypeFactory::valueType(d->core.propType); + Q_ASSERT(valueType); - rv += QString::fromUtf8(valueType->metaObject()->property(d->valueTypeCoreIdx).name()); + rv += QString::fromUtf8(valueType->metaObject()->property(d->valueType.valueTypeCoreIdx).name()); - if (!ep) delete valueType; + if (!ep) delete valueType; - return rv; - } else { - if (type() & SignalProperty) { - QString name = QLatin1String("on") + d->core.name; + d->nameCache = rv; + } else if (type() & SignalProperty) { + QString name = QLatin1String("on") + d->core.name(d->object); name[2] = name.at(2).toUpper(); - return name; + d->nameCache = name; } else { - return d->core.name; + d->nameCache = d->core.name(d->object); } + d->isNameCached = true; } + + return d->nameCache; } /*! @@ -694,7 +701,7 @@ QVariant QmlMetaPropertyPrivate::readValueProperty() valueType->read(object, core.coreIndex); QVariant rv = - valueType->metaObject()->property(valueTypeCoreIdx).read(valueType); + valueType->metaObject()->property(this->valueType.valueTypeCoreIdx).read(valueType); if (!ep) delete valueType; return rv; @@ -769,8 +776,8 @@ bool QmlMetaPropertyPrivate::writeValueProperty(const QVariant &value, writeBack->read(object, core.coreIndex); QmlPropertyCache::Data data = core; - data.coreIndex = valueTypeCoreIdx; - data.propType = valueTypePropType; + data.coreIndex = valueType.valueTypeCoreIdx; + data.propType = valueType.valueTypePropType; rv = write(writeBack, data, value, context, flags); writeBack->write(object, core.coreIndex, flags); @@ -1048,92 +1055,65 @@ int QmlMetaProperty::coreIndex() const /*! \internal */ int QmlMetaProperty::valueTypeCoreIndex() const { - return d->valueTypeCoreIdx; + return d->valueType.valueTypeCoreIdx; } Q_GLOBAL_STATIC(QmlValueTypeFactory, qmlValueTypes); -/*! - Returns the property information serialized into a single integer. - QmlMetaProperty uses the bottom 24 bits only. -*/ -quint32 QmlMetaPropertyPrivate::saveValueType(int core, int valueType) + +struct SerializedData { + QmlMetaProperty::Type type; + QmlPropertyCache::Data core; +}; + +struct ValueTypeSerializedData : public SerializedData { + QmlPropertyCache::ValueTypeData valueType; +}; + +QByteArray QmlMetaPropertyPrivate::saveValueType(const QMetaObject *metaObject, int index, + int subIndex, int subType) { - Q_ASSERT(core <= 0x7FF); - Q_ASSERT(valueType <= 0x7F); - quint32 rv = 0; - rv = (QmlMetaProperty::ValueTypeProperty | QmlMetaProperty::Property) << 18; - rv |= core; - rv |= valueType << 11; + ValueTypeSerializedData sd; + sd.type = QmlMetaProperty::ValueTypeProperty; + sd.core.load(metaObject->property(index)); + sd.valueType.valueTypeCoreIdx = subIndex; + sd.valueType.valueTypePropType = subType; + + QByteArray rv((const char *)&sd, sizeof(sd)); return rv; } -quint32 QmlMetaPropertyPrivate::saveProperty(int core) +QByteArray QmlMetaPropertyPrivate::saveProperty(const QMetaObject *metaObject, int index) { - Q_ASSERT(core <= 0x7FF); - quint32 rv = 0; - rv = (QmlMetaProperty::Property) << 18; - rv |= core; + SerializedData sd; + sd.type = QmlMetaProperty::Property; + sd.core.load(metaObject->property(index)); + + QByteArray rv((const char *)&sd, sizeof(sd)); return rv; } -/*! - Restore a QmlMetaProperty from a previously saved \a id. - \a obj must be the same object as used in the previous call - to QmlMetaProperty::save(). Only the bottom 24-bits are - used, the high bits can be set to any value. -*/ -void QmlMetaPropertyPrivate::restore(QmlMetaProperty &prop, quint32 id, - QObject *obj, QmlContext *ctxt) +QmlMetaProperty +QmlMetaPropertyPrivate::restore(const QByteArray &data, QObject *object, QmlContext *ctxt) { - QmlMetaPropertyPrivate *d = prop.d; - - QmlEnginePrivate *enginePrivate = 0; - if (ctxt && ctxt->engine()) - enginePrivate = QmlEnginePrivate::get(ctxt->engine()); - - d->object = obj; - d->context = ctxt; - - id &= 0xFFFFFF; - uint type = id >> 18; - id &= 0xFFFF; - - if (type & QmlMetaProperty::Attached) { - d->attachedFunc = id; - } else if (type & QmlMetaProperty::ValueTypeProperty) { - int coreIdx = id & 0x7FF; - int valueTypeIdx = id >> 11; + QmlMetaProperty prop; - QMetaProperty p(obj->metaObject()->property(coreIdx)); - Q_ASSERT(p.type() < QVariant::UserType); - - QmlValueType *valueType = qmlValueTypes()->valueTypes[p.type()]; - - QMetaProperty p2(valueType->metaObject()->property(valueTypeIdx)); - - d->core.load(p); - d->valueTypeCoreIdx = valueTypeIdx; - d->valueTypePropType = p2.userType(); - } else if (type & QmlMetaProperty::Property) { - - QmlPropertyCache *cache = enginePrivate?enginePrivate->cache(obj):0; - - if (cache) { - QmlPropertyCache::Data *data = cache->property(id); - if (data) d->core = *data; - } else { - QMetaProperty p(obj->metaObject()->property(id)); - d->core.load(p); - } + if (data.isEmpty()) + return prop; - } else if (type & QmlMetaProperty::SignalProperty) { + prop.d->object = object; + prop.d->context = ctxt; - QMetaMethod method = obj->metaObject()->method(id); - d->core.load(method); - } else { - prop = QmlMetaProperty(); + const SerializedData *sd = (const SerializedData *)data.constData(); + if (sd->type == QmlMetaProperty::Property) { + prop.d->core = sd->core; + } else if(sd->type == QmlMetaProperty::ValueTypeProperty) { + const ValueTypeSerializedData *vt = (const ValueTypeSerializedData *)sd; + prop.d->core = vt->core; + prop.d->valueType = vt->valueType; } + + return prop; } /*! @@ -1166,8 +1146,8 @@ QmlMetaProperty QmlMetaProperty::createProperty(QObject *obj, QMetaProperty vtProp = typeObject->metaObject()->property(idx); QmlMetaProperty p = prop; - p.d->valueTypeCoreIdx = idx; - p.d->valueTypePropType = vtProp.userType(); + p.d->valueType.valueTypeCoreIdx = idx; + p.d->valueType.valueTypePropType = vtProp.userType(); return p; } diff --git a/src/declarative/qml/qmlmetaproperty_p.h b/src/declarative/qml/qmlmetaproperty_p.h index d225afa..b4d72bb 100644 --- a/src/declarative/qml/qmlmetaproperty_p.h +++ b/src/declarative/qml/qmlmetaproperty_p.h @@ -54,8 +54,10 @@ // #include "qmlmetaproperty.h" + +#include "qmlpropertycache_p.h" + #include <private/qobject_p.h> -#include <private/qmlpropertycache_p.h> QT_BEGIN_NAMESPACE @@ -64,25 +66,26 @@ class QmlMetaPropertyPrivate { public: QmlMetaPropertyPrivate() - : q(0), context(0), object(0), isDefaultProperty(false), valueTypeCoreIdx(-1), - valueTypePropType(0), attachedFunc(-1) {} + : q(0), context(0), object(0), isDefaultProperty(false), isNameCached(false), + attachedFunc(-1) {} QmlMetaPropertyPrivate(const QmlMetaPropertyPrivate &other) : q(0), context(other.context), object(other.object), - isDefaultProperty(other.isDefaultProperty), core(other.core), - valueTypeCoreIdx(other.valueTypeCoreIdx), - valueTypePropType(other.valueTypePropType), attachedFunc(other.attachedFunc) {} + isDefaultProperty(other.isDefaultProperty), isNameCached(other.isNameCached), + core(other.core), nameCache(other.nameCache), + valueType(other.valueType), attachedFunc(other.attachedFunc) {} QmlMetaProperty *q; QmlContext *context; QGuard<QObject> object; - bool isDefaultProperty; + bool isDefaultProperty:1; + bool isNameCached:1; QmlPropertyCache::Data core; + QString nameCache; // Describes the "virtual" value-type sub-property. - int valueTypeCoreIdx; // The prop index of the access property on the value type wrapper - int valueTypePropType; // The QVariant::Type of access property on the value type wrapper + QmlPropertyCache::ValueTypeData valueType; // The attached property accessor int attachedFunc; @@ -104,9 +107,9 @@ public: static QmlAbstractBinding *setBinding(QObject *, const QmlPropertyCache::Data &, QmlAbstractBinding *, QmlMetaProperty::WriteFlags flags = QmlMetaProperty::DontRemoveBinding); - static void Q_AUTOTEST_EXPORT restore(QmlMetaProperty &prop, quint32, QObject *, QmlContext * = 0); - static quint32 Q_AUTOTEST_EXPORT saveValueType(int, int); - static quint32 Q_AUTOTEST_EXPORT saveProperty(int); + static QByteArray saveValueType(const QMetaObject *, int, int, int); + static QByteArray saveProperty(const QMetaObject *, int); + static QmlMetaProperty restore(const QByteArray &, QObject *, QmlContext * = 0); static bool equal(const QMetaObject *, const QMetaObject *); static bool canConvert(const QMetaObject *from, const QMetaObject *to); diff --git a/src/declarative/qml/qmlmetatype.cpp b/src/declarative/qml/qmlmetatype.cpp index 46d967b..edf8974 100644 --- a/src/declarative/qml/qmlmetatype.cpp +++ b/src/declarative/qml/qmlmetatype.cpp @@ -40,13 +40,15 @@ ****************************************************************************/ #include "qmlmetatype.h" + +#include "qmlproxymetaobject_p.h" +#include "qmlcustomparser_p.h" + #include <QtCore/qdebug.h> #include <QtCore/qstringlist.h> #include <QtCore/qmetaobject.h> #include <QtCore/qbitarray.h> #include <QtCore/qreadwritelock.h> -#include <private/qmlproxymetaobject_p.h> - #include <qmetatype.h> #include <qobjectdefs.h> #include <qdatetime.h> @@ -56,10 +58,10 @@ #include <qstringlist.h> #include <qvector.h> #include <qlocale.h> -#include <ctype.h> #include <QtCore/qcryptographichash.h> #include <QtScript/qscriptvalue.h> -#include <private/qmlcustomparser_p.h> + +#include <ctype.h> #ifdef QT_BOOTSTRAPPED # ifndef QT_NO_GEOM_VARIANT @@ -921,6 +923,7 @@ QList<QmlType*> QmlMetaType::qmlTypes() #include <QtGui/qsizepolicy.h> #include <QtGui/qkeysequence.h> #include <QtGui/qpen.h> + //#include <QtGui/qtextlength.h> #include <QtGui/qtextformat.h> #include <QtGui/qmatrix.h> @@ -930,6 +933,7 @@ QList<QmlType*> QmlMetaType::qmlTypes() #include <QtGui/qvector3d.h> #include <QtGui/qvector4d.h> #include <QtGui/qquaternion.h> + Q_DECLARE_METATYPE(QScriptValue); /*! diff --git a/src/declarative/qml/qmlmetatype.h b/src/declarative/qml/qmlmetatype.h index 99d6743..d17b44f 100644 --- a/src/declarative/qml/qmlmetatype.h +++ b/src/declarative/qml/qmlmetatype.h @@ -42,13 +42,14 @@ #ifndef QMLMETATYPE_H #define QMLMETATYPE_H +#include "qmlprivate.h" +#include "qmlparserstatus.h" +#include "qmlpropertyvaluesource.h" +#include "qmlpropertyvalueinterceptor.h" + #include <QtCore/qglobal.h> #include <QtCore/qvariant.h> #include <QtCore/qbitarray.h> -#include <qmlprivate.h> -#include <qmlparserstatus.h> -#include <qmlpropertyvaluesource.h> -#include <qmlpropertyvalueinterceptor.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlobjectscriptclass.cpp b/src/declarative/qml/qmlobjectscriptclass.cpp index f78a12a..86ee29c 100644 --- a/src/declarative/qml/qmlobjectscriptclass.cpp +++ b/src/declarative/qml/qmlobjectscriptclass.cpp @@ -40,15 +40,18 @@ ****************************************************************************/ #include "qmlobjectscriptclass_p.h" -#include <private/qmlengine_p.h> -#include <private/qguard_p.h> -#include <private/qmlcontext_p.h> -#include <private/qmldeclarativedata_p.h> -#include <private/qmltypenamescriptclass_p.h> -#include <private/qmllistscriptclass_p.h> -#include <qmlbinding.h> + +#include "qmlengine_p.h" +#include "qmlcontext_p.h" +#include "qmldeclarativedata_p.h" +#include "qmltypenamescriptclass_p.h" +#include "qmllistscriptclass_p.h" +#include "qmlbinding.h" + #include <QtCore/qtimer.h> +#include <private/qguard_p.h> + QT_BEGIN_NAMESPACE struct ObjectData : public QScriptDeclarativeClass::Object { diff --git a/src/declarative/qml/qmlobjectscriptclass_p.h b/src/declarative/qml/qmlobjectscriptclass_p.h index 6169812..d8ef1d2 100644 --- a/src/declarative/qml/qmlobjectscriptclass_p.h +++ b/src/declarative/qml/qmlobjectscriptclass_p.h @@ -53,10 +53,12 @@ // We mean it. // +#include "qmlpropertycache_p.h" +#include "qmltypenamecache_p.h" + #include <QtScript/qscriptclass.h> + #include <private/qscriptdeclarativeclass_p.h> -#include <private/qmlpropertycache_p.h> -#include <private/qmltypenamecache_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlparser.cpp b/src/declarative/qml/qmlparser.cpp index 402c93e..02a9e70 100644 --- a/src/declarative/qml/qmlparser.cpp +++ b/src/declarative/qml/qmlparser.cpp @@ -40,22 +40,25 @@ ****************************************************************************/ #include "qmlparser_p.h" + +#include "qmlpropertyvaluesource.h" +#include "qmlvme_p.h" +#include "qml.h" +#include "qmlcomponent_p.h" +#include "qmlcomponent.h" +#include "qmetaobjectbuilder_p.h" +#include "qmlvmemetaobject_p.h" +#include "qmlcompiler_p.h" +#include "parser/qmljsast_p.h" +#include "parser/qmljsengine_p.h" + +#include <qfxperf_p_p.h> + #include <QStack> -#include <qmlpropertyvaluesource.h> #include <QColor> #include <QPointF> #include <QSizeF> #include <QRectF> -#include <private/qmlvme_p.h> -#include <private/qfxperf_p_p.h> -#include <qml.h> -#include "private/qmlcomponent_p.h" -#include <qmlcomponent.h> -#include "private/qmetaobjectbuilder_p.h" -#include <private/qmlvmemetaobject_p.h> -#include <private/qmlcompiler_p.h> -#include "parser/qmljsast_p.h" -#include "parser/qmljsengine_p.h" #include <QtDebug> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlparser_p.h b/src/declarative/qml/qmlparser_p.h index 73bb498..aa7a762 100644 --- a/src/declarative/qml/qmlparser_p.h +++ b/src/declarative/qml/qmlparser_p.h @@ -53,11 +53,13 @@ // We mean it. // +#include "qml.h" +#include "qmlrefcount_p.h" + #include <QtCore/QByteArray> #include <QtCore/QList> #include <QtCore/qstring.h> -#include <qml.h> -#include <private/qmlrefcount_p.h> + #include <private/qobject_p.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlprivate.h b/src/declarative/qml/qmlprivate.h index 0eec43c..dd98110 100644 --- a/src/declarative/qml/qmlprivate.h +++ b/src/declarative/qml/qmlprivate.h @@ -43,6 +43,7 @@ #define QMLPRIVATE_H #include <QtCore/qglobal.h> + #ifndef Q_OS_WIN #include <stdint.h> #endif diff --git a/src/declarative/qml/qmlpropertycache.cpp b/src/declarative/qml/qmlpropertycache.cpp index ff4991c..7e3a1c4 100644 --- a/src/declarative/qml/qmlpropertycache.cpp +++ b/src/declarative/qml/qmlpropertycache.cpp @@ -40,8 +40,9 @@ ****************************************************************************/ #include "qmlpropertycache_p.h" -#include <private/qmlengine_p.h> -#include <qmlbinding.h> + +#include "qmlengine_p.h" +#include "qmlbinding.h" QT_BEGIN_NAMESPACE @@ -54,7 +55,6 @@ void QmlPropertyCache::Data::load(const QMetaProperty &p) propType = qMetaTypeId<QVariant>(); coreIndex = p.propertyIndex(); notifyIndex = p.notifySignalIndex(); - name = QString::fromUtf8(p.name()); if (p.isConstant()) flags |= Data::IsConstant; @@ -80,11 +80,6 @@ void QmlPropertyCache::Data::load(const QMetaProperty &p) void QmlPropertyCache::Data::load(const QMetaMethod &m) { - name = QString::fromUtf8(m.signature()); - int parenIdx = name.indexOf(QLatin1Char('(')); - Q_ASSERT(parenIdx != -1); - name = name.left(parenIdx); - coreIndex = m.methodIndex(); flags |= Data::IsFunction; } @@ -224,4 +219,31 @@ QmlPropertyCache::property(const QString &str) const return stringCache.value(str); } +QString QmlPropertyCache::Data::name(QObject *object) +{ + if (!object) + return QString(); + + return name(object->metaObject()); +} + +QString QmlPropertyCache::Data::name(const QMetaObject *metaObject) +{ + if (!metaObject || coreIndex == -1) + return QString(); + + if (flags & IsFunction) { + QMetaMethod m = metaObject->method(coreIndex); + + QString name = QString::fromUtf8(m.signature()); + int parenIdx = name.indexOf(QLatin1Char('(')); + if (parenIdx != -1) + name = name.left(parenIdx); + return name; + } else { + QMetaProperty p = metaObject->property(coreIndex); + return QString::fromUtf8(p.name()); + } +} + QT_END_NAMESPACE diff --git a/src/declarative/qml/qmlpropertycache_p.h b/src/declarative/qml/qmlpropertycache_p.h index 8f19a8b..7cee606 100644 --- a/src/declarative/qml/qmlpropertycache_p.h +++ b/src/declarative/qml/qmlpropertycache_p.h @@ -53,11 +53,13 @@ // We mean it. // -#include <private/qmlrefcount_p.h> -#include <private/qscriptdeclarativeclass_p.h> -#include <private/qmlcleanup_p.h> +#include "qmlrefcount_p.h" +#include "qmlcleanup_p.h" + #include <QtCore/qvector.h> +#include <private/qscriptdeclarativeclass_p.h> + QT_BEGIN_NAMESPACE class QmlEngine; @@ -78,7 +80,7 @@ public: IsWritable = 0x00000002, // These are mutually exclusive - IsFunction = 0x00000004, + IsFunction = 0x00000004, IsQObjectDerived = 0x00000008, IsEnumType = 0x00000010, IsQmlList = 0x00000020, @@ -94,18 +96,19 @@ public: int propType; int coreIndex; int notifyIndex; - QString name; void load(const QMetaProperty &); void load(const QMetaMethod &); + QString name(QObject *); + QString name(const QMetaObject *); }; -#if 0 struct ValueTypeData { + inline ValueTypeData(); + inline bool operator==(const ValueTypeData &); int valueTypeCoreIdx; // The prop index of the access property on the value type wrapper int valueTypePropType; // The QVariant::Type of access property on the value type wrapper }; -#endif static QmlPropertyCache *create(QmlEngine *, const QMetaObject *); static Data create(const QMetaObject *, const QString &); @@ -142,8 +145,7 @@ bool QmlPropertyCache::Data::operator==(const QmlPropertyCache::Data &other) return flags == other.flags && propType == other.propType && coreIndex == other.coreIndex && - notifyIndex == other.notifyIndex && - name == other.name; + notifyIndex == other.notifyIndex; } QmlPropertyCache::Data * @@ -152,6 +154,17 @@ QmlPropertyCache::property(const QScriptDeclarativeClass::Identifier &id) const return identifierCache.value(id); } +QmlPropertyCache::ValueTypeData::ValueTypeData() +: valueTypeCoreIdx(-1), valueTypePropType(0) +{ +} + +bool QmlPropertyCache::ValueTypeData::operator==(const ValueTypeData &o) +{ + return valueTypeCoreIdx == o.valueTypeCoreIdx && + valueTypePropType == o.valueTypePropType; +} + QT_END_NAMESPACE #endif // QMLPROPERTYCACHE_P_H diff --git a/src/declarative/qml/qmlpropertyvalueinterceptor.cpp b/src/declarative/qml/qmlpropertyvalueinterceptor.cpp index c8a3f74..9d0d7f6 100644 --- a/src/declarative/qml/qmlpropertyvalueinterceptor.cpp +++ b/src/declarative/qml/qmlpropertyvalueinterceptor.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmlpropertyvalueinterceptor.h" + #include "qml.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlpropertyvaluesource.cpp b/src/declarative/qml/qmlpropertyvaluesource.cpp index 7c42e2f..50f2f8c 100644 --- a/src/declarative/qml/qmlpropertyvaluesource.cpp +++ b/src/declarative/qml/qmlpropertyvaluesource.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmlpropertyvaluesource.h" + #include "qml.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlproxymetaobject_p.h b/src/declarative/qml/qmlproxymetaobject_p.h index 7f9163c..f983030 100644 --- a/src/declarative/qml/qmlproxymetaobject_p.h +++ b/src/declarative/qml/qmlproxymetaobject_p.h @@ -53,11 +53,13 @@ // We mean it. // +#include "qmetaobjectbuilder_p.h" +#include "qml.h" + #include <QtCore/QMetaObject> #include <QtCore/QObject> -#include <private/qmetaobjectbuilder_p.h> + #include <private/qobject_p.h> -#include <qml.h> QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlrewrite.cpp b/src/declarative/qml/qmlrewrite.cpp index 2964a75..34bd198 100644 --- a/src/declarative/qml/qmlrewrite.cpp +++ b/src/declarative/qml/qmlrewrite.cpp @@ -40,8 +40,10 @@ ****************************************************************************/ #include "qmlrewrite_p.h" + +#include "qmlglobal_p.h" + #include <QtCore/qdebug.h> -#include <private/qmlglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlscriptparser.cpp b/src/declarative/qml/qmlscriptparser.cpp index 23c050c..35234ec 100644 --- a/src/declarative/qml/qmlscriptparser.cpp +++ b/src/declarative/qml/qmlscriptparser.cpp @@ -40,23 +40,22 @@ ****************************************************************************/ #include "qmlscriptparser_p.h" -#include "qmlparser_p.h" +#include "qmlparser_p.h" #include "parser/qmljsengine_p.h" #include "parser/qmljsparser_p.h" #include "parser/qmljslexer_p.h" #include "parser/qmljsnodepool_p.h" #include "parser/qmljsastvisitor_p.h" #include "parser/qmljsast_p.h" - #include "qmlrewrite_p.h" +#include <qfxperf_p_p.h> + #include <QStack> #include <QCoreApplication> #include <QtDebug> -#include <private/qfxperf_p_p.h> - QT_BEGIN_NAMESPACE using namespace QmlJS; diff --git a/src/declarative/qml/qmlscriptparser_p.h b/src/declarative/qml/qmlscriptparser_p.h index cb3e9e9..16888aa 100644 --- a/src/declarative/qml/qmlscriptparser_p.h +++ b/src/declarative/qml/qmlscriptparser_p.h @@ -52,10 +52,11 @@ // We mean it. // +#include "qmlerror.h" +#include "qmlparser_p.h" + #include <QtCore/QList> #include <QtCore/QUrl> -#include <qmlerror.h> -#include "qmlparser_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/qml/qmlsqldatabase.cpp b/src/declarative/qml/qmlsqldatabase.cpp index 5a7e94c..3ddfec3 100644 --- a/src/declarative/qml/qmlsqldatabase.cpp +++ b/src/declarative/qml/qmlsqldatabase.cpp @@ -39,9 +39,14 @@ ** ****************************************************************************/ +#include "qmlsqldatabase_p.h" + +#include "qmlengine.h" +#include "qmlengine_p.h" +#include "qmlrefcount_p.h" +#include "qmlengine_p.h" + #include <QtCore/qobject.h> -#include <qmlengine.h> -#include <private/qmlengine_p.h> #include <QtScript/qscriptvalue.h> #include <QtScript/qscriptvalueiterator.h> #include <QtScript/qscriptcontext.h> @@ -51,11 +56,8 @@ #include <QtSql/qsqlquery.h> #include <QtSql/qsqlerror.h> #include <QtSql/qsqlrecord.h> -#include <private/qmlrefcount_p.h> -#include <private/qmlengine_p.h> #include <QtCore/qstack.h> #include <QtCore/qcryptographichash.h> -#include "qmlsqldatabase_p.h" #include <QtCore/qsettings.h> #include <QtCore/qdir.h> #include <QtCore/qdebug.h> @@ -260,8 +262,9 @@ static QScriptValue qmlsqldatabase_change_version(QScriptContext *context, QScri instance.setProperty(QLatin1String("executeSql"), engine->newFunction(qmlsqldatabase_executeSql,1)); QScriptValue tx = engine->newVariant(instance,qVariantFromValue(db)); - if (from_version!=context->thisObject().property(QLatin1String("version")).toString()) { - THROW_SQL(2,QmlEngine::tr("Version mismatch")); + QString foundvers = context->thisObject().property(QLatin1String("version")).toString(); + if (from_version!=foundvers) { + THROW_SQL(2,QmlEngine::tr("Version mismatch: expected %1, found %2").arg(from_version).arg(foundvers)); return engine->undefinedValue(); } diff --git a/src/declarative/qml/qmlstringconverters.cpp b/src/declarative/qml/qmlstringconverters.cpp index 0f6ada9..c68654f 100644 --- a/src/declarative/qml/qmlstringconverters.cpp +++ b/src/declarative/qml/qmlstringconverters.cpp @@ -39,13 +39,14 @@ ** ****************************************************************************/ +#include "qmlstringconverters_p.h" + #include <QtGui/qcolor.h> #include <QtGui/qvector3d.h> #include <QtCore/qpoint.h> #include <QtCore/qrect.h> #include <QtCore/qsize.h> #include <QtCore/qvariant.h> -#include "qmlstringconverters_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlstringconverters_p.h b/src/declarative/qml/qmlstringconverters_p.h index a31f06a..380a904 100644 --- a/src/declarative/qml/qmlstringconverters_p.h +++ b/src/declarative/qml/qmlstringconverters_p.h @@ -54,6 +54,8 @@ // #include <QtCore/qglobal.h> +#include <QtCore/qvariant.h> + class QColor; class QPointF; class QSizeF; diff --git a/src/declarative/qml/qmltypenamecache.cpp b/src/declarative/qml/qmltypenamecache.cpp index 5c0d23b..7e68492 100644 --- a/src/declarative/qml/qmltypenamecache.cpp +++ b/src/declarative/qml/qmltypenamecache.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmltypenamecache_p.h" -#include <private/qmlengine_p.h> + +#include "qmlengine_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmltypenamecache_p.h b/src/declarative/qml/qmltypenamecache_p.h index 6ff403d..754399f 100644 --- a/src/declarative/qml/qmltypenamecache_p.h +++ b/src/declarative/qml/qmltypenamecache_p.h @@ -53,9 +53,10 @@ // We mean it. // -#include <private/qmlrefcount_p.h> +#include "qmlrefcount_p.h" +#include "qmlcleanup_p.h" + #include <private/qscriptdeclarativeclass_p.h> -#include <private/qmlcleanup_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmltypenamescriptclass.cpp b/src/declarative/qml/qmltypenamescriptclass.cpp index 8b2addf..72106ae 100644 --- a/src/declarative/qml/qmltypenamescriptclass.cpp +++ b/src/declarative/qml/qmltypenamescriptclass.cpp @@ -40,8 +40,9 @@ ****************************************************************************/ #include "qmltypenamescriptclass_p.h" -#include <private/qmlengine_p.h> -#include <private/qmltypenamecache_p.h> + +#include "qmlengine_p.h" +#include "qmltypenamecache_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmltypenamescriptclass_p.h b/src/declarative/qml/qmltypenamescriptclass_p.h index f630854..e72c05c 100644 --- a/src/declarative/qml/qmltypenamescriptclass_p.h +++ b/src/declarative/qml/qmltypenamescriptclass_p.h @@ -52,9 +52,11 @@ // // We mean it. // +#include "qmlengine_p.h" + #include <QtScript/qscriptclass.h> + #include <private/qscriptdeclarativeclass_p.h> -#include <private/qmlengine_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlvaluetype.cpp b/src/declarative/qml/qmlvaluetype.cpp index 859a93a..6d08cd1 100644 --- a/src/declarative/qml/qmlvaluetype.cpp +++ b/src/declarative/qml/qmlvaluetype.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmlvaluetype_p.h" + #include <QtCore/qdebug.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlvaluetype_p.h b/src/declarative/qml/qmlvaluetype_p.h index 2af261d..800edee 100644 --- a/src/declarative/qml/qmlvaluetype_p.h +++ b/src/declarative/qml/qmlvaluetype_p.h @@ -53,12 +53,13 @@ // We mean it. // +#include "qmlmetaproperty.h" + #include <QtCore/qobject.h> #include <QtCore/qrect.h> #include <QtCore/qvariant.h> #include <QtGui/qvector3d.h> #include <QtGui/qfont.h> -#include <QmlMetaProperty> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlvaluetypescriptclass.cpp b/src/declarative/qml/qmlvaluetypescriptclass.cpp index e939e80..57f999f 100644 --- a/src/declarative/qml/qmlvaluetypescriptclass.cpp +++ b/src/declarative/qml/qmlvaluetypescriptclass.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmlvaluetypescriptclass_p.h" -#include <private/qmlengine_p.h> + +#include "qmlengine_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlvaluetypescriptclass_p.h b/src/declarative/qml/qmlvaluetypescriptclass_p.h index 19020b2..98d0251 100644 --- a/src/declarative/qml/qmlvaluetypescriptclass_p.h +++ b/src/declarative/qml/qmlvaluetypescriptclass_p.h @@ -53,6 +53,7 @@ // We mean it. // #include <QtScript/qscriptclass.h> + #include <private/qscriptdeclarativeclass_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlvme.cpp b/src/declarative/qml/qmlvme.cpp index f2fb217..116163a 100644 --- a/src/declarative/qml/qmlvme.cpp +++ b/src/declarative/qml/qmlvme.cpp @@ -40,34 +40,38 @@ ****************************************************************************/ #include "qmlvme_p.h" + #include "qmlcompiler_p.h" -#include <private/qfxperf_p_p.h> -#include <private/qmlboundsignal_p.h> -#include <private/qmlstringconverters_p.h> -#include "private/qmetaobjectbuilder_p.h" -#include "private/qmldeclarativedata_p.h" -#include <qml.h> -#include <private/qmlcustomparser_p.h> +#include "qmlboundsignal_p.h" +#include "qmlstringconverters_p.h" +#include "qmetaobjectbuilder_p.h" +#include "qmldeclarativedata_p.h" +#include "qml.h" +#include "qmlcustomparser_p.h" +#include "qmlengine.h" +#include "qmlcontext.h" +#include "qmlcomponent.h" +#include "qmlbinding.h" +#include "qmlengine_p.h" +#include "qmlcomponent_p.h" +#include "qmlvmemetaobject_p.h" +#include "qmlbinding_p.h" +#include "qmlcontext_p.h" +#include "qmlbindingoptimizations_p.h" +#include "qmlglobal_p.h" +#include "qmlscriptstring.h" + +#include <qfxperf_p_p.h> + #include <QStack> #include <QWidget> #include <QColor> #include <QPointF> #include <QSizeF> #include <QRectF> -#include <qmlengine.h> -#include <qmlcontext.h> -#include <qmlcomponent.h> -#include <qmlbinding.h> -#include <private/qmlengine_p.h> -#include <private/qmlcomponent_p.h> -#include "private/qmlvmemetaobject_p.h" #include <QtCore/qdebug.h> #include <QtCore/qvarlengtharray.h> #include <QtGui/qapplication.h> -#include <private/qmlbinding_p.h> -#include <private/qmlcontext_p.h> -#include <private/qmlbindingoptimizations_p.h> -#include <qmlscriptstring.h> QT_BEGIN_NAMESPACE @@ -102,7 +106,7 @@ QObject *QmlVME::run(QmlContext *ctxt, QmlCompiledData *comp, int start, int count, const QBitField &bindingSkipList) { - QStack<QObject *> stack; + QmlVMEStack<QObject *> stack; if (start == -1) start = 0; if (count == -1) count = comp->bytecode.count(); @@ -121,14 +125,14 @@ void QmlVME::runDeferred(QObject *object) QmlCompiledData *comp = data->deferredComponent; int start = data->deferredIdx + 1; int count = data->deferredComponent->bytecode.at(data->deferredIdx).defer.deferCount; - QStack<QObject *> stack; + QmlVMEStack<QObject *> stack; stack.push(object); run(stack, ctxt, comp, start, count, QBitField()); } QBitField bindingSkipList; -QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, +QObject *QmlVME::run(QmlVMEStack<QObject *> &stack, QmlContext *ctxt, QmlCompiledData *comp, int start, int count, const QBitField &bindingSkipList) @@ -143,11 +147,12 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, const QList<float> &floatData = comp->floatData; const QList<QmlPropertyCache *> &propertyCaches = comp->propertyCaches; const QList<QmlParser::Object::ScriptBlock> &scripts = comp->scripts; + const QList<QUrl> &urls = comp->urls; QmlEnginePrivate::SimpleList<QmlAbstractBinding> bindValues; QmlEnginePrivate::SimpleList<QmlParserStatus> parserStatus; - QStack<ListInstance> qliststack; + QmlVMEStack<ListInstance> qliststack; vmeErrors.clear(); QmlEnginePrivate *ep = QmlEnginePrivate::get(ctxt->engine()); @@ -157,7 +162,7 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, QmlMetaProperty::WriteFlags flags = QmlMetaProperty::BypassInterceptor; for (int ii = start; !isError() && ii < (start + count); ++ii) { - QmlInstruction &instr = comp->bytecode[ii]; + const QmlInstruction &instr = comp->bytecode.at(ii); switch(instr.type) { case QmlInstruction::Init: @@ -214,7 +219,8 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, // TODO: parent might be a layout } } else { - o->setParent(parent); + QmlGraphics_setParent_noEvent(o, parent); + // o->setParent(parent); } } stack.push(o); @@ -295,8 +301,7 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, case QmlInstruction::StoreUrl: { QObject *target = stack.top(); - QUrl u(primitives.at(instr.storeUrl.value)); - void *a[] = { &u, 0, &status, &flags }; + void *a[] = { (void *)&urls.at(instr.storeUrl.value), 0, &status, &flags }; QMetaObject::metacall(target, QMetaObject::WriteProperty, instr.storeUrl.propertyIndex, a); } @@ -542,7 +547,7 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, QmlBoundSignal *bs = new QmlBoundSignal(target, signal, target); QmlExpression *expr = new QmlExpression(ctxt, primitives.at(instr.storeSignal.value), target); - expr->setSourceLocation(comp->url, instr.line); + expr->setSourceLocation(comp->name, instr.line); bs->setExpression(expr); } break; @@ -587,15 +592,15 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, QObject *context = stack.at(stack.count() - 1 - instr.assignBinding.context); - QmlMetaProperty mp; - QmlMetaPropertyPrivate::restore(mp, instr.assignBinding.property, target, ctxt); + QmlMetaProperty mp = + QmlMetaPropertyPrivate::restore(datas.at(instr.assignBinding.property), target, ctxt); int coreIndex = mp.coreIndex(); if (stack.count() == 1 && bindingSkipList.testBit(coreIndex)) break; - QmlBinding *bind = new QmlBinding((void *)datas.at(instr.assignBinding.value).constData(), comp, context, ctxt, comp->url, instr.line, 0); + QmlBinding *bind = new QmlBinding((void *)datas.at(instr.assignBinding.value).constData(), comp, context, ctxt, comp->name, instr.line, 0); bindValues.append(bind); bind->m_mePtr = &bindValues.values[bindValues.count - 1]; bind->setTarget(mp); @@ -644,8 +649,9 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, QObject *obj = stack.pop(); QmlPropertyValueSource *vs = reinterpret_cast<QmlPropertyValueSource *>(reinterpret_cast<char *>(obj) + instr.assignValueSource.castValue); QObject *target = stack.at(stack.count() - 1 - instr.assignValueSource.owner); - QmlMetaProperty prop; - QmlMetaPropertyPrivate::restore(prop, instr.assignValueSource.property, target, ctxt); + + QmlMetaProperty prop = + QmlMetaPropertyPrivate::restore(datas.at(instr.assignValueSource.property), target, ctxt); obj->setParent(target); vs->setTarget(prop); } @@ -656,8 +662,8 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, QObject *obj = stack.pop(); QmlPropertyValueInterceptor *vi = reinterpret_cast<QmlPropertyValueInterceptor *>(reinterpret_cast<char *>(obj) + instr.assignValueInterceptor.castValue); QObject *target = stack.at(stack.count() - 1 - instr.assignValueInterceptor.owner); - QmlMetaProperty prop; - QmlMetaPropertyPrivate::restore(prop, instr.assignValueInterceptor.property, target, ctxt); + QmlMetaProperty prop = + QmlMetaPropertyPrivate::restore(datas.at(instr.assignValueInterceptor.property), target, ctxt); obj->setParent(target); vi->setTarget(prop); QmlVMEMetaObject *mo = static_cast<QmlVMEMetaObject *>((QMetaObject*)target->metaObject()); diff --git a/src/declarative/qml/qmlvme_p.h b/src/declarative/qml/qmlvme_p.h index a15bd08..9c45dc1 100644 --- a/src/declarative/qml/qmlvme_p.h +++ b/src/declarative/qml/qmlvme_p.h @@ -53,10 +53,11 @@ // We mean it. // +#include "qmlerror.h" +#include "qbitfield_p.h" + #include <QtCore/QString> #include <QtCore/QStack> -#include <qmlerror.h> -#include <private/qbitfield_p.h> QT_BEGIN_NAMESPACE @@ -66,6 +67,34 @@ class QmlCompiledData; class QmlCompiledData; class QmlContext; +template<typename T, int N = 128> +class QmlVMEStack { +public: + QmlVMEStack() : index(-1), maxSize(N), data(fixedData) {} + ~QmlVMEStack() { if (data != fixedData) qFree(fixedData); } + + bool isEmpty() const { return index == -1; } + const T &top() const { return data[index]; } + void push(const T &i) { ++index; if (index == maxSize) realloc(); data[index] = i; } + const T &pop() { --index; return data[index + 1]; } + int count() const { return index + 1; } + const T &at(int idx) { return data[idx]; } + +private: + void realloc() { + maxSize += N; + if (data != fixedData) { + data = (T*)qRealloc(data, maxSize * sizeof(T)); + } else { + data = (T*)qMalloc(maxSize * sizeof(T)); + } + } + int index; + int maxSize; + T *data; + T fixedData[N]; +}; + class QmlVME { public: @@ -80,7 +109,7 @@ public: QList<QmlError> errors() const; private: - QObject *run(QStack<QObject *> &, QmlContext *, QmlCompiledData *, + QObject *run(QmlVMEStack<QObject *> &, QmlContext *, QmlCompiledData *, int start, int count, const QBitField &); QList<QmlError> vmeErrors; }; diff --git a/src/declarative/qml/qmlvmemetaobject.cpp b/src/declarative/qml/qmlvmemetaobject.cpp index 3f5dd475..8588eff 100644 --- a/src/declarative/qml/qmlvmemetaobject.cpp +++ b/src/declarative/qml/qmlvmemetaobject.cpp @@ -40,14 +40,16 @@ ****************************************************************************/ #include "qmlvmemetaobject_p.h" -#include <qml.h> -#include <private/qmlrefcount_p.h> + +#include "qml.h" +#include "qmlrefcount_p.h" +#include "qmlexpression.h" +#include "qmlcontext_p.h" + #include <QColor> #include <QDate> #include <QtCore/qlist.h> #include <QtCore/qdebug.h> -#include <qmlexpression.h> -#include <private/qmlcontext_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlvmemetaobject_p.h b/src/declarative/qml/qmlvmemetaobject_p.h index f78cfaa..e737721 100644 --- a/src/declarative/qml/qmlvmemetaobject_p.h +++ b/src/declarative/qml/qmlvmemetaobject_p.h @@ -53,10 +53,12 @@ // We mean it. // -#include <qml.h> +#include "qml.h" + #include <QtCore/QMetaObject> #include <QtCore/QBitArray> #include <QtCore/QPair> + #include <private/qobject_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/qml/qmlwatcher.cpp b/src/declarative/qml/qmlwatcher.cpp index 889ac78..507c11d 100644 --- a/src/declarative/qml/qmlwatcher.cpp +++ b/src/declarative/qml/qmlwatcher.cpp @@ -39,14 +39,16 @@ ** ****************************************************************************/ +#include "qmlwatcher_p.h" + +#include "qmlexpression.h" +#include "qmlcontext.h" +#include "qml.h" + +#include <qmldebugservice_p.h> + #include <QtCore/qmetaobject.h> #include <QtCore/qdebug.h> -#include <qmlexpression.h> -#include <private/qmldebugservice_p.h> -#include <qmlcontext.h> -#include <qml.h> - -#include "qmlwatcher_p.h" QT_BEGIN_NAMESPACE @@ -180,4 +182,4 @@ void QmlWatcher::addPropertyWatch(int id, QObject *object, quint32 debugId, cons QT_END_NAMESPACE -#include "qmlwatcher.moc" +#include <qmlwatcher.moc> diff --git a/src/declarative/qml/qmlworkerscript.cpp b/src/declarative/qml/qmlworkerscript.cpp index d4fcf4a..2a3dbce 100644 --- a/src/declarative/qml/qmlworkerscript.cpp +++ b/src/declarative/qml/qmlworkerscript.cpp @@ -40,11 +40,13 @@ ****************************************************************************/ #include "qmlworkerscript_p.h" + +#include "qmlengine_p.h" + #include <QtCore/qcoreevent.h> #include <QtCore/qcoreapplication.h> #include <QtCore/qdebug.h> #include <QtScript/qscriptengine.h> -#include <private/qmlengine_p.h> #include <QtCore/qmutex.h> #include <QtCore/qwaitcondition.h> #include <QtScript/qscriptvalueiterator.h> diff --git a/src/declarative/qml/qmlworkerscript_p.h b/src/declarative/qml/qmlworkerscript_p.h index b7106c5..51efc4b 100644 --- a/src/declarative/qml/qmlworkerscript_p.h +++ b/src/declarative/qml/qmlworkerscript_p.h @@ -53,9 +53,10 @@ // We mean it. // +#include "qml.h" +#include "qmlparserstatus.h" + #include <QtCore/qthread.h> -#include <QtDeclarative/qml.h> -#include <QtDeclarative/qmlparserstatus.h> #include <QtScript/qscriptvalue.h> #include <QtCore/qurl.h> diff --git a/src/declarative/qml/qmlxmlhttprequest.cpp b/src/declarative/qml/qmlxmlhttprequest.cpp index 216db6e..d1705a1 100644 --- a/src/declarative/qml/qmlxmlhttprequest.cpp +++ b/src/declarative/qml/qmlxmlhttprequest.cpp @@ -39,19 +39,20 @@ ** ****************************************************************************/ +#include "qmlxmlhttprequest_p.h" + +#include "qmlengine.h" +#include "qmlengine_p.h" +#include "qmlrefcount_p.h" +#include "qmlengine_p.h" + #include <QtCore/qobject.h> -#include <qmlengine.h> -#include <private/qmlengine_p.h> #include <QtScript/qscriptvalue.h> #include <QtScript/qscriptcontext.h> #include <QtScript/qscriptengine.h> #include <QtNetwork/qnetworkreply.h> #include <QtCore/qxmlstream.h> -#include <private/qmlrefcount_p.h> -#include <private/qmlengine_p.h> #include <QtCore/qstack.h> -#include "qmlxmlhttprequest_p.h" - #include <QtCore/qdebug.h> // From DOM-Level-3-Core spec @@ -1590,4 +1591,4 @@ void qt_add_qmlxmlhttprequest(QScriptEngine *engine) engine->globalObject().setProperty(QLatin1String("DOMException"), domExceptionPrototype); } -#include "qmlxmlhttprequest.moc" +#include <qmlxmlhttprequest.moc> diff --git a/src/declarative/qml/rewriter/rewriter.cpp b/src/declarative/qml/rewriter/rewriter.cpp index ae1db30..237d33f 100644 --- a/src/declarative/qml/rewriter/rewriter.cpp +++ b/src/declarative/qml/rewriter/rewriter.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "rewriter_p.h" -#include "qmljsast_p.h" + +#include <qmljsast_p.h> QT_QML_BEGIN_NAMESPACE diff --git a/src/declarative/qml/rewriter/rewriter.pri b/src/declarative/qml/rewriter/rewriter.pri index 550741b..2c29061 100644 --- a/src/declarative/qml/rewriter/rewriter.pri +++ b/src/declarative/qml/rewriter/rewriter.pri @@ -1,6 +1,4 @@ - INCLUDEPATH += $$PWD -DEPENDPATH += $$PWD HEADERS += $$PWD/textwriter_p.h SOURCES += $$PWD/textwriter.cpp diff --git a/src/declarative/qml/rewriter/rewriter_p.h b/src/declarative/qml/rewriter/rewriter_p.h index ed9be16..57e7ea2 100644 --- a/src/declarative/qml/rewriter/rewriter_p.h +++ b/src/declarative/qml/rewriter/rewriter_p.h @@ -42,12 +42,13 @@ #ifndef REWRITER_H #define REWRITER_H +#include "textwriter_p.h" + +#include <qmljsastvisitor_p.h> + #include <QtCore/QList> #include <QtCore/QString> -#include "textwriter_p.h" -#include "qmljsastvisitor_p.h" - QT_BEGIN_HEADER QT_QML_BEGIN_NAMESPACE diff --git a/src/declarative/qml/rewriter/textwriter_p.h b/src/declarative/qml/rewriter/textwriter_p.h index 14c4726..a19fa5e 100644 --- a/src/declarative/qml/rewriter/textwriter_p.h +++ b/src/declarative/qml/rewriter/textwriter_p.h @@ -42,12 +42,12 @@ #ifndef TEXTWRITER_H #define TEXTWRITER_H +#include <qmljsglobal_p.h> + #include <QtCore/QString> #include <QtCore/QList> #include <QtGui/QTextCursor> -#include "qmljsglobal_p.h" - QT_BEGIN_HEADER QT_QML_BEGIN_NAMESPACE diff --git a/src/declarative/util/qfxperf.cpp b/src/declarative/util/qfxperf.cpp index 8fcab2b..f62f810 100644 --- a/src/declarative/util/qfxperf.cpp +++ b/src/declarative/util/qfxperf.cpp @@ -39,7 +39,7 @@ ** ****************************************************************************/ -#include "private/qfxperf_p_p.h" +#include "qfxperf_p_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qfxperf_p_p.h b/src/declarative/util/qfxperf_p_p.h index c16bf7b..e3f820c 100644 --- a/src/declarative/util/qfxperf_p_p.h +++ b/src/declarative/util/qfxperf_p_p.h @@ -52,7 +52,7 @@ // We mean it. // -#include "private/qperformancelog_p_p.h" +#include "qperformancelog_p_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/util/qmlanimation.cpp b/src/declarative/util/qmlanimation.cpp index 475978f..0f5a0f0 100644 --- a/src/declarative/util/qmlanimation.cpp +++ b/src/declarative/util/qmlanimation.cpp @@ -40,25 +40,29 @@ ****************************************************************************/ #include "qmlanimation_p.h" -#include "qvariant.h" -#include "qcolor.h" -#include "qfile.h" -#include "qmlpropertyvaluesource.h" -#include "qml.h" -#include "qmlinfo.h" #include "qmlanimation_p_p.h" -#include <private/qmlbehavior_p.h> + +#include "qmlbehavior_p.h" +#include "qmlstateoperations_p.h" + +#include <qmlpropertyvaluesource.h> +#include <qml.h> +#include <qmlinfo.h> +#include <qmlexpression.h> +#include <qmlstringconverters_p.h> +#include <qmlglobal_p.h> + +#include <qvariant.h> +#include <qcolor.h> +#include <qfile.h> #include <QParallelAnimationGroup> #include <QSequentialAnimationGroup> #include <QtCore/qset.h> #include <QtCore/qrect.h> #include <QtCore/qpoint.h> #include <QtCore/qsize.h> -#include <qmlexpression.h> -#include <private/qmlstateoperations_p.h> -#include <private/qmlstringconverters_p.h> + #include <private/qvariantanimation_p.h> -#include <private/qmlglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlanimation_p.h b/src/declarative/util/qmlanimation_p.h index 87b6703..707ed33 100644 --- a/src/declarative/util/qmlanimation_p.h +++ b/src/declarative/util/qmlanimation_p.h @@ -42,15 +42,17 @@ #ifndef QMLANIMATION_H #define QMLANIMATION_H -#include <QtCore/qvariant.h> -#include <QtCore/QAbstractAnimation> -#include <QtGui/qcolor.h> -#include <private/qmltransition_p.h> +#include "qmltransition_p.h" +#include "qmlstate_p.h" + #include <qmlpropertyvaluesource.h> -#include <private/qmlstate_p.h> #include <qml.h> #include <qmlscriptstring.h> +#include <QtCore/qvariant.h> +#include <QtCore/QAbstractAnimation> +#include <QtGui/qcolor.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlanimation_p_p.h b/src/declarative/util/qmlanimation_p_p.h index 326e1c6..0b65c27 100644 --- a/src/declarative/util/qmlanimation_p_p.h +++ b/src/declarative/util/qmlanimation_p_p.h @@ -53,19 +53,23 @@ // We mean it. // -#include <private/qobject_p.h> -#include <private/qmlnullablevalue_p_p.h> -#include <private/qvariantanimation_p.h> +#include "qmlanimation_p.h" + +#include "qmlnullablevalue_p_p.h" +#include "qmltimeline_p_p.h" + +#include <qml.h> +#include <qmlcontext.h> + #include <QtCore/QPauseAnimation> #include <QtCore/QVariantAnimation> #include <QtCore/QAnimationGroup> #include <QtGui/QColor> -#include <private/qmlanimation_p.h> -#include <qml.h> -#include <qmlcontext.h> -#include <private/qmltimeline_p_p.h> #include <QDebug> +#include <private/qobject_p.h> +#include <private/qvariantanimation_p.h> + QT_BEGIN_NAMESPACE //interface for classes that provide animation actions for QActionAnimation @@ -201,14 +205,14 @@ public: connectedTimeLine(false), componentComplete(true), startOnCompletion(false), target(0), group(0) {} - bool running; - bool paused; - bool alwaysRunToEnd; - bool repeat; - bool connectedTimeLine; + bool running:1; + bool paused:1; + bool alwaysRunToEnd:1; + bool repeat:1; + bool connectedTimeLine:1; - bool componentComplete; - bool startOnCompletion; + bool componentComplete:1; + bool startOnCompletion:1; void commence(); diff --git a/src/declarative/util/qmlbehavior.cpp b/src/declarative/util/qmlbehavior.cpp index 23d3838..9757fa2 100644 --- a/src/declarative/util/qmlbehavior.cpp +++ b/src/declarative/util/qmlbehavior.cpp @@ -39,14 +39,18 @@ ** ****************************************************************************/ -#include <private/qobject_p.h> -#include <private/qmlanimation_p.h> -#include <private/qmltransition_p.h> #include "qmlbehavior_p.h" + +#include "qmlanimation_p.h" +#include "qmltransition_p.h" + #include <qmlcontext.h> #include <qmlinfo.h> + #include <QtCore/qparallelanimationgroup.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,Behavior,QmlBehavior) diff --git a/src/declarative/util/qmlbehavior_p.h b/src/declarative/util/qmlbehavior_p.h index 581a0a8..da3b40f 100644 --- a/src/declarative/util/qmlbehavior_p.h +++ b/src/declarative/util/qmlbehavior_p.h @@ -42,10 +42,11 @@ #ifndef QMLBEHAVIOR_H #define QMLBEHAVIOR_H +#include "qmlstate_p.h" + #include <qmlpropertyvaluesource.h> #include <qmlpropertyvalueinterceptor.h> #include <qml.h> -#include <private/qmlstate_p.h> QT_BEGIN_HEADER diff --git a/src/declarative/util/qmlbind.cpp b/src/declarative/util/qmlbind.cpp index 2f692d8..c68cef2 100644 --- a/src/declarative/util/qmlbind.cpp +++ b/src/declarative/util/qmlbind.cpp @@ -39,16 +39,20 @@ ** ****************************************************************************/ +#include "qmlbind_p.h" + +#include "qmlnullablevalue_p_p.h" + #include <qmlengine.h> #include <qmlcontext.h> -#include <private/qobject_p.h> + #include <QtCore/qfile.h> #include <QtCore/qdebug.h> #include <QtScript/qscriptvalue.h> #include <QtScript/qscriptcontext.h> #include <QtScript/qscriptengine.h> -#include <private/qmlnullablevalue_p_p.h> -#include "qmlbind_p.h" + +#include <private/qobject_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlbind_p.h b/src/declarative/util/qmlbind_p.h index 4d85698..4d7cd1f 100644 --- a/src/declarative/util/qmlbind_p.h +++ b/src/declarative/util/qmlbind_p.h @@ -42,9 +42,10 @@ #ifndef QMLBIND_H #define QMLBIND_H -#include <QtCore/qobject.h> #include <qml.h> +#include <QtCore/qobject.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlconnection.cpp b/src/declarative/util/qmlconnection.cpp index 3e72ab8..f5fbd3f 100644 --- a/src/declarative/util/qmlconnection.cpp +++ b/src/declarative/util/qmlconnection.cpp @@ -40,12 +40,15 @@ ****************************************************************************/ #include "qmlconnection_p.h" + #include <qmlexpression.h> -#include "private/qmlboundsignal_p.h" -#include "private/qobject_p.h" +#include <qmlboundsignal_p.h> #include <qmlcontext.h> + #include <QtCore/qdebug.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlConnectionPrivate : public QObjectPrivate diff --git a/src/declarative/util/qmlconnection_p.h b/src/declarative/util/qmlconnection_p.h index 1bc81fe..52bc247 100644 --- a/src/declarative/util/qmlconnection_p.h +++ b/src/declarative/util/qmlconnection_p.h @@ -42,11 +42,12 @@ #ifndef QMLCONNECTION_H #define QMLCONNECTION_H -#include <QtCore/qobject.h> -#include <QtCore/qstring.h> #include <qml.h> #include <qmlscriptstring.h> +#include <QtCore/qobject.h> +#include <QtCore/qstring.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmldatetimeformatter.cpp b/src/declarative/util/qmldatetimeformatter.cpp index 983287e..9d216cf 100644 --- a/src/declarative/util/qmldatetimeformatter.cpp +++ b/src/declarative/util/qmldatetimeformatter.cpp @@ -40,9 +40,11 @@ ****************************************************************************/ #include "qmldatetimeformatter_p.h" -#include "private/qobject_p.h" + #include <QtCore/qlocale.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE //TODO: may need optimisation as the QDateTime member may not be needed? diff --git a/src/declarative/util/qmldatetimeformatter_p.h b/src/declarative/util/qmldatetimeformatter_p.h index cd5f75f..c90ee8c 100644 --- a/src/declarative/util/qmldatetimeformatter_p.h +++ b/src/declarative/util/qmldatetimeformatter_p.h @@ -42,9 +42,10 @@ #ifndef QMLDATETIMEFORMATTER_H #define QMLDATETIMEFORMATTER_H -#include <QtCore/qdatetime.h> #include <qml.h> +#include <QtCore/qdatetime.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmleasefollow.cpp b/src/declarative/util/qmleasefollow.cpp index 50758f4..e3153b1 100644 --- a/src/declarative/util/qmleasefollow.cpp +++ b/src/declarative/util/qmleasefollow.cpp @@ -40,10 +40,14 @@ ****************************************************************************/ #include "qmleasefollow_p.h" + +#include "qmlanimation_p_p.h" + #include <qmlmetaproperty.h> -#include <math.h> + #include <QtCore/qdebug.h> -#include <private/qmlanimation_p_p.h> + +#include <math.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmleasefollow_p.h b/src/declarative/util/qmleasefollow_p.h index 8ea2b8f..ef095a3 100644 --- a/src/declarative/util/qmleasefollow_p.h +++ b/src/declarative/util/qmleasefollow_p.h @@ -42,10 +42,11 @@ #ifndef QMLEASEFOLLOW_H #define QMLEASEFOLLOW_H -#include <QtCore/qobject.h> #include <qml.h> #include <qmlpropertyvaluesource.h> +#include <QtCore/qobject.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlfontloader.cpp b/src/declarative/util/qmlfontloader.cpp index bb26536..8230b1a 100644 --- a/src/declarative/util/qmlfontloader.cpp +++ b/src/declarative/util/qmlfontloader.cpp @@ -39,17 +39,20 @@ ** ****************************************************************************/ -#include "private/qobject_p.h" #include "qmlfontloader_p.h" + +#include <qmlcontext.h> +#include <qmlengine.h> + #include <QUrl> #include <QDebug> #include <QNetworkRequest> #include <QNetworkReply> #include <QFile> -#include <QmlContext> -#include <qmlengine.h> #include <QFontDatabase> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlFontLoaderPrivate : public QObjectPrivate diff --git a/src/declarative/util/qmlfontloader_p.h b/src/declarative/util/qmlfontloader_p.h index 0202f3c..aac8a71 100644 --- a/src/declarative/util/qmlfontloader_p.h +++ b/src/declarative/util/qmlfontloader_p.h @@ -42,9 +42,10 @@ #ifndef QMLFONTLOADER_H #define QMLFONTLOADER_H -#include <QtCore/qobject.h> #include <qml.h> +#include <QtCore/qobject.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmllistaccessor.cpp b/src/declarative/util/qmllistaccessor.cpp index 4adec81..1e051b7 100644 --- a/src/declarative/util/qmllistaccessor.cpp +++ b/src/declarative/util/qmllistaccessor.cpp @@ -40,12 +40,14 @@ ****************************************************************************/ #include "qmllistaccessor_p.h" -#include <QStringList> + #include <qmlmetatype.h> + +#include <QStringList> #include <QtCore/qdebug.h> // ### Remove me -#include <private/qmlengine_p.h> +#include <qmlengine_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmllistmodel.cpp b/src/declarative/util/qmllistmodel.cpp index 8259dcd..00c99f6 100644 --- a/src/declarative/util/qmllistmodel.cpp +++ b/src/declarative/util/qmllistmodel.cpp @@ -39,17 +39,20 @@ ** ****************************************************************************/ +#include "qmllistmodel_p.h" + +#include "qmlopenmetaobject_p.h" + +#include <qmlcustomparser_p.h> +#include <qmlparser_p.h> +#include <qmlengine_p.h> +#include <qmlcontext.h> +#include <qmlinfo.h> + #include <QtCore/qdebug.h> #include <QtCore/qstack.h> #include <QXmlStreamReader> -#include <private/qmlcustomparser_p.h> -#include <private/qmlparser_p.h> -#include "qmlopenmetaobject_p.h" -#include <private/qmlengine_p.h> -#include <qmlcontext.h> -#include "qmllistmodel_p.h" #include <QtScript/qscriptvalueiterator.h> -#include "qmlinfo.h" Q_DECLARE_METATYPE(QListModelInterface *) @@ -442,6 +445,7 @@ void QmlListModel::clear() _root = 0; roleStrings.clear(); emit itemsRemoved(0,cleared); + emit countChanged(0); } /*! @@ -923,4 +927,4 @@ QT_END_NAMESPACE QML_DECLARE_TYPE(QmlListElement) -#include "qmllistmodel.moc" +#include <qmllistmodel.moc> diff --git a/src/declarative/util/qmllistmodel_p.h b/src/declarative/util/qmllistmodel_p.h index d626060..734d44c 100644 --- a/src/declarative/util/qmllistmodel_p.h +++ b/src/declarative/util/qmllistmodel_p.h @@ -42,16 +42,16 @@ #ifndef QMLLISTMODEL_H #define QMLLISTMODEL_H +#include <qml.h> + #include <QtCore/QObject> #include <QtCore/QStringList> #include <QtCore/QHash> #include <QtCore/QList> #include <QtCore/QVariant> -#include <qml.h> -#include <private/qlistmodelinterface_p.h> +#include <qlistmodelinterface_p.h> #include <QtScript/qscriptvalue.h> - QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlnumberformatter.cpp b/src/declarative/util/qmlnumberformatter.cpp index fce35d9..073dc68 100644 --- a/src/declarative/util/qmlnumberformatter.cpp +++ b/src/declarative/util/qmlnumberformatter.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmlnumberformatter_p.h" -#include "private/qobject_p.h" + +#include <private/qobject_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlnumberformatter_p.h b/src/declarative/util/qmlnumberformatter_p.h index 346c2f0..71fceb2 100644 --- a/src/declarative/util/qmlnumberformatter_p.h +++ b/src/declarative/util/qmlnumberformatter_p.h @@ -42,8 +42,9 @@ #ifndef QMLNUMBERFORMATTER_H #define QMLNUMBERFORMATTER_H +#include "qnumberformat_p.h" + #include <qml.h> -#include <private/qnumberformat_p.h> QT_BEGIN_HEADER diff --git a/src/declarative/util/qmlopenmetaobject.cpp b/src/declarative/util/qmlopenmetaobject.cpp index 05ff80a..04cd8a5 100644 --- a/src/declarative/util/qmlopenmetaobject.cpp +++ b/src/declarative/util/qmlopenmetaobject.cpp @@ -40,7 +40,8 @@ ****************************************************************************/ #include "qmlopenmetaobject_p.h" -#include "private/qmetaobjectbuilder_p.h" + +#include <qmetaobjectbuilder_p.h> #include <QDebug> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlopenmetaobject_p.h b/src/declarative/util/qmlopenmetaobject_p.h index 7a5b4ce..6045678 100644 --- a/src/declarative/util/qmlopenmetaobject_p.h +++ b/src/declarative/util/qmlopenmetaobject_p.h @@ -43,9 +43,10 @@ #define QMLOPENMETAOBJECT_H #include <QtCore/QMetaObject> -#include <private/qobject_p.h> #include <QtCore/QObject> +#include <private/qobject_p.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlpackage.cpp b/src/declarative/util/qmlpackage.cpp index 6bc1ef9..f9238ca 100644 --- a/src/declarative/util/qmlpackage.cpp +++ b/src/declarative/util/qmlpackage.cpp @@ -39,9 +39,10 @@ ** ****************************************************************************/ -#include "private/qobject_p.h" #include "qmlpackage_p.h" +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlPackagePrivate : public QObjectPrivate @@ -151,4 +152,4 @@ QML_DEFINE_TYPE(Qt,4,6,Package,QmlPackage) QT_END_NAMESPACE -#include "qmlpackage.moc" +#include <qmlpackage.moc> diff --git a/src/declarative/util/qmlpixmapcache.cpp b/src/declarative/util/qmlpixmapcache.cpp index b8a9bd7..16e3dc8 100644 --- a/src/declarative/util/qmlpixmapcache.cpp +++ b/src/declarative/util/qmlpixmapcache.cpp @@ -40,12 +40,15 @@ ****************************************************************************/ #include "qmlpixmapcache_p.h" + +#include "qfxperf_p_p.h" + +#include <qmlengine.h> + #include <QImageReader> #include <QHash> #include <QNetworkReply> #include <QPixmapCache> -#include <private/qfxperf_p_p.h> -#include <qmlengine.h> #include <QFile> #include <QtCore/qdebug.h> @@ -147,59 +150,62 @@ bool QmlPixmapCache::find(const QUrl& url, QPixmap *pixmap) QmlPerfTimer<QmlPerf::PixmapLoad> perf; #endif - QString key = url.toString(); bool ok = true; - if (!QPixmapCache::find(key,pixmap)) { #ifndef QT_NO_LOCALFILE_OPTIMIZED_QML - QString lf = toLocalFileOrQrc(url); - if (!lf.isEmpty()) { + QString lf = toLocalFileOrQrc(url); + if (!lf.isEmpty()) { + if (!QPixmapCache::find(lf,pixmap)) { QFile f(lf); if (f.open(QIODevice::ReadOnly)) { if (!readImage(&f, pixmap)) { qWarning() << "Format error loading" << url; *pixmap = QPixmap(); ok = false; + } else { + QPixmapCache::insert(lf, *pixmap); + ok = !pixmap->isNull(); } } else { *pixmap = QPixmap(); ok = false; } - } else + } else { + ok = !pixmap->isNull(); + } + return ok; + } #endif - { - QmlGraphicsSharedNetworkReplyHash::Iterator iter = qfxActiveNetworkReplies.find(key); - if (iter == qfxActiveNetworkReplies.end()) { - // API usage error - qWarning() << "QmlPixmapCache: URL not loaded" << url; + + QString key = url.toString(); + if (!QPixmapCache::find(key,pixmap)) { + QmlGraphicsSharedNetworkReplyHash::Iterator iter = qfxActiveNetworkReplies.find(key); + if (iter == qfxActiveNetworkReplies.end()) { + // API usage error + qWarning() << "QmlPixmapCache: URL not loaded" << url; + ok = false; + } else { + if ((*iter)->reply->error()) { + qWarning() << "Network error loading" << url << (*iter)->reply->errorString(); + *pixmap = QPixmap(); + ok = false; + } else if (!readImage((*iter)->reply, pixmap)) { + qWarning() << "Format error loading" << url; + *pixmap = QPixmap(); ok = false; } else { - if ((*iter)->reply->error()) { - qWarning() << "Network error loading" << url << (*iter)->reply->errorString(); - *pixmap = QPixmap(); - ok = false; - } else if (!readImage((*iter)->reply, pixmap)) { - qWarning() << "Format error loading" << url; - *pixmap = QPixmap(); - ok = false; - } else { - if ((*iter)->refCount > 1) - (*iter)->pixmap = *pixmap; - } - (*iter)->release(); + if ((*iter)->refCount > 1) + (*iter)->pixmap = *pixmap; } + (*iter)->release(); } QPixmapCache::insert(key, *pixmap); } else { ok = !pixmap->isNull(); -#ifndef QT_NO_LOCALFILE_OPTIMIZED_QML - if (url.scheme()!=QLatin1String("file")) -#endif + // We may be the second finder. Still need to check for active replies. - { - QmlGraphicsSharedNetworkReplyHash::Iterator iter = qfxActiveNetworkReplies.find(key); - if (iter != qfxActiveNetworkReplies.end()) - (*iter)->release(); - } + QmlGraphicsSharedNetworkReplyHash::Iterator iter = qfxActiveNetworkReplies.find(key); + if (iter != qfxActiveNetworkReplies.end()) + (*iter)->release(); } return ok; } @@ -223,8 +229,7 @@ QNetworkReply *QmlPixmapCache::get(QmlEngine *engine, const QUrl& url, QPixmap * #ifndef QT_NO_LOCALFILE_OPTIMIZED_QML QString lf = toLocalFileOrQrc(url); if (!lf.isEmpty()) { - QString key = url.toString(); - if (!QPixmapCache::find(key,pixmap)) { + if (!QPixmapCache::find(lf,pixmap)) { bool loaded = true; QFile f(lf); if (f.open(QIODevice::ReadOnly)) { @@ -239,7 +244,7 @@ QNetworkReply *QmlPixmapCache::get(QmlEngine *engine, const QUrl& url, QPixmap * loaded = false; } if (loaded) - QPixmapCache::insert(key, *pixmap); + QPixmapCache::insert(lf, *pixmap); if (ok) *ok = loaded; } return 0; diff --git a/src/declarative/util/qmlpropertychanges.cpp b/src/declarative/util/qmlpropertychanges.cpp index 9ca6db8..b9ec67a 100644 --- a/src/declarative/util/qmlpropertychanges.cpp +++ b/src/declarative/util/qmlpropertychanges.cpp @@ -39,17 +39,21 @@ ** ****************************************************************************/ -#include "private/qobject_p.h" -#include "qmlopenmetaobject_p.h" #include "qmlpropertychanges_p.h" -#include <QtCore/qdebug.h> + +#include "qmlopenmetaobject_p.h" + #include <qmlinfo.h> -#include <private/qmlcustomparser_p.h> -#include <private/qmlparser_p.h> +#include <qmlcustomparser_p.h> +#include <qmlparser_p.h> #include <qmlexpression.h> #include <qmlbinding.h> #include <qmlcontext.h> +#include <QtCore/qdebug.h> + +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE /*! diff --git a/src/declarative/util/qmlpropertychanges_p.h b/src/declarative/util/qmlpropertychanges_p.h index 2c0cba9..461730d 100644 --- a/src/declarative/util/qmlpropertychanges_p.h +++ b/src/declarative/util/qmlpropertychanges_p.h @@ -42,7 +42,7 @@ #ifndef QMLPROPERTYCHANGES_H #define QMLPROPERTYCHANGES_H -#include <private/qmlstateoperations_p.h> +#include "qmlstateoperations_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/util/qmlpropertymap.cpp b/src/declarative/util/qmlpropertymap.cpp index c0e3340..d0a0428 100644 --- a/src/declarative/util/qmlpropertymap.cpp +++ b/src/declarative/util/qmlpropertymap.cpp @@ -40,7 +40,9 @@ ****************************************************************************/ #include "qmlpropertymap.h" -#include <private/qmlopenmetaobject_p.h> + +#include "qmlopenmetaobject_p.h" + #include <QDebug> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlspringfollow.cpp b/src/declarative/util/qmlspringfollow.cpp index d6961b0..29dcf91 100644 --- a/src/declarative/util/qmlspringfollow.cpp +++ b/src/declarative/util/qmlspringfollow.cpp @@ -39,12 +39,16 @@ ** ****************************************************************************/ +#include "qmlspringfollow_p.h" + +#include "qmlanimation_p_p.h" + +#include <QtCore/qdebug.h> + +#include <private/qobject_p.h> + #include <limits.h> #include <math.h> -#include <QtCore/qdebug.h> -#include "private/qobject_p.h" -#include "qmlspringfollow_p.h" -#include "private/qmlanimation_p_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlstate.cpp b/src/declarative/util/qmlstate.cpp index 5fde89a..98cc0b6 100644 --- a/src/declarative/util/qmlstate.cpp +++ b/src/declarative/util/qmlstate.cpp @@ -39,16 +39,19 @@ ** ****************************************************************************/ +#include "qmlstate_p_p.h" +#include "qmlstate_p.h" + #include "qmltransition_p.h" #include "qmlstategroup_p.h" -#include "qmlstate_p_p.h" -#include "qmlbinding.h" #include "qmlstateoperations_p.h" #include "qmlanimation_p.h" #include "qmlanimation_p_p.h" -#include "qmlstate_p.h" + +#include <qmlbinding.h> +#include <qmlglobal_p.h> + #include <QtCore/qdebug.h> -#include <private/qmlglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlstate_p.h b/src/declarative/util/qmlstate_p.h index 856af8a..33e66d8 100644 --- a/src/declarative/util/qmlstate_p.h +++ b/src/declarative/util/qmlstate_p.h @@ -42,9 +42,10 @@ #ifndef QMLSTATE_H #define QMLSTATE_H -#include <QtCore/qobject.h> #include <qml.h> +#include <QtCore/qobject.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlstate_p_p.h b/src/declarative/util/qmlstate_p_p.h index 75eb3fd..ee08949 100644 --- a/src/declarative/util/qmlstate_p_p.h +++ b/src/declarative/util/qmlstate_p_p.h @@ -53,10 +53,12 @@ // We mean it. // -#include <private/qmlstate_p.h> +#include "qmlstate_p.h" + +#include "qmlanimation_p_p.h" +#include "qmltransitionmanager_p_p.h" + #include <private/qobject_p.h> -#include <private/qmlanimation_p_p.h> -#include <private/qmltransitionmanager_p_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlstategroup.cpp b/src/declarative/util/qmlstategroup.cpp index f206f5c..373d457 100644 --- a/src/declarative/util/qmlstategroup.cpp +++ b/src/declarative/util/qmlstategroup.cpp @@ -39,13 +39,17 @@ ** ****************************************************************************/ -#include "private/qobject_p.h" #include "qmlstategroup_p.h" + #include "qmltransition_p.h" #include "qmlstate_p_p.h" + #include <qmlbinding.h> +#include <qmlglobal_p.h> + #include <QtCore/qdebug.h> -#include <private/qmlglobal_p.h> + +#include <private/qobject_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlstategroup_p.h b/src/declarative/util/qmlstategroup_p.h index ddd27d7..82cc504 100644 --- a/src/declarative/util/qmlstategroup_p.h +++ b/src/declarative/util/qmlstategroup_p.h @@ -42,7 +42,7 @@ #ifndef QMLSTATEGROUP_H #define QMLSTATEGROUP_H -#include <private/qmlstate_p.h> +#include "qmlstate_p.h" QT_BEGIN_HEADER diff --git a/src/declarative/util/qmlstateoperations.cpp b/src/declarative/util/qmlstateoperations.cpp index 9727ca7..ebbb5ee 100644 --- a/src/declarative/util/qmlstateoperations.cpp +++ b/src/declarative/util/qmlstateoperations.cpp @@ -39,18 +39,21 @@ ** ****************************************************************************/ -#include <private/qobject_p.h> +#include "qmlstateoperations_p.h" + #include <qml.h> #include <qmlcontext.h> #include <qmlexpression.h> -#include "qmlstateoperations_p.h" -#include <QtCore/qdebug.h> #include <qmlinfo.h> -#include <private/qmlgraphicsanchors_p_p.h> -#include <private/qmlgraphicsitem_p.h> +#include <qmlgraphicsanchors_p_p.h> +#include <qmlgraphicsitem_p.h> + +#include <QtCore/qdebug.h> #include <QtGui/qgraphicsitem.h> #include <QtCore/qmath.h> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlParentChangePrivate : public QObjectPrivate @@ -823,8 +826,8 @@ void QmlAnchorChanges::saveCurrentValues() d->rewindBaseline = d->target->anchors()->baseline(); } -#include "qmlstateoperations.moc" -#include "moc_qmlstateoperations_p.cpp" +#include <qmlstateoperations.moc> +#include <moc_qmlstateoperations_p.cpp> QT_END_NAMESPACE diff --git a/src/declarative/util/qmlstateoperations_p.h b/src/declarative/util/qmlstateoperations_p.h index 589fe20..b03af48 100644 --- a/src/declarative/util/qmlstateoperations_p.h +++ b/src/declarative/util/qmlstateoperations_p.h @@ -42,9 +42,10 @@ #ifndef QMLSTATEOPERATIONS_H #define QMLSTATEOPERATIONS_H -#include <private/qmlstate_p.h> +#include "qmlstate_p.h" + #include <qmlgraphicsitem.h> -#include <private/qmlgraphicsanchors_p.h> +#include <qmlgraphicsanchors_p.h> #include <qmlscriptstring.h> QT_BEGIN_HEADER diff --git a/src/declarative/util/qmlsystempalette.cpp b/src/declarative/util/qmlsystempalette.cpp index 4ddc82d..d43a971 100644 --- a/src/declarative/util/qmlsystempalette.cpp +++ b/src/declarative/util/qmlsystempalette.cpp @@ -39,10 +39,12 @@ ** ****************************************************************************/ -#include "private/qobject_p.h" #include "qmlsystempalette_p.h" + #include <QApplication> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE class QmlSystemPalettePrivate : public QObjectPrivate diff --git a/src/declarative/util/qmlsystempalette_p.h b/src/declarative/util/qmlsystempalette_p.h index 8ee511a..7c39d4a 100644 --- a/src/declarative/util/qmlsystempalette_p.h +++ b/src/declarative/util/qmlsystempalette_p.h @@ -42,8 +42,9 @@ #ifndef QMLSYSTEMPALETTE_H #define QMLSYSTEMPALETTE_H -#include <QtCore/qobject.h> #include <qml.h> + +#include <QtCore/qobject.h> #include <QPalette> QT_BEGIN_HEADER diff --git a/src/declarative/util/qmltimeline.cpp b/src/declarative/util/qmltimeline.cpp index e8695de..130e02d 100644 --- a/src/declarative/util/qmltimeline.cpp +++ b/src/declarative/util/qmltimeline.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qmltimeline_p_p.h" + #include <QDebug> #include <QMutex> #include <QThread> diff --git a/src/declarative/util/qmltimer.cpp b/src/declarative/util/qmltimer.cpp index 9b54337..046dfe9 100644 --- a/src/declarative/util/qmltimer.cpp +++ b/src/declarative/util/qmltimer.cpp @@ -39,11 +39,13 @@ ** ****************************************************************************/ -#include "QtCore/qcoreapplication.h" -#include "QtCore/qpauseanimation.h" -#include "private/qobject_p.h" #include "qmltimer_p.h" -#include "qdebug.h" + +#include <QtCore/qcoreapplication.h> +#include <QtCore/qpauseanimation.h> +#include <qdebug.h> + +#include <private/qobject_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmltimer_p.h b/src/declarative/util/qmltimer_p.h index 50cae2b..fcd6c84 100644 --- a/src/declarative/util/qmltimer_p.h +++ b/src/declarative/util/qmltimer_p.h @@ -42,9 +42,10 @@ #ifndef QMLTIMER_H #define QMLTIMER_H +#include <qml.h> + #include <QtCore/qobject.h> #include <QtCore/qabstractanimation.h> -#include <qml.h> QT_BEGIN_HEADER diff --git a/src/declarative/util/qmltransition.cpp b/src/declarative/util/qmltransition.cpp index 204887c..ec92cf9 100644 --- a/src/declarative/util/qmltransition.cpp +++ b/src/declarative/util/qmltransition.cpp @@ -46,6 +46,7 @@ #include "qmlanimation_p.h" #include "qmlanimation_p_p.h" #include "qmltransitionmanager_p_p.h" + #include <QParallelAnimationGroup> QT_BEGIN_NAMESPACE @@ -71,7 +72,7 @@ class ParallelAnimationWrapper : public QParallelAnimationGroup { Q_OBJECT public: - ParallelAnimationWrapper(QObject *parent) : QParallelAnimationGroup(parent) {} + ParallelAnimationWrapper(QObject *parent = 0) : QParallelAnimationGroup(parent) {} QmlTransitionPrivate *trans; protected: virtual void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState); @@ -96,8 +97,7 @@ public: void init() { - Q_Q(QmlTransition); - group = new ParallelAnimationWrapper(q); + group = new ParallelAnimationWrapper; group->trans = this; } @@ -146,6 +146,8 @@ QmlTransition::QmlTransition(QObject *parent) QmlTransition::~QmlTransition() { + Q_D(QmlTransition); + delete d->group; } void QmlTransition::stop() @@ -257,4 +259,4 @@ QmlList<QmlAbstractAnimation *>* QmlTransition::animations() QT_END_NAMESPACE -#include "qmltransition.moc" +#include <qmltransition.moc> diff --git a/src/declarative/util/qmltransition_p.h b/src/declarative/util/qmltransition_p.h index 1891a6e..3dd0244 100644 --- a/src/declarative/util/qmltransition_p.h +++ b/src/declarative/util/qmltransition_p.h @@ -42,10 +42,12 @@ #ifndef QMLTRANSITION_H #define QMLTRANSITION_H -#include <QtCore/qobject.h> -#include <private/qmlstate_p.h> +#include "qmlstate_p.h" + #include <qml.h> +#include <QtCore/qobject.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmltransitionmanager.cpp b/src/declarative/util/qmltransitionmanager.cpp index 1a164c7..8ae5785 100644 --- a/src/declarative/util/qmltransitionmanager.cpp +++ b/src/declarative/util/qmltransitionmanager.cpp @@ -39,9 +39,11 @@ ** ****************************************************************************/ +#include "qmltransitionmanager_p_p.h" + +#include "qmlstate_p_p.h" + #include <qmlbinding.h> -#include <private/qmltransitionmanager_p_p.h> -#include <private/qmlstate_p_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmltransitionmanager_p_p.h b/src/declarative/util/qmltransitionmanager_p_p.h index 9a05684..c7e609f 100644 --- a/src/declarative/util/qmltransitionmanager_p_p.h +++ b/src/declarative/util/qmltransitionmanager_p_p.h @@ -53,7 +53,7 @@ // We mean it. // -#include <private/qmlstateoperations_p.h> +#include "qmlstateoperations_p.h" QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlview.cpp b/src/declarative/util/qmlview.cpp index afeead2..b5f33f2 100644 --- a/src/declarative/util/qmlview.cpp +++ b/src/declarative/util/qmlview.cpp @@ -39,30 +39,31 @@ ** ****************************************************************************/ -#include "qscriptvalueiterator.h" -#include "qdebug.h" -#include "qtimer.h" -#include "qevent.h" -#include "qdir.h" -#include "qcoreapplication.h" -#include "qfontdatabase.h" -#include "qicon.h" -#include "qurl.h" -#include "qboxlayout.h" -#include "qbasictimer.h" - -#include "qml.h" -#include "qmlgraphicsitem.h" -#include "private/qperformancelog_p_p.h" -#include "private/qfxperf_p_p.h" - #include "qmlview.h" + +#include "qperformancelog_p_p.h" +#include "qfxperf_p_p.h" + +#include <qml.h> +#include <qmlgraphicsitem.h> #include <qmlengine.h> #include <qmlcontext.h> -#include <private/qmldebug_p.h> -#include <private/qmldebugservice_p.h> +#include <qmldebug_p.h> +#include <qmldebugservice_p.h> +#include <qmlglobal_p.h> + +#include <qscriptvalueiterator.h> +#include <qdebug.h> +#include <qtimer.h> +#include <qevent.h> +#include <qdir.h> +#include <qcoreapplication.h> +#include <qfontdatabase.h> +#include <qicon.h> +#include <qurl.h> +#include <qboxlayout.h> +#include <qbasictimer.h> #include <QtCore/qabstractanimation.h> -#include <private/qmlglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qmlxmllistmodel.cpp b/src/declarative/util/qmlxmllistmodel.cpp index 2dfffbf..6f8da9c 100644 --- a/src/declarative/util/qmlxmllistmodel.cpp +++ b/src/declarative/util/qmlxmllistmodel.cpp @@ -40,10 +40,10 @@ ****************************************************************************/ #include "qmlxmllistmodel_p.h" -#include "private/qobject_p.h" #include <qmlcontext.h> #include <qmlengine.h> + #include <QDebug> #include <QApplication> #include <QThread> @@ -56,6 +56,8 @@ #include <QNetworkRequest> #include <QNetworkReply> +#include <private/qobject_p.h> + QT_BEGIN_NAMESPACE QML_DEFINE_TYPE(Qt,4,6,XmlRole,QmlXmlListModelRole) @@ -716,4 +718,4 @@ void QmlXmlListModel::queryCompleted(int id, int size) QT_END_NAMESPACE -#include "qmlxmllistmodel.moc" +#include <qmlxmllistmodel.moc> diff --git a/src/declarative/util/qmlxmllistmodel_p.h b/src/declarative/util/qmlxmllistmodel_p.h index 2fa1be8..e645740 100644 --- a/src/declarative/util/qmlxmllistmodel_p.h +++ b/src/declarative/util/qmlxmllistmodel_p.h @@ -43,9 +43,10 @@ #define QMLXMLLISTMODEL_H #include <qml.h> -#include <private/qlistmodelinterface_p.h> #include <qmlinfo.h> +#include <qlistmodelinterface_p.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/util/qnumberformat_p.h b/src/declarative/util/qnumberformat_p.h index be3dfce..c73ef8a 100644 --- a/src/declarative/util/qnumberformat_p.h +++ b/src/declarative/util/qnumberformat_p.h @@ -43,6 +43,7 @@ #define NUMBERFORMAT_H #include <qml.h> + #include <QtCore/QLocale> #include <QtCore/QTime> diff --git a/src/declarative/util/qperformancelog.cpp b/src/declarative/util/qperformancelog.cpp index ff2f42e..2f91dfb 100644 --- a/src/declarative/util/qperformancelog.cpp +++ b/src/declarative/util/qperformancelog.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qperformancelog_p_p.h" + #include <QHash> #include <QDebug> diff --git a/src/declarative/util/util.pri b/src/declarative/util/util.pri index d2faec9..b3418c7 100644 --- a/src/declarative/util/util.pri +++ b/src/declarative/util/util.pri @@ -1,68 +1,70 @@ +INCLUDEPATH += $$PWD + SOURCES += \ - util/qmlview.cpp \ - util/qfxperf.cpp \ - util/qperformancelog.cpp \ - util/qmlconnection.cpp \ - util/qmlpackage.cpp \ - util/qmlanimation.cpp \ - util/qmlsystempalette.cpp \ - util/qmlspringfollow.cpp \ - util/qmleasefollow.cpp \ - util/qmlstate.cpp\ - util/qmltransitionmanager.cpp \ - util/qmlstateoperations.cpp \ - util/qmlpropertychanges.cpp \ - util/qmlstategroup.cpp \ - util/qmltransition.cpp \ - util/qmllistmodel.cpp\ - util/qmllistaccessor.cpp \ - util/qmlopenmetaobject.cpp \ - util/qmltimeline.cpp \ - util/qmltimer.cpp \ - util/qmlbind.cpp \ - util/qmlpropertymap.cpp \ - util/qmlpixmapcache.cpp \ - util/qnumberformat.cpp \ - util/qmlnumberformatter.cpp \ - util/qmldatetimeformatter.cpp \ - util/qmlbehavior.cpp \ - util/qmlfontloader.cpp + $$PWD/qmlview.cpp \ + $$PWD/qfxperf.cpp \ + $$PWD/qperformancelog.cpp \ + $$PWD/qmlconnection.cpp \ + $$PWD/qmlpackage.cpp \ + $$PWD/qmlanimation.cpp \ + $$PWD/qmlsystempalette.cpp \ + $$PWD/qmlspringfollow.cpp \ + $$PWD/qmleasefollow.cpp \ + $$PWD/qmlstate.cpp\ + $$PWD/qmltransitionmanager.cpp \ + $$PWD/qmlstateoperations.cpp \ + $$PWD/qmlpropertychanges.cpp \ + $$PWD/qmlstategroup.cpp \ + $$PWD/qmltransition.cpp \ + $$PWD/qmllistmodel.cpp\ + $$PWD/qmllistaccessor.cpp \ + $$PWD/qmlopenmetaobject.cpp \ + $$PWD/qmltimeline.cpp \ + $$PWD/qmltimer.cpp \ + $$PWD/qmlbind.cpp \ + $$PWD/qmlpropertymap.cpp \ + $$PWD/qmlpixmapcache.cpp \ + $$PWD/qnumberformat.cpp \ + $$PWD/qmlnumberformatter.cpp \ + $$PWD/qmldatetimeformatter.cpp \ + $$PWD/qmlbehavior.cpp \ + $$PWD/qmlfontloader.cpp HEADERS += \ - util/qmlview.h \ - util/qfxperf_p_p.h \ - util/qperformancelog_p_p.h \ - util/qmlconnection_p.h \ - util/qmlpackage_p.h \ - util/qmlanimation_p.h \ - util/qmlanimation_p_p.h \ - util/qmlsystempalette_p.h \ - util/qmlspringfollow_p.h \ - util/qmleasefollow_p.h \ - util/qmlstate_p.h\ - util/qmlstateoperations_p.h \ - util/qmlpropertychanges_p.h \ - util/qmlstate_p_p.h\ - util/qmltransitionmanager_p_p.h \ - util/qmlstategroup_p.h \ - util/qmltransition_p.h \ - util/qmllistmodel_p.h\ - util/qmllistaccessor_p.h \ - util/qmlopenmetaobject_p.h \ - util/qmlnullablevalue_p_p.h \ - util/qmltimeline_p_p.h \ - util/qmltimer_p.h \ - util/qmlbind_p.h \ - util/qmlpropertymap.h \ - util/qmlpixmapcache_p.h \ - util/qnumberformat_p.h \ - util/qmlnumberformatter_p.h \ - util/qmldatetimeformatter_p.h \ - util/qmlbehavior_p.h \ - util/qmlfontloader_p.h + $$PWD/qmlview.h \ + $$PWD/qfxperf_p_p.h \ + $$PWD/qperformancelog_p_p.h \ + $$PWD/qmlconnection_p.h \ + $$PWD/qmlpackage_p.h \ + $$PWD/qmlanimation_p.h \ + $$PWD/qmlanimation_p_p.h \ + $$PWD/qmlsystempalette_p.h \ + $$PWD/qmlspringfollow_p.h \ + $$PWD/qmleasefollow_p.h \ + $$PWD/qmlstate_p.h\ + $$PWD/qmlstateoperations_p.h \ + $$PWD/qmlpropertychanges_p.h \ + $$PWD/qmlstate_p_p.h\ + $$PWD/qmltransitionmanager_p_p.h \ + $$PWD/qmlstategroup_p.h \ + $$PWD/qmltransition_p.h \ + $$PWD/qmllistmodel_p.h\ + $$PWD/qmllistaccessor_p.h \ + $$PWD/qmlopenmetaobject_p.h \ + $$PWD/qmlnullablevalue_p_p.h \ + $$PWD/qmltimeline_p_p.h \ + $$PWD/qmltimer_p.h \ + $$PWD/qmlbind_p.h \ + $$PWD/qmlpropertymap.h \ + $$PWD/qmlpixmapcache_p.h \ + $$PWD/qnumberformat_p.h \ + $$PWD/qmlnumberformatter_p.h \ + $$PWD/qmldatetimeformatter_p.h \ + $$PWD/qmlbehavior_p.h \ + $$PWD/qmlfontloader_p.h contains(QT_CONFIG, xmlpatterns) { QT+=xmlpatterns - SOURCES += util/qmlxmllistmodel.cpp - HEADERS += util/qmlxmllistmodel_p.h + SOURCES += $$PWD/qmlxmllistmodel.cpp + HEADERS += $$PWD/qmlxmllistmodel_p.h } diff --git a/src/declarative/widgets/graphicslayouts.cpp b/src/declarative/widgets/graphicslayouts.cpp index 0721102..065040f 100644 --- a/src/declarative/widgets/graphicslayouts.cpp +++ b/src/declarative/widgets/graphicslayouts.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "graphicslayouts_p.h" + #include <QtGui/qgraphicswidget.h> #include <QtCore/qdebug.h> @@ -315,4 +316,4 @@ GridLayoutAttached *QGraphicsGridLayoutObject::qmlAttachedProperties(QObject *ob QT_END_NAMESPACE -#include "graphicslayouts.moc" +#include <graphicslayouts.moc> diff --git a/src/declarative/widgets/graphicslayouts_p.h b/src/declarative/widgets/graphicslayouts_p.h index c44cb79..34e2556 100644 --- a/src/declarative/widgets/graphicslayouts_p.h +++ b/src/declarative/widgets/graphicslayouts_p.h @@ -42,7 +42,8 @@ #ifndef GRAPHICSLAYOUTS_H #define GRAPHICSLAYOUTS_H -#include <private/graphicswidgets_p.h> +#include "graphicswidgets_p.h" + #include <QtGui/QGraphicsLinearLayout> #include <QtGui/QGraphicsGridLayout> diff --git a/src/declarative/widgets/graphicswidgets.cpp b/src/declarative/widgets/graphicswidgets.cpp index 40ba93e..4c13865 100644 --- a/src/declarative/widgets/graphicswidgets.cpp +++ b/src/declarative/widgets/graphicswidgets.cpp @@ -160,4 +160,4 @@ QML_DEFINE_INTERFACE(QGraphicsItem) QT_END_NAMESPACE -#include "graphicswidgets.moc" +#include <graphicswidgets.moc> diff --git a/src/declarative/widgets/graphicswidgets_p.h b/src/declarative/widgets/graphicswidgets_p.h index 0254f10..b15bffa 100644 --- a/src/declarative/widgets/graphicswidgets_p.h +++ b/src/declarative/widgets/graphicswidgets_p.h @@ -43,6 +43,7 @@ #define GRAPHICSWIDGETS_H #include <qml.h> + #include <QtGui/QGraphicsScene> #include <QtGui/QGraphicsView> #include <QtGui/QGraphicsWidget> diff --git a/src/declarative/widgets/widgets.pri b/src/declarative/widgets/widgets.pri index 4a8bc93..4cae3ff 100644 --- a/src/declarative/widgets/widgets.pri +++ b/src/declarative/widgets/widgets.pri @@ -1,10 +1,9 @@ +INCLUDEPATH += $$PWD + SOURCES += \ - widgets/graphicswidgets.cpp \ - widgets/graphicslayouts.cpp \ + $$PWD/graphicswidgets.cpp \ + $$PWD/graphicslayouts.cpp HEADERS += \ - widgets/graphicswidgets_p.h \ - widgets/graphicslayouts_p.h \ - - - + $$PWD/graphicswidgets_p.h \ + $$PWD/graphicslayouts_p.h |