diff options
| author | me_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac> | 2014-06-06 16:11:47 +0000 |
|---|---|---|
| committer | me_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac> | 2014-06-06 16:11:47 +0000 |
| commit | 56b54f8c754c3e6e94afa34c46c918c0f34a0b27 (patch) | |
| tree | f05eba035235f181b3f8beeff206ad3ca73c7673 /pica-client | |
| parent | 693b9a448a07b07cf5e257c15f54a6a50f391d0c (diff) | |
| download | pica-pica-56b54f8c754c3e6e94afa34c46c918c0f34a0b27.tar.gz pica-pica-56b54f8c754c3e6e94afa34c46c918c0f34a0b27.zip | |
implemented DenyFile action
git-svn-id: svn://localhost/project_picapica/trunk@307 fb96df88-216d-11de-830c-f3023f12d8ac
Diffstat (limited to 'pica-client')
| -rw-r--r-- | pica-client/dialogs/filetransferdialog.cpp | 3 | ||||
| -rw-r--r-- | pica-client/filetransfercontroller.cpp | 5 | ||||
| -rw-r--r-- | pica-client/skynet.cpp | 19 | ||||
| -rw-r--r-- | pica-client/skynet.h | 1 |
4 files changed, 28 insertions, 0 deletions
diff --git a/pica-client/dialogs/filetransferdialog.cpp b/pica-client/dialogs/filetransferdialog.cpp index 4643bb8..d733d0d 100644 --- a/pica-client/dialogs/filetransferdialog.cpp +++ b/pica-client/dialogs/filetransferdialog.cpp @@ -79,6 +79,9 @@ void FileTransferDialog::update(quint64 progress) { leftbutton->setEnabled(false); rightbutton->setEnabled(false); + + QWidget::setAttribute(Qt::WA_DeleteOnClose); + QWidget::setAttribute(Qt::WA_QuitOnClose, false); } } diff --git a/pica-client/filetransfercontroller.cpp b/pica-client/filetransfercontroller.cpp index 9b479c1..6bf3658 100644 --- a/pica-client/filetransfercontroller.cpp +++ b/pica-client/filetransfercontroller.cpp @@ -79,6 +79,11 @@ void FileTransferController::file_accepted_by_me(QByteArray peer_id) void FileTransferController::file_denied_by_me(QByteArray peer_id) { + skynet->DenyFile(peer_id); + + delete ftdialogs_in[peer_id]; + + ftdialogs_in.remove(peer_id); } void FileTransferController::file_cancelled_by_me(QByteArray peer_id, FileTransferDialog *from) diff --git a/pica-client/skynet.cpp b/pica-client/skynet.cpp index 1077df2..c2f89ff 100644 --- a/pica-client/skynet.cpp +++ b/pica-client/skynet.cpp @@ -298,6 +298,25 @@ if ( (iptr = find_active_chan(from)) ) write_mutex.unlock();//>> } +void SkyNet::DenyFile(QByteArray from) +{ +int ret = PICA_OK; +struct PICA_chaninfo *iptr; + +write_mutex.lock();//<< +if ( (iptr = find_active_chan(from)) ) + { + ret = PICA_deny_file(iptr); + + qDebug() << "PICA_deny_file() returned " << ret << "\n"; + if (ret != PICA_OK) + { + //show error somewhere somehow + } + } +write_mutex.unlock();//>> +} + void SkyNet::SendMessage(QByteArray to, QString msg) { int ret = PICA_OK; diff --git a/pica-client/skynet.h b/pica-client/skynet.h index f512fb1..5ab4db1 100644 --- a/pica-client/skynet.h +++ b/pica-client/skynet.h @@ -22,6 +22,7 @@ public: void SendMessage(QByteArray to, QString msg); void SendFile(QByteArray to, QString filepath); void AcceptFile(QByteArray from, QString filepath); + void DenyFile(QByteArray from); Accounts::AccountRecord CurrentAccount() {return skynet_account;}; signals: |
