diff options
author | Aaron Kennedy <aaron.kennedy@nokia.com> | 2009-09-22 08:50:50 (GMT) |
---|---|---|
committer | Aaron Kennedy <aaron.kennedy@nokia.com> | 2009-09-22 08:50:50 (GMT) |
commit | 8d5a395e176239b7e3ee8822cb251b2e631c21de (patch) | |
tree | 60dee6cd158820944b892183c0d77a1af47fab97 /src/declarative/qml/qmlboundsignal.cpp | |
parent | 65e7073bb151bd9281b2d0be53f0c13cce90f3c0 (diff) | |
download | Qt-8d5a395e176239b7e3ee8822cb251b2e631c21de.zip Qt-8d5a395e176239b7e3ee8822cb251b2e631c21de.tar.gz Qt-8d5a395e176239b7e3ee8822cb251b2e631c21de.tar.bz2 |
Slight simplification of parameterized signals
Diffstat (limited to 'src/declarative/qml/qmlboundsignal.cpp')
-rw-r--r-- | src/declarative/qml/qmlboundsignal.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/declarative/qml/qmlboundsignal.cpp b/src/declarative/qml/qmlboundsignal.cpp index 9af4003..c43097e 100644 --- a/src/declarative/qml/qmlboundsignal.cpp +++ b/src/declarative/qml/qmlboundsignal.cpp @@ -42,6 +42,7 @@ #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 <qfxglobal.h> #include <qmlmetatype.h> @@ -60,7 +61,8 @@ QmlBoundSignal::QmlBoundSignal(QmlContext *ctxt, const QString &val, QObject *me // This is thread safe. Although it may be updated by two threads, they // will both set it to the same value - so the worst thing that can happen // is that they both do the work to figure it out. Boo hoo. - if (evaluateIdx == -1) evaluateIdx = QmlExpression::staticMetaObject.indexOfMethod("value()"); + if (evaluateIdx == -1) + evaluateIdx = QmlExpression::staticMetaObject.indexOfMethod("value()"); setTrackChange(false); QFx_setParent_noEvent(this, parent); @@ -73,15 +75,13 @@ QmlBoundSignalProxy::QmlBoundSignalProxy(QmlContext *ctxt, const QString &val, Q QMetaMethod signal = me->metaObject()->method(idx); params = new QmlBoundSignalParameters(signal, this); - - ctxt->d_func()->addDefaultObject(params, QmlContextPrivate::HighPriority); } int QmlBoundSignalProxy::qt_metacall(QMetaObject::Call c, int id, void **a) { if (c == QMetaObject::InvokeMetaMethod && id == evaluateIdx) { params->setValues(a); - value(); + QmlExpressionPrivate::get(this)->value(params); params->clearValues(); return -1; } else { |