You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
2.0 KiB
75 lines
2.0 KiB
/*
|
|
* jabberfiletransfer.h
|
|
*
|
|
* Copyright (c) 2004 by Till Gerken <till@tantalo.net>
|
|
*
|
|
* Kopete (c) by the Kopete developers <kopete-devel@kde.org>
|
|
*
|
|
* *************************************************************************
|
|
* * *
|
|
* * This program is free software; you can redistribute it and/or modify *
|
|
* * it under the terms of the GNU General Public License as published by *
|
|
* * the Free Software Foundation; either version 2 of the License, or *
|
|
* * (at your option) any later version. *
|
|
* * *
|
|
* *************************************************************************
|
|
*/
|
|
|
|
#ifndef JABBERFILETRANSFER_H
|
|
#define JABBERFILETRANSFER_H
|
|
|
|
#include <qobject.h>
|
|
#include <filetransfer.h>
|
|
|
|
class QString;
|
|
class JabberAccount;
|
|
namespace Kopete { class Transfer; }
|
|
namespace Kopete { class FileTransferInfo; }
|
|
class JabberBaseContact;
|
|
|
|
class JabberFileTransfer : public QObject
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
public:
|
|
/**
|
|
* Constructor for an incoming transfer
|
|
*/
|
|
JabberFileTransfer ( JabberAccount *account, XMPP::FileTransfer *incomingTransfer );
|
|
|
|
/**
|
|
* Constructor for an outgoing transfer
|
|
*/
|
|
JabberFileTransfer ( JabberAccount *account, JabberBaseContact *contact, const QString &file );
|
|
|
|
~JabberFileTransfer ();
|
|
|
|
private slots:
|
|
void slotIncomingTransferAccepted ( Kopete::Transfer *transfer, const QString &fileName );
|
|
void slotTransferRefused ( const Kopete::FileTransferInfo &transfer );
|
|
void slotTransferResult ();
|
|
void slotTransferError ( int errorCode );
|
|
|
|
void slotOutgoingConnected ();
|
|
void slotOutgoingBytesWritten ( int nrWritten );
|
|
|
|
void slotIncomingDataReady ( const QByteArray &data );
|
|
|
|
private:
|
|
void initializeVariables ();
|
|
|
|
JabberAccount *mAccount;
|
|
XMPP::FileTransfer *mXMPPTransfer;
|
|
Kopete::Transfer *mKopeteTransfer;
|
|
QFile mLocalFile;
|
|
int mTransferId;
|
|
Q_LLONG mBytesTransferred;
|
|
Q_LLONG mBytesToTransfer;
|
|
|
|
};
|
|
|
|
#endif
|
|
|
|
// vim: set noet ts=4 sts=4 tw=4:
|