/***************************************************************************
- * Copyright (C) 2005-08 by the Quassel Project *
+ * Copyright (C) 2005-09 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#include "util.h"
BufferInfo::BufferInfo()
- : _id(0),
+ : _bufferId(0),
_netid(0),
- _gid(0),
- _networkName(QString()),
- _bufferName(QString()) {
+ _type(InvalidBuffer),
+ _groupId(0),
+ _bufferName(QString())
+{
}
-BufferInfo::BufferInfo(BufferId id, NetworkId networkid, uint gid, QString net, QString buf)
- : _id(id),
+BufferInfo::BufferInfo(BufferId id, NetworkId networkid, Type type, uint gid, QString buf)
+ : _bufferId(id),
_netid(networkid),
- _gid(gid),
- _networkName(net),
- _bufferName(buf) {
+ _type(type),
+ _groupId(gid),
+ _bufferName(buf)
+{
}
-QString BufferInfo::buffer() const {
+BufferInfo BufferInfo::fakeStatusBuffer(NetworkId networkId) {
+ return BufferInfo(0, networkId, StatusBuffer);
+}
+
+QString BufferInfo::bufferName() const {
if(isChannelName(_bufferName))
return _bufferName;
else
}
QDebug operator<<(QDebug dbg, const BufferInfo &b) {
- dbg.nospace() << "(bufId: " << b.uid() << ", netId: " << b.networkId() << ", groupId: " << b.groupId()
- << ", net: " << b.network() << ", buf: " << b.buffer() << ")";
-
+ dbg.nospace() << "(bufId: " << b.bufferId() << ", netId: " << b.networkId() << ", groupId: " << b.groupId() << ", buf: " << b.bufferName() << ")";
return dbg.space();
}
QDataStream &operator<<(QDataStream &out, const BufferInfo &bufferInfo) {
- out << bufferInfo._id << bufferInfo._netid << bufferInfo._gid << bufferInfo._networkName.toUtf8() << bufferInfo._bufferName.toUtf8();
+ out << bufferInfo._bufferId << bufferInfo._netid << (qint16)bufferInfo._type << bufferInfo._groupId << bufferInfo._bufferName.toUtf8();
return out;
}
QDataStream &operator>>(QDataStream &in, BufferInfo &bufferInfo) {
- QByteArray n, b;
- in >> bufferInfo._id >> bufferInfo._netid >> bufferInfo._gid >> n >> b;
- bufferInfo._networkName = QString::fromUtf8(n);
- bufferInfo._bufferName = QString::fromUtf8(b);
+ QByteArray buffername;
+ qint16 bufferType;
+ in >> bufferInfo._bufferId >> bufferInfo._netid >> bufferType >> bufferInfo._groupId >> buffername;
+ bufferInfo._type = (BufferInfo::Type)bufferType;
+ bufferInfo._bufferName = QString::fromUtf8(buffername);
return in;
}
uint qHash(const BufferInfo &bufferid) {
- return qHash(bufferid._id);
+ return qHash(bufferid._bufferId);
}