diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-10-05 16:02:03 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-10-05 16:02:03 (GMT) |
commit | 591807899deb3fc479bd32722756f74b899977d5 (patch) | |
tree | 02496fb98624fc56cd8614067028118f55710ed1 /src/declarative/qml/qdeclarativeengine.cpp | |
parent | a7bf1cfb1a75c35e837c01f4a5b0697fc8961148 (diff) | |
parent | 47284ca360c1875663207996740bf6ed6e93d364 (diff) | |
download | Qt-591807899deb3fc479bd32722756f74b899977d5.zip Qt-591807899deb3fc479bd32722756f74b899977d5.tar.gz Qt-591807899deb3fc479bd32722756f74b899977d5.tar.bz2 |
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-qml:
Document and test paintedWidth and paintedHeight properties of Image
Add missing license header.
Improve test coverage for declarative module.
Avoid potential null dereference.
Add autotest for reserved words in QML.
Prevent crash in XmlListModel when appending an empty role.
Remove unused, unexported class.
Fix clipping behavior for non-cached text.
Compile
Only cache textlayout in paint engines that support transformations
QmlDebugService: Fix compiler warning about cast from ascii
Qt.openUrlExternally should resolve relative URLs.
Doc: add missing image.
Doc: typographical and spelling errors.
Doc: remove unfinished and confusing mention to focus panels.
Apply the QStaticText text-caching strategy for QML
Documentation: input to Qt.rgba should be from 0-1, not 0-255.
Diffstat (limited to 'src/declarative/qml/qdeclarativeengine.cpp')
-rw-r--r-- | src/declarative/qml/qdeclarativeengine.cpp | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp index 724553f..584c5ec 100644 --- a/src/declarative/qml/qdeclarativeengine.cpp +++ b/src/declarative/qml/qdeclarativeengine.cpp @@ -207,7 +207,7 @@ For example: import QtQuick 1.0 Text { - color: Qt.rgba(255, 0, 0, 1) + color: Qt.rgba(1, 0, 0, 1) text: Qt.md5("hello, world") } \endqml @@ -284,9 +284,11 @@ QDeclarativeEnginePrivate::QDeclarativeEnginePrivate(QDeclarativeEngine *e) QUrl QDeclarativeScriptEngine::resolvedUrl(QScriptContext *context, const QUrl& url) { if (p) { - QDeclarativeContextData *ctxt = QDeclarativeEnginePrivate::get(this)->getContext(context); - Q_ASSERT(ctxt); - return ctxt->resolvedUrl(url); + QDeclarativeContextData *ctxt = p->getContext(context); + if (ctxt) + return ctxt->resolvedUrl(url); + else + return p->getUrl(context).resolved(url); } return baseUrl.resolved(url); } @@ -1146,12 +1148,8 @@ QScriptValue QDeclarativeEnginePrivate::createComponent(QScriptContext *ctxt, QS QString arg = ctxt->argument(0).toString(); if (arg.isEmpty()) return engine->nullValue(); - QUrl url; + QUrl url = QDeclarativeScriptEngine::get(engine)->resolvedUrl(ctxt, QUrl(arg)); QDeclarativeContextData* context = activeEnginePriv->getContext(ctxt); - if (context) - url = QUrl(context->resolvedUrl(QUrl(arg))); - else - url = activeEnginePriv->getUrl(ctxt).resolved(QUrl(arg)); QDeclarativeComponent *c = new QDeclarativeComponent(activeEngine, url, activeEngine); QDeclarativeComponentPrivate::get(c)->creationContext = context; QDeclarativeData::get(c, true)->setImplicitDestructible(); @@ -1635,7 +1633,7 @@ QScriptValue QDeclarativeEnginePrivate::desktopOpenUrl(QScriptContext *ctxt, QSc return QScriptValue(e, false); bool ret = false; #ifndef QT_NO_DESKTOPSERVICES - ret = QDesktopServices::openUrl(QUrl(ctxt->argument(0).toString())); + ret = QDesktopServices::openUrl(QDeclarativeScriptEngine::get(e)->resolvedUrl(ctxt, QUrl(ctxt->argument(0).toString()))); #endif return QScriptValue(e, ret); } |