X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fclient.cpp;h=3305f5b3dc8e11f8c25a77f97b52a13f119743cf;hb=1b7bda6032edddeb3d6895916e1c968acef19979;hp=fe49f774049e4fd11df6cac1d6458039415ad237;hpb=04315f46a16fc3627218377071e008b6b9744992;p=quassel.git diff --git a/src/client/client.cpp b/src/client/client.cpp index fe49f774..3305f5b3 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2013 by the Quassel Project * + * Copyright (C) 2005-2014 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -34,6 +34,7 @@ #include "clientirclisthelper.h" #include "clientidentity.h" #include "clientignorelistmanager.h" +#include "clienttransfermanager.h" #include "clientuserinputhandler.h" #include "coreaccountmodel.h" #include "coreconnection.h" @@ -102,10 +103,11 @@ Client::Client(QObject *parent) _inputHandler(0), _networkConfig(0), _ignoreListManager(0), + _transferManager(0), _messageModel(0), _messageProcessor(0), _coreAccountModel(new CoreAccountModel(this)), - _coreConnection(new CoreConnection(_coreAccountModel, this)), + _coreConnection(new CoreConnection(this)), _connected(false), _debugLog(&_debugLogBuffer) { @@ -404,6 +406,10 @@ void Client::setSyncedToCore() _ignoreListManager = new ClientIgnoreListManager(this); signalProxy()->synchronize(ignoreListManager()); + Q_ASSERT(!_transferManager); + _transferManager = new ClientTransferManager(this); + signalProxy()->synchronize(transferManager()); + // trigger backlog request once all active bufferviews are initialized connect(bufferViewOverlay(), SIGNAL(initDone()), this, SLOT(requestInitialBacklog())); @@ -473,6 +479,12 @@ void Client::setDisconnectedFromCore() _ignoreListManager->deleteLater(); _ignoreListManager = 0; } + + if (_transferManager) { + _transferManager->deleteLater(); + _transferManager = 0; + } + // we probably don't want to save pending input for reconnect _userInputBuffer.clear(); @@ -634,6 +646,7 @@ void Client::markBufferAsRead(BufferId id) } +#if QT_VERSION < 0x050000 void Client::logMessage(QtMsgType type, const char *msg) { fprintf(stderr, "%s\n", msg); @@ -653,3 +666,26 @@ void Client::logMessage(QtMsgType type, const char *msg) emit instance()->logUpdated(msgString); } } +#else +void Client::logMessage(QtMsgType type, const QMessageLogContext &context, const QString &msg) +{ + Q_UNUSED(context); + + fprintf(stderr, "%s\n", msg.toLocal8Bit().constData()); + fflush(stderr); + if (type == QtFatalMsg) { + Quassel::logFatalMessage(msg.toLocal8Bit().constData()); + } + else { + QString msgString = QString("%1\n").arg(msg); + + //Check to see if there is an instance around, else we risk recursions + //when calling instance() and creating new ones. + if (!instanceExists()) + return; + + instance()->_debugLog << msgString; + emit instance()->logUpdated(msgString); + } +} +#endif