projects
/
quassel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
qa: Add [[fallthrough]] annotations where appropriate
[quassel.git]
/
src
/
client
/
clienttransfer.cpp
diff --git
a/src/client/clienttransfer.cpp
b/src/client/clienttransfer.cpp
index
8398097
..
2255adc
100644
(file)
--- a/
src/client/clienttransfer.cpp
+++ b/
src/client/clienttransfer.cpp
@@
-1,5
+1,5
@@
/***************************************************************************
/***************************************************************************
- * Copyright (C) 2005-201
5
by the Quassel Project *
+ * Copyright (C) 2005-201
6
by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
@@
-27,7
+27,16
@@
ClientTransfer::ClientTransfer(const QUuid &uuid, QObject *parent)
: Transfer(uuid, parent),
_file(0)
{
: Transfer(uuid, parent),
_file(0)
{
- connect(this, SIGNAL(stateChanged(State)), SLOT(onStateChanged(State)));
+ connect(this, SIGNAL(statusChanged(Transfer::Status)), SLOT(onStatusChanged(Transfer::Status)));
+}
+
+
+quint64 ClientTransfer::transferred() const
+{
+ if (status() == Status::Completed)
+ return fileSize();
+
+ return _file ? _file->size() : 0;
}
}
@@
-82,17
+91,19
@@
void ClientTransfer::dataReceived(PeerPtr, const QByteArray &data)
qWarning() << Q_FUNC_INFO << "Could not write to file:" << _file->errorString();
return;
}
qWarning() << Q_FUNC_INFO << "Could not write to file:" << _file->errorString();
return;
}
+
+ emit transferredChanged(transferred());
}
}
-void ClientTransfer::onStat
eChanged(Transfer::State state
)
+void ClientTransfer::onStat
usChanged(Transfer::Status status
)
{
{
- switch(stat
e
) {
- case Completed:
+ switch(stat
us
) {
+ case
Status::
Completed:
if (_file)
_file->close();
break;
if (_file)
_file->close();
break;
- case Failed:
+ case
Status::
Failed:
if (_file)
_file->remove();
break;
if (_file)
_file->remove();
break;