diff --git a/libsaria/sources/__init__.py b/libsaria/sources/__init__.py index 03de2824..109ae892 100644 --- a/libsaria/sources/__init__.py +++ b/libsaria/sources/__init__.py @@ -18,6 +18,7 @@ class Source: self.get_attrs = None self.set_attr = None self.get_cur_id = None + self.save = None def set_current(self): global cur_source diff --git a/libsaria/sources/file.py b/libsaria/sources/file.py index a45b2d34..569aeb2a 100644 --- a/libsaria/sources/file.py +++ b/libsaria/sources/file.py @@ -23,6 +23,7 @@ def init(): source.get_attrs = get_attrs source.set_attr = set_attr source.get_cur_id = get_cur_file + source.save = save load_file = source.load_file print load_file @@ -80,5 +81,7 @@ def get_attrs(file, *attrs): def set_attr(*args): pass +def save(): + pass init() diff --git a/libsaria/sources/library.py b/libsaria/sources/library.py index 50dd98a3..4a3741d3 100644 --- a/libsaria/sources/library.py +++ b/libsaria/sources/library.py @@ -42,6 +42,7 @@ def init(): source.get_attrs = get_attrs source.set_attr = set_attr source.get_cur_id = get_cur_id + source.save = save def reset(): from libsaria.trees import FSTree, DLFSTree, DLValTree @@ -180,6 +181,7 @@ def set_attr(id, attr, new_value): lastfm.set_artwork_tags(artist, album, new_value) else: rec.__dict__[attr] = new_value + save() def inc_count(id = cur_id): rec = tracks.get(id, None) diff --git a/libsaria/sources/playlist.py b/libsaria/sources/playlist.py index 43e780e4..4bfcc403 100644 --- a/libsaria/sources/playlist.py +++ b/libsaria/sources/playlist.py @@ -40,6 +40,7 @@ def init(): source.get_attrs = library.get_attrs source.set_attr = library.set_attr source.get_cur_id = get_cur_id + source.save = save def reset(): global song_list diff --git a/libsaria/sources/queue.py b/libsaria/sources/queue.py index 2d89c4b4..3c613e9b 100644 --- a/libsaria/sources/queue.py +++ b/libsaria/sources/queue.py @@ -35,6 +35,10 @@ def init(): source.get_attrs = library.get_attrs source.set_attr = library.set_attr source.get_cur_id = get_cur_id + source.save = save + +def save(): + pass def init_bg(callback): init()