X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclienttransfermanager.cpp;fp=src%2Fclient%2Fclienttransfermanager.cpp;h=e79c84ea3dfb12bd2b91ca606ab8f8fe258e9526;hp=7e89cca10b91d1b4a0099e72af7208040b69a539;hb=0d7b511c8510d7fd05d3a704114e34ff37f7a995;hpb=7768b765b21279eadef1400c6c614c63a3db8ed8 diff --git a/src/client/clienttransfermanager.cpp b/src/client/clienttransfermanager.cpp index 7e89cca1..e79c84ea 100644 --- a/src/client/clienttransfermanager.cpp +++ b/src/client/clienttransfermanager.cpp @@ -21,7 +21,7 @@ #include "clienttransfermanager.h" #include "client.h" -#include "transfer.h" +#include "clienttransfer.h" INIT_SYNCABLE_OBJECT(ClientTransferManager) @@ -32,6 +32,12 @@ ClientTransferManager::ClientTransferManager(QObject *parent) } +const ClientTransfer *ClientTransferManager::transfer(const QUuid &uuid) const +{ + return qobject_cast(transfer_(uuid)); +} + + void ClientTransferManager::onCoreTransferAdded(const QUuid &uuid) { if (uuid.isNull()) { @@ -39,7 +45,7 @@ void ClientTransferManager::onCoreTransferAdded(const QUuid &uuid) return; } - Transfer *transfer = new Transfer(uuid, this); + ClientTransfer *transfer = new ClientTransfer(uuid, this); connect(transfer, SIGNAL(initDone()), SLOT(onTransferInitDone())); // we only want to add initialized transfers Client::signalProxy()->synchronize(transfer); } @@ -55,6 +61,11 @@ void ClientTransferManager::onTransferInitDone() void ClientTransferManager::onTransferAdded(const Transfer *transfer) { - // FIXME just a temporary solution - emit newTransfer(transfer); + const ClientTransfer *t = qobject_cast(transfer); + if (!t) { + qWarning() << "Invalid Transfer added to ClientTransferManager!"; + return; + } + + emit transferAdded(t); }