File indexing completed on 2024-06-23 05:32:15
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 <QObject> 0011 #include <QRunnable> 0012 #include <QSize> 0013 0014 #include <KPackage/Package> 0015 0016 /** 0017 * A runnable that finds KPackage wallpapers. 0018 */ 0019 class PackageFinder : public QObject, public QRunnable 0020 { 0021 Q_OBJECT 0022 0023 public: 0024 PackageFinder(const QStringList &paths, const QSize &targetSize, QObject *parent = nullptr); 0025 0026 void run() override; 0027 0028 static void findPreferredImageInPackage(KPackage::Package &package, const QSize &targetSize); 0029 static QString packageDisplayName(const KPackage::Package &b); 0030 0031 Q_SIGNALS: 0032 void packageFound(const QList<KPackage::Package> &packages); 0033 0034 private: 0035 QStringList m_paths; 0036 QSize m_targetSize; 0037 };