From 1a07fa87fd01d81ac52a8cba5f6b243507394859 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Wed, 13 Dec 2023 22:18:49 +0100 Subject: [PATCH] CollectionSourceModel: Avoid using sender() Amends 6eb522f0cab48e9107c5c15bced80bd5c1c7193d Amends 01a4f087c6675e49306b21ea7f205e5a0f01837d Change-Id: Ifa1be7cd2a39e6910160a4383fd9a1c1ce743731 Reviewed-by: Qt CI Patch Build Bot Reviewed-by: Ali Kianian Reviewed-by: Miikka Heikkinen --- .../collectionsourcemodel.cpp | 51 +++++++++---------- .../collectioneditor/collectionsourcemodel.h | 8 +-- 2 files changed, 29 insertions(+), 30 deletions(-) diff --git a/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.cpp b/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.cpp index 4d7773ade33..45e7127e8a1 100644 --- a/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.cpp +++ b/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.cpp @@ -394,10 +394,10 @@ void CollectionSourceModel::updateNodeSource(const ModelNode &node) updateCollectionList(index); } -void CollectionSourceModel::onSelectedCollectionChanged(int collectionIndex) +void CollectionSourceModel::onSelectedCollectionChanged(CollectionListModel *collectionList, + int collectionIndex) { - CollectionListModel *collectionList = qobject_cast(sender()); - if (collectionIndex > -1 && collectionList) { + if (collectionIndex > -1) { if (m_previousSelectedList && m_previousSelectedList != collectionList) m_previousSelectedList->selectCollectionIndex(-1); @@ -410,11 +410,9 @@ void CollectionSourceModel::onSelectedCollectionChanged(int collectionIndex) } } -void CollectionSourceModel::onCollectionNameChanged(const QString &oldName, const QString &newName) +void CollectionSourceModel::onCollectionNameChanged(CollectionListModel *collectionList, + const QString &oldName, const QString &newName) { - CollectionListModel *collectionList = qobject_cast(sender()); - QTC_ASSERT(collectionList, return); - auto emitRenameWarning = [this](const QString &msg) -> void { emit this->warning(tr("Rename Model"), msg); }; @@ -500,11 +498,9 @@ void CollectionSourceModel::onCollectionNameChanged(const QString &oldName, cons } } -void CollectionSourceModel::onCollectionsRemoved(const QStringList &removedCollections) +void CollectionSourceModel::onCollectionsRemoved(CollectionListModel *collectionList, + const QStringList &removedCollections) { - CollectionListModel *collectionList = qobject_cast(sender()); - QTC_ASSERT(collectionList, return); - auto emitDeleteWarning = [this](const QString &msg) -> void { emit warning(tr("Delete Model"), msg); }; @@ -641,25 +637,26 @@ void CollectionSourceModel::updateCollectionList(QModelIndex index) void CollectionSourceModel::registerCollection(const QSharedPointer &collection) { - connect(collection.data(), - &CollectionListModel::selectedIndexChanged, - this, - &CollectionSourceModel::onSelectedCollectionChanged, - Qt::UniqueConnection); + CollectionListModel *collectionList = collection.data(); + if (collectionList == nullptr) + return; - connect(collection.data(), - &CollectionListModel::collectionNameChanged, - this, - &CollectionSourceModel::onCollectionNameChanged, - Qt::UniqueConnection); + connect(collectionList, &CollectionListModel::selectedIndexChanged, this, + [this, collectionList](int idx) { + onSelectedCollectionChanged(collectionList, idx); + }, Qt::UniqueConnection); - connect(collection.data(), - &CollectionListModel::collectionsRemoved, - this, - &CollectionSourceModel::onCollectionsRemoved, - Qt::UniqueConnection); + connect(collectionList, &CollectionListModel::collectionNameChanged, this, + [this, collectionList](const QString &oldName, const QString &newName) { + onCollectionNameChanged(collectionList, oldName, newName); + }, Qt::UniqueConnection); - if (collection.data() && collection->sourceNode()) + connect(collectionList, &CollectionListModel::collectionsRemoved, this, + [this, collectionList](const QStringList &removedCollections) { + onCollectionsRemoved(collectionList, removedCollections); + }, Qt::UniqueConnection); + + if (collection->sourceNode()) emit collectionNamesChanged(collection->sourceNode(), collection->stringList()); } diff --git a/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.h b/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.h index 36226138c30..e08d426a48b 100644 --- a/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.h +++ b/src/plugins/qmldesigner/components/collectioneditor/collectionsourcemodel.h @@ -76,9 +76,11 @@ signals: void warning(const QString &title, const QString &body); private slots: - void onSelectedCollectionChanged(int collectionIndex); - void onCollectionNameChanged(const QString &oldName, const QString &newName); - void onCollectionsRemoved(const QStringList &removedCollections); + void onSelectedCollectionChanged(CollectionListModel *collectionList, int collectionIndex); + void onCollectionNameChanged(CollectionListModel *collectionList, const QString &oldName, + const QString &newName); + void onCollectionsRemoved(CollectionListModel *collectionList, + const QStringList &removedCollections); private: void setSelectedIndex(int idx);