From c8e8306e0a98e799335fa7796ac2aaa8b148e631 Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Mon, 17 Aug 2009 10:22:41 +0000 Subject: [PATCH] - Added "Copy magnet link" entry to right click menu now that we support magnet URIs --- src/FinishedTorrents.cpp | 4 + src/GUI.cpp | 24 +++++ src/GUI.h | 1 + src/Icons/magnet.png | Bin 0 -> 7199 bytes src/download.ui | 150 +++++++++++++++-------------- src/downloadingTorrents.cpp | 3 + src/icons.qrc | 187 ++++++++++++++++++------------------ src/lang.qrc | 44 ++++----- src/search.qrc | 16 +-- src/seeding.ui | 5 + 10 files changed, 239 insertions(+), 195 deletions(-) create mode 100644 src/Icons/magnet.png diff --git a/src/FinishedTorrents.cpp b/src/FinishedTorrents.cpp index 947f7d466..e287dcd27 100644 --- a/src/FinishedTorrents.cpp +++ b/src/FinishedTorrents.cpp @@ -81,6 +81,8 @@ FinishedTorrents::FinishedTorrents(QObject *parent, bittorrent *BTSession) : par actionDelete_Permanently->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/delete_perm.png"))); actionTorrent_Properties->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/properties.png"))); actionSet_upload_limit->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/seeding.png"))); + actionCopy_magnet_link->setIcon(QIcon(QString::fromUtf8(":/Icons/magnet.png"))); + connect(actionPause, SIGNAL(triggered()), (GUI*)parent, SLOT(on_actionPause_triggered())); connect(actionStart, SIGNAL(triggered()), (GUI*)parent, SLOT(on_actionStart_triggered())); connect(actionDelete, SIGNAL(triggered()), (GUI*)parent, SLOT(on_actionDelete_triggered())); @@ -90,6 +92,7 @@ FinishedTorrents::FinishedTorrents(QObject *parent, bittorrent *BTSession) : par connect(actionBuy_it, SIGNAL(triggered()), (GUI*)parent, SLOT(goBuyPage())); connect(actionTorrent_Properties, SIGNAL(triggered()), this, SLOT(propertiesSelection())); connect(actionForce_recheck, SIGNAL(triggered()), this, SLOT(forceRecheck())); + connect(actionCopy_magnet_link, SIGNAL(triggered()), (GUI*)parent, SLOT(copyMagnetURI())); connect(actionHOSColName, SIGNAL(triggered()), this, SLOT(hideOrShowColumnName())); connect(actionHOSColSize, SIGNAL(triggered()), this, SLOT(hideOrShowColumnSize())); @@ -446,6 +449,7 @@ void FinishedTorrents::displayFinishedListMenu(const QPoint&){ myFinishedListMenu.addAction(actionOpen_destination_folder); myFinishedListMenu.addAction(actionTorrent_Properties); myFinishedListMenu.addSeparator(); + myFinishedListMenu.addAction(actionCopy_magnet_link); myFinishedListMenu.addAction(actionBuy_it); // Call menu diff --git a/src/GUI.cpp b/src/GUI.cpp index c7b6b48aa..2d1d12660 100644 --- a/src/GUI.cpp +++ b/src/GUI.cpp @@ -34,6 +34,7 @@ #include #include #include +#include #ifdef QT_4_4 #include #include @@ -597,6 +598,28 @@ GUI::GUI(QWidget *parent, QStringList torrentCmdLine) : QMainWindow(parent), dis } } } + + void GUI::copyMagnetURI() const { + QStringList hashes; + switch(tabs->currentIndex()){ + case 0: + hashes = downloadingTorrentTab->getSelectedTorrents(); + break; + case 1: + hashes = finishedTorrentTab->getSelectedTorrents(); + break; + default: + return; + } + QStringList magnet_uris; + foreach(QString hash, hashes) { + QTorrentHandle h = BTSession->getTorrentHandle(hash); + if(h.is_valid()) { + magnet_uris << misc::toQString(make_magnet_uri(h.get_torrent_info())); + } + } + qApp->clipboard()->setText(magnet_uris.join("\n")); + } void GUI::goBuyPage() const { QStringList hashes; @@ -1351,6 +1374,7 @@ GUI::GUI(QWidget *parent, QStringList torrentCmdLine) : QMainWindow(parent), dis } else { hashes = finishedTorrentTab->getSelectedTorrents(); } + qDebug("nb hashes: %d", hashes.size()); foreach(const QString &hash, hashes) { QTorrentHandle h = BTSession->getTorrentHandle(hash); if(!h.is_paused()){ diff --git a/src/GUI.h b/src/GUI.h index 0800be119..3c81d2b06 100644 --- a/src/GUI.h +++ b/src/GUI.h @@ -192,6 +192,7 @@ class GUI : public QMainWindow, private Ui::MainWindow{ void setTabText(int index, QString text) const; void openDestinationFolder() const; void goBuyPage() const; + void copyMagnetURI() const; void updateRatio(); protected: diff --git a/src/Icons/magnet.png b/src/Icons/magnet.png new file mode 100644 index 0000000000000000000000000000000000000000..49b06fd20d9c598fd549b07a6d457fad69f953c0 GIT binary patch literal 7199 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

