Update of /cvsroot/gtkpod/gtkpod/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21887/src
Modified Files: display.h display_playlists.c display_private.h display_spl.c file_itunesdb.c Log Message: * updated smart playlists automatically if 'live updating' is set. Index: display.h =================================================================== RCS file: /cvsroot/gtkpod/gtkpod/src/display.h,v retrieving revision 1.104 retrieving revision 1.105 diff -u -d -r1.104 -r1.105 --- display.h 10 Oct 2005 14:15:06 -0000 1.104 +++ display.h 19 Nov 2005 07:29:46 -0000 1.105 @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-10-03 23:27:04 jcs> +/* Time-stamp: <2005-11-19 15:41:47 jcs> | | Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net> | Part of the gtkpod project. @@ -280,6 +280,7 @@ void st_stop_editing (gint inst, gboolean cancel); void st_page_selected (GtkNotebook *notebook, guint page); +void st_redisplay (guint32 inst); void st_sort (GtkSortType order); void st_remove_entry (TabEntry *entry, guint32 inst); gint st_get_instance_from_treeview (GtkTreeView *tv); Index: display_playlists.c =================================================================== RCS file: /cvsroot/gtkpod/gtkpod/src/display_playlists.c,v retrieving revision 1.66 retrieving revision 1.67 diff -u -d -r1.66 -r1.67 --- display_playlists.c 12 Nov 2005 08:54:31 -0000 1.66 +++ display_playlists.c 19 Nov 2005 07:29:46 -0000 1.67 @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-11-12 17:31:33 jcs> +/* Time-stamp: <2005-11-19 16:24:19 jcs> | | Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net> | Part of the gtkpod project. @@ -1324,6 +1324,8 @@ st_init (-1, 0); current_playlist = new_playlist; + if (new_playlist->is_spl && new_playlist->splpref.liveupdate) + itdb_spl_update (new_playlist); if (new_playlist->members) { GTimeVal time; Index: display_private.h =================================================================== RCS file: /cvsroot/gtkpod/gtkpod/src/display_private.h,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- display_private.h 3 Oct 2005 14:23:32 -0000 1.22 +++ display_private.h 19 Nov 2005 07:29:46 -0000 1.23 @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-10-03 22:10:01 jcs> +/* Time-stamp: <2005-11-19 15:41:48 jcs> | | Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net> | Part of the gtkpod project. @@ -79,7 +79,6 @@ void st_remove_track (Track *track, guint32 inst); void st_init (ST_CAT_item new_category, guint32 inst); void st_create_notebook (gint inst); -void st_redisplay (guint32 inst); void st_cleanup (void); void st_set_default_sizes (void); void st_update_default_sizes (void); Index: display_spl.c =================================================================== RCS file: /cvsroot/gtkpod/gtkpod/src/display_spl.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- display_spl.c 12 Nov 2005 13:28:02 -0000 1.13 +++ display_spl.c 19 Nov 2005 07:29:46 -0000 1.14 @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-11-12 22:22:49 jcs> +/* Time-stamp: <2005-11-19 15:41:45 jcs> | | Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users.sourceforge.net> | Part of the gtkpod project. @@ -762,13 +762,7 @@ itdb_spl_copy_rules (spl_orig, spl_dup); - itdb_spl_update (itdb, spl_orig); - - if (pm_get_selected_playlist () == spl_orig) - { /* redisplay */ - pm_unselect_playlist (spl_orig); - pm_select_playlist (spl_orig); - } + itdb_playlist_free (spl_dup); /* does playlist already exist in itdb? */ if (!itdb_playlist_exists (itdb, spl_orig)) @@ -776,7 +770,13 @@ gp_playlist_add (itdb, spl_orig, pos); } - itdb_playlist_free (spl_dup); + itdb_spl_update (spl_orig); + + if (pm_get_selected_playlist () == spl_orig) + { /* redisplay */ + pm_unselect_playlist (spl_orig); + pm_select_playlist (spl_orig); + } spl_store_window_size (spl_window); Index: file_itunesdb.c =================================================================== RCS file: /cvsroot/gtkpod/gtkpod/src/file_itunesdb.c,v retrieving revision 1.69 retrieving revision 1.70 diff -u -d -r1.69 -r1.70 --- file_itunesdb.c 19 Nov 2005 05:32:10 -0000 1.69 +++ file_itunesdb.c 19 Nov 2005 07:29:46 -0000 1.70 @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-11-19 13:46:13 jcs> +/* Time-stamp: <2005-11-19 16:27:44 jcs> | | Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net> | Part of the gtkpod project. @@ -674,8 +674,8 @@ eitdb->data_changed = old_eitdb->data_changed; } - /* update all SPLs */ - itdb_spl_update_all (itdb); + /* update all live SPLs */ + itdb_spl_update_live (itdb); release_widgets(); @@ -1585,7 +1585,18 @@ eitdb = itdb->userdata; g_return_if_fail (eitdb); if (eitdb->data_changed || eitdb->itdb_imported) + { + Playlist *pl; + /* update smart playlists before writing */ + itdb_spl_update_live (itdb); + pl = pm_get_selected_playlist (); + if (pl && (pl->itdb == itdb) && + pl->is_spl && pl->splpref.liveupdate) + { /* Update display if necessary */ + st_redisplay (0); + } success &= gp_write_itdb (itdb); + } } if (prefs_get_concal_autosync ()) ------------------------------------------------------- This SF.Net email is sponsored by the JBoss Inc. Get Certified Today Register for a JBoss Training Course. Free Certification Exam for All Training Attendees Through End of 2005. For more info visit: http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click _______________________________________________ gtkpod-cvs2 mailing list gtkpod-cvs2@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2