X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fnetworkmodel.cpp;h=f40b7268670031ef405d479efe9051ff4e4a8ae4;hp=61b269ff63ecd69e5c3f75137852532575224b5e;hb=e2e5327ccade6baf433598b1b25dfe99cb360028;hpb=1177f164f518b8f47b64f6736d176a995d5c17ed diff --git a/src/client/networkmodel.cpp b/src/client/networkmodel.cpp index 61b269ff..f40b7268 100644 --- a/src/client/networkmodel.cpp +++ b/src/client/networkmodel.cpp @@ -60,7 +60,7 @@ const BufferInfo &BufferItem::bufferInfo() const { } quint64 BufferItem::id() const { - return bufferInfo().bufferId().toInt(); + return qHash(bufferInfo().bufferId()); } bool BufferItem::isStatusBuffer() const { @@ -308,7 +308,7 @@ QVariant NetworkItem::data(int column, int role) const { } quint64 NetworkItem::id() const { - return _networkId.toInt(); + return qHash(_networkId); } void NetworkItem::setActive(bool connected) { @@ -470,7 +470,17 @@ IrcUserItem::IrcUserItem(IrcUser *ircUser, AbstractTreeItem *parent) } QString IrcUserItem::nickName() const { - return _ircUser->nick(); + if(_ircUser) + return _ircUser->nick(); + else + return QString(); +} + +bool IrcUserItem::isActive() const { + if(_ircUser) + return !_ircUser->isAway(); + else + return false; } IrcUser *IrcUserItem::ircUser() { @@ -478,13 +488,13 @@ IrcUser *IrcUserItem::ircUser() { } quint64 IrcUserItem::id() const { - return (quint64)_ircUser; + return qHash((IrcUser *)_ircUser); } QVariant IrcUserItem::data(int column, int role) const { switch(role) { case NetworkModel::ItemActiveRole: - return !_ircUser->isAway(); + return isActive(); case NetworkModel::ItemTypeRole: return NetworkModel::IrcUserItemType; case NetworkModel::BufferIdRole: