From 94415009a3260bfa516b953beadb3f4c8ac2aab3 Mon Sep 17 00:00:00 2001 From: Peter Varga Date: Thu, 26 Nov 2020 09:02:42 +0100 Subject: Use qsizetype instead of int for QQmlListProperty Fixes build with the latest qtdeclarative. Change-Id: Ib075cf3515db044c00b93f71ae651151f7e64a97 Reviewed-by: Milian Wolff --- src/webchannel/qqmlwebchannel.cpp | 21 ++++++++------------- src/webchannel/qqmlwebchannel.h | 8 ++++---- 2 files changed, 12 insertions(+), 17 deletions(-) diff --git a/src/webchannel/qqmlwebchannel.cpp b/src/webchannel/qqmlwebchannel.cpp index 5a0397d..aea6abb 100644 --- a/src/webchannel/qqmlwebchannel.cpp +++ b/src/webchannel/qqmlwebchannel.cpp @@ -204,10 +204,8 @@ void QQmlWebChannel::disconnectFrom(QObject *transport) QQmlListProperty QQmlWebChannel::registeredObjects() { - return QQmlListProperty(this, 0, - registeredObjects_append, - registeredObjects_count, - registeredObjects_at, + return QQmlListProperty(this, nullptr, registeredObjects_append, + registeredObjects_count, registeredObjects_at, registeredObjects_clear); } @@ -229,12 +227,12 @@ void QQmlWebChannel::registeredObjects_append(QQmlListProperty *prop, Q connect(attached, SIGNAL(idChanged(QString)), channel, SLOT(_q_objectIdChanged(QString))); } -int QQmlWebChannel::registeredObjects_count(QQmlListProperty *prop) +qsizetype QQmlWebChannel::registeredObjects_count(QQmlListProperty *prop) { return static_cast(prop->object)->d_func()->registeredObjects.size(); } -QObject *QQmlWebChannel::registeredObjects_at(QQmlListProperty *prop, int index) +QObject *QQmlWebChannel::registeredObjects_at(QQmlListProperty *prop, qsizetype index) { return static_cast(prop->object)->d_func()->registeredObjects.at(index); } @@ -250,11 +248,8 @@ void QQmlWebChannel::registeredObjects_clear(QQmlListProperty *prop) QQmlListProperty QQmlWebChannel::transports() { - return QQmlListProperty(this, 0, - transports_append, - transports_count, - transports_at, - transports_clear); + return QQmlListProperty(this, nullptr, transports_append, transports_count, + transports_at, transports_clear); } void QQmlWebChannel::transports_append(QQmlListProperty *prop, QObject *transport) @@ -263,12 +258,12 @@ void QQmlWebChannel::transports_append(QQmlListProperty *prop, QObject channel->connectTo(transport); } -int QQmlWebChannel::transports_count(QQmlListProperty *prop) +qsizetype QQmlWebChannel::transports_count(QQmlListProperty *prop) { return static_cast(prop->object)->d_func()->transports.size(); } -QObject *QQmlWebChannel::transports_at(QQmlListProperty *prop, int index) +QObject *QQmlWebChannel::transports_at(QQmlListProperty *prop, qsizetype index) { QQmlWebChannel *channel = static_cast(prop->object); return channel->d_func()->transports.at(index); diff --git a/src/webchannel/qqmlwebchannel.h b/src/webchannel/qqmlwebchannel.h index d6b7bb9..72d067a 100644 --- a/src/webchannel/qqmlwebchannel.h +++ b/src/webchannel/qqmlwebchannel.h @@ -77,13 +77,13 @@ private: Q_PRIVATE_SLOT(d_func(), void _q_objectIdChanged(const QString &newId)) static void registeredObjects_append(QQmlListProperty *prop, QObject *item); - static int registeredObjects_count(QQmlListProperty *prop); - static QObject *registeredObjects_at(QQmlListProperty *prop, int index); + static qsizetype registeredObjects_count(QQmlListProperty *prop); + static QObject *registeredObjects_at(QQmlListProperty *prop, qsizetype index); static void registeredObjects_clear(QQmlListProperty *prop); static void transports_append(QQmlListProperty *prop, QObject *item); - static int transports_count(QQmlListProperty *prop); - static QObject *transports_at(QQmlListProperty *prop, int index); + static qsizetype transports_count(QQmlListProperty *prop); + static QObject *transports_at(QQmlListProperty *prop, qsizetype index); static void transports_clear(QQmlListProperty *prop); }; -- cgit v1.2.1