Add right click menu for status filters

This will allow users to perform action on all torrents with a single click instead of having to select all with ctrl+A or other cumbersome ways. Basically it copies the function found in tracker/category filters.

Closes #13398.
PR #16547.
This commit is contained in:
An0n 2022-03-01 11:18:48 +06:00 committed by GitHub
parent c2af5c6a3f
commit 7ea827f8d3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -286,7 +286,20 @@ void StatusFilterWidget::updateTorrentNumbers()
item(TorrentFilter::Errored)->setData(Qt::DisplayRole, tr("Errored (%1)").arg(nbErrored)); item(TorrentFilter::Errored)->setData(Qt::DisplayRole, tr("Errored (%1)").arg(nbErrored));
} }
void StatusFilterWidget::showMenu() {} void StatusFilterWidget::showMenu()
{
QMenu *menu = new QMenu(this);
menu->setAttribute(Qt::WA_DeleteOnClose);
menu->addAction(UIThemeManager::instance()->getIcon("media-playback-start"), tr("Resume torrents")
, transferList, &TransferListWidget::startVisibleTorrents);
menu->addAction(UIThemeManager::instance()->getIcon("media-playback-pause"), tr("Pause torrents")
, transferList, &TransferListWidget::pauseVisibleTorrents);
menu->addAction(UIThemeManager::instance()->getIcon("edit-delete"), tr("Delete torrents")
, transferList, &TransferListWidget::deleteVisibleTorrents);
menu->popup(QCursor::pos());
}
void StatusFilterWidget::applyFilter(int row) void StatusFilterWidget::applyFilter(int row)
{ {