[brasero/gnome-2-28] Revert "Use totem_pl_parser_save() for playlist saving."
- From: Bastien Nocera <hadess src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [brasero/gnome-2-28] Revert "Use totem_pl_parser_save() for playlist saving."
- Date: Tue, 26 Jan 2010 15:00:27 +0000 (UTC)
commit c8c5935eb5ec735923cb44eddadf3170c808de91
Author: Bastien Nocera <hadess hadess net>
Date: Tue Jan 26 14:59:59 2010 +0000
Revert "Use totem_pl_parser_save() for playlist saving."
This reverts commit 1178032a641c4e20eb640b78376596e9a20e9fa4.
Wrong branch
src/brasero-project-parse.c | 59 +++++++++++++++++++++++++++++--------------
1 files changed, 40 insertions(+), 19 deletions(-)
---
diff --git a/src/brasero-project-parse.c b/src/brasero-project-parse.c
index 9be75c3..ffacf46 100644
--- a/src/brasero-project-parse.c
+++ b/src/brasero-project-parse.c
@@ -1054,6 +1054,21 @@ error:
#ifdef BUILD_PLAYLIST
+static void
+brasero_project_save_audio_playlist_entry (GtkTreeModel *model,
+ GtkTreeIter *iter,
+ gchar **uri,
+ gchar **title,
+ gboolean *custom_title,
+ gpointer user_data)
+{
+ gtk_tree_model_get (model, iter,
+ 0, uri,
+ 1, title,
+ 2, custom_title,
+ -1);
+}
+
gboolean
brasero_project_save_audio_project_playlist (BraseroBurnSession *session,
const gchar *uri,
@@ -1061,33 +1076,34 @@ brasero_project_save_audio_project_playlist (BraseroBurnSession *session,
{
TotemPlParserType pl_type;
TotemPlParser *parser;
- TotemPlPlaylist *playlist;
- TotemPlPlaylistIter pl_iter;
+ GtkListStore *model;
+ GtkTreeIter t_iter;
gboolean result;
- GFile *file;
GSList *iter;
+ gchar *path;
+
+ path = g_filename_from_uri (uri, NULL, NULL);
+ if (!path)
+ return FALSE;
- file = g_file_new_for_uri (uri);
parser = totem_pl_parser_new ();
- playlist = totem_pl_playlist_new ();
- /* populate playlist */
+ /* create and populate treemodel */
+ model = gtk_list_store_new (3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN);
iter = brasero_burn_session_get_tracks (session);
for (; iter; iter = iter->next) {
BraseroTrackStream *track;
- const gchar *title;
gchar *uri;
track = iter->data;
uri = brasero_track_stream_get_source (track, TRUE);
- title = brasero_track_tag_lookup_string (BRASERO_TRACK (track), BRASERO_TRACK_STREAM_TITLE_TAG);
-
- totem_pl_playlist_append (playlist, &pl_iter);
- totem_pl_playlist_set (playlist, &pl_iter,
- TOTEM_PL_PARSER_FIELD_URI, uri,
- TOTEM_PL_PARSER_FIELD_TITLE, title,
- NULL);
+ gtk_list_store_append (model, &t_iter);
+ gtk_list_store_set (model, &t_iter,
+ 0, uri,
+ 1, brasero_track_tag_lookup_string (BRASERO_TRACK (track), BRASERO_TRACK_STREAM_TITLE_TAG),
+ 2, TRUE,
+ -1);
g_free (uri);
}
@@ -1108,13 +1124,18 @@ brasero_project_save_audio_project_playlist (BraseroBurnSession *session,
break;
}
- result = totem_pl_parser_save (parser, playlist, file,
- brasero_burn_session_get_label (session),
- type, NULL);
+ result = totem_pl_parser_write_with_title (parser,
+ GTK_TREE_MODEL (model),
+ brasero_project_save_audio_playlist_entry,
+ path,
+ brasero_burn_session_get_label (session),
+ pl_type,
+ NULL,
+ NULL);
- g_object_unref (playlist);
+ g_object_unref (model);
g_object_unref (parser);
- g_object_unref (file);
+ g_free (path);
return result;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]