summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Kennedy <aaron.kennedy@nokia.com>2009-05-11 06:42:58 (GMT)
committerAaron Kennedy <aaron.kennedy@nokia.com>2009-05-11 06:42:58 (GMT)
commit4b474ca66f17d9c6a97fbfa521fcfeb68aa977e1 (patch)
treef953a8b2d3114105627a0b8311c477b40f32fd5e
parentbb37512280e5710c1c395056bbecf4f0e4289fb9 (diff)
parent53ef297f1292fd5783d619cff7925c919585671f (diff)
downloadQt-4b474ca66f17d9c6a97fbfa521fcfeb68aa977e1.zip
Qt-4b474ca66f17d9c6a97fbfa521fcfeb68aa977e1.tar.gz
Qt-4b474ca66f17d9c6a97fbfa521fcfeb68aa977e1.tar.bz2
Merge branch 'kinetic-declarativeui' of git@scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
-rw-r--r--src/declarative/util/qmlscript.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/declarative/util/qmlscript.cpp b/src/declarative/util/qmlscript.cpp
index 7e33502..d986b7a 100644
--- a/src/declarative/util/qmlscript.cpp
+++ b/src/declarative/util/qmlscript.cpp
@@ -152,11 +152,22 @@ void QmlScript::setSource(const QString &source)
return;
d->source = source;
d->url = qmlContext(this)->resolvedUrl(source);
- QNetworkRequest req(d->url);
- req.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::PreferCache);
- d->reply = qmlEngine(this)->networkAccessManager()->get(req);
- QObject::connect(d->reply, SIGNAL(finished()),
- this, SLOT(replyFinished()));
+
+#ifndef QT_NO_LOCALFILE_OPTIMIZED_QML
+ if (d->url.scheme() == QLatin1String("file")) {
+ QFile file(d->url.toLocalFile());
+ file.open(QIODevice::ReadOnly);
+ QByteArray ba = file.readAll();
+ d->addScriptToEngine(QString::fromUtf8(ba), d->source);
+ } else
+#endif
+ {
+ QNetworkRequest req(d->url);
+ req.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::PreferCache);
+ d->reply = qmlEngine(this)->networkAccessManager()->get(req);
+ QObject::connect(d->reply, SIGNAL(finished()),
+ this, SLOT(replyFinished()));
+ }
}
void QmlScript::replyFinished()