dDgZ|tMj1a?0oBmiRs5UmNje)&>_&{>gD0CdR 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 + + downloading - - + + 0 0 @@ -9,39 +10,39 @@ 453 - + Search - + - - + + 6 - + 0 - - + + 0 0 - + Qt::CustomContextMenu - + true - + QAbstractItemView::ExtendedSelection - + 1 - + false @@ -49,139 +50,144 @@ - - + + Start - - + + Pause - - + + Delete - - + + Preview file - - + + Set upload limit - - + + Set download limit - - + + Delete Permanently - - + + Torrent Properties - - - - :/Icons/oxygen/folder.png:/Icons/oxygen/folder.png + + + + :/Icons/oxygen/folder.png:/Icons/oxygen/folder.png - + Open destination folder - - + + Name - - + + Size - - + + Progress - - + + DLSpeed - - + + UpSpeed - - + + Seeds/Leechs - - + + Ratio - - + + ETA - - - + + + :/Icons/money.png:/Icons/money.png - + Buy it - - + + Priority - - - + + + :/Icons/skin/increase.png:/Icons/skin/increase.png - + Increase priority - - - + + + :/Icons/skin/decrease.png:/Icons/skin/decrease.png - + Decrease priority - - - - :/Icons/oxygen/gear.png:/Icons/oxygen/gear.png + + + + :/Icons/oxygen/gear.png:/Icons/oxygen/gear.png - + Force recheck + + + Copy magnet link + + - + diff --git a/src/downloadingTorrents.cpp b/src/downloadingTorrents.cpp index 8d03587eb..c1a1e7ed2 100644 --- a/src/downloadingTorrents.cpp +++ b/src/downloadingTorrents.cpp @@ -53,6 +53,7 @@ DownloadingTorrents::DownloadingTorrents(QObject *parent, bittorrent *BTSession) actionSet_download_limit->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/downloading.png"))); actionDelete_Permanently->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/delete_perm.png"))); actionTorrent_Properties->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/properties.png"))); + actionCopy_magnet_link->setIcon(QIcon(QString::fromUtf8(":/Icons/magnet.png"))); // tabBottom->setTabIcon(0, QIcon(QString::fromUtf8(":/Icons/oxygen/log.png"))); // tabBottom->setTabIcon(1, QIcon(QString::fromUtf8(":/Icons/oxygen/filter.png"))); @@ -106,6 +107,7 @@ DownloadingTorrents::DownloadingTorrents(QObject *parent, bittorrent *BTSession) connect(actionTorrent_Properties, SIGNAL(triggered()), this, SLOT(propertiesSelection())); connect(actionForce_recheck, SIGNAL(triggered()), this, SLOT(forceRecheck())); connect(actionBuy_it, SIGNAL(triggered()), (GUI*)parent, SLOT(goBuyPage())); + connect(actionCopy_magnet_link, SIGNAL(triggered()), (GUI*)parent, SLOT(copyMagnetURI())); connect(actionHOSColName, SIGNAL(triggered()), this, SLOT(hideOrShowColumnName())); connect(actionHOSColSize, SIGNAL(triggered()), this, SLOT(hideOrShowColumnSize())); @@ -298,6 +300,7 @@ void DownloadingTorrents::displayDLListMenu(const QPoint&) { myDLLlistMenu.addAction(actionDecreasePriority); } myDLLlistMenu.addSeparator(); + myDLLlistMenu.addAction(actionCopy_magnet_link); myDLLlistMenu.addAction(actionBuy_it); // Call menu myDLLlistMenu.exec(QCursor::pos()); diff --git a/src/icons.qrc b/src/icons.qrc index fe7d4ec27..730decd9b 100644 --- a/src/icons.qrc +++ b/src/icons.qrc @@ -1,106 +1,107 @@ - Icons/add_file.png - Icons/add_folder.png - Icons/downarrow.png Icons/gnome-shutdown.png - Icons/loading.png - Icons/locale.png + Icons/rss32.png Icons/money.png Icons/refresh.png - Icons/rss16.png - Icons/rss32.png - Icons/sphere.png Icons/sphere2.png - Icons/uparrow.png + Icons/downarrow.png Icons/url.png - Icons/flags/brazil.png - Icons/flags/bulgaria.png - Icons/flags/china.png - Icons/flags/czech.png - Icons/flags/denmark.png - Icons/flags/finland.png - Icons/flags/france.png - Icons/flags/germany.png - Icons/flags/greece.png - Icons/flags/hungary.png - Icons/flags/italy.png - Icons/flags/japan.png - Icons/flags/netherlands.png - Icons/flags/norway.png - Icons/flags/poland.png - Icons/flags/portugal.png - Icons/flags/romania.png - Icons/flags/russia.png - Icons/flags/slovakia.png - Icons/flags/south_korea.png - Icons/flags/spain.png - Icons/flags/spain_catalunya.png - Icons/flags/sweden.png - Icons/flags/taiwan.png - Icons/flags/turkey.png - Icons/flags/ukraine.png - Icons/flags/united_kingdom.png - Icons/oxygen/browse.png - Icons/oxygen/bt_settings.png - Icons/oxygen/bug.png - Icons/oxygen/button_cancel.png - Icons/oxygen/button_ok.png - Icons/oxygen/configure.png - Icons/oxygen/connection.png - Icons/oxygen/download.png - Icons/oxygen/edit-clear.png - Icons/oxygen/edit-copy.png - Icons/oxygen/edit-cut.png - Icons/oxygen/edit-paste.png - Icons/oxygen/edit_clear.png - Icons/oxygen/encrypted.png - Icons/oxygen/file.png - Icons/oxygen/filter.png - Icons/oxygen/folder.png - Icons/oxygen/gear.png - Icons/oxygen/log.png - Icons/oxygen/proxy.png - Icons/oxygen/subscribe.png - Icons/oxygen/subscribe16.png - Icons/oxygen/time.png - Icons/oxygen/unavailable.png - Icons/oxygen/unsubscribe.png - Icons/oxygen/unsubscribe16.png - Icons/oxygen/webui.png - Icons/skin/add.png - Icons/skin/connected.png - Icons/skin/decrease.png - Icons/skin/delete.png - Icons/skin/delete_all.png - Icons/skin/delete_perm.png - Icons/skin/downloading.png - Icons/skin/exit.png - Icons/skin/firewalled.png - Icons/skin/increase.png - Icons/skin/info.png - Icons/skin/mascot.png - Icons/skin/new.png - Icons/skin/open.png - Icons/skin/pause.png - Icons/skin/pause_all.png - Icons/skin/paused.png + Icons/add_folder.png + Icons/locale.png + Icons/loading.png + Icons/add_file.png + Icons/magnet.png + Icons/sphere.png + Icons/uparrow.png + Icons/rss16.png Icons/skin/play.png - Icons/skin/play_all.png - Icons/skin/preview.png - Icons/skin/properties.png - Icons/skin/qb_question.png - Icons/skin/qbittorrent16.png Icons/skin/qbittorrent22.png - Icons/skin/qbittorrent32.png - Icons/skin/queued.png - Icons/skin/remove.png - Icons/skin/search.png - Icons/skin/seeding.png - Icons/skin/settings.png - Icons/skin/splash.png + Icons/skin/new.png + Icons/skin/preview.png + Icons/skin/add.png Icons/skin/stalled.png - Icons/skin/tabs.gif + Icons/skin/delete.png Icons/skin/url.png + Icons/skin/connected.png + Icons/skin/mascot.png + Icons/skin/seeding.png + Icons/skin/increase.png + Icons/skin/qbittorrent32.png + Icons/skin/paused.png + Icons/skin/qb_question.png + Icons/skin/open.png + Icons/skin/remove.png + Icons/skin/qbittorrent16.png + Icons/skin/downloading.png + Icons/skin/search.png + Icons/skin/pause_all.png + Icons/skin/play_all.png + Icons/skin/pause.png + Icons/skin/firewalled.png + Icons/skin/properties.png + Icons/skin/info.png + Icons/skin/tabs.gif + Icons/skin/delete_perm.png + Icons/skin/queued.png + Icons/skin/settings.png + Icons/skin/exit.png + Icons/skin/delete_all.png + Icons/skin/splash.png + Icons/skin/decrease.png + Icons/flags/czech.png + Icons/flags/china.png + Icons/flags/norway.png + Icons/flags/finland.png + Icons/flags/netherlands.png + Icons/flags/taiwan.png + Icons/flags/sweden.png + Icons/flags/spain_catalunya.png + Icons/flags/romania.png + Icons/flags/denmark.png + Icons/flags/hungary.png + Icons/flags/ukraine.png + Icons/flags/turkey.png + Icons/flags/greece.png + Icons/flags/spain.png + Icons/flags/portugal.png + Icons/flags/russia.png + Icons/flags/united_kingdom.png + Icons/flags/poland.png + Icons/flags/germany.png + Icons/flags/bulgaria.png + Icons/flags/brazil.png + Icons/flags/france.png + Icons/flags/slovakia.png + Icons/flags/italy.png + Icons/flags/south_korea.png + Icons/flags/japan.png + Icons/oxygen/file.png + Icons/oxygen/time.png + Icons/oxygen/edit-paste.png + Icons/oxygen/proxy.png + Icons/oxygen/log.png + Icons/oxygen/unavailable.png + Icons/oxygen/button_ok.png + Icons/oxygen/button_cancel.png + Icons/oxygen/edit-clear.png + Icons/oxygen/filter.png + Icons/oxygen/encrypted.png + Icons/oxygen/edit_clear.png + Icons/oxygen/download.png + Icons/oxygen/gear.png + Icons/oxygen/browse.png + Icons/oxygen/unsubscribe16.png + Icons/oxygen/subscribe.png + Icons/oxygen/edit-copy.png + Icons/oxygen/bt_settings.png + Icons/oxygen/webui.png + Icons/oxygen/connection.png + Icons/oxygen/bug.png + Icons/oxygen/folder.png + Icons/oxygen/configure.png + Icons/oxygen/edit-cut.png + Icons/oxygen/unsubscribe.png + Icons/oxygen/subscribe16.png \ No newline at end of file diff --git a/src/lang.qrc b/src/lang.qrc index 341252047..75e9585b4 100644 --- a/src/lang.qrc +++ b/src/lang.qrc @@ -1,31 +1,31 @@ + lang/qbittorrent_es.qm + lang/qbittorrent_sk.qm + lang/qbittorrent_zh_TW.qm + lang/qbittorrent_pt.qm + lang/qbittorrent_sv.qm + lang/qbittorrent_pl.qm + lang/qbittorrent_it.qm + lang/qbittorrent_ko.qm + lang/qbittorrent_en.qm + lang/qbittorrent_ro.qm lang/qbittorrent_bg.qm - lang/qbittorrent_ca.qm + lang/qbittorrent_ru.qm + lang/qbittorrent_nl.qm + lang/qbittorrent_nb.qm + lang/qbittorrent_fi.qm + lang/qbittorrent_uk.qm lang/qbittorrent_cs.qm + lang/qbittorrent_pt_BR.qm + lang/qbittorrent_el.qm + lang/qbittorrent_ca.qm + lang/qbittorrent_hu.qm lang/qbittorrent_da.qm lang/qbittorrent_de.qm - lang/qbittorrent_el.qm - lang/qbittorrent_en.qm - lang/qbittorrent_es.qm - lang/qbittorrent_fi.qm - lang/qbittorrent_fr.qm - lang/qbittorrent_hu.qm - lang/qbittorrent_it.qm - lang/qbittorrent_ja.qm - lang/qbittorrent_ko.qm - lang/qbittorrent_nb.qm - lang/qbittorrent_nl.qm - lang/qbittorrent_pl.qm - lang/qbittorrent_pt.qm - lang/qbittorrent_pt_BR.qm - lang/qbittorrent_ro.qm - lang/qbittorrent_ru.qm - lang/qbittorrent_sk.qm - lang/qbittorrent_sv.qm - lang/qbittorrent_tr.qm - lang/qbittorrent_uk.qm lang/qbittorrent_zh.qm - lang/qbittorrent_zh_TW.qm + lang/qbittorrent_ja.qm + lang/qbittorrent_tr.qm + lang/qbittorrent_fr.qm \ No newline at end of file diff --git a/src/search.qrc b/src/search.qrc index 84e551207..37caac734 100644 --- a/src/search.qrc +++ b/src/search.qrc @@ -1,18 +1,18 @@ + search_engine/novaprinter.py + search_engine/nova2dl.py search_engine/helpers.py search_engine/nova2.py - search_engine/nova2dl.py - search_engine/novaprinter.py + search_engine/engines/isohunt.py + search_engine/engines/isohunt.png + search_engine/engines/piratebay.py + search_engine/engines/torrentreactor.py + search_engine/engines/piratebay.png search_engine/engines/btjunkie.png search_engine/engines/btjunkie.py - search_engine/engines/isohunt.png - search_engine/engines/isohunt.py + search_engine/engines/torrentreactor.png search_engine/engines/mininova.png search_engine/engines/mininova.py - search_engine/engines/piratebay.png - search_engine/engines/piratebay.py - search_engine/engines/torrentreactor.png - search_engine/engines/torrentreactor.py \ No newline at end of file diff --git a/src/seeding.ui b/src/seeding.ui index 408e105ba..e22da1b93 100644 --- a/src/seeding.ui +++ b/src/seeding.ui @@ -146,6 +146,11 @@ Seeds / Leechers + + + Copy magnet link + +