Select and goto song improvements

When we select a song through the gui, we should call either the
playlist or library play_id() function for appropriate bookkeeping.

Additionally, on startup we seek to sources.cur_lib_id
This commit is contained in:
Bryan Schumaker 2010-12-01 22:31:40 -05:00
parent 2e5a62cbb7
commit d033c25655
3 changed files with 9 additions and 6 deletions

View File

@ -20,9 +20,10 @@ def init():
libsaria.event.invite("POSTNEWSOURCE", refresh)
def filler():
lib_page.init(filter, is_visible, right_click, reset)
lib_page.init(filter, is_visible, right_click, library.play_id, reset)
menu.add_lib_menu_item("Add to playlist", add_selected_to_playlist)
lib_page.fill(library.walk)
lib_page.goto()
def filter(text):
library.filter(text)

View File

@ -17,9 +17,10 @@ def init():
playlist.load_bg(filler)
def filler():
plist_page.init(filter, is_visible, right_click, reset)
plist_page.init(filter, is_visible, right_click, playlist.play_id, reset)
menu.add_plist_menu_item("Remove from playlist", rm_selected_from_playlist)
plist_page.fill(playlist.walk)
plist_page.goto()
def filter(text):
playlist.filter(text)

View File

@ -36,7 +36,7 @@ class List(gtk.ListStore):
class ListView(gtk.TreeView):
def __init__(self, is_visible, right_click):
def __init__(self, is_visible, right_click, play_id):
gtk.TreeView.__init__(self)
self.list = List()
event.invite("POSTLOAD", self.goto)
@ -63,6 +63,7 @@ class ListView(gtk.TreeView):
self.refilter = self.filter_model.refilter
self.clear = self.list.clear
self.right_click = right_click
self.play_id = play_id
self.show_all()
@ -74,7 +75,7 @@ class ListView(gtk.TreeView):
model = self.get_model()
iter = model.get_iter(path)
row = model[iter]
sources.play_selected_id(row[0])
self.play_id(row[0])
def for_each_selected(self, func):
filter = self.filter_model
@ -138,8 +139,8 @@ class Source(gtk.ScrolledWindow):
self.filter = None
self.show()
def init(self, filter, is_visible, right_click, reset):
self.list = ListView(is_visible, right_click)
def init(self, filter, is_visible, right_click, play_id, reset):
self.list = ListView(is_visible, right_click, play_id)
self.add(self.list)
self.refilter = self.list.refilter