remove custom property to set a source model in a sort proxy model
authorMatthieu Gallien <matthieu.gallien@nextcloud.com>
Mon, 13 Feb 2023 17:08:15 +0000 (18:08 +0100)
committerMatthieu Gallien <matthieu.gallien@nextcloud.com>
Wed, 17 May 2023 16:16:08 +0000 (18:16 +0200)
custom property for source model is not needed

remove code that is not needed

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
src/gui/filedetails/ShareView.qml
src/gui/filedetails/sortedsharemodel.cpp
src/gui/filedetails/sortedsharemodel.h
test/testsortedsharemodel.cpp

index a1c80bb0f5aedc9de85155bf2bc026e1b13560b0..528936645f866a3205358b3e87901117ba38de50 100644 (file)
@@ -195,7 +195,7 @@ ColumnLayout {
 
                 enabled: !root.loading
                 model: SortedShareModel {
-                    shareModel: root.shareModel
+                    sourceModel: root.shareModel
                 }
 
                 delegate: ShareDelegate {
index 4658060e10b4878b821933106ea610ef71e9e6d8..9b9ef99a644bd329ff3b4b34048c86989e62b8c5 100644 (file)
@@ -21,40 +21,7 @@ Q_LOGGING_CATEGORY(lcSortedShareModel, "com.nextcloud.sortedsharemodel")
 SortedShareModel::SortedShareModel(QObject *parent)
     : QSortFilterProxyModel(parent)
 {
-}
-
-void SortedShareModel::sortModel()
-{
-    sort(0);
-}
-
-ShareModel *SortedShareModel::shareModel() const
-{
-    return qobject_cast<ShareModel*>(sourceModel());
-}
-
-void SortedShareModel::setShareModel(ShareModel *shareModel)
-{
-    const auto currentSetModel = sourceModel();
-
-    if(currentSetModel) {
-        disconnect(currentSetModel, &ShareModel::rowsInserted, this, &SortedShareModel::sortModel);
-        disconnect(currentSetModel, &ShareModel::rowsMoved, this, &SortedShareModel::sortModel);
-        disconnect(currentSetModel, &ShareModel::rowsRemoved, this, &SortedShareModel::sortModel);
-        disconnect(currentSetModel, &ShareModel::dataChanged, this, &SortedShareModel::sortModel);
-        disconnect(currentSetModel, &ShareModel::modelReset, this, &SortedShareModel::sortModel);
-    }
-
-    // Re-sort model when any changes take place
-    connect(shareModel, &ShareModel::rowsInserted, this, &SortedShareModel::sortModel);
-    connect(shareModel, &ShareModel::rowsMoved, this, &SortedShareModel::sortModel);
-    connect(shareModel, &ShareModel::rowsRemoved, this, &SortedShareModel::sortModel);
-    connect(shareModel, &ShareModel::dataChanged, this, &SortedShareModel::sortModel);
-    connect(shareModel, &ShareModel::modelReset, this, &SortedShareModel::sortModel);
-
-    setSourceModel(shareModel);
-    sortModel();
-    Q_EMIT shareModelChanged();
+    sort(0, Qt::AscendingOrder);
 }
 
 bool SortedShareModel::lessThan(const QModelIndex &sourceLeft, const QModelIndex &sourceRight) const
index 9e9db90f5d70505aa8192a1ad38048eb8f717fc9..413bb0e768974ffc37d6ec6d5827b38f87d1861b 100644 (file)
@@ -22,24 +22,13 @@ namespace OCC {
 class SortedShareModel : public QSortFilterProxyModel
 {
     Q_OBJECT
-    Q_PROPERTY(ShareModel* shareModel READ shareModel WRITE setShareModel NOTIFY shareModelChanged)
 
 public:
     explicit SortedShareModel(QObject *parent = nullptr);
 
-    [[nodiscard]] ShareModel *shareModel() const;
-
-signals:
-    void shareModelChanged();
-
-public slots:
-    void setShareModel(OCC::ShareModel *shareModel);
-
 protected:
     [[nodiscard]] bool lessThan(const QModelIndex &sourceLeft, const QModelIndex &sourceRight) const override;
 
-private slots:
-    void sortModel();
 };
 
 } // namespace OCC
index 0f3a0dfe134afde4c41e5799eb92bf14756cc3f9..f35ab39228fe2ab25bc348fbaa0dbd0c8be45625 100644 (file)
@@ -151,13 +151,13 @@ private slots:
         SortedShareModel sortedModel;
         QAbstractItemModelTester sortedModelTester(&sortedModel);
         QSignalSpy sortedModelReset(&sortedModel, &SortedShareModel::modelReset);
-        QSignalSpy shareModelChanged(&sortedModel, &SortedShareModel::shareModelChanged);
+        QSignalSpy shareModelChanged(&sortedModel, &SortedShareModel::sourceModelChanged);
 
-        sortedModel.setShareModel(&model);
+        sortedModel.setSourceModel(&model);
         QCOMPARE(shareModelChanged.count(), 1);
         QCOMPARE(sortedModelReset.count(), 1);
         QCOMPARE(sortedModel.rowCount(), model.rowCount());
-        QCOMPARE(sortedModel.shareModel(), &model);
+        QCOMPARE(sortedModel.sourceModel(), &model);
     }
 
     void testCorrectSort()
@@ -177,7 +177,7 @@ private slots:
         QAbstractItemModelTester sortedModelTester(&sortedModel);
         QSignalSpy sortedModelReset(&sortedModel, &SortedShareModel::modelReset);
 
-        sortedModel.setShareModel(&model);
+        sortedModel.setSourceModel(&model);
         QCOMPARE(sortedModelReset.count(), 1);
         QCOMPARE(sortedModel.rowCount(), model.rowCount());