1 /*
2     This file is part of the KDE desktop environment
3     SPDX-FileCopyrightText: 2001, 2002 Michael Brade <brade@kde.org>
4 
5     SPDX-License-Identifier: LGPL-2.0-or-later
6 */
7 
8 #ifndef _KDIRLISTERTEST_GUI_H_
9 #define _KDIRLISTERTEST_GUI_H_
10 
11 #include <QString>
12 #include <QUrl>
13 #include <QWidget>
14 
15 #include <kdirlister.h>
16 #include <kfileitem.h>
17 
18 #include <iostream>
19 
20 using namespace std;
21 
22 class PrintSignals : public QObject
23 {
24     Q_OBJECT
25 public:
PrintSignals()26     PrintSignals()
27         : QObject()
28     {
29     }
30 
31 public Q_SLOTS:
started(const QUrl & url)32     void started(const QUrl &url)
33     {
34         cout << "*** started( " << url.url().toLocal8Bit().data() << " )" << endl;
35     }
canceled()36     void canceled()
37     {
38         cout << "canceled()" << endl;
39     }
listingDirCanceled(const QUrl & url)40     void listingDirCanceled(const QUrl &url)
41     {
42         cout << "*** canceled( " << url.toDisplayString().toLocal8Bit().data() << " )" << endl;
43     }
completed()44     void completed()
45     {
46         cout << "*** completed()" << endl;
47     }
listingDirCompleted(const QUrl & url)48     void listingDirCompleted(const QUrl &url)
49     {
50         cout << "*** completed( " << url.toDisplayString().toLocal8Bit().data() << " )" << endl;
51     }
redirection(const QUrl & src,const QUrl & dest)52     void redirection(const QUrl &src, const QUrl &dest)
53     {
54         cout << "*** redirection( " << src.toDisplayString().toLocal8Bit().data() << ", " << dest.toDisplayString().toLocal8Bit().data() << " )" << endl;
55     }
clear()56     void clear()
57     {
58         cout << "*** clear()" << endl;
59     }
newItems(const KFileItemList & items)60     void newItems(const KFileItemList &items)
61     {
62         cout << "*** newItems: " << endl;
63         for (auto it = items.cbegin(), itEnd = items.constEnd(); it != itEnd; ++it) {
64             cout << (*it).name().toLocal8Bit().data() << endl;
65         }
66     }
itemsDeleted(const KFileItemList &)67     void itemsDeleted(const KFileItemList &)
68     {
69         cout << "*** itemsDeleted: " << endl;
70         // TODO
71     }
itemsFilteredByMime(const KFileItemList &)72     void itemsFilteredByMime(const KFileItemList &)
73     {
74         cout << "*** itemsFilteredByMime: " << endl;
75         // TODO
76     }
refreshItems(const QList<QPair<KFileItem,KFileItem>> &)77     void refreshItems(const QList<QPair<KFileItem, KFileItem>> &)
78     {
79         cout << "*** refreshItems: " << endl;
80         // TODO
81     }
infoMessage(const QString & msg)82     void infoMessage(const QString &msg)
83     {
84         cout << "*** infoMessage: " << msg.toLocal8Bit().data() << endl;
85     }
86 
percent(int percent)87     void percent(int percent)
88     {
89         cout << "*** percent: " << percent << endl;
90     }
91 
totalSize(KIO::filesize_t size)92     void totalSize(KIO::filesize_t size)
93     {
94         cout << "*** totalSize: " << (long)size << endl;
95     }
96 
processedSize(KIO::filesize_t size)97     void processedSize(KIO::filesize_t size)
98     {
99         cout << "*** processedSize: " << (long)size << endl;
100     }
101 
speed(int bytes_per_second)102     void speed(int bytes_per_second)
103     {
104         cout << "*** speed: " << bytes_per_second << endl;
105     }
106 };
107 
108 class KDirListerTest : public QWidget
109 {
110     Q_OBJECT
111 public:
112     KDirListerTest(QWidget *parent = nullptr, const QUrl &url = {});
113     ~KDirListerTest() override;
114 
115 public Q_SLOTS:
116     void startRoot();
117     void startHome();
118     void startTar();
119     void test();
120     void completed();
121 
122 private:
123     KDirLister *lister;
124     PrintSignals *debug;
125 };
126 
127 #endif
128