diff options
author | Alan Alpert <alan.alpert@nokia.com> | 2011-12-20 17:23:31 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-12-20 11:15:21 +0100 |
commit | cb9b7ceffb8d22f987f4cb44d027ecb046850bbf (patch) | |
tree | b27e84acddc8ca16974bc74c5b63b84a0e8356ca | |
parent | 8754bf03f59203eef5ff189b1b8c1f54b2a31f87 (diff) |
Revert "Revert "Add QObject::objectNameChanged(con... signal""
This reverts commit 9b17557f3bbd5135651bcedf9f10e61d7e078ae2.
Justification: Temporary commit, see JIRA task.
Task-number: QTBUG-22985
Change-Id: I3df9eb5fdbdc133349dca5e192dcfcc9e758626c
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
-rw-r--r-- | src/corelib/kernel/qobject.cpp | 17 | ||||
-rw-r--r-- | src/corelib/kernel/qobject.h | 3 | ||||
-rw-r--r-- | tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 2 | ||||
-rw-r--r-- | tests/auto/tools/moc/tst_moc.cpp | 28 |
4 files changed, 28 insertions, 22 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index febe90943b..4e8d2fc265 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -949,13 +949,20 @@ QString QObject::objectName() const void QObject::setObjectName(const QString &name) { Q_D(QObject); - bool objectNameChanged = d->declarativeData && d->objectName != name; + if (d->objectName != name) { + d->objectName = name; + if (d->declarativeData) + d->declarativeData->objectNameChanged(d->declarativeData, this); + emit objectNameChanged(d->objectName); + } +} - d->objectName = name; +/*! \fn void QObject::objectNameChanged(const QString &objectName) - if (objectNameChanged) - d->declarativeData->objectNameChanged(d->declarativeData, this); -} + This signal is emitted after the object's name has been changed. The new object name is passed as \a objectName. + + \sa QObject::objectName +*/ /*! \fn bool QObject::isWidgetType() const diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 22572c072e..1f7c706741 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -113,7 +113,7 @@ public: class Q_CORE_EXPORT QObject { Q_OBJECT - Q_PROPERTY(QString objectName READ objectName WRITE setObjectName) + Q_PROPERTY(QString objectName READ objectName WRITE setObjectName NOTIFY objectNameChanged) Q_DECLARE_PRIVATE(QObject) public: @@ -322,6 +322,7 @@ public: Q_SIGNALS: void destroyed(QObject * = 0); + void objectNameChanged(const QString &objectName); public: inline QObject *parent() const { return d_ptr->parent; } diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 1e690386dc..cec25136b6 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -3493,7 +3493,6 @@ void tst_QObject::isSignalConnected() QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig15()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig29()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig60()"))); - QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig61()"))); #endif QObject::connect(&o, SIGNAL(sig00()), &o, SIGNAL(sig69())); @@ -3548,7 +3547,6 @@ void tst_QObject::isSignalConnected() QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig21()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig25()"))); QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig55()"))); - QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig61()"))); #endif emit o.sig00(); diff --git a/tests/auto/tools/moc/tst_moc.cpp b/tests/auto/tools/moc/tst_moc.cpp index 6d3ee2611e..95d7d2ce00 100644 --- a/tests/auto/tools/moc/tst_moc.cpp +++ b/tests/auto/tools/moc/tst_moc.cpp @@ -1091,15 +1091,15 @@ void tst_Moc::invokable() { { const QMetaObject &mobj = InvokableBeforeReturnType::staticMetaObject; - QCOMPARE(mobj.methodCount(), 5); - QVERIFY(mobj.method(4).signature() == QByteArray("foo()")); + QCOMPARE(mobj.methodCount(), 6); + QVERIFY(mobj.method(5).signature() == QByteArray("foo()")); } { const QMetaObject &mobj = InvokableBeforeInline::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("foo()")); - QVERIFY(mobj.method(5).signature() == QByteArray("bar()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("foo()")); + QVERIFY(mobj.method(6).signature() == QByteArray("bar()")); } } @@ -1107,23 +1107,23 @@ void tst_Moc::singleFunctionKeywordSignalAndSlot() { { const QMetaObject &mobj = SingleFunctionKeywordBeforeReturnType::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()")); - QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()")); + QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()")); } { const QMetaObject &mobj = SingleFunctionKeywordBeforeInline::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()")); - QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()")); + QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()")); } { const QMetaObject &mobj = SingleFunctionKeywordAfterInline::staticMetaObject; - QCOMPARE(mobj.methodCount(), 6); - QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()")); - QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()")); + QCOMPARE(mobj.methodCount(), 7); + QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()")); + QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()")); } } |