mirror of
https://github.com/codex-storage/deluge.git
synced 2025-02-04 15:43:28 +00:00
activates or deactivates the queue-up/down arrows depending on which torrents are selected. It also makes it possible to move several torrents at the same time - Mattias Bengtsson
This commit is contained in:
parent
bdf9182bb5
commit
4ea66b684f
@ -85,7 +85,7 @@
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<child>
|
||||
<widget class="GtkImageMenuItem" id="menuitem1">
|
||||
<widget class="GtkImageMenuItem" id="menu_queue_top">
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">_Top</property>
|
||||
@ -102,7 +102,7 @@
|
||||
</widget>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkImageMenuItem" id="menuitem6">
|
||||
<widget class="GtkImageMenuItem" id="menu_queue_up">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">_Up</property>
|
||||
<property name="use_underline">True</property>
|
||||
@ -118,7 +118,7 @@
|
||||
</widget>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkImageMenuItem" id="menuitem7">
|
||||
<widget class="GtkImageMenuItem" id="menu_queue_down">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">_Down</property>
|
||||
<property name="use_underline">True</property>
|
||||
@ -134,7 +134,7 @@
|
||||
</widget>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkImageMenuItem" id="menuitem8">
|
||||
<widget class="GtkImageMenuItem" id="menu_queue_bottom">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">_Bottom</property>
|
||||
<property name="use_underline">True</property>
|
||||
|
@ -931,14 +931,35 @@ class DelugeGTK:
|
||||
if not self.torrent_model.iter_is_valid(itr):
|
||||
itr = None
|
||||
|
||||
has_selected_torrents = self.torrent_view.get_selection().count_selected_rows() > 0
|
||||
self.wtree.get_widget("menu_torrent").set_sensitive(has_selected_torrents)
|
||||
self.wtree.get_widget("toolbutton_remove").set_sensitive(has_selected_torrents)
|
||||
self.wtree.get_widget("toolbutton_pause").set_sensitive(has_selected_torrents)
|
||||
self.wtree.get_widget("toolbutton_up").set_sensitive(has_selected_torrents)
|
||||
self.wtree.get_widget("toolbutton_down").set_sensitive(has_selected_torrents)
|
||||
|
||||
if not has_selected_torrents:
|
||||
# Disable torrent options if no torrents are selected
|
||||
torrent_selection = self.torrent_view.get_selection()
|
||||
selection_count = torrent_selection.count_selected_rows()
|
||||
|
||||
self.wtree.get_widget("menu_torrent").set_sensitive(selection_count > 0)
|
||||
self.wtree.get_widget("toolbutton_remove").set_sensitive(selection_count > 0)
|
||||
self.wtree.get_widget("toolbutton_pause").set_sensitive(selection_count > 0)
|
||||
self.wtree.get_widget("toolbutton_up").set_sensitive(selection_count > 0)
|
||||
self.wtree.get_widget("toolbutton_down").set_sensitive(selection_count > 0)
|
||||
|
||||
# Disable moving top torrents up or bottom torrents down
|
||||
top_torrents_selected = True
|
||||
bottom_torrents_selected = True
|
||||
|
||||
for i in range(selection_count):
|
||||
if not torrent_selection.path_is_selected(i):
|
||||
top_torrents_selected = False
|
||||
|
||||
if not torrent_selection.path_is_selected(len(self.torrent_model) - 1 - i):
|
||||
bottom_torrents_selected = False
|
||||
|
||||
self.torrent_glade.get_widget("menu_queue_top").set_sensitive(not top_torrents_selected)
|
||||
self.torrent_glade.get_widget("menu_queue_up").set_sensitive(not top_torrents_selected)
|
||||
self.torrent_glade.get_widget("menu_queue_down").set_sensitive(not bottom_torrents_selected)
|
||||
self.torrent_glade.get_widget("menu_queue_bottom").set_sensitive(not bottom_torrents_selected)
|
||||
self.wtree.get_widget("toolbutton_up").set_sensitive(not top_torrents_selected)
|
||||
self.wtree.get_widget("toolbutton_down").set_sensitive(not bottom_torrents_selected)
|
||||
|
||||
if selection_count == 0:
|
||||
return True
|
||||
|
||||
try:
|
||||
@ -1234,29 +1255,25 @@ class DelugeGTK:
|
||||
self.update()
|
||||
|
||||
def q_torrent_up(self, obj=None):
|
||||
torrent = self.get_selected_torrent()
|
||||
if torrent is not None:
|
||||
for torrent in self.get_selected_torrent_rows():
|
||||
self.manager.queue_up(torrent)
|
||||
self.update()
|
||||
|
||||
self.update()
|
||||
|
||||
def q_torrent_down(self, obj=None):
|
||||
torrent = self.get_selected_torrent()
|
||||
if torrent is not None:
|
||||
for torrent in reversed(self.get_selected_torrent_rows()):
|
||||
self.manager.queue_down(torrent)
|
||||
self.update()
|
||||
self.update()
|
||||
|
||||
def q_to_bottom(self, widget):
|
||||
torrent = self.get_selected_torrent()
|
||||
if torrent is not None:
|
||||
for torrent in self.get_selected_torrent_rows():
|
||||
self.manager.queue_bottom(torrent)
|
||||
self.update()
|
||||
self.update()
|
||||
|
||||
def q_to_top(self, widget):
|
||||
torrent = self.get_selected_torrent()
|
||||
if torrent is not None:
|
||||
for torrent in reversed(self.get_selected_torrent_rows()):
|
||||
self.manager.queue_top(torrent)
|
||||
self.update()
|
||||
|
||||
self.update()
|
||||
|
||||
def toolbar_toggle(self, widget):
|
||||
if widget.get_active():
|
||||
self.wtree.get_widget("tb_left").show()
|
||||
|
Loading…
x
Reference in New Issue
Block a user