mirror of
https://bitbucket.org/smil3y/kdelibs.git
synced 2025-02-23 18:32:49 +00:00
111 lines
2.3 KiB
C++
111 lines
2.3 KiB
C++
/*
|
|
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 <QtGui/QLabel>
|
|
#include <QtGui/QLineEdit>
|
|
#include <QtGui/QRadioButton>
|
|
#include <QtGui/QPushButton>
|
|
#include <QtGui/QButtonGroup>
|
|
#include <QtGui/QWidget>
|
|
|
|
#include <kmainwindow.h>
|
|
|
|
#include "kio/job.h"
|
|
#include "kio/global.h"
|
|
#include "kstatusbarjobtracker.h"
|
|
|
|
class KioslaveTest : public KMainWindow {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
KioslaveTest( QString src, QString dest, uint op, uint pr );
|
|
|
|
~KioslaveTest()
|
|
{
|
|
if ( job ) {
|
|
job->kill( KJob::Quietly ); // kill the job quietly
|
|
}
|
|
if (slave)
|
|
KIO::Scheduler::disconnectSlave(slave);
|
|
}
|
|
|
|
enum Operations { List = 0, ListRecursive, Stat, Get, Put, Copy, Move, Delete, Mkdir, Mimetype };
|
|
|
|
enum ProgressModes { ProgressNone = 0, ProgressDefault, ProgressStatus };
|
|
|
|
protected:
|
|
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 *rbMkdir;
|
|
QRadioButton *rbMimetype;
|
|
|
|
// progress stuff
|
|
QButtonGroup *progressButtons;
|
|
|
|
QRadioButton *rbProgressNone;
|
|
QRadioButton *rbProgressDefault;
|
|
QRadioButton *rbProgressStatus;
|
|
|
|
QPushButton *pbStart;
|
|
QPushButton *pbStop;
|
|
|
|
QPushButton *close;
|
|
|
|
protected Q_SLOTS:
|
|
void changeOperation( QAbstractButton *b );
|
|
void changeProgressMode( QAbstractButton *b );
|
|
|
|
void startJob();
|
|
void stopJob();
|
|
|
|
void slotResult( KJob * );
|
|
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;
|
|
|
|
KStatusBarJobTracker *statusTracker;
|
|
|
|
int selectedOperation;
|
|
int progressMode;
|
|
int putBuffer;
|
|
KIO::Slave *slave;
|
|
};
|
|
|
|
#endif // KIOSLAVETEST_H
|