File indexing completed on 2024-06-23 05:32:16
0001 /* 0002 SPDX-FileCopyrightText: 2007 Paolo Capriotti <p.capriotti@gmail.com> 0003 SPDX-FileCopyrightText: 2022 Fushan Wen <qydwhotmail@gmail.com> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #pragma once 0009 0010 #include "abstractimagelistmodel.h" 0011 0012 /** 0013 * List images that do not belong to any KPackages. 0014 */ 0015 class ImageListModel : public AbstractImageListModel 0016 { 0017 Q_OBJECT 0018 0019 public: 0020 explicit ImageListModel(const QBindable<QSize> &bindableTargetSize, const QBindable<bool> &bindableUsedInConfig, QObject *parent = nullptr); 0021 0022 int rowCount(const QModelIndex &parent = QModelIndex()) const override; 0023 QVariant data(const QModelIndex &index, int role) const override; 0024 bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override; 0025 0026 int indexOf(const QString &path) const override; 0027 0028 void load(const QStringList &customPaths = {}) override; 0029 0030 public Q_SLOTS: 0031 QStringList addBackground(const QString &path) override; 0032 QStringList removeBackground(const QString &path) override; 0033 0034 protected Q_SLOTS: 0035 void slotHandleImageFound(const QStringList &paths); 0036 0037 private: 0038 QStringList m_data; 0039 0040 friend class ImageListModelTest; 0041 };