rhythmbox r5884 - in trunk: . remote/dbus sources
- From: jmatthew svn gnome org
- To: svn-commits-list gnome org
- Subject: rhythmbox r5884 - in trunk: . remote/dbus sources
- Date: Fri,  5 Sep 2008 14:47:30 +0000 (UTC)
Author: jmatthew
Date: Fri Sep  5 14:47:30 2008
New Revision: 5884
URL: http://svn.gnome.org/viewvc/rhythmbox?rev=5884&view=rev
Log:
2008-09-06  Jonathan Matthew  <jonathan d14n org>
	* remote/dbus/rb-client.c: (parse_pattern):
	* sources/rb-library-source.c: (filepath_parse_pattern):
	Implement %ts, %as, %tS, and %aS (artist sortname) substitutions.
Modified:
   trunk/ChangeLog
   trunk/remote/dbus/rb-client.c
   trunk/sources/rb-library-source.c
Modified: trunk/remote/dbus/rb-client.c
==============================================================================
--- trunk/remote/dbus/rb-client.c	(original)
+++ trunk/remote/dbus/rb-client.c	Fri Sep  5 14:47:30 2008
@@ -231,14 +231,16 @@
 				if (value)
 					string = g_value_dup_string (value);
 				break;
-			/*case 's':
-				string = sanitize_path (album sort name);
+			case 's':
+				value = g_hash_table_lookup (properties, "mb-artistsortname");
+				if (value)
+					string = g_value_dup_string (value);
 				break;
 			case 'S':
-				char *t = g_utf8_strdown (album sort name)
-				string = sanitize_path (t);
-				g_free (t);
-				break;*/
+				value = g_hash_table_lookup (properties, "mb-artistsortname");
+				if (value)
+					string = g_utf8_strdown (g_value_get_string (value), -1);
+				break;
 			case 'y':
 				/* Release year */
 				value = g_hash_table_lookup (properties, "year");
@@ -298,14 +300,16 @@
 				if (value)
 					string = g_value_dup_string (value);
 				break;
-			/*case 's':
-				string = sanitize_path (artist sort name);
+			case 's':
+				value = g_hash_table_lookup (properties, "mb-artistsortname");
+				if (value)
+					string = g_value_dup_string (value);
 				break;
 			case 'S':
-				char *t = g_utf8_strdown (artist sort name)
-				string = sanitize_path (t);
-				g_free (t);
-				break;*/
+				value = g_hash_table_lookup (properties, "mb-artistsortname");
+				if (value)
+					string = g_utf8_strdown (g_value_get_string (value), -1);
+				break;
 			case 'n':
 				/* Track number */
 				value = g_hash_table_lookup (properties, "track-number");
Modified: trunk/sources/rb-library-source.c
==============================================================================
--- trunk/sources/rb-library-source.c	(original)
+++ trunk/sources/rb-library-source.c	Fri Sep  5 14:47:30 2008
@@ -846,6 +846,7 @@
 	p = pattern;
 	while (*p) {
 		char *string = NULL;
+		char *t;
 
 		/* If not a % marker, copy and continue */
 		if (*p != '%') {
@@ -871,7 +872,7 @@
 				string = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ALBUM));
 				break;
 			case 'T':
-				temp = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ALBUM_FOLDED));
+				string = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ALBUM_FOLDED));
 				break;
 			case 'a':
 				string = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ARTIST));
@@ -879,14 +880,14 @@
 			case 'A':
 				string = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ARTIST_FOLDED));
 				break;
-			/*case 's':
-				string = sanitize_path (album sort name);
+			case 's':
+				string = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ARTIST_SORTNAME));
 				break;
 			case 'S':
-				char *t = g_utf8_strdown (album sort name)
+				t = g_utf8_strdown (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ARTIST_SORTNAME), -1);
 				string = sanitize_path (t);
 				g_free (t);
-				break;*/
+				break;
 			default:
 				string = g_strdup_printf ("%%a%c", *p);
 			}
@@ -910,14 +911,14 @@
 			case 'A':
 				string = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ARTIST_FOLDED));
 				break;
-			/*case 's':
-				string = sanitize_path (artist sort name);
+			case 's':
+				string = sanitize_path (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ARTIST_SORTNAME));
 				break;
 			case 'S':
-				char *t = g_utf8_strdown (artist sort name)
+				t = g_utf8_strdown (rhythmdb_entry_get_string (entry, RHYTHMDB_PROP_ARTIST_SORTNAME), -1);
 				string = sanitize_path (t);
 				g_free (t);
-				break;*/
+				break;
 			case 'n':
 				/* Track number */
 				string = g_strdup_printf ("%u", (guint)rhythmdb_entry_get_ulong (entry, RHYTHMDB_PROP_TRACK_NUMBER));
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]