X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fbufferinfo.h;h=e20ce9b3eeb9268f25d3b41953c648fcb4fe1e01;hp=0953a10f03716346d2b58dc15262cf3650731395;hb=158443f71d48215eea8b47b836b61afd77654b78;hpb=86831c8857f0a729580cee547e10c9621d50c780 diff --git a/src/common/bufferinfo.h b/src/common/bufferinfo.h index 0953a10f..e20ce9b3 100644 --- a/src/common/bufferinfo.h +++ b/src/common/bufferinfo.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-09 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 * @@ -15,64 +15,68 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef BUFFERINFO_H -#define BUFFERINFO_H -#include +#pragma once + +#include "common-export.h" + #include "types.h" class QString; class QDataStream; -class BufferInfo { +class COMMON_EXPORT BufferInfo +{ public: - enum Type { - InvalidBuffer = 0x00, - StatusBuffer = 0x01, - ChannelBuffer = 0x02, - QueryBuffer = 0x04, - GroupBuffer = 0x08 - }; - - enum Activity { - NoActivity = 0x00, - OtherActivity = 0x01, - NewMessage = 0x02, - Highlight = 0x40 - }; - Q_DECLARE_FLAGS(ActivityLevel, Activity) - - BufferInfo(); - BufferInfo(BufferId id, NetworkId networkid, Type type, uint gid = 0, QString buf = QString()); - - static BufferInfo fakeStatusBuffer(NetworkId networkId); - - inline bool isValid() const { return _bufferId != 0; } - inline const BufferId &bufferId() const { return _bufferId; } - inline void setBufferId(BufferId id) { _bufferId = id; } - inline const NetworkId &networkId() const { return _netid; } - inline const Type &type() const { return _type; } - inline const uint &groupId() const { return _groupId; } - void setGroupId(uint gid) { _groupId = gid; } - - QString bufferName() const; - - inline bool operator==(const BufferInfo &other) const { return _bufferId == other._bufferId; } + enum Type { + InvalidBuffer = 0x00, + StatusBuffer = 0x01, + ChannelBuffer = 0x02, + QueryBuffer = 0x04, + GroupBuffer = 0x08 + }; + + enum Activity { + NoActivity = 0x00, + OtherActivity = 0x01, + NewMessage = 0x02, + Highlight = 0x40 + }; + Q_DECLARE_FLAGS(ActivityLevel, Activity) + + BufferInfo(); + BufferInfo(BufferId id, NetworkId networkid, Type type, uint gid = 0, QString buf = QString()); + + static BufferInfo fakeStatusBuffer(NetworkId networkId); + + inline bool isValid() const { return _bufferId != 0; } + inline const BufferId &bufferId() const { return _bufferId; } + inline void setBufferId(BufferId id) { _bufferId = id; } + inline const NetworkId &networkId() const { return _netid; } + inline const Type &type() const { return _type; } + inline const uint &groupId() const { return _groupId; } + void setGroupId(uint gid) { _groupId = gid; } + + QString bufferName() const; + bool acceptsRegularMessages() const; + + inline bool operator==(const BufferInfo &other) const { return _bufferId == other._bufferId; } private: - BufferId _bufferId; - NetworkId _netid; - Type _type; - uint _groupId; - QString _bufferName; - - friend uint qHash(const BufferInfo &); - friend QDataStream &operator<<(QDataStream &out, const BufferInfo &bufferInfo); - friend QDataStream &operator>>(QDataStream &in, BufferInfo &bufferInfo); + BufferId _bufferId; + NetworkId _netid; + Type _type{InvalidBuffer}; + uint _groupId{0}; + QString _bufferName; + + friend uint qHash(const BufferInfo &); + friend QDataStream &operator<<(QDataStream &out, const BufferInfo &bufferInfo); + friend QDataStream &operator>>(QDataStream &in, BufferInfo &bufferInfo); }; + QDataStream &operator<<(QDataStream &out, const BufferInfo &bufferInfo); QDataStream &operator>>(QDataStream &in, BufferInfo &bufferInfo); QDebug operator<<(QDebug dbg, const BufferInfo &b); @@ -81,5 +85,3 @@ Q_DECLARE_METATYPE(BufferInfo) Q_DECLARE_OPERATORS_FOR_FLAGS(BufferInfo::ActivityLevel) uint qHash(const BufferInfo &); - -#endif