X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclienttransfermanager.cpp;h=ec5c49fa8df3df502571ffd4a3b8825166b385f6;hp=7e89cca10b91d1b4a0099e72af7208040b69a539;hb=921e54680da16fcf2adb7a90506875aceb6633a4;hpb=e4a23f68789db8aa7dddeebed35f4ff6a90ffa8c diff --git a/src/client/clienttransfermanager.cpp b/src/client/clienttransfermanager.cpp index 7e89cca1..ec5c49fa 100644 --- a/src/client/clienttransfermanager.cpp +++ b/src/client/clienttransfermanager.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2013 by the Quassel Project * + * Copyright (C) 2005-2015 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -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); }