diff options
Diffstat (limited to 'pica-client/dialogs')
| -rw-r--r-- | pica-client/dialogs/filetransferdialog.cpp | 20 | ||||
| -rw-r--r-- | pica-client/dialogs/filetransferdialog.h | 16 |
2 files changed, 24 insertions, 12 deletions
diff --git a/pica-client/dialogs/filetransferdialog.cpp b/pica-client/dialogs/filetransferdialog.cpp index c7f145d..4643bb8 100644 --- a/pica-client/dialogs/filetransferdialog.cpp +++ b/pica-client/dialogs/filetransferdialog.cpp @@ -3,7 +3,9 @@ #include <QHBoxLayout> #include <stdlib.h> -FileTransferDialog::FileTransferDialog(QString filename, quint64 size, TransferDirection drct, QWidget *parent) : +FileTransferDialog::FileTransferDialog(QByteArray peer_id, QString filename, quint64 size, + TransferDirection drct, QWidget *parent) : + peer_id_(peer_id), QDialog(parent), dir_(drct), filename_(filename), @@ -72,6 +74,12 @@ void FileTransferDialog::update(quint64 progress) + bytestoHumanBase2(filesize_) + QString(" %1 %").arg((int)percents)); pgbar->setValue(percents); + + if (progress == filesize_) + { + leftbutton->setEnabled(false); + rightbutton->setEnabled(false); + } } void FileTransferDialog::leftbuttonclick() @@ -82,7 +90,7 @@ void FileTransferDialog::leftbuttonclick() { leftbutton->setText("Pause"); rightbutton->setText("Cancel"); - emit acceptedFile(); + emit acceptedFile(peer_id_); return; } } @@ -90,12 +98,12 @@ void FileTransferDialog::leftbuttonclick() if (leftbutton->text() == tr("Pause")) { leftbutton->setText(tr("Resume")); - emit pausedFile(); + emit pausedFile(peer_id_, this); } else if (leftbutton->text() == tr("Resume")) { leftbutton->setText(tr("Pause")); - emit resumedFile(); + emit resumedFile(peer_id_, this); } } @@ -105,14 +113,14 @@ void FileTransferDialog::rightbuttonclick() { if (rightbutton->text() == tr("Deny")) { - emit deniedFile(); + emit deniedFile(peer_id_); return; } } if (rightbutton->text() == tr("Cancel")) { - emit cancelledFile(); + emit cancelledFile(peer_id_, this); } } diff --git a/pica-client/dialogs/filetransferdialog.h b/pica-client/dialogs/filetransferdialog.h index a5a4783..406ea70 100644 --- a/pica-client/dialogs/filetransferdialog.h +++ b/pica-client/dialogs/filetransferdialog.h @@ -6,6 +6,7 @@ #include <QLabel> #include <QPushButton> #include <QTimer> +#include <QByteArray> class FileTransferDialog : public QDialog { @@ -17,8 +18,10 @@ public: RECEIVING }; - explicit FileTransferDialog(QString filename, quint64 size, TransferDirection drct, QWidget *parent = 0); + explicit FileTransferDialog(QByteArray peer_id, QString filename, quint64 size, + TransferDirection drct, QWidget *parent = 0); + TransferDirection getTransferDirection() {return dir_;}; private: @@ -30,6 +33,7 @@ private: QPushButton *leftbutton; QPushButton *rightbutton; + QByteArray peer_id_; TransferDirection dir_; QString filename_; quint64 filesize_; @@ -44,11 +48,11 @@ private: QTimer *timer; signals: - void pausedFile(); - void resumedFile(); - void cancelledFile(); - void acceptedFile(); - void deniedFile(); + void pausedFile(QByteArray peer_id, FileTransferDialog *sender); + void resumedFile(QByteArray peer_id, FileTransferDialog *sender); + void cancelledFile(QByteArray peer_id, FileTransferDialog *sender); + void acceptedFile(QByteArray peer_id); + void deniedFile(QByteArray peer_id); public slots: void update(quint64 progress); |
