X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fnetworkmodel.cpp;h=12410201204f71d95be4e08d737b7348cbae222e;hp=821496624cf27511e33b005f7c2aff01723e8003;hb=2c8434f74c68194d56f2084f637419123e61d18b;hpb=88ce73ff525535c00cc979fff357fbe4cb8cdc2b diff --git a/src/client/networkmodel.cpp b/src/client/networkmodel.cpp index 82149662..12410201 100644 --- a/src/client/networkmodel.cpp +++ b/src/client/networkmodel.cpp @@ -22,9 +22,7 @@ #include #include -#if QT_VERSION < 0x050000 -#include // for Qt::escape() -#endif +#include #include "buffermodel.h" #include "buffersettings.h" @@ -40,16 +38,23 @@ * Network Items *****************************************/ NetworkItem::NetworkItem(const NetworkId &netid, AbstractTreeItem *parent) - : PropertyMapItem(QList() << "networkName" << "currentServer" << "nickCount", parent), + : PropertyMapItem(parent), _networkId(netid), - _statusBufferItem(0) + _statusBufferItem(nullptr) { // DO NOT EMIT dataChanged() DIRECTLY IN NetworkItem // use networkDataChanged() instead. Otherwise you will end up in a infinite loop // as we "sync" the dataChanged() signals of NetworkItem and StatusBufferItem setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); - connect(this, SIGNAL(networkDataChanged(int)), this, SIGNAL(dataChanged(int))); - connect(this, SIGNAL(beginRemoveChilds(int, int)), this, SLOT(onBeginRemoveChilds(int, int))); + connect(this, &NetworkItem::networkDataChanged, this, &NetworkItem::dataChanged); + connect(this, &NetworkItem::beginRemoveChilds, this, &NetworkItem::onBeginRemoveChilds); +} + + +QStringList NetworkItem::propertyOrder() const +{ + static QStringList order{"networkName", "currentServer", "nickCount"}; + return order; } @@ -79,11 +84,7 @@ QString NetworkItem::escapeHTML(const QString &string, bool useNonbreakingSpaces { // QString.replace() doesn't guarantee the source string will remain constant. // Use a local variable to avoid compiler errors. -#if QT_VERSION < 0x050000 - QString formattedString = Qt::escape(string); -#else QString formattedString = string.toHtmlEscaped(); -#endif return (useNonbreakingSpaces ? formattedString.replace(" ", " ") : formattedString); } @@ -91,7 +92,7 @@ QString NetworkItem::escapeHTML(const QString &string, bool useNonbreakingSpaces // FIXME shouldn't we check the bufferItemCache here? BufferItem *NetworkItem::findBufferItem(BufferId bufferId) { - BufferItem *bufferItem = 0; + BufferItem *bufferItem = nullptr; for (int i = 0; i < childCount(); i++) { bufferItem = qobject_cast(child(i)); @@ -100,7 +101,7 @@ BufferItem *NetworkItem::findBufferItem(BufferId bufferId) if (bufferItem->bufferId() == bufferId) return bufferItem; } - return 0; + return nullptr; } @@ -114,9 +115,9 @@ BufferItem *NetworkItem::bufferItem(const BufferInfo &bufferInfo) case BufferInfo::StatusBuffer: _statusBufferItem = new StatusBufferItem(bufferInfo, this); bufferItem = _statusBufferItem; - disconnect(this, SIGNAL(networkDataChanged(int)), this, SIGNAL(dataChanged(int))); - connect(this, SIGNAL(networkDataChanged(int)), bufferItem, SIGNAL(dataChanged(int))); - connect(bufferItem, SIGNAL(dataChanged(int)), this, SIGNAL(dataChanged(int))); + disconnect(this, &NetworkItem::networkDataChanged, this, &NetworkItem::dataChanged); + connect(this, &NetworkItem::networkDataChanged, bufferItem, &BufferItem::dataChanged); + connect(bufferItem, &BufferItem::dataChanged, this, &NetworkItem::dataChanged); break; case BufferInfo::ChannelBuffer: bufferItem = new ChannelBufferItem(bufferInfo, this); @@ -134,7 +135,7 @@ BufferItem *NetworkItem::bufferItem(const BufferInfo &bufferInfo) switch (bufferInfo.type()) { case BufferInfo::ChannelBuffer: { - ChannelBufferItem *channelBufferItem = static_cast(bufferItem); + auto *channelBufferItem = static_cast(bufferItem); if (_network) { IrcChannel *ircChannel = _network->ircChannel(bufferInfo.bufferName()); if (ircChannel) @@ -165,18 +166,18 @@ void NetworkItem::attachNetwork(Network *network) _network = network; - connect(network, SIGNAL(networkNameSet(QString)), - this, SLOT(setNetworkName(QString))); - connect(network, SIGNAL(currentServerSet(QString)), - this, SLOT(setCurrentServer(QString))); - connect(network, SIGNAL(ircChannelAdded(IrcChannel *)), - this, SLOT(attachIrcChannel(IrcChannel *))); - connect(network, SIGNAL(ircUserAdded(IrcUser *)), - this, SLOT(attachIrcUser(IrcUser *))); - connect(network, SIGNAL(connectedSet(bool)), - this, SIGNAL(networkDataChanged())); - connect(network, SIGNAL(destroyed()), - this, SLOT(onNetworkDestroyed())); + connect(network, &Network::networkNameSet, + this, &NetworkItem::setNetworkName); + connect(network, &Network::currentServerSet, + this, &NetworkItem::setCurrentServer); + connect(network, &Network::ircChannelAdded, + this, &NetworkItem::attachIrcChannel); + connect(network, &Network::ircUserAdded, + this, &NetworkItem::attachIrcUser); + connect(network, &Network::connectedSet, + this, [this]() { emit networkDataChanged(); }); + connect(network, &QObject::destroyed, + this, &NetworkItem::onNetworkDestroyed); emit networkDataChanged(); } @@ -200,7 +201,7 @@ void NetworkItem::attachIrcChannel(IrcChannel *ircChannel) void NetworkItem::attachIrcUser(IrcUser *ircUser) { - QueryBufferItem *queryItem = 0; + QueryBufferItem *queryItem = nullptr; for (int i = 0; i < childCount(); i++) { queryItem = qobject_cast(child(i)); if (!queryItem) @@ -262,9 +263,9 @@ QString NetworkItem::toolTip(int column) const void NetworkItem::onBeginRemoveChilds(int start, int end) { for (int i = start; i <= end; i++) { - StatusBufferItem *statusBufferItem = qobject_cast(child(i)); + auto *statusBufferItem = qobject_cast(child(i)); if (statusBufferItem) { - _statusBufferItem = 0; + _statusBufferItem = nullptr; break; } } @@ -273,7 +274,7 @@ void NetworkItem::onBeginRemoveChilds(int start, int end) void NetworkItem::onNetworkDestroyed() { - _network = 0; + _network = nullptr; emit networkDataChanged(); removeAllChilds(); } @@ -282,15 +283,22 @@ void NetworkItem::onNetworkDestroyed() /***************************************** * Fancy Buffer Items *****************************************/ -BufferItem::BufferItem(const BufferInfo &bufferInfo, AbstractTreeItem *parent) - : PropertyMapItem(QStringList() << "bufferName" << "topic" << "nickCount", parent), - _bufferInfo(bufferInfo), +BufferItem::BufferItem(BufferInfo bufferInfo, AbstractTreeItem *parent) + : PropertyMapItem(parent), + _bufferInfo(std::move(bufferInfo)), _activity(BufferInfo::NoActivity) { setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsDragEnabled); } +QStringList BufferItem::propertyOrder() const +{ + static QStringList order{"bufferName", "topic", "nickCount"}; + return order; +} + + void BufferItem::setActivityLevel(BufferInfo::ActivityLevel level) { if (_activity != level) { @@ -478,7 +486,7 @@ StatusBufferItem::StatusBufferItem(const BufferInfo &bufferInfo, NetworkItem *pa QString StatusBufferItem::toolTip(int column) const { - NetworkItem *networkItem = qobject_cast(parent()); + auto *networkItem = qobject_cast(parent()); if (networkItem) return networkItem->toolTip(column); else @@ -491,7 +499,7 @@ QString StatusBufferItem::toolTip(int column) const *****************************************/ QueryBufferItem::QueryBufferItem(const BufferInfo &bufferInfo, NetworkItem *parent) : BufferItem(bufferInfo, parent), - _ircUser(0) + _ircUser(nullptr) { setFlags(flags() | Qt::ItemIsDropEnabled | Qt::ItemIsEditable); @@ -641,8 +649,8 @@ QString QueryBufferItem::toolTip(int column) const NetworkItem::escapeHTML(tr("Identified for this nick")), !accountAdded); // Don't add the account row again if information's already added via account-notify - // Mark the row as added - accountAdded = true; + // Not used further down... + // accountAdded = true; } else { addRow(NetworkItem::escapeHTML(tr("Service Reply"), true), NetworkItem::escapeHTML(_ircUser->whoisServiceReply()), @@ -686,14 +694,14 @@ void QueryBufferItem::setIrcUser(IrcUser *ircUser) return; if (_ircUser) { - disconnect(_ircUser, 0, this, 0); + disconnect(_ircUser, nullptr, this, nullptr); } if (ircUser) { - connect(ircUser, SIGNAL(destroyed(QObject*)), SLOT(removeIrcUser())); - connect(ircUser, SIGNAL(quited()), this, SLOT(removeIrcUser())); - connect(ircUser, SIGNAL(awaySet(bool)), this, SIGNAL(dataChanged())); - connect(ircUser, SIGNAL(encryptedSet(bool)), this, SLOT(setEncrypted(bool))); + connect(ircUser, &IrcUser::destroyed, this, &QueryBufferItem::removeIrcUser); + connect(ircUser, &IrcUser::quited, this, &QueryBufferItem::removeIrcUser); + connect(ircUser, &IrcUser::awaySet, this, [this]() { emit dataChanged(); }); + connect(ircUser, &IrcUser::encryptedSet, this, &BufferItem::setEncrypted); } _ircUser = ircUser; @@ -709,10 +717,10 @@ void QueryBufferItem::removeIrcUser() // SIGNAL destroyed(QObject*) to SLOT removeIrcUser(). // This fixes removing an active IrcUser if the user had quit then rejoined in a nonstandard // manner (e.g. updateNickFromHost calling newIrcUser, triggered by an away-notify message). - disconnect(_ircUser, 0, this, 0); + disconnect(_ircUser, nullptr, this, nullptr); // Clear IrcUser (only set to 0 if not already 0) - _ircUser = 0; + _ircUser = nullptr; // Only emit dataChanged() if data actually changed. This might serve as a small // optimization, but it can be moved outside the if statement if other behavior depends on @@ -727,7 +735,7 @@ void QueryBufferItem::removeIrcUser() *****************************************/ ChannelBufferItem::ChannelBufferItem(const BufferInfo &bufferInfo, AbstractTreeItem *parent) : BufferItem(bufferInfo, parent), - _ircChannel(0) + _ircChannel(nullptr) { setFlags(flags() | Qt::ItemIsDropEnabled); } @@ -796,29 +804,20 @@ void ChannelBufferItem::attachIrcChannel(IrcChannel *ircChannel) { if (_ircChannel) { qWarning() << Q_FUNC_INFO << "IrcChannel already set; cleanup failed!?"; - disconnect(_ircChannel, 0, this, 0); + disconnect(_ircChannel, nullptr, this, nullptr); } _ircChannel = ircChannel; - connect(ircChannel, SIGNAL(destroyed(QObject*)), - this, SLOT(ircChannelDestroyed())); - connect(ircChannel, SIGNAL(topicSet(QString)), - this, SLOT(setTopic(QString))); - connect(ircChannel, SIGNAL(encryptedSet(bool)), - this, SLOT(setEncrypted(bool))); - connect(ircChannel, SIGNAL(ircUsersJoined(QList )), - this, SLOT(join(QList ))); - connect(ircChannel, SIGNAL(ircUserParted(IrcUser *)), - this, SLOT(part(IrcUser *))); - connect(ircChannel, SIGNAL(parted()), - this, SLOT(ircChannelParted())); - connect(ircChannel, SIGNAL(ircUserModesSet(IrcUser *, QString)), - this, SLOT(userModeChanged(IrcUser *))); - connect(ircChannel, SIGNAL(ircUserModeAdded(IrcUser *, QString)), - this, SLOT(userModeChanged(IrcUser *))); - connect(ircChannel, SIGNAL(ircUserModeRemoved(IrcUser *, QString)), - this, SLOT(userModeChanged(IrcUser *))); + connect(ircChannel, &QObject::destroyed, this, &ChannelBufferItem::ircChannelDestroyed); + connect(ircChannel, &IrcChannel::topicSet, this, &ChannelBufferItem::setTopic); + connect(ircChannel, &IrcChannel::encryptedSet, this, &ChannelBufferItem::setEncrypted); + connect(ircChannel, &IrcChannel::ircUsersJoined, this, &ChannelBufferItem::join); + connect(ircChannel, &IrcChannel::ircUserParted, this, &ChannelBufferItem::part); + connect(ircChannel, &IrcChannel::parted, this, &ChannelBufferItem::ircChannelParted); + connect(ircChannel, &IrcChannel::ircUserModesSet, this, &ChannelBufferItem::userModeChanged); + connect(ircChannel, &IrcChannel::ircUserModeAdded, this, &ChannelBufferItem::userModeChanged); + connect(ircChannel, &IrcChannel::ircUserModeRemoved, this, &ChannelBufferItem::userModeChanged); if (!ircChannel->ircUsers().isEmpty()) join(ircChannel->ircUsers()); @@ -840,8 +839,8 @@ QString ChannelBufferItem::nickChannelModes(const QString &nick) const void ChannelBufferItem::ircChannelParted() { Q_CHECK_PTR(_ircChannel); - disconnect(_ircChannel, 0, this, 0); - _ircChannel = 0; + disconnect(_ircChannel, nullptr, this, nullptr); + _ircChannel = nullptr; emit dataChanged(); removeAllChilds(); } @@ -850,7 +849,7 @@ void ChannelBufferItem::ircChannelParted() void ChannelBufferItem::ircChannelDestroyed() { if (_ircChannel) { - _ircChannel = 0; + _ircChannel = nullptr; emit dataChanged(); removeAllChilds(); } @@ -866,7 +865,7 @@ void ChannelBufferItem::join(const QList &ircUsers) UserCategoryItem *ChannelBufferItem::findCategoryItem(int categoryId) { - UserCategoryItem *categoryItem = 0; + UserCategoryItem *categoryItem = nullptr; for (int i = 0; i < childCount(); i++) { categoryItem = qobject_cast(child(i)); @@ -875,7 +874,7 @@ UserCategoryItem *ChannelBufferItem::findCategoryItem(int categoryId) if (categoryItem->categoryId() == categoryId) return categoryItem; } - return 0; + return nullptr; } @@ -892,7 +891,7 @@ void ChannelBufferItem::addUsersToCategory(const QList &ircUsers) QHash > categories; int categoryId = -1; - UserCategoryItem *categoryItem = 0; + UserCategoryItem *categoryItem = nullptr; foreach(IrcUser *ircUser, ircUsers) { categoryId = UserCategoryItem::categoryFromModes(_ircChannel->userModes(ircUser)); @@ -920,7 +919,7 @@ void ChannelBufferItem::part(IrcUser *ircUser) return; } - disconnect(ircUser, 0, this, 0); + disconnect(ircUser, nullptr, this, nullptr); removeUserFromCategory(ircUser); emit dataChanged(2); } @@ -935,7 +934,7 @@ void ChannelBufferItem::removeUserFromCategory(IrcUser *ircUser) return; } - UserCategoryItem *categoryItem = 0; + UserCategoryItem *categoryItem = nullptr; for (int i = 0; i < childCount(); i++) { categoryItem = qobject_cast(child(i)); if (categoryItem->removeUser(ircUser)) { @@ -965,9 +964,9 @@ void ChannelBufferItem::userModeChanged(IrcUser *ircUser) } // find the item that needs reparenting - IrcUserItem *ircUserItem = 0; + IrcUserItem *ircUserItem = nullptr; for (int i = 0; i < childCount(); i++) { - UserCategoryItem *oldCategoryItem = qobject_cast(child(i)); + auto *oldCategoryItem = qobject_cast(child(i)); Q_ASSERT(oldCategoryItem); IrcUserItem *userItem = oldCategoryItem->findIrcUser(ircUser); if (userItem) { @@ -992,7 +991,7 @@ void ChannelBufferItem::userModeChanged(IrcUser *ircUser) const QList UserCategoryItem::categories = QList() << 'q' << 'a' << 'o' << 'h' << 'v'; UserCategoryItem::UserCategoryItem(int category, AbstractTreeItem *parent) - : PropertyMapItem(QStringList() << "categoryName", parent), + : PropertyMapItem(parent), _category(category) { setFlags(Qt::ItemIsEnabled); @@ -1001,30 +1000,37 @@ UserCategoryItem::UserCategoryItem(int category, AbstractTreeItem *parent) } +QStringList UserCategoryItem::propertyOrder() const +{ + static QStringList order{"categoryName"}; + return order; +} + + // caching this makes no sense, since we display the user number dynamically QString UserCategoryItem::categoryName() const { int n = childCount(); switch (_category) { case 0: - return tr("%n Owner(s)", 0, n); + return tr("%n Owner(s)", "", n); case 1: - return tr("%n Admin(s)", 0, n); + return tr("%n Admin(s)", "", n); case 2: - return tr("%n Operator(s)", 0, n); + return tr("%n Operator(s)", "", n); case 3: - return tr("%n Half-Op(s)", 0, n); + return tr("%n Half-Op(s)", "", n); case 4: - return tr("%n Voiced", 0, n); + return tr("%n Voiced", "", n); default: - return tr("%n User(s)", 0, n); + return tr("%n User(s)", "", n); } } IrcUserItem *UserCategoryItem::findIrcUser(IrcUser *ircUser) { - IrcUserItem *userItem = 0; + IrcUserItem *userItem = nullptr; for (int i = 0; i < childCount(); i++) { userItem = qobject_cast(child(i)); @@ -1033,7 +1039,7 @@ IrcUserItem *UserCategoryItem::findIrcUser(IrcUser *ircUser) if (userItem->ircUser() == ircUser) return userItem; } - return 0; + return nullptr; } @@ -1050,7 +1056,7 @@ void UserCategoryItem::addUsers(const QList &ircUsers) bool UserCategoryItem::removeUser(IrcUser *ircUser) { IrcUserItem *userItem = findIrcUser(ircUser); - bool success = (bool)userItem; + auto success = (bool)userItem; if (success) { removeChild(userItem); emit dataChanged(0); @@ -1094,13 +1100,20 @@ QVariant UserCategoryItem::data(int column, int role) const * Irc User Items *****************************************/ IrcUserItem::IrcUserItem(IrcUser *ircUser, AbstractTreeItem *parent) - : PropertyMapItem(QStringList() << "nickName", parent), + : PropertyMapItem(parent), _ircUser(ircUser) { setObjectName(ircUser->nick()); - connect(ircUser, SIGNAL(quited()), this, SLOT(ircUserQuited())); - connect(ircUser, SIGNAL(nickSet(QString)), this, SIGNAL(dataChanged())); - connect(ircUser, SIGNAL(awaySet(bool)), this, SIGNAL(dataChanged())); + connect(ircUser, &IrcUser::quited, this, &IrcUserItem::ircUserQuited); + connect(ircUser, &IrcUser::nickSet, this, [this]() { emit dataChanged(); }); + connect(ircUser, &IrcUser::awaySet, this, [this]() { emit dataChanged(); }); +} + + +QStringList IrcUserItem::propertyOrder() const +{ + static QStringList order{"nickName"}; + return order; } @@ -1208,8 +1221,8 @@ QString IrcUserItem::toolTip(int column) const NetworkItem::escapeHTML(tr("Identified for this nick")), !accountAdded); // Don't add the account row again if information's already added via account-notify - // Mark the row as added - accountAdded = true; + // Not used further down... + // accountAdded = true; } else { addRow(NetworkItem::escapeHTML(tr("Service Reply"), true), NetworkItem::escapeHTML(_ircUser->whoisServiceReply()), @@ -1249,11 +1262,11 @@ QString IrcUserItem::channelModes() const { // IrcUserItems are parented to UserCategoryItem, which are parented to ChannelBufferItem. // We want the channel buffer item in order to get the channel-specific user modes. - UserCategoryItem *category = qobject_cast(parent()); + auto *category = qobject_cast(parent()); if (!category) return QString(); - ChannelBufferItem *channel = qobject_cast(category->parent()); + auto *channel = qobject_cast(category->parent()); if (!channel) return QString(); @@ -1267,15 +1280,13 @@ QString IrcUserItem::channelModes() const NetworkModel::NetworkModel(QObject *parent) : TreeModel(NetworkModel::defaultHeader(), parent) { - connect(this, SIGNAL(rowsInserted(const QModelIndex &, int, int)), - this, SLOT(checkForNewBuffers(const QModelIndex &, int, int))); - connect(this, SIGNAL(rowsAboutToBeRemoved(const QModelIndex &, int, int)), - this, SLOT(checkForRemovedBuffers(const QModelIndex &, int, int))); + connect(this, &NetworkModel::rowsInserted, this, &NetworkModel::checkForNewBuffers); + connect(this, &NetworkModel::rowsAboutToBeRemoved, this, &NetworkModel::checkForRemovedBuffers); BufferSettings defaultSettings; - defaultSettings.notify("UserNoticesTarget", this, SLOT(messageRedirectionSettingsChanged())); - defaultSettings.notify("ServerNoticesTarget", this, SLOT(messageRedirectionSettingsChanged())); - defaultSettings.notify("ErrorMsgsTarget", this, SLOT(messageRedirectionSettingsChanged())); + defaultSettings.notify("UserNoticesTarget", this, &NetworkModel::messageRedirectionSettingsChanged); + defaultSettings.notify("ServerNoticesTarget", this, &NetworkModel::messageRedirectionSettingsChanged); + defaultSettings.notify("ErrorMsgsTarget", this, &NetworkModel::messageRedirectionSettingsChanged); messageRedirectionSettingsChanged(); } @@ -1296,7 +1307,7 @@ bool NetworkModel::isBufferIndex(const QModelIndex &index) const int NetworkModel::networkRow(NetworkId networkId) const { - NetworkItem *netItem = 0; + NetworkItem *netItem = nullptr; for (int i = 0; i < rootItem->childCount(); i++) { netItem = qobject_cast(rootItem->child(i)); if (!netItem) @@ -1312,7 +1323,7 @@ QModelIndex NetworkModel::networkIndex(NetworkId networkId) { int netRow = networkRow(networkId); if (netRow == -1) - return QModelIndex(); + return {}; else return indexByItem(qobject_cast(rootItem->child(netRow))); } @@ -1322,7 +1333,7 @@ NetworkItem *NetworkModel::findNetworkItem(NetworkId networkId) const { int netRow = networkRow(networkId); if (netRow == -1) - return 0; + return nullptr; else return qobject_cast(rootItem->child(netRow)); } @@ -1332,7 +1343,7 @@ NetworkItem *NetworkModel::networkItem(NetworkId networkId) { NetworkItem *netItem = findNetworkItem(networkId); - if (netItem == 0) { + if (netItem == nullptr) { netItem = new NetworkItem(networkId, rootItem); rootItem->newChild(netItem); } @@ -1352,7 +1363,7 @@ void NetworkModel::networkRemoved(const NetworkId &networkId) QModelIndex NetworkModel::bufferIndex(BufferId bufferId) { if (!_bufferItemCache.contains(bufferId)) - return QModelIndex(); + return {}; return indexByItem(_bufferItemCache[bufferId]); } @@ -1363,7 +1374,7 @@ BufferItem *NetworkModel::findBufferItem(BufferId bufferId) const if (_bufferItemCache.contains(bufferId)) return _bufferItemCache[bufferId]; else - return 0; + return nullptr; } @@ -1417,7 +1428,7 @@ QList > NetworkModel::mimeDataToBufferList(const QMim QMimeData *NetworkModel::mimeData(const QModelIndexList &indexes) const { - QMimeData *mimeData = new QMimeData(); + auto *mimeData = new QMimeData(); QStringList bufferlist; QString netid, uid, bufferid; @@ -1463,7 +1474,7 @@ void NetworkModel::removeBuffer(BufferId bufferId) MsgId NetworkModel::lastSeenMsgId(BufferId bufferId) const { if (!_bufferItemCache.contains(bufferId)) - return MsgId(); + return {}; return _bufferItemCache[bufferId]->lastSeenMsgId(); } @@ -1472,7 +1483,7 @@ MsgId NetworkModel::lastSeenMsgId(BufferId bufferId) const MsgId NetworkModel::markerLineMsgId(BufferId bufferId) const { if (!_bufferItemCache.contains(bufferId)) - return MsgId(); + return {}; return _bufferItemCache[bufferId]->markerLineMsgId(); } @@ -1485,7 +1496,7 @@ MsgId NetworkModel::lastSeenMsgId(const BufferId &bufferId) if (!bufferItem) { qDebug() << "NetworkModel::lastSeenMsgId(): buffer is unknown:" << bufferId; Client::purgeKnownBufferIds(); - return MsgId(); + return {}; } return bufferItem->lastSeenMsgId(); } @@ -1542,7 +1553,7 @@ void NetworkModel::updateBufferActivity(Message &msg) case Message::Action: if (bufferType(msg.bufferId()) == BufferInfo::ChannelBuffer) { const Network *net = Client::network(msg.bufferInfo().networkId()); - IrcUser *user = net ? net->ircUser(nickFromMask(msg.sender())) : 0; + IrcUser *user = net ? net->ircUser(nickFromMask(msg.sender())) : nullptr; if (user) user->setLastChannelActivity(msg.bufferId(), msg.timestamp()); } @@ -1606,7 +1617,7 @@ const Network *NetworkModel::networkByIndex(const QModelIndex &index) const { QVariant netVariant = index.data(NetworkIdRole); if (!netVariant.isValid()) - return 0; + return nullptr; NetworkId networkId = netVariant.value(); return Client::network(networkId); @@ -1666,13 +1677,13 @@ BufferInfo NetworkModel::bufferInfo(BufferId bufferId) const NetworkId NetworkModel::networkId(BufferId bufferId) const { if (!_bufferItemCache.contains(bufferId)) - return NetworkId(); + return {}; - NetworkItem *netItem = qobject_cast(_bufferItemCache[bufferId]->parent()); + auto *netItem = qobject_cast(_bufferItemCache[bufferId]->parent()); if (netItem) return netItem->networkId(); else - return NetworkId(); + return {}; } @@ -1681,7 +1692,7 @@ QString NetworkModel::networkName(BufferId bufferId) const if (!_bufferItemCache.contains(bufferId)) return QString(); - NetworkItem *netItem = qobject_cast(_bufferItemCache[bufferId]->parent()); + auto *netItem = qobject_cast(_bufferItemCache[bufferId]->parent()); if (netItem) return netItem->networkName(); else @@ -1693,14 +1704,14 @@ BufferId NetworkModel::bufferId(NetworkId networkId, const QString &bufferName, { const NetworkItem *netItem = findNetworkItem(networkId); if (!netItem) - return BufferId(); + return {}; for (int i = 0; i < netItem->childCount(); i++) { - BufferItem *bufferItem = qobject_cast(netItem->child(i)); + auto *bufferItem = qobject_cast(netItem->child(i)); if (bufferItem && !bufferItem->bufferName().compare(bufferName, cs)) return bufferItem->bufferId(); } - return BufferId(); + return {}; }