diff --git a/deluge/ui/gtkui/removetorrentdialog.py b/deluge/ui/gtkui/removetorrentdialog.py new file mode 100644 index 000000000..839985daa --- /dev/null +++ b/deluge/ui/gtkui/removetorrentdialog.py @@ -0,0 +1,72 @@ +# +# removetorrentdialog.py +# +# Copyright (C) 2007 Andrew Resch ('andar') +# +# Deluge is free software. +# +# You may redistribute it and/or modify it under the terms of the +# GNU General Public License, as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) +# any later version. +# +# deluge is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with deluge. If not, write to: +# The Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor +# Boston, MA 02110-1301, USA. +# +# In addition, as a special exception, the copyright holders give +# permission to link the code of portions of this program with the OpenSSL +# library. +# You must obey the GNU General Public License in all respects for all of +# the code used other than OpenSSL. If you modify file(s) with this +# exception, you may extend this exception to your version of the file(s), +# but you are not obligated to do so. If you do not wish to do so, delete +# this exception statement from your version. If you delete this exception +# statement from all source files in the program, then also delete it here. + +import gtk, gtk.glade +import pkg_resources + +import deluge.common +import deluge.ui.client as client +import deluge.ui.component as component +from deluge.log import LOG as log + +class RemoveTorrentDialog: + def __init__(self, torrent_ids): + self.torrent_ids = torrent_ids + self.glade = gtk.glade.XML( + pkg_resources.resource_filename("deluge.ui.gtkui", + "glade/remove_torrent_dialog.glade")) + + self.dialog = self.glade.get_widget("remove_torrent_dialog") + self.dialog.set_icon(deluge.common.get_logo(32)) + self.dialog.set_transient_for(component.get("MainWindow").window) + + self.glade.signal_autoconnect({ + "on_button_ok_clicked": self.on_button_ok_clicked, + "on_button_cancel_clicked": self.on_button_cancel_clicked + }) + + def run(self): + if self.torrent_ids == None or self.torrent_ids == []: + self.dialog.destroy() + return + self.dialog.show() + + def on_button_ok_clicked(self, widget): + data = self.glade.get_widget("chk_data").get_active() + torrent = self.glade.get_widget("chk_torrents").get_active() + client.remove_torrent(self.torrent_ids, torrent, data) + self.dialog.destroy() + + def on_button_cancel_clicked(self, widget): + self.dialog.destroy() +