added new function: abort all downloads
authorNabil Hanna <ali@users.schwerkraft.elitedvb.net>
Sat, 7 Nov 2009 09:54:54 +0000 (09:54 +0000)
committerNabil Hanna <ali@users.schwerkraft.elitedvb.net>
Sat, 7 Nov 2009 09:54:54 +0000 (09:54 +0000)
rsdownloader/src/plugin.py

index 2c26591..8654fc6 100644 (file)
@@ -610,7 +610,22 @@ class RS:
                        else:\r
                                tmp.append(download)\r
                del self.downloads\r
+               self.downloads = tmp
+
+       def abortAllDownloads(self):\r
+               tmp = []\r
+               for download in self.downloads:\r
+                       if download.status == _("Downloading"):\r
+                               download.stop()\r
+                               download.download = None\r
+                               download.downloading = False\r
+                               download.progress = 0\r
+                               download.size = 0\r
+                               download.status = _("Waiting")\r
+                       tmp.append(download)\r
+               del self.downloads\r
                self.downloads = tmp\r
+               self.startDownloading()\r
 \r
        def restartFailedDownloads(self):\r
                tmp = []\r
@@ -916,6 +931,7 @@ class RSMain(ChangedScreen):
                list.append((_("Add downloads from txt files"), self.add))\r
                list.append((_("Add files from container"), self.addContainer))\r
                list.append((_("Delete failed downloads"), self.deleteFailed))\r
+               list.append((_("Abort all downloads"), self.abortDownloads))\r
                list.append((_("Restart failed downloads"), self.restartFailed))\r
                list.append((_("Clear finished downloads"), self.clearFinished))\r
                list.append((_("Show log"), self.showLog))\r
@@ -928,7 +944,10 @@ class RSMain(ChangedScreen):
                        callback[1]()\r
 \r
        def deleteFailed(self):\r
-               rapidshare.deleteFailedDownloads()\r
+               rapidshare.deleteFailedDownloads()
+
+       def abortDownloads(self):
+               rapidshare.abortAllDownloads()\r
 \r
        def restartFailed(self):\r
                rapidshare.restartFailedDownloads()\r