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,14 +1096,21 @@ QString QObject::objectName() const
|
|||||||
void QObject::setObjectName(const QString &name)
|
void QObject::setObjectName(const QString &name)
|
||||||
{
|
{
|
||||||
Q_D(QObject);
|
Q_D(QObject);
|
||||||
bool objectNameChanged = d->declarativeData && d->objectName != name;
|
if (d->objectName != name) {
|
||||||
|
d->objectName = name;
|
||||||
d->objectName = name;
|
if (d->declarativeData)
|
||||||
|
d->declarativeData->objectNameChanged(d->declarativeData, this);
|
||||||
if (objectNameChanged)
|
emit objectNameChanged(d->objectName);
|
||||||
d->declarativeData->objectNameChanged(d->declarativeData, this);
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*! \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
|
\fn bool QObject::isWidgetType() const
|
||||||
|
|
||||||
|
@ -115,7 +115,7 @@ public:
|
|||||||
class Q_CORE_EXPORT QObject
|
class Q_CORE_EXPORT QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
Q_PROPERTY(QString objectName READ objectName WRITE setObjectName)
|
Q_PROPERTY(QString objectName READ objectName WRITE setObjectName NOTIFY objectNameChanged)
|
||||||
Q_DECLARE_PRIVATE(QObject)
|
Q_DECLARE_PRIVATE(QObject)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@ -313,6 +313,7 @@ public:
|
|||||||
|
|
||||||
Q_SIGNALS:
|
Q_SIGNALS:
|
||||||
void destroyed(QObject * = 0);
|
void destroyed(QObject * = 0);
|
||||||
|
void objectNameChanged(const QString &objectName);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
inline QObject *parent() const { return d_ptr->parent; }
|
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("sig15()")));
|
||||||
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig29()")));
|
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig29()")));
|
||||||
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig60()")));
|
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig60()")));
|
||||||
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig61()")));
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QObject::connect(&o, SIGNAL(sig00()), &o, SIGNAL(sig69()));
|
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("sig21()")));
|
||||||
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig25()")));
|
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig25()")));
|
||||||
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig55()")));
|
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig55()")));
|
||||||
QVERIFY(!priv->isSignalConnected(priv->signalIndex("sig61()")));
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
emit o.sig00();
|
emit o.sig00();
|
||||||
|
@ -1091,15 +1091,15 @@ void tst_Moc::invokable()
|
|||||||
{
|
{
|
||||||
{
|
{
|
||||||
const QMetaObject &mobj = InvokableBeforeReturnType::staticMetaObject;
|
const QMetaObject &mobj = InvokableBeforeReturnType::staticMetaObject;
|
||||||
QCOMPARE(mobj.methodCount(), 5);
|
QCOMPARE(mobj.methodCount(), 6);
|
||||||
QVERIFY(mobj.method(4).signature() == QByteArray("foo()"));
|
QVERIFY(mobj.method(5).signature() == QByteArray("foo()"));
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
const QMetaObject &mobj = InvokableBeforeInline::staticMetaObject;
|
const QMetaObject &mobj = InvokableBeforeInline::staticMetaObject;
|
||||||
QCOMPARE(mobj.methodCount(), 6);
|
QCOMPARE(mobj.methodCount(), 7);
|
||||||
QVERIFY(mobj.method(4).signature() == QByteArray("foo()"));
|
QVERIFY(mobj.method(5).signature() == QByteArray("foo()"));
|
||||||
QVERIFY(mobj.method(5).signature() == QByteArray("bar()"));
|
QVERIFY(mobj.method(6).signature() == QByteArray("bar()"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1107,23 +1107,23 @@ void tst_Moc::singleFunctionKeywordSignalAndSlot()
|
|||||||
{
|
{
|
||||||
{
|
{
|
||||||
const QMetaObject &mobj = SingleFunctionKeywordBeforeReturnType::staticMetaObject;
|
const QMetaObject &mobj = SingleFunctionKeywordBeforeReturnType::staticMetaObject;
|
||||||
QCOMPARE(mobj.methodCount(), 6);
|
QCOMPARE(mobj.methodCount(), 7);
|
||||||
QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()"));
|
QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()"));
|
||||||
QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()"));
|
QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()"));
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
const QMetaObject &mobj = SingleFunctionKeywordBeforeInline::staticMetaObject;
|
const QMetaObject &mobj = SingleFunctionKeywordBeforeInline::staticMetaObject;
|
||||||
QCOMPARE(mobj.methodCount(), 6);
|
QCOMPARE(mobj.methodCount(), 7);
|
||||||
QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()"));
|
QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()"));
|
||||||
QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()"));
|
QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()"));
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
const QMetaObject &mobj = SingleFunctionKeywordAfterInline::staticMetaObject;
|
const QMetaObject &mobj = SingleFunctionKeywordAfterInline::staticMetaObject;
|
||||||
QCOMPARE(mobj.methodCount(), 6);
|
QCOMPARE(mobj.methodCount(), 7);
|
||||||
QVERIFY(mobj.method(4).signature() == QByteArray("mySignal()"));
|
QVERIFY(mobj.method(5).signature() == QByteArray("mySignal()"));
|
||||||
QVERIFY(mobj.method(5).signature() == QByteArray("mySlot()"));
|
QVERIFY(mobj.method(6).signature() == QByteArray("mySlot()"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user