X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fuisupport%2Fcontextmenuactionprovider.cpp;h=6cdc9fba76e31a845941c340b8eacea8ada77098;hb=2c8434f74c68194d56f2084f637419123e61d18b;hp=79c9d19b0bd2df1f71e9d8389825d7cf4fd15c5e;hpb=e2188dc438be6f3eb0d9cdf47d28821aefe9835e;p=quassel.git diff --git a/src/uisupport/contextmenuactionprovider.cpp b/src/uisupport/contextmenuactionprovider.cpp index 79c9d19b..6cdc9fba 100644 --- a/src/uisupport/contextmenuactionprovider.cpp +++ b/src/uisupport/contextmenuactionprovider.cpp @@ -159,50 +159,49 @@ ContextMenuActionProvider::~ContextMenuActionProvider() } -void ContextMenuActionProvider::addActions(QMenu *menu, BufferId bufId, QObject *receiver, const char *method) +void ContextMenuActionProvider::addActions(QMenu *menu, BufferId bufId, ActionSlot slot) { if (!bufId.isValid()) return; - addActions(menu, Client::networkModel()->bufferIndex(bufId), receiver, method); + addActions(menu, Client::networkModel()->bufferIndex(bufId), std::move(slot)); } -void ContextMenuActionProvider::addActions(QMenu *menu, const QModelIndex &index, QObject *receiver, const char *method, bool isCustomBufferView) +void ContextMenuActionProvider::addActions(QMenu *menu, const QModelIndex &index, ActionSlot slot, bool isCustomBufferView) { if (!index.isValid()) return; - addActions(menu, QList() << index, nullptr, QString(), receiver, method, isCustomBufferView); + addActions(menu, QList() << index, nullptr, QString(), std::move(slot), isCustomBufferView); } -void ContextMenuActionProvider::addActions(QMenu *menu, MessageFilter *filter, BufferId msgBuffer, QObject *receiver, const char *slot) +void ContextMenuActionProvider::addActions(QMenu *menu, MessageFilter *filter, BufferId msgBuffer, ActionSlot slot) { - addActions(menu, filter, msgBuffer, QString(), receiver, slot); + addActions(menu, filter, msgBuffer, QString(), std::move(slot)); } -void ContextMenuActionProvider::addActions(QMenu *menu, MessageFilter *filter, BufferId msgBuffer, const QString &chanOrNick, QObject *receiver, const char *method) +void ContextMenuActionProvider::addActions(QMenu *menu, MessageFilter *filter, BufferId msgBuffer, const QString &chanOrNick, ActionSlot slot) { if (!filter) return; - addActions(menu, QList() << Client::networkModel()->bufferIndex(msgBuffer), filter, chanOrNick, receiver, method, false); + addActions(menu, QList() << Client::networkModel()->bufferIndex(msgBuffer), filter, chanOrNick, std::move(slot), false); } -void ContextMenuActionProvider::addActions(QMenu *menu, const QList &indexList, QObject *receiver, const char *method, bool isCustomBufferView) +void ContextMenuActionProvider::addActions(QMenu *menu, const QList &indexList, ActionSlot slot, bool isCustomBufferView) { - addActions(menu, indexList, nullptr, QString(), receiver, method, isCustomBufferView); + addActions(menu, indexList, nullptr, QString(), std::move(slot), isCustomBufferView); } // add a list of actions sensible for the current item(s) void ContextMenuActionProvider::addActions(QMenu *menu, - const QList &indexList_, - MessageFilter *filter_, - const QString &contextItem_, - QObject *receiver_, - const char *method_, - bool isCustomBufferView) + const QList &indexList_, + MessageFilter *filter_, + const QString &contextItem_, + ActionSlot actionSlot, + bool isCustomBufferView) { if (!indexList_.count()) return; @@ -210,7 +209,7 @@ void ContextMenuActionProvider::addActions(QMenu *menu, setIndexList(indexList_); setMessageFilter(filter_); setContextItem(contextItem_); - setSlot(receiver_, method_); + setSlot(std::move(actionSlot)); if (!messageFilter()) { // this means we are in a BufferView (or NickView) rather than a ChatView @@ -458,7 +457,7 @@ void ContextMenuActionProvider::addIgnoreMenu(QMenu *menu, const QString &hostma QString ident = userFromMask(hostmask); QString host = hostFromMask(hostmask); QString domain = host; - QRegExp domainRx = QRegExp("(\\.[^.]+\\.\\w+\\D)$"); + QRegExp domainRx = QRegExp(R"((\.[^.]+\.\w+\D)$)"); if (domainRx.indexIn(host) != -1) domain = domainRx.cap(1); // we can't rely on who-data