diff src/streambrowser/streamdir.c @ 2735:6d6a3eb67510

some work on the streambrowser
author Calin Crisan ccrisan@gmail.com
date Tue, 01 Jul 2008 02:05:25 +0300
parents 28498c0bde64
children 7977bdc02664
line wrap: on
line diff
--- a/src/streambrowser/streamdir.c	Mon Jun 23 12:15:36 2008 +0300
+++ b/src/streambrowser/streamdir.c	Tue Jul 01 02:05:25 2008 +0300
@@ -20,7 +20,7 @@
 	GList *iterator;
 	category_t *category;
 
-	for (iterator = g_list_first(streamdir->category_list); iterator != NULL; iterator = g_list_next(streamdir->category_list)) {
+	for (iterator = g_list_first(streamdir->category_list); iterator != NULL; iterator = g_list_next(iterator)) {
 		category = iterator->data;		
 		category_delete(category);
 	}
@@ -44,7 +44,7 @@
 	GList *iterator;
 	streaminfo_t *streaminfo;
 	
-	for (iterator = g_list_first(category->streaminfo_list); iterator != NULL; iterator = g_list_next(category->streaminfo_list)) {
+	for (iterator = g_list_first(category->streaminfo_list); iterator != NULL; iterator = g_list_next(iterator)) {
 		streaminfo = iterator->data;
 		streaminfo_delete(streaminfo);
 	}
@@ -73,9 +73,9 @@
 	GList *iterator;
 	category_t *category;
 	
-	for (iterator = g_list_first(streamdir->category_list); iterator != NULL; iterator = g_list_next(streamdir->category_list)) {
+	for (iterator = g_list_first(streamdir->category_list); iterator != NULL; iterator = g_list_next(iterator)) {
 		category = iterator->data;
-		if (!strncasecmp(category->name, name, DEF_STRING_LEN))
+		if (strncasecmp(category->name, name, DEF_STRING_LEN) == 0)
 			return category;
 	}
 	
@@ -87,13 +87,19 @@
 	return g_list_length(streamdir->category_list);
 }
 
+gint category_get_index(streamdir_t *streamdir, category_t *category)
+{
+	return g_list_index(streamdir->category_list, category);
+}
 
-streaminfo_t* streaminfo_new(gchar *name, gchar *url)
+
+streaminfo_t* streaminfo_new(gchar *name, gchar *playlist_url, gchar *current_track)
 {
 	streaminfo_t *streaminfo = (streaminfo_t*) g_malloc(sizeof(streaminfo_t));
 	strncpy(streaminfo->name, name, DEF_STRING_LEN);
-	strncpy(streaminfo->url, url, DEF_STRING_LEN);
-	
+	strncpy(streaminfo->playlist_url, playlist_url, DEF_STRING_LEN);
+	strncpy(streaminfo->current_track, current_track, DEF_STRING_LEN);
+
 	return streaminfo;
 }
 
@@ -122,9 +128,9 @@
 	GList *iterator;
 	streaminfo_t *streaminfo;
 	
-	for (iterator = g_list_first(category->streaminfo_list); iterator != NULL; iterator = g_list_next(category->streaminfo_list)) {
+	for (iterator = g_list_first(category->streaminfo_list); iterator != NULL; iterator = g_list_next(iterator)) {
 		streaminfo = iterator->data;
-		if (!strncasecmp(streaminfo->name, name, DEF_STRING_LEN))
+		if (strncasecmp(streaminfo->name, name, DEF_STRING_LEN) == 0)
 			return streaminfo;
 	}
 	
@@ -136,3 +142,9 @@
 	return g_list_length(category->streaminfo_list);
 }
 
+gint streaminfo_get_index(category_t *category, streaminfo_t *streaminfo)
+{
+	return g_list_index(category->streaminfo_list, streaminfo);
+}
+
+