summaryrefslogblamecommitdiffstats
path: root/src/gui/serverFileTransfert.h
blob: 96b30e586f7ab6b774f328f4972737dcff340d81 (plain) (tree)



















































                                                            
#ifndef SERVERFILETRANSFERT_H_
#define SERVERFILETRANSFERT_H_


#include <QtGui>
#include <QtNetwork>
#include "ui_clientFileSendDialog.h"

/*namespace Ui
{
	class ClientFileSendDialogClass;
}*/

class ServerFileTransfert: public QDialog,
	private Ui::ClientFileSendDialogClass

{
	Q_OBJECT

public:
	ServerFileTransfert (QWidget *parent=0);
	~ServerFileTransfert ();

	void sendFileToHost(QString host);
	void sendFileToHost(QString host, QString filename);
	void receiveFileFromHost(QTcpSocket* socket);

	//Ui::ClientFileSendDialogClass* uitr;

private Q_SLOTS:
    void sendHeader();
    void receiveHeader();
    void receiveAck();
    void sendFile();
    void receiveFile();
    void close();
    void error(QAbstractSocket::SocketError error);

private:
    void sendAck(bool b);
    QString formatSize(qint64 size);

    QTcpSocket *_socket;
    QFile *_file;
    qint64 _bytesToWrite;
    qint64 _bytesToRead;
    int div;

};


#endif /* SERVERFILETRANSFERT_H_ */