brasero r1499 - in trunk: . src



Author: philippr
Date: Sat Nov  8 21:23:31 2008
New Revision: 1499
URL: http://svn.gnome.org/viewvc/brasero?rev=1499&view=rev

Log:
	Allow to burn NCB data project straight from the command line

	* src/brasero-data-disc.c (brasero_data_disc_project_loaded_cb),
	(brasero_data_disc_load_track), (brasero_data_disc_get_status):
	* src/brasero-data-project.c (brasero_data_project_is_empty):
	* src/brasero-project-manager.c (brasero_project_manager_data):
	* src/brasero-project.c (brasero_project_set_data):
	* src/brasero-project.h:
	* src/main.c (brasero_app_parse_options):

Modified:
   trunk/ChangeLog
   trunk/src/brasero-data-disc.c
   trunk/src/brasero-data-project.c
   trunk/src/brasero-project-manager.c
   trunk/src/brasero-project.c
   trunk/src/brasero-project.h
   trunk/src/main.c

Modified: trunk/src/brasero-data-disc.c
==============================================================================
--- trunk/src/brasero-data-disc.c	(original)
+++ trunk/src/brasero-data-disc.c	Sat Nov  8 21:23:31 2008
@@ -703,8 +703,6 @@
 
 		gtk_widget_destroy (message);
 	}
-
-	priv->loading = FALSE;
 }
 
 static void
@@ -1675,7 +1673,6 @@
 	priv->loading = brasero_data_project_load_contents (priv->project,
 							    track->contents.data.grafts,
 							    track->contents.data.excluded);
-
 	if (!priv->loading) {
 		gtk_widget_set_sensitive (GTK_WIDGET (priv->tree), TRUE);
 		gtk_widget_set_sensitive (GTK_WIDGET (priv->filter), TRUE);
@@ -1715,15 +1712,18 @@
 	BraseroDataDiscPrivate *priv;
 
 	priv = BRASERO_DATA_DISC_PRIVATE (disc);
+
 	if (priv->loading)
 		return BRASERO_DISC_LOADING;
 
-	if (brasero_data_project_is_empty (priv->project))
-		return BRASERO_DISC_ERROR_EMPTY_SELECTION;
-	
+	/* This one goes before the next since a node may be loading but not
+	 * yet in the project and therefore project will look empty */
 	if (brasero_data_vfs_is_active (BRASERO_DATA_VFS (priv->project)))
 		return BRASERO_DISC_NOT_READY;
 
+	if (brasero_data_project_is_empty (priv->project))
+		return BRASERO_DISC_ERROR_EMPTY_SELECTION;
+
 	return BRASERO_DISC_OK;
 }
 

Modified: trunk/src/brasero-data-project.c
==============================================================================
--- trunk/src/brasero-data-project.c	(original)
+++ trunk/src/brasero-data-project.c	Sat Nov  8 21:23:31 2008
@@ -2568,7 +2568,6 @@
 	BraseroDataProjectPrivate *priv;
 
 	priv = BRASERO_DATA_PROJECT_PRIVATE (self);
-
 	if (g_hash_table_size (priv->grafts))
 		return FALSE;
 

Modified: trunk/src/brasero-project-manager.c
==============================================================================
--- trunk/src/brasero-project-manager.c	(original)
+++ trunk/src/brasero-project-manager.c	Sat Nov  8 21:23:31 2008
@@ -852,11 +852,17 @@
 		uris = g_slist_prepend (NULL, burn_URI);
 	}
 
-	brasero_project_manager_switch (manager,
-					BRASERO_PROJECT_TYPE_DATA,
-					uris,
-					NULL,
-					TRUE);
+	if (manager->priv->oneshot) {
+		brasero_project_set_data (BRASERO_PROJECT (manager->priv->project),
+					  uris);
+		brasero_project_burn (BRASERO_PROJECT (manager->priv->project));
+	}
+	else
+		brasero_project_manager_switch (manager,
+						BRASERO_PROJECT_TYPE_DATA,
+						uris,
+						NULL,
+						TRUE);
 	
 	if (burn_URI) {
 		g_slist_free (uris);

Modified: trunk/src/brasero-project.c
==============================================================================
--- trunk/src/brasero-project.c	(original)
+++ trunk/src/brasero-project.c	Sat Nov  8 21:23:31 2008
@@ -1004,7 +1004,8 @@
 }
 
 void
-brasero_project_set_data (BraseroProject *project, GSList *uris)
+brasero_project_set_data (BraseroProject *project,
+			  GSList *uris)
 {
 	brasero_project_switch (project, BRASERO_PROJECT_TYPE_DATA);
 

Modified: trunk/src/brasero-project.h
==============================================================================
--- trunk/src/brasero-project.h	(original)
+++ trunk/src/brasero-project.h	Sat Nov  8 21:23:31 2008
@@ -64,6 +64,9 @@
 GType brasero_project_get_type ();
 GtkWidget *brasero_project_new ();
 
+void
+brasero_project_burn (BraseroProject *project);
+
 gboolean
 brasero_project_confirm_switch (BraseroProject *project);
 

Modified: trunk/src/main.c
==============================================================================
--- trunk/src/main.c	(original)
+++ trunk/src/main.c	Sat Nov  8 21:23:31 2008
@@ -298,6 +298,7 @@
 		brasero_project_manager_set_oneshot (BRASERO_PROJECT_MANAGER (manager), TRUE);
 		brasero_project_manager_data (BRASERO_PROJECT_MANAGER (manager), list);
 		g_slist_free (list);
+		return;
 	}
 	else if (files) {
 		if (g_strv_length (files) == 1) {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]