void ui_playlist_notebook_update (void * data, void * user) { gint global_level = GPOINTER_TO_INT (data); if (global_level == PLAYLIST_UPDATE_STRUCTURE) add_remove_pages (); gint lists = aud_playlist_count (); for (gint list = 0; list < lists; list ++) { if (global_level >= PLAYLIST_UPDATE_METADATA) set_tab_label (list, get_tab_label (list)); gint at, count; gint level = aud_playlist_updated_range (list, & at, & count); if (level) ui_playlist_widget_update (playlist_get_treeview (list), level, at, count); } gtk_notebook_set_current_page ((GtkNotebook *) notebook, aud_playlist_get_active ()); do_follow (); }
static void playlist_update_cb (void * data, void * unused) { if (! database) update_database (); else { int list = get_playlist (TRUE, TRUE); int at, count; if (list < 0 || aud_playlist_updated_range (list, & at, & count) >= PLAYLIST_UPDATE_METADATA) update_database (); } }