File indexing completed on 2024-04-28 03:56:24

0001 /*
0002     SPDX-FileCopyrightText: 2016 Dan Leinir Turthra Jensen <admin@leinir.dk>
0003 
0004     SPDX-License-Identifier: LGPL-2.1-or-later
0005 */
0006 
0007 #ifndef FILECOPYWORKER_H
0008 #define FILECOPYWORKER_H
0009 
0010 #include <QThread>
0011 #include <QUrl>
0012 
0013 namespace KNSCore
0014 {
0015 class FileCopyWorkerPrivate;
0016 class FileCopyWorker : public QThread
0017 {
0018     Q_OBJECT
0019 public:
0020     explicit FileCopyWorker(const QUrl &source, const QUrl &destination, QObject *parent = nullptr);
0021     ~FileCopyWorker() override;
0022     void run() override;
0023 
0024     Q_SIGNAL void progress(qlonglong current, qlonglong total);
0025     Q_SIGNAL void completed();
0026     Q_SIGNAL void error(const QString &message);
0027 
0028 private:
0029     const std::unique_ptr<FileCopyWorkerPrivate> d;
0030 };
0031 
0032 }
0033 
0034 #endif // FILECOPYWORKER_H