1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
/*
This file is or will be part of KDE desktop environment
Copyright 1999 Matt Koss <koss@miesto.sk>
It is licensed under GPL version 2.
If it is part of KDE libraries than this file is licensed under
LGPL version 2.
*/
#ifndef _KIOSLAVETEST_H
#define _KIOSLAVETEST_H
#include <qlabel.h>
#include <qlineedit.h>
#include <qradiobutton.h>
#include <qpushbutton.h>
#include <qbuttongroup.h>
#include <qwidget.h>
#include <kmainwindow.h>
#include "kio/job.h"
#include "kio/global.h"
#include "kio/statusbarprogress.h"
#include "kio/slave.h"
class KioslaveTest : public KMainWindow {
Q_OBJECT
public:
KioslaveTest( QString src, QString dest, uint op, uint pr );
~KioslaveTest() {}
enum Operations { List, ListRecursive, Stat, Get, Put, Copy, Move, Delete, Shred, Mkdir, Mimetype };
enum ProgressModes { ProgressNone, ProgressDefault, ProgressStatus };
protected:
void closeEvent( QCloseEvent * );
void printUDSEntry( const KIO::UDSEntry & entry );
// info stuff
QLabel *lb_from;
QLineEdit *le_source;
QLabel *lb_to;
QLineEdit *le_dest;
// operation stuff
QButtonGroup *opButtons;
QRadioButton *rbList;
QRadioButton *rbListRecursive;
QRadioButton *rbStat;
QRadioButton *rbGet;
QRadioButton *rbPut;
QRadioButton *rbCopy;
QRadioButton *rbMove;
QRadioButton *rbDelete;
QRadioButton *rbShred;
QRadioButton *rbMkdir;
QRadioButton *rbMimetype;
// progress stuff
QButtonGroup *progressButtons;
QRadioButton *rbProgressNone;
QRadioButton *rbProgressDefault;
QRadioButton *rbProgressStatus;
QPushButton *pbStart;
QPushButton *pbStop;
QPushButton *close;
protected slots:
void changeOperation( int id );
void changeProgressMode( int id );
void startJob();
void stopJob();
void slotResult( KIO::Job * );
void slotEntries( KIO::Job *, const KIO::UDSEntryList& );
void slotData( KIO::Job *, const QByteArray &data );
void slotDataReq( KIO::Job *, QByteArray &data );
void slotQuit();
void slotSlaveConnected();
void slotSlaveError();
private:
KIO::Job *job;
QWidget *main_widget;
KIO::StatusbarProgress *statusProgress;
int selectedOperation;
int progressMode;
int putBuffer;
KIO::Slave *slave;
};
#endif // _KIOSLAVETEST_H
|