summaryrefslogtreecommitdiffstats
path: root/src/declarative/util/qdeclarativeopenmetaobject.cpp
diff options
context:
space:
mode:
authorMichael Brasser <michael.brasser@nokia.com>2010-03-29 01:57:41 (GMT)
committerMichael Brasser <michael.brasser@nokia.com>2010-03-29 01:59:00 (GMT)
commit418bd7fa550da97ac27a34c72e75ec7ab0448d78 (patch)
tree47883d96f4ca1b786af5f18d56e943662a6acf38 /src/declarative/util/qdeclarativeopenmetaobject.cpp
parent059a91650d7fdb7491108c07e3eda0e79e2d9203 (diff)
downloadQt-418bd7fa550da97ac27a34c72e75ec7ab0448d78.zip
Qt-418bd7fa550da97ac27a34c72e75ec7ab0448d78.tar.gz
Qt-418bd7fa550da97ac27a34c72e75ec7ab0448d78.tar.bz2
Don't emit QDeclarativePropertyMap::valueChanged() before the value has
changed. Task-number: QTBUG-9386
Diffstat (limited to 'src/declarative/util/qdeclarativeopenmetaobject.cpp')
-rw-r--r--src/declarative/util/qdeclarativeopenmetaobject.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/declarative/util/qdeclarativeopenmetaobject.cpp b/src/declarative/util/qdeclarativeopenmetaobject.cpp
index 8c23354..70ecf95 100644
--- a/src/declarative/util/qdeclarativeopenmetaobject.cpp
+++ b/src/declarative/util/qdeclarativeopenmetaobject.cpp
@@ -225,6 +225,7 @@ int QDeclarativeOpenMetaObject::metaCall(QMetaObject::Call c, int id, void **a)
if (d->data[propId].first != *reinterpret_cast<QVariant *>(a[0])) {
propertyWrite(propId);
d->writeData(propId, *reinterpret_cast<QVariant *>(a[0]));
+ propertyWritten(propId);
activate(d->object, d->type->d->signalOffset + propId, 0);
}
}
@@ -270,6 +271,11 @@ QVariant &QDeclarativeOpenMetaObject::operator[](const QByteArray &name)
return d->getData(*iter);
}
+QVariant &QDeclarativeOpenMetaObject::operator[](int id)
+{
+ return d->getData(id);
+}
+
void QDeclarativeOpenMetaObject::setValue(const QByteArray &name, const QVariant &val)
{
QHash<QByteArray, int>::ConstIterator iter = d->type->d->names.find(name);
@@ -326,6 +332,10 @@ void QDeclarativeOpenMetaObject::propertyWrite(int)
{
}
+void QDeclarativeOpenMetaObject::propertyWritten(int)
+{
+}
+
void QDeclarativeOpenMetaObject::propertyCreated(int, QMetaPropertyBuilder &)
{
}