コード例 #1
0
ファイル: podfetcher.c プロジェクト: kse/podfetcher
void *update_casts(void *casts) {
	int i;
	int res;

	GtkListStore *store;
	GtkTreeIter iter;

	feed** feeds = NULL;
	feeds = get_feeds(FEED_FILE);

	assert(feeds != NULL);

	store = gtk_list_store_new(COLUMNS, G_TYPE_STRING, 
			G_TYPE_STRING, G_TYPE_STRING);

	for(i = 0; feeds[i] != NULL; i++) {
#ifdef DEBUG
		printf("Fetching: %s\n", feeds[i]->address);
		printf("Basename: %s\n", basename(feeds[i]->address));
#endif
		res = http_download(feeds[i]->address, "/tmp/podfetcher_feed");
		if(res != 0)
			continue;
		parse_feed("/tmp/podfetcher_feed", feeds[i]);

		gtk_list_store_append(store, &iter);
		gtk_list_store_set(store, &iter, FEED_TITLE, (gchar *)feeds[i]->title,
				FEED_AUTHOR, (gchar *)feeds[i]->image, -1);
	}

	gtk_tree_view_set_model(GTK_TREE_VIEW(casts), GTK_TREE_MODEL(store));
	g_object_unref(store);

	pthread_exit(0);
}
コード例 #2
0
ファイル: test.cpp プロジェクト: MartinMReed/hbc-commons-c
void parse_objects(hbc::json_pull& parser, int level) {

  hbc::json_enumeration* enumerator = parser.object_elements();
  
  while (enumerator->has_more_elements()) {
  
    const char* key = enumerator->next_element();
    
    if (strcmp(key, "feed") == 0) {
    
      parse_feed(parser, 1);
    }
    else if (strcmp(key, "version") == 0) {
    
      printf("version[%s]\n", parser.get_string_value());
    }
    else if (strcmp(key, "encoding") == 0) {
    
      printf("encoding[%s]\n", parser.get_string_value());
    }
  }
  
  free(enumerator);
}