/***************************************************************************
- * Copyright (C) 2005-2016 by the Quassel Project *
+ * Copyright (C) 2005-2018 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#include <stdlib.h>
QPointer<Client> Client::instanceptr = 0;
-Quassel::Features Client::_coreFeatures = 0;
/*** Initialization/destruction ***/
_inputHandler(0),
_networkConfig(0),
_ignoreListManager(0),
+ _highlightRuleManager(0),
_transferManager(0),
_transferModel(new TransferModel(this)),
_messageModel(0),
}
-void Client::setCoreFeatures(Quassel::Features features)
+bool Client::isCoreFeatureEnabled(Quassel::Feature feature)
{
- _coreFeatures = features;
+ return coreConnection()->peer() ? coreConnection()->peer()->hasFeature(feature) : false;
}
_highlightRuleManager = new HighlightRuleManager(this);
p->synchronize(highlightRuleManager());
+/* not ready yet
// create TransferManager and DccConfig if core supports them
Q_ASSERT(!_dccConfig);
Q_ASSERT(!_transferManager);
- if (coreFeatures() & Quassel::DccFileTransfer) {
+ if (isCoreFeatureEnabled(Quassel::Feature::DccFileTransfer)) {
_dccConfig = new DccConfig(this);
p->synchronize(dccConfig());
_transferManager = new ClientTransferManager(this);
_transferModel->setManager(_transferManager);
p->synchronize(transferManager());
}
+*/
// trigger backlog request once all active bufferviews are initialized
connect(bufferViewOverlay(), SIGNAL(initDone()), this, SLOT(finishConnectionInitialization()));
disconnect(bufferSyncer(), SIGNAL(initDone()), this, SLOT(finishConnectionInitialization()));
requestInitialBacklog();
- if (coreFeatures().testFlag(Quassel::BufferActivitySync))
+ if (isCoreFeatureEnabled(Quassel::Feature::BufferActivitySync))
bufferSyncer()->markActivitiesChanged();
}
void Client::setDisconnectedFromCore()
{
_connected = false;
- _coreFeatures = 0;
emit disconnected();
emit coreConnectionStateChanged(false);