[brasero] Use the internal new function brasero_drive_can_write_media ()



commit 888f7965b8fd029ae91f44fac63ab78516e4b5d8
Author: Philippe Rouquier <bonfire-app wanadoo fr>
Date:   Fri Jul 31 16:00:02 2009 +0200

    Use the internal new function brasero_drive_can_write_media ()

 libbrasero-media/brasero-medium.c |   55 ++++++-------------------------------
 1 files changed, 9 insertions(+), 46 deletions(-)
---
diff --git a/libbrasero-media/brasero-medium.c b/libbrasero-media/brasero-medium.c
index 3efca25..5a5fa8c 100644
--- a/libbrasero-media/brasero-medium.c
+++ b/libbrasero-media/brasero-medium.c
@@ -3156,6 +3156,14 @@ brasero_medium_class_init (BraseroMediumClass *klass)
 	                                                      G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
 }
 
+
+/* This function is not public API yet because it was too
+ * late; so use it internally for now. It's mainly for 
+ * convenience.*/
+gboolean
+brasero_drive_can_write_media (BraseroDrive *drive,
+                               BraseroMedia media);
+
 /**
  * brasero_medium_can_be_written:
  * @medium: #BraseroMedium
@@ -3177,52 +3185,7 @@ brasero_medium_can_be_written (BraseroMedium *medium)
 
 	priv = BRASERO_MEDIUM_PRIVATE (medium);
 
-	if (!(priv->info & BRASERO_MEDIUM_REWRITABLE)
-	&&   (priv->info & BRASERO_MEDIUM_CLOSED))
-		return FALSE;
-
-	if (priv->info & BRASERO_MEDIUM_FILE)
-		return FALSE;
-
-	caps = brasero_drive_get_caps (priv->drive);
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_CDR))
-		return (caps & BRASERO_DRIVE_CAPS_CDR) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDR))
-		return (caps & BRASERO_DRIVE_CAPS_DVDR) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDR_PLUS))
-		return (caps & BRASERO_DRIVE_CAPS_DVDR_PLUS) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_CDRW))
-		return (caps & BRASERO_DRIVE_CAPS_CDRW) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW))
-		return (caps & BRASERO_DRIVE_CAPS_DVDRW) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW_RESTRICTED))
-		return (caps & BRASERO_DRIVE_CAPS_DVDRW) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW_PLUS))
-		return (caps & BRASERO_DRIVE_CAPS_DVDRW_PLUS) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDR_PLUS_DL))
-		return (caps & BRASERO_DRIVE_CAPS_DVDR_PLUS_DL) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW_PLUS_DL))
-		return (caps & BRASERO_DRIVE_CAPS_DVDRW_PLUS_DL) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVD_RAM))
-		return (caps & BRASERO_DRIVE_CAPS_DVDRAM) != 0;
-
-	/* All types of BD-R */
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_BD|BRASERO_MEDIUM_WRITABLE))
-		return (caps & BRASERO_DRIVE_CAPS_BDR) != 0;
-
-	if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_BDRE))
-		return (caps & BRASERO_DRIVE_CAPS_BDRW) != 0;
-
-	return FALSE;
+	return brasero_drive_can_write_media (priv->drive, priv->info);
 }
 
 /**



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