From bc54ef0a98db4eec1d2513bda0af249839cc1afd Mon Sep 17 00:00:00 2001 From: Bryan Schumaker Date: Sun, 1 May 2011 09:41:47 -0400 Subject: [PATCH] libsaria: Add a load_playlist() callback Called when playlists are loaded from file. --- libsaria/callbacks.py | 4 ++++ libsaria/path/export.py | 4 +++- ocarina/callbacks.py | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/libsaria/callbacks.py b/libsaria/callbacks.py index 08ad5fb3..7720d617 100644 --- a/libsaria/callbacks.py +++ b/libsaria/callbacks.py @@ -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() diff --git a/libsaria/path/export.py b/libsaria/path/export.py index 8025a211..6b2611ed 100644 --- a/libsaria/path/export.py +++ b/libsaria/path/export.py @@ -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) diff --git a/ocarina/callbacks.py b/ocarina/callbacks.py index 7d1d0551..1fb0af6d 100644 --- a/ocarina/callbacks.py +++ b/ocarina/callbacks.py @@ -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()