summaryrefslogtreecommitdiffstats
path: root/pica-client/dialogs/filetransferdialog.h
diff options
context:
space:
mode:
authorme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2014-01-02 10:12:35 +0000
committerme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2014-01-02 10:12:35 +0000
commit72076cbe42730602b02afed5032d1be41d5eb36c (patch)
tree8cd6c43775c15b8f3fc493220ba97d3502280cfb /pica-client/dialogs/filetransferdialog.h
parentde121d0f66a66295f43844443a619db8b2baad3c (diff)
downloadpica-pica-72076cbe42730602b02afed5032d1be41d5eb36c.tar.gz
pica-pica-72076cbe42730602b02afed5032d1be41d5eb36c.zip
implemented FileTransferDialog and added "Send File" menu item in contactlistwidget
git-svn-id: svn://localhost/project_picapica/trunk@304 fb96df88-216d-11de-830c-f3023f12d8ac
Diffstat (limited to 'pica-client/dialogs/filetransferdialog.h')
-rw-r--r--pica-client/dialogs/filetransferdialog.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/pica-client/dialogs/filetransferdialog.h b/pica-client/dialogs/filetransferdialog.h
new file mode 100644
index 0000000..a5a4783
--- /dev/null
+++ b/pica-client/dialogs/filetransferdialog.h
@@ -0,0 +1,63 @@
+#ifndef FILETRANSFERDIALOG_H
+#define FILETRANSFERDIALOG_H
+
+#include <QDialog>
+#include <QProgressBar>
+#include <QLabel>
+#include <QPushButton>
+#include <QTimer>
+
+class FileTransferDialog : public QDialog
+{
+ Q_OBJECT
+public:
+ enum TransferDirection
+ {
+ SENDING,
+ RECEIVING
+ };
+
+ explicit FileTransferDialog(QString filename, quint64 size, TransferDirection drct, QWidget *parent = 0);
+
+
+
+private:
+ QLabel *lbFilename;
+ QLabel *lbProgressStatus;
+ QLabel *lbTransferSpeed;
+ QLabel *lbRemainingTime;
+ QProgressBar *pgbar;
+ QPushButton *leftbutton;
+ QPushButton *rightbutton;
+
+ TransferDirection dir_;
+ QString filename_;
+ quint64 filesize_;
+
+ double percents;
+ quint64 progress_;
+ quint64 prevprogress_;
+
+ static QString bytestoHumanBase2(quint64 bytes);
+ static QString bytestoHumanBase10(quint64 bytes);
+ static QString timeLeft(quint64 seconds);
+
+ QTimer *timer;
+signals:
+ void pausedFile();
+ void resumedFile();
+ void cancelledFile();
+ void acceptedFile();
+ void deniedFile();
+
+public slots:
+ void update(quint64 progress);
+
+private slots:
+ void timeout();
+ void leftbuttonclick();
+ void rightbuttonclick();
+
+};
+
+#endif // FILETRANSFERDIALOG_H