From f29bfda2e609f00fad46160495017168094eff7b Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Mon, 29 Aug 2011 15:06:14 +1000 Subject: Use the optimized QDeclarativeExpression constructor where possible. Pass in the QDeclarativeScriptString directly, to make use of the precompiled binding. Also does some minor cleanup of the related internal implementation. Change-Id: I4b199298c9da3ee11c51c9c98b384c8324f62c26 Reviewed-on: http://codereview.qt.nokia.com/3696 Reviewed-by: Qt Sanity Bot Reviewed-by: Charles Yin --- src/declarative/qml/qdeclarativebinding.cpp | 2 +- src/declarative/qml/qdeclarativeexpression.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'src/declarative/qml') diff --git a/src/declarative/qml/qdeclarativebinding.cpp b/src/declarative/qml/qdeclarativebinding.cpp index 069744153a..d817990d7b 100644 --- a/src/declarative/qml/qdeclarativebinding.cpp +++ b/src/declarative/qml/qdeclarativebinding.cpp @@ -235,7 +235,7 @@ QDeclarativeBinding::createBinding(Identifier id, QObject *obj, QDeclarativeCont QDeclarativeContextData *ctxtdata = QDeclarativeContextData::get(ctxt); - QDeclarativeEnginePrivate *engine = QDeclarativeEnginePrivate::get(qmlEngine(obj)); + QDeclarativeEnginePrivate *engine = QDeclarativeEnginePrivate::get(ctxt->engine()); QDeclarativeCompiledData *cdata = 0; QDeclarativeTypeData *typeData = 0; if (engine && ctxtdata && !ctxtdata->url.isEmpty()) { diff --git a/src/declarative/qml/qdeclarativeexpression.cpp b/src/declarative/qml/qdeclarativeexpression.cpp index 8806996bd4..a24d46914c 100644 --- a/src/declarative/qml/qdeclarativeexpression.cpp +++ b/src/declarative/qml/qdeclarativeexpression.cpp @@ -242,7 +242,7 @@ QDeclarativeExpression::QDeclarativeExpression(const QDeclarativeScriptString &s } else { QDeclarativeContextData *ctxtdata = QDeclarativeContextData::get(script.context()); - QDeclarativeEnginePrivate *engine = QDeclarativeEnginePrivate::get(qmlEngine(script.scopeObject())); + QDeclarativeEnginePrivate *engine = QDeclarativeEnginePrivate::get(script.context()->engine()); QDeclarativeCompiledData *cdata = 0; QDeclarativeTypeData *typeData = 0; if (engine && ctxtdata && !ctxtdata->url.isEmpty()) { @@ -251,7 +251,7 @@ QDeclarativeExpression::QDeclarativeExpression(const QDeclarativeScriptString &s } if (cdata) - d->init(ctxtdata, cdata->primitives.at(id), cdata, script.scopeObject(), + d->init(ctxtdata, cdata->primitives.at(id), true, script.scopeObject(), cdata->name, script.d.data()->lineNumber); else defaultConstruction = true; -- cgit v1.2.3