static void pragha_playlist_update_statusbar_playtime (PraghaPlaylist *playlist, PraghaApplication *pragha) { PraghaStatusbar *statusbar; gint total_playtime = 0, no_tracks = 0; gchar *str, *tot_str; if(pragha_playlist_is_changing(playlist)) return; total_playtime = pragha_playlist_get_total_playtime (playlist); no_tracks = pragha_playlist_get_no_tracks (playlist); tot_str = convert_length_str(total_playtime); str = g_strdup_printf("%i %s - %s", no_tracks, ngettext("Track", "Tracks", no_tracks), tot_str); CDEBUG(DBG_VERBOSE, "Updating status bar with new playtime: %s", tot_str); statusbar = pragha_application_get_statusbar (pragha); pragha_statusbar_set_main_text(statusbar, str); g_free(tot_str); g_free(str); }
static void pragha_filter_dialog_fill_model (GtkListStore *filter_model, PraghaPlaylist *cplaylist) { GtkTreeIter filter_iter; PraghaMusicobject *mobj = NULL; gchar *ch_title = NULL, *ch_artist = NULL, *ch_album = NULL; const gchar *file, *title, *artist, *album; gchar *track_data_markup = NULL; gint track_i = 0; GList *list = NULL, *i; list = pragha_playlist_get_mobj_list(cplaylist); track_i = pragha_playlist_get_no_tracks(cplaylist); if(list != NULL) { for (i=list; i != NULL; i = i->next) { mobj = i->data; file = pragha_musicobject_get_file(mobj); title = pragha_musicobject_get_title(mobj); artist = pragha_musicobject_get_artist(mobj); album = pragha_musicobject_get_album(mobj); ch_title = string_is_not_empty(title) ? g_strdup(title) : get_display_filename (file, FALSE); ch_artist = string_is_not_empty(artist) ? g_strdup(artist) : g_strdup(_("Unknown Artist")); ch_album = string_is_not_empty(album) ? g_strdup(album) : g_strdup(_("Unknown Album")); track_data_markup = g_markup_printf_escaped ("%s - %s - %s", ch_title, ch_artist, ch_album); if (track_data_markup != NULL) { gtk_list_store_prepend (filter_model, &filter_iter); gtk_list_store_set (filter_model, &filter_iter, 0, track_i, 1, track_data_markup, -1); } track_i--; g_free (ch_title); g_free (ch_artist); g_free (ch_album); g_free (track_data_markup); } g_list_free(list); } }