Add QObject::objectNameChanged(const QString &objectName) signal
This is sent when the object's name changes. tst_moc must be updated since the method count of QObject has changed. The test assumed that there were 4 invokable methods in QObject. The new signal is the 5th, which breaks the test's assumptions. Fix this as well. tst_QObject must be updated since the QObjectPrivate::isSignalConnected() method only supports the first 64 signals. With the addition of this new signal, sig61() in the test becomes the 65th signal, and will always appear connected now. Task-number: QTBUG-13999 (related) Change-Id: Ie87893c71a231fafa7ccf2f16102238a7be8327a Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
This commit is contained in:
parent
c7f8042064
commit
ba635d7e74
@ -1096,13 +1096,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 (objectNameChanged)
|
||||
if (d->declarativeData)
|
||||
d->declarativeData->objectNameChanged(d->declarativeData, this);
|
||||
emit objectNameChanged(d->objectName);
|
||||
}
|
||||
}
|
||||
|
||||
/*! \fn void QObject::objectNameChanged(const QString &objectName)
|
||||
|
||||
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
|
||||
|
@ -115,7 +115,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:
|
||||
@ -313,6 +313,7 @@ public:
|
||||
|
||||
Q_SIGNALS:
|
||||
void destroyed(QObject * = 0);
|
||||
void objectNameChanged(const QString &objectName);
|
||||
|
||||
public:
|
||||
inline QObject *parent() const { return d_ptr->parent; }
|
||||
|
@ -3487,7 +3487,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()));
|
||||
@ -3542,7 +3541,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();
|
||||
|
@ -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()"));
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user