X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Fnetworkmodelcontroller.cpp;h=c33e030694d8bd92a77e8297cb87a02d1e8a5820;hp=69797bc20fac7ac56c762c5318bb4cd27a883a14;hb=2c8434f74c68194d56f2084f637419123e61d18b;hpb=39328183a6a87c6eb10a9dbbffcd5d65bf154a1f diff --git a/src/uisupport/networkmodelcontroller.cpp b/src/uisupport/networkmodelcontroller.cpp index 69797bc2..c33e0306 100644 --- a/src/uisupport/networkmodelcontroller.cpp +++ b/src/uisupport/networkmodelcontroller.cpp @@ -41,16 +41,9 @@ NetworkModelController::NetworkModelController(QObject *parent) : QObject(parent), - _actionCollection(new ActionCollection(this)), - _messageFilter(nullptr), - _receiver(nullptr) -{ - connect(_actionCollection, SIGNAL(actionTriggered(QAction *)), SLOT(actionTriggered(QAction *))); -} - - -NetworkModelController::~NetworkModelController() + _actionCollection(new ActionCollection(this)) { + connect(_actionCollection, &ActionCollection::actionTriggered, this, &NetworkModelController::actionTriggered); } @@ -103,10 +96,9 @@ void NetworkModelController::setContextItem(const QString &contextItem) } -void NetworkModelController::setSlot(QObject *receiver, const char *method) +void NetworkModelController::setSlot(ActionSlot slot) { - _receiver = receiver; - _method = method; + _actionSlot = std::move(slot); } @@ -128,7 +120,7 @@ bool NetworkModelController::checkRequirements(const QModelIndex &index, ItemAct QString NetworkModelController::nickName(const QModelIndex &index) const { - IrcUser *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); + auto *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); if (ircUser) return ircUser->nick(); @@ -146,11 +138,11 @@ BufferId NetworkModelController::findQueryBuffer(const QModelIndex &index, const { NetworkId networkId = index.data(NetworkModel::NetworkIdRole).value(); if (!networkId.isValid()) - return BufferId(); + return {}; QString nick = predefinedNick.isEmpty() ? nickName(index) : predefinedNick; if (nick.isEmpty()) - return BufferId(); + return {}; return findQueryBuffer(networkId, nick); } @@ -204,9 +196,8 @@ void NetworkModelController::removeBuffers(const QModelIndexList &indexList) void NetworkModelController::handleExternalAction(ActionType type, QAction *action) { Q_UNUSED(type); - if (receiver() && method()) { - if (!QMetaObject::invokeMethod(receiver(), method(), Q_ARG(QAction *, action))) - qWarning() << "NetworkModelActionController::handleExternalAction(): Could not invoke slot" << receiver() << method(); + if (_actionSlot) { + _actionSlot(action); } } @@ -494,7 +485,7 @@ void NetworkModelController::handleNickAction(ActionType type, QAction *action) break; case NickIgnoreUser: { - IrcUser *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); + auto *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); if (!ircUser) break; Client::ignoreListManager()->requestAddIgnoreListItem(IgnoreListManager::SenderIgnore, @@ -506,7 +497,7 @@ void NetworkModelController::handleNickAction(ActionType type, QAction *action) } case NickIgnoreHost: { - IrcUser *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); + auto *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); if (!ircUser) break; Client::ignoreListManager()->requestAddIgnoreListItem(IgnoreListManager::SenderIgnore, @@ -518,7 +509,7 @@ void NetworkModelController::handleNickAction(ActionType type, QAction *action) } case NickIgnoreDomain: { - IrcUser *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); + auto *ircUser = qobject_cast(index.data(NetworkModel::IrcUserRole).value()); if (!ircUser) break; Client::ignoreListManager()->requestAddIgnoreListItem(IgnoreListManager::SenderIgnore, @@ -555,7 +546,7 @@ NetworkModelController::JoinDlg::JoinDlg(const QModelIndex &index, QWidget *pare setWindowIcon(icon::get("irc-join-channel")); setWindowTitle(tr("Join Channel")); - QGridLayout *layout = new QGridLayout(this); + auto *layout = new QGridLayout(this); layout->addWidget(new QLabel(tr("Network:")), 0, 0); layout->addWidget(networks = new QComboBox, 0, 1); layout->addWidget(new QLabel(tr("Channel:")), 1, 0); @@ -570,9 +561,9 @@ NetworkModelController::JoinDlg::JoinDlg(const QModelIndex &index, QWidget *pare networks->setInsertPolicy(QComboBox::InsertAlphabetically); password->setEchoMode(QLineEdit::Password); - connect(buttonBox, SIGNAL(accepted()), SLOT(accept())); - connect(buttonBox, SIGNAL(rejected()), SLOT(reject())); - connect(channel, SIGNAL(textChanged(QString)), SLOT(on_channel_textChanged(QString))); + connect(buttonBox, &QDialogButtonBox::accepted, this, &QDialog::accept); + connect(buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject); + connect(channel, &QLineEdit::textChanged, this, &JoinDlg::on_channel_textChanged); foreach(NetworkId id, Client::networkIds()) { const Network *net = Client::network(id);