diff options
author | Jorg Schuler <jcsjcs@users.sourceforge.net> | 2005-11-19 07:30:18 +0000 |
---|---|---|
committer | Jorg Schuler <jcsjcs@users.sourceforge.net> | 2005-11-19 07:30:18 +0000 |
commit | 2833ab58e8d34c2b28ce429ca8edbb723a6a9281 (patch) | |
tree | 5ead5e1d3bd5541856a9c3dc90ab7a14dd5aedf5 | |
parent | c3530fb4aac52a858b0732c49f912950edbfe256 (diff) | |
download | libgpod-2833ab58e8d34c2b28ce429ca8edbb723a6a9281.tar.gz libgpod-2833ab58e8d34c2b28ce429ca8edbb723a6a9281.tar.xz libgpod-2833ab58e8d34c2b28ce429ca8edbb723a6a9281.zip |
* itdb_playlist.c: added itdb_spl_update_live() for convenience
git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1154 f01d2545-417e-4e96-918e-98f8d0dbbcb6
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | src/itdb.h | 3 | ||||
-rw-r--r-- | src/itdb_playlist.c | 24 |
3 files changed, 24 insertions, 5 deletions
@@ -3,6 +3,8 @@ * itdb_playlist.c: simplified API for itdb_spl_update() and itdb_splr_eval() + * itdb_playlist.c: added itdb_spl_update_live() for convenience + 2005-11-17 Jorg Schuler <jcsjcs at users.sourceforge.net> * configure.ac: check for version 2.4 of glib -- now we need to @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-11-19 15:41:45 jcs> +/* Time-stamp: <2005-11-19 16:26:13 jcs> | | Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net> | Part of the gtkpod project. @@ -730,6 +730,7 @@ void itdb_spl_copy_rules (Itdb_Playlist *dest, Itdb_Playlist *src); gboolean itdb_splr_eval (SPLRule *splr, Itdb_Track *track); void itdb_spl_update (Itdb_Playlist *spl); void itdb_spl_update_all (Itdb_iTunesDB *itdb); +void itdb_spl_update_live (Itdb_iTunesDB *itdb); /* thumbnails functions */ unsigned char *itdb_image_get_rgb_data (Itdb_Image *image); diff --git a/src/itdb_playlist.c b/src/itdb_playlist.c index 241ff11..b2d7660 100644 --- a/src/itdb_playlist.c +++ b/src/itdb_playlist.c @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-11-19 15:43:07 jcs> +/* Time-stamp: <2005-11-19 16:24:56 jcs> | | Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net> | Part of the gtkpod project. @@ -787,8 +787,8 @@ void itdb_spl_update (Itdb_Playlist *spl) /* update all smart playlists */ void itdb_spl_update_all (Itdb_iTunesDB *itdb) { - auto void spl_update (Itdb_Playlist *playlist, Itdb_iTunesDB *itdb); - void spl_update (Itdb_Playlist *playlist, Itdb_iTunesDB *itdb) + auto void spl_update (Itdb_Playlist *playlist, gpointer data); + void spl_update (Itdb_Playlist *playlist, gpointer data) { g_return_if_fail (playlist); itdb_spl_update (playlist); @@ -796,10 +796,26 @@ void itdb_spl_update_all (Itdb_iTunesDB *itdb) g_return_if_fail (itdb); - g_list_foreach (itdb->playlists, (GFunc)spl_update, itdb); + g_list_foreach (itdb->playlists, (GFunc)spl_update, NULL); } +/* update all smart playlists with 'live updating' set*/ +void itdb_spl_update_live (Itdb_iTunesDB *itdb) +{ + auto void spl_update (Itdb_Playlist *playlist, gpointer data); + void spl_update (Itdb_Playlist *playlist, gpointer data) + { + g_return_if_fail (playlist); + if (playlist->is_spl && playlist->splpref.liveupdate) + itdb_spl_update (playlist); + } + + g_return_if_fail (itdb); + + g_list_foreach (itdb->playlists, (GFunc)spl_update, NULL); +} + /* end of code based on Samuel Wood's work */ /* ------------------------------------------------------------------- */ |