X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fcoresession.h;h=61b7d22e4f8d1af90007ff6681cc1a6395e3c3c4;hb=b1b970e71618cb2d2cf372ba55234000c6324d7f;hp=a164ffe1575256f96ca327246371b5c572fa2b8a;hpb=d82f98b8cf9c7c83f3aab1d7f010ccf8bdd2c003;p=quassel.git diff --git a/src/core/coresession.h b/src/core/coresession.h index a164ffe1..61b7d22e 100644 --- a/src/core/coresession.h +++ b/src/core/coresession.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2015 by the Quassel Project * + * Copyright (C) 2005-2016 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -35,6 +35,7 @@ class CoreBacklogManager; class CoreBufferSyncer; class CoreBufferViewManager; +class CoreDccConfig; class CoreIdentity; class CoreIrcListHelper; class CoreNetwork; @@ -87,6 +88,7 @@ public: inline CoreIgnoreListManager *ignoreListManager() { return &_ignoreListManager; } inline CoreTransferManager *transferManager() const { return _transferManager; } + inline CoreDccConfig *dccConfig() const { return _dccConfig; } // void attachNetworkConnection(NetworkConnection *conn); @@ -129,10 +131,17 @@ public slots: void changePassword(PeerPtr peer, const QString &userName, const QString &oldPassword, const QString &newPassword); + void kickClient(int peerId); + QHash persistentChannels(NetworkId) const; - //! Marks us away (or unaway) on all networks - void globalAway(const QString &msg = QString()); + /** + * Marks us away (or unaway) on all networks + * + * @param[in] msg Away message, or blank to set unaway + * @param[in] skipFormatting If true, skip timestamp formatting codes (e.g. if already done) + */ + void globalAway(const QString &msg = QString(), const bool skipFormatting = false); signals: void initialized(); @@ -162,6 +171,8 @@ signals: void passwordChanged(PeerPtr peer, bool success); + void disconnectFromCore(); + protected: virtual void customEvent(QEvent *event); @@ -203,6 +214,7 @@ private: CoreBufferSyncer *_bufferSyncer; CoreBacklogManager *_backlogManager; CoreBufferViewManager *_bufferViewManager; + CoreDccConfig *_dccConfig; CoreIrcListHelper *_ircListHelper; CoreNetworkConfig *_networkConfig; CoreCoreInfo _coreInfo; @@ -216,6 +228,13 @@ private: QScriptEngine *scriptEngine; + /** + * This method obtains the prefixes of the message's sender within a channel, by looking up their channelmodes, and + * processing them to prefixes based on the network's settings. + * @param sender The hostmask of the sender + * @param bufferInfo The BufferInfo object of the buffer + */ + QString senderPrefixes(const QString &sender, const BufferInfo &bufferInfo) const; QList _messageQueue; bool _processMessages; CoreIgnoreListManager _ignoreListManager;