mirror of
https://github.com/SoongNoonien/mpdevil.git
synced 2023-08-10 21:12:44 +03:00
fixed playlist info
This commit is contained in:
parent
36a94350ac
commit
c388cc7342
@ -444,11 +444,9 @@ class TrackView(Gtk.Box):
|
|||||||
self.client.add(song["file"])
|
self.client.add(song["file"])
|
||||||
else:
|
else:
|
||||||
if self.settings.get_boolean("add-album") and not force and not self.client.status()["state"] == "stop":
|
if self.settings.get_boolean("add-album") and not force and not self.client.status()["state"] == "stop":
|
||||||
self.selection.handler_block(self.title_change)
|
|
||||||
status=self.client.status()
|
status=self.client.status()
|
||||||
self.client.moveid(status["songid"], 0)
|
self.client.moveid(status["songid"], 0)
|
||||||
self.song_to_delete=self.client.playlistinfo()[0]["file"]
|
self.song_to_delete=self.client.playlistinfo()[0]["file"]
|
||||||
self.selection.handler_unblock(self.title_change)
|
|
||||||
try:
|
try:
|
||||||
self.client.delete((1,)) # delete all songs, but the first. #bad song index possible
|
self.client.delete((1,)) # delete all songs, but the first. #bad song index possible
|
||||||
except:
|
except:
|
||||||
@ -470,6 +468,21 @@ class TrackView(Gtk.Box):
|
|||||||
self.client.add(song["file"])
|
self.client.add(song["file"])
|
||||||
self.client.play()
|
self.client.play()
|
||||||
|
|
||||||
|
def refresh_playlist_info(self):
|
||||||
|
songs=self.client.playlistinfo()
|
||||||
|
if not songs == []:
|
||||||
|
whole_length=float(0)
|
||||||
|
for song in songs:
|
||||||
|
try:
|
||||||
|
dura=float(song["duration"])
|
||||||
|
except:
|
||||||
|
dura=0.0
|
||||||
|
whole_length=whole_length+dura
|
||||||
|
whole_length_human_readable=str(datetime.timedelta(seconds=int(whole_length)))
|
||||||
|
self.playlist_info.set_text(_("%(total_tracks)i titles (%(total_length)s)") % {"total_tracks": len(songs), "total_length": whole_length_human_readable})
|
||||||
|
else:
|
||||||
|
self.playlist_info.set_text("")
|
||||||
|
|
||||||
def refresh(self):
|
def refresh(self):
|
||||||
self.selection.handler_block(self.title_change)
|
self.selection.handler_block(self.title_change)
|
||||||
if self.client.connected():
|
if self.client.connected():
|
||||||
@ -478,7 +491,6 @@ class TrackView(Gtk.Box):
|
|||||||
self.store.clear()
|
self.store.clear()
|
||||||
songs=self.client.playlistinfo()
|
songs=self.client.playlistinfo()
|
||||||
if not songs == []:
|
if not songs == []:
|
||||||
whole_length=float(0)
|
|
||||||
for song in songs:
|
for song in songs:
|
||||||
try:
|
try:
|
||||||
title=song["title"]
|
title=song["title"]
|
||||||
@ -500,11 +512,9 @@ class TrackView(Gtk.Box):
|
|||||||
dura=float(song["duration"])
|
dura=float(song["duration"])
|
||||||
except:
|
except:
|
||||||
dura=0.0
|
dura=0.0
|
||||||
whole_length=whole_length+dura
|
|
||||||
duration=str(datetime.timedelta(seconds=int(dura )))
|
duration=str(datetime.timedelta(seconds=int(dura )))
|
||||||
self.store.append([track, title, artist, album, duration, song["file"].replace("&", "")])
|
self.store.append([track, title, artist, album, duration, song["file"].replace("&", "")])
|
||||||
whole_length_human_readable=str(datetime.timedelta(seconds=int(whole_length)))
|
self.refresh_playlist_info()
|
||||||
self.playlist_info.set_text(_("%(total_tracks)i titles (%(total_length)s)") % {"total_tracks": len(songs), "total_length": whole_length_human_readable})
|
|
||||||
self.playlist=self.client.playlist()
|
self.playlist=self.client.playlist()
|
||||||
else:
|
else:
|
||||||
if not self.song_to_delete == "":
|
if not self.song_to_delete == "":
|
||||||
@ -514,6 +524,7 @@ class TrackView(Gtk.Box):
|
|||||||
self.client.delete(0)
|
self.client.delete(0)
|
||||||
self.playlist=self.client.playlist()
|
self.playlist=self.client.playlist()
|
||||||
self.store.remove(self.store.get_iter_first())
|
self.store.remove(self.store.get_iter_first())
|
||||||
|
self.refresh_playlist_info()
|
||||||
self.song_to_delete=""
|
self.song_to_delete=""
|
||||||
try:
|
try:
|
||||||
song=self.client.status()["song"]
|
song=self.client.status()["song"]
|
||||||
@ -537,6 +548,7 @@ class TrackView(Gtk.Box):
|
|||||||
self.client.delete(self.hovered_songpos) #bad song index possible
|
self.client.delete(self.hovered_songpos) #bad song index possible
|
||||||
self.playlist=self.client.playlist()
|
self.playlist=self.client.playlist()
|
||||||
self.store.remove(self.store.get_iter(self.hovered_songpos))
|
self.store.remove(self.store.get_iter(self.hovered_songpos))
|
||||||
|
self.refresh_playlist_info()
|
||||||
except:
|
except:
|
||||||
self.hovered_songpos == None
|
self.hovered_songpos == None
|
||||||
self.selection.handler_unblock(self.title_change)
|
self.selection.handler_unblock(self.title_change)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user