playlist: Create a way to get the current selected tracks
I do this as a generator so we can work with tracks as we find them. Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
f15514edd1
commit
bbe48ccf82
|
@ -29,3 +29,7 @@ class Panel(Gtk.Box):
|
|||
def jump_clicked(self, button):
|
||||
view = self.window.get_child()
|
||||
view.track_changed(audio.Player, None, audio.Player.track)
|
||||
|
||||
def selected_tracks(self):
|
||||
for track in self.window.selected_tracks():
|
||||
yield track
|
||||
|
|
|
@ -33,6 +33,12 @@ class PlaylistView(Gtk.ColumnView):
|
|||
if index := plist.get_track_index(track):
|
||||
plist.current = index
|
||||
|
||||
def selected_tracks(self):
|
||||
model = self.get_model()
|
||||
selection = model.get_selection()
|
||||
for n in range(selection.get_size()):
|
||||
yield model.get_item(selection.get_nth(n))
|
||||
|
||||
def track_changed(self, player, old, new):
|
||||
selection = self.get_model()
|
||||
adjustment = self.get_vadjustment()
|
||||
|
@ -56,6 +62,7 @@ class PlaylistWindow(Gtk.ScrolledWindow):
|
|||
def get_filter_model(self): return self.get_child().get_filter_model()
|
||||
def get_playlist(self): return self.get_child().get_playlist()
|
||||
def set_playlist(self, plist): self.get_child().set_playlist(plist)
|
||||
def selected_tracks(self): return self.get_child().selected_tracks()
|
||||
|
||||
|
||||
class SortOrderView(Gtk.ListView):
|
||||
|
|
Loading…
Reference in New Issue