libsaria: Add a load_playlist() callback

Called when playlists are loaded from file.
This commit is contained in:
Bryan Schumaker 2011-05-01 09:41:47 -04:00
parent 96b237631e
commit bc54ef0a98
3 changed files with 8 additions and 2 deletions

View File

@ -28,3 +28,7 @@ def set_volume(prcnt):
on_get_art = null_cb
def get_art(file, id):
on_get_art(file, id)
on_load_playlist = null_cb
def load_playlist():
on_load_playlist()

View File

@ -4,6 +4,7 @@ import libsaria
from libsaria import path
from libsaria.sources import library
from libsaria.sources import playlist
from libsaria import callbacks
import libsaria.xm as xml
add_child = xml.add_child
@ -62,6 +63,7 @@ def decode_xspf(child):
except:
pass
playlist.save()
callbacks.load_playlist()
def encode_xspf(doc, node, id):
filepath = get_attrs(id, "filepath")
@ -193,7 +195,7 @@ def import_xml(file):
doc = xml.parse(fin)
child = xml.child(doc)
if child.nodeName == "playlist":
libsaria.event.call("LOADPLAYLIST", decode_xspf, child)
decode_xspf(child)
elif child.nodeName == "library":
import_library(child)

View File

@ -38,7 +38,7 @@ callbacks.on_get_art = on_get_art
def on_load_playlist(*args):
playlist.refresh()
invite("POSTLOADPLAYLIST", on_load_playlist)
callbacks.on_load_playlist = on_load_playlist
def on_load_library(*args):
library.refresh()