diff --git a/src/gui/transferlistwidget.cpp b/src/gui/transferlistwidget.cpp index 4fd03ee6a..a39b7d5bb 100644 --- a/src/gui/transferlistwidget.cpp +++ b/src/gui/transferlistwidget.cpp @@ -424,6 +424,19 @@ void TransferListWidget::copySelectedMagnetURIs() const qApp->clipboard()->setText(magnet_uris.join("\n")); } +// create list of captions from tasklist. +void TransferListWidget::copySelectedCaptions() const +{ + QStringList captions; + const QStringList hashes = getSelectedTorrentsHashes(); + foreach (const QString &hash, hashes) { + const QTorrentHandle h = BTSession->getTorrentHandle(hash); + if (h.is_valid()) + captions << h.name(); + } + qApp->clipboard()->setText(captions.join("\n")); +} + void TransferListWidget::hidePriorityColumn(bool hide) { qDebug("hidePriorityColumn(%d)", hide); @@ -741,6 +754,10 @@ void TransferListWidget::displayListMenu(const QPoint&) connect(&actionForce_recheck, SIGNAL(triggered()), this, SLOT(recheckSelectedTorrents())); QAction actionCopy_magnet_link(QIcon(":/icons/magnet.png"), tr("Copy magnet link"), 0); connect(&actionCopy_magnet_link, SIGNAL(triggered()), this, SLOT(copySelectedMagnetURIs())); + + QAction actionCopy_caption_list(tr("Copy name"), 0); + connect(&actionCopy_caption_list, SIGNAL(triggered()), this, SLOT(copySelectedCaptions())); + QAction actionSuper_seeding_mode(tr("Super seeding mode"), 0); actionSuper_seeding_mode.setCheckable(true); connect(&actionSuper_seeding_mode, SIGNAL(triggered()), this, SLOT(toggleSelectedTorrentsSuperSeeding())); @@ -874,6 +891,7 @@ void TransferListWidget::displayListMenu(const QPoint&) } listMenu.addSeparator(); listMenu.addAction(&actionCopy_magnet_link); + listMenu.addAction(&actionCopy_caption_list); // Call menu QAction *act = 0; act = listMenu.exec(QCursor::pos()); diff --git a/src/gui/transferlistwidget.h b/src/gui/transferlistwidget.h index 5ce5793bc..4988d812c 100644 --- a/src/gui/transferlistwidget.h +++ b/src/gui/transferlistwidget.h @@ -71,6 +71,7 @@ public slots: void topPrioSelectedTorrents(); void bottomPrioSelectedTorrents(); void copySelectedMagnetURIs() const; + void copySelectedCaptions() const; void openSelectedTorrentsFolder() const; void recheckSelectedTorrents(); void setDlLimitSelectedTorrents();