gget r43 - in trunk: data gget
- From: johans svn gnome org
- To: svn-commits-list gnome org
- Subject: gget r43 - in trunk: data gget
- Date: Fri, 1 Aug 2008 19:21:30 +0000 (UTC)
Author: johans
Date: Fri Aug 1 19:21:30 2008
New Revision: 43
URL: http://svn.gnome.org/viewvc/gget?rev=43&view=rev
Log:
Fixed issues with widget sensitivity based on download statuses.
Modified:
trunk/data/gget.glade
trunk/gget/Main.py
trunk/gget/MainWindow.py
Modified: trunk/data/gget.glade
==============================================================================
--- trunk/data/gget.glade (original)
+++ trunk/data/gget.glade Fri Aug 1 19:21:30 2008
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--Generated with glade3 3.4.5 on Tue Jul 29 17:08:08 2008 -->
+<!--Generated with glade3 3.4.5 on Fri Aug 1 20:02:26 2008 -->
<glade-interface>
<widget class="GtkWindow" id="main_window">
<property name="width_request">800</property>
@@ -27,7 +27,7 @@
<property name="label" translatable="yes">gtk-add</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
- <accelerator key="a" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+ <accelerator key="n" modifiers="GDK_CONTROL_MASK" signal="activate"/>
</widget>
</child>
<child>
Modified: trunk/gget/Main.py
==============================================================================
--- trunk/gget/Main.py (original)
+++ trunk/gget/Main.py Fri Aug 1 19:21:30 2008
@@ -93,7 +93,7 @@
for uri in args:
if config.ask_for_location:
add = AddDownloadDialog(uri)
- add.dialog.show()
+ add.dialog.run()
else:
download_list.add_download(uri, config.default_folder)
Modified: trunk/gget/MainWindow.py
==============================================================================
--- trunk/gget/MainWindow.py (original)
+++ trunk/gget/MainWindow.py Fri Aug 1 19:21:30 2008
@@ -392,7 +392,7 @@
if self.config.ask_for_location:
add = AddDownloadDialog(uri)
- add.dialog.show()
+ add.dialog.run()
else:
self.download_list.add_download(uri, self.config.default_folder)
context.finish(True, False, time)
@@ -400,7 +400,7 @@
def show_add_download_dialog(self, widget):
"""Show the dialog used for adding a new download."""
add = AddDownloadDialog()
- add.dialog.show()
+ add.dialog.run()
def preferences_menu_item_activate(self, menu_item):
"""Show the preferences dialog."""
@@ -472,22 +472,49 @@
downloads = GUI.get_selected_values(self.downloads_treeview)
number_selected = selection.count_selected_rows()
# Disable tool buttons and menu items if nothing is selected, else
- # enable them
+ # enable the ones that should be
if number_selected < 1:
self.__download_widgets_set_sensitive(False)
elif number_selected == 1:
- self.__download_widgets_set_sensitive(True)
+ self.unselect_all_menu_item.set_sensitive(True)
+ self.remove_tool_button.set_sensitive(True)
+ self.remove_imi.set_sensitive(True)
+ self.details_tool_button.set_sensitive(True)
+ self.details_imi.set_sensitive(True)
if downloads:
status = downloads[0].status
self.__set_widgets_sensitivity_for_status(status)
elif number_selected > 1:
- self.__download_widgets_set_sensitive(True)
+ self.__download_widgets_set_sensitive(False)
+ self.unselect_all_menu_item.set_sensitive(True)
+ self.remove_tool_button.set_sensitive(True)
+ self.remove_imi.set_sensitive(True)
- has_cancled = has_paused = False
+ has_paused = has_canceled = has_active = False
if downloads:
for download in downloads:
- self.__set_widgets_sensitivity_for_status(download.status)
+ if download.status == Download.PAUSED:
+ has_paused = True
+ elif download.status == Download.CANCELED:
+ has_canceled = True
+ elif download.status == Download.CONNECTING or \
+ download.status == Download.DOWNLOADING:
+ has_active = True
+
+ if has_paused or has_canceled:
+ self.resume_tool_button.set_sensitive(True)
+ self.resume_imi.set_sensitive(True)
+
+ if has_active:
+ self.pause_tool_button.set_sensitive(True)
+ self.pause_imi.set_sensitive(True)
+ self.cancel_tool_button.set_sensitive(True)
+ self.cancel_imi.set_sensitive(True)
+
+ self.pause_imi.props.visible = self.pause_imi.props.sensitive
+ self.resume_imi.props.visible = self.resume_imi.props.sensitive
+ self.cancel_imi.props.visible = self.cancel_imi.props.sensitive
# Details should only be possible if one row is selected
self.details_tool_button.set_sensitive(False)
@@ -512,44 +539,38 @@
self.remove_imi.set_sensitive(sensitive)
self.details_tool_button.set_sensitive(sensitive)
self.details_imi.set_sensitive(sensitive)
- self.unselect_all_menu_item.set_sensitive(sensitive)
- def __set_widgets_sensitivity_for_status(self, status,
- single_selection=True):
+ def __set_widgets_sensitivity_for_status(self, status):
"""Sets the appropriate sensitivity property for widgets based on the
given status."""
if status == Download.COMPLETED:
- if single_selection:
- self.pause_tool_button.set_sensitive(False)
- self.pause_imi.set_sensitive(False)
- self.resume_tool_button.set_sensitive(False)
- self.resume_imi.set_sensitive(False)
- self.cancel_tool_button.set_sensitive(False)
- self.cancel_imi.set_sensitive(False)
+ self.pause_tool_button.set_sensitive(False)
+ self.pause_imi.set_sensitive(False)
+ self.resume_tool_button.set_sensitive(False)
+ self.resume_imi.set_sensitive(False)
+ self.cancel_tool_button.set_sensitive(False)
+ self.cancel_imi.set_sensitive(False)
elif status == Download.CANCELED:
- if single_selection:
- self.pause_tool_button.set_sensitive(False)
- self.pause_imi.set_sensitive(False)
- self.cancel_tool_button.set_sensitive(False)
- self.cancel_imi.set_sensitive(False)
+ self.pause_tool_button.set_sensitive(False)
+ self.pause_imi.set_sensitive(False)
self.resume_tool_button.set_sensitive(True)
self.resume_imi.set_sensitive(True)
+ self.cancel_tool_button.set_sensitive(False)
+ self.cancel_imi.set_sensitive(False)
elif status == Download.PAUSED:
- if single_selection:
- self.pause_tool_button.set_sensitive(False)
- self.pause_imi.set_sensitive(False)
+ self.pause_tool_button.set_sensitive(False)
+ self.pause_imi.set_sensitive(False)
self.resume_tool_button.set_sensitive(True)
self.resume_imi.set_sensitive(True)
self.cancel_tool_button.set_sensitive(True)
self.cancel_imi.set_sensitive(True)
elif status == Download.DOWNLOADING or status == Download.CONNECTING:
- if single_selection:
- self.resume_tool_button.set_sensitive(False)
- self.resume_imi.set_sensitive(False)
+ self.resume_tool_button.set_sensitive(False)
+ self.resume_imi.set_sensitive(False)
self.pause_tool_button.set_sensitive(True)
self.pause_imi.set_sensitive(True)
@@ -785,7 +806,7 @@
def __download_status_changed(self, download, status):
"""Called when the status of a download changes. Tells the treeview to
update the row with that download."""
- self.__set_widgets_sensitivity_for_status(status)
+ self.__downloads_treeview_selection_changed(self.downloads_treeview_selection)
self.update_download_row(download)
def update_download_row(self, download):
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]