summaryrefslogtreecommitdiffstats
path: root/pica-client/filetransfercontroller.h
diff options
context:
space:
mode:
authorme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2014-05-04 22:27:29 +0000
committerme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2014-05-04 22:27:29 +0000
commit693b9a448a07b07cf5e257c15f54a6a50f391d0c (patch)
tree224d3e091ba0a6e2e21f3e0853e84508afe492e1 /pica-client/filetransfercontroller.h
parent12c7e7b30b2cce60884e61144449e14cca9ecb4d (diff)
downloadpica-pica-693b9a448a07b07cf5e257c15f54a6a50f391d0c.tar.gz
pica-pica-693b9a448a07b07cf5e257c15f54a6a50f391d0c.zip
initial minimal working file transfer implementation, new class FileTransferController
git-svn-id: svn://localhost/project_picapica/trunk@306 fb96df88-216d-11de-830c-f3023f12d8ac
Diffstat (limited to 'pica-client/filetransfercontroller.h')
-rw-r--r--pica-client/filetransfercontroller.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/pica-client/filetransfercontroller.h b/pica-client/filetransfercontroller.h
new file mode 100644
index 0000000..72a989e
--- /dev/null
+++ b/pica-client/filetransfercontroller.h
@@ -0,0 +1,45 @@
+#ifndef FILETRANSFERCONTROLLER_H
+#define FILETRANSFERCONTROLLER_H
+
+#include <QObject>
+#include <QMap>
+#include "dialogs/filetransferdialog.h"
+
+class FileTransferController : public QObject
+{
+ Q_OBJECT
+public:
+ explicit FileTransferController(QObject *parent = 0);
+
+signals:
+
+private:
+
+ QMap<QByteArray, FileTransferDialog*> ftdialogs_in;
+ QMap<QByteArray, FileTransferDialog*> ftdialogs_out;
+
+ QMap<QByteArray, quint64> fsizes;
+ QMap<QByteArray, QString> fnames;
+
+
+public slots:
+
+ // from remote peer to me
+ void file_progress(QByteArray peer_id, quint64 bytes_sent, quint64 bytes_received);
+ void file_request(QByteArray peer_id, quint64 file_size, QString filename);
+ void file_accepted_by_peer(QByteArray peer_id);
+ void file_denied_by_peer(QByteArray peer_id);
+ //void file_control(QByteArray peer_id, )
+
+ //from me (file transfer dialog shown to user) to remote peer
+ void file_accepted_by_me(QByteArray peer_id);
+ void file_denied_by_me(QByteArray peer_id);
+ void file_cancelled_by_me(QByteArray peer_id, FileTransferDialog *from);
+ void file_paused_by_me(QByteArray peer_id, FileTransferDialog *from);
+ void file_resumed_by_me(QByteArray peer_id, FileTransferDialog *from);
+
+ void send_file(QByteArray peer_id);
+
+};
+
+#endif // FILETRANSFERCONTROLLER_H