[girl] GNOME Internet Radio Locator 9.0.0



commit 226645e5573460de729dfef2d93c44ac376d919c
Author: Ole Aamot <oka oka no>
Date:   Sat May 21 10:30:08 2016 +0200

    GNOME Internet Radio Locator 9.0.0

 NEWS                               |    7 ++++
 THANKS                             |    1 +
 configure                          |   20 ++++++------
 configure.ac                       |    2 +-
 data/icons/1024x1024/apps/girl.png |  Bin 100115 -> 105392 bytes
 data/icons/16x16/apps/girl.png     |  Bin 747 -> 729 bytes
 data/icons/22x22/apps/girl.png     |  Bin 998 -> 1083 bytes
 data/icons/24x24/apps/girl.png     |  Bin 1118 -> 1162 bytes
 data/icons/256x256/apps/girl.png   |  Bin 16693 -> 18799 bytes
 data/icons/32x32/apps/girl.png     |  Bin 1431 -> 1614 bytes
 data/icons/48x48/apps/girl.png     |  Bin 2290 -> 2606 bytes
 data/icons/512x512/apps/girl.png   |  Bin 39550 -> 44028 bytes
 girl.spec.in                       |    3 ++
 src/Makefile.am                    |    2 +-
 src/Makefile.in                    |    2 +-
 src/girl-gui.c                     |   10 +++---
 src/girl-station.c                 |   64 +++++++++++++++++++++++------------
 src/girl-stations-map.c            |    2 +
 src/girl-streams.c                 |    4 ++-
 src/girl.c                         |   48 ++++++++++++++++-----------
 src/girl.h                         |    1 +
 21 files changed, 105 insertions(+), 61 deletions(-)
---
diff --git a/NEWS b/NEWS
index 7861c94..bbaefb8 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,11 @@
 =============
+Version 9.0.0
+=============
+
+GUI
+       * girl-station.c: Added file dialog for recording of radio broadcasts.
+
+=============
 Version 8.4.0
 =============
 
diff --git a/THANKS b/THANKS
index 7ca60e1..6dca710 100644
--- a/THANKS
+++ b/THANKS
@@ -29,3 +29,4 @@ Rafael Fontenelle for Brazilian Portuguese translation.
 Andy Daniel Cruz Campos for Spanish translation.
 Mирослав Николић for Serbian translation.
 Balázs Meskó for Hungarian translation.
+Petter Reinholdtsen for tip on adding a file requester for recording.
diff --git a/configure b/configure
index c09d5ca..99d7b16 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for girl 8.4.2.
+# Generated by GNU Autoconf 2.69 for girl 9.0.0.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -577,8 +577,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='girl'
 PACKAGE_TARNAME='girl'
-PACKAGE_VERSION='8.4.2'
-PACKAGE_STRING='girl 8.4.2'
+PACKAGE_VERSION='9.0.0'
+PACKAGE_STRING='girl 9.0.0'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1364,7 +1364,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures girl 8.4.2 to adapt to many kinds of systems.
+\`configure' configures girl 9.0.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1430,7 +1430,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of girl 8.4.2:";;
+     short | recursive ) echo "Configuration of girl 9.0.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1545,7 +1545,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-girl configure 8.4.2
+girl configure 9.0.0
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1910,7 +1910,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by girl $as_me 8.4.2, which was
+It was created by girl $as_me 9.0.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2773,7 +2773,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='girl'
- VERSION='8.4.2'
+ VERSION='9.0.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -7457,7 +7457,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by girl $as_me 8.4.2, which was
+This file was extended by girl $as_me 9.0.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -7523,7 +7523,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-girl config.status 8.4.2
+girl config.status 9.0.0
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 5d33786..59361a4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@
 # Process this file with autoconf to produce a configure script.
 
 AC_PREREQ(2.59)
-AC_INIT(girl, 8.4.2)
+AC_INIT(girl, 9.0.0)
 AM_INIT_AUTOMAKE([no-dist-gzip dist-xz])
 AC_CONFIG_SRCDIR([src/girl.c])
 AC_CONFIG_HEADER([config.h])
diff --git a/data/icons/1024x1024/apps/girl.png b/data/icons/1024x1024/apps/girl.png
index 404d0ad..ac6584a 100644
Binary files a/data/icons/1024x1024/apps/girl.png and b/data/icons/1024x1024/apps/girl.png differ
diff --git a/data/icons/16x16/apps/girl.png b/data/icons/16x16/apps/girl.png
index 3f936e8..904f3c6 100644
Binary files a/data/icons/16x16/apps/girl.png and b/data/icons/16x16/apps/girl.png differ
diff --git a/data/icons/22x22/apps/girl.png b/data/icons/22x22/apps/girl.png
index 4cf0f2f..19e7b95 100644
Binary files a/data/icons/22x22/apps/girl.png and b/data/icons/22x22/apps/girl.png differ
diff --git a/data/icons/24x24/apps/girl.png b/data/icons/24x24/apps/girl.png
index c7a3f78..986eff1 100644
Binary files a/data/icons/24x24/apps/girl.png and b/data/icons/24x24/apps/girl.png differ
diff --git a/data/icons/256x256/apps/girl.png b/data/icons/256x256/apps/girl.png
index 21bc84e..de7146d 100644
Binary files a/data/icons/256x256/apps/girl.png and b/data/icons/256x256/apps/girl.png differ
diff --git a/data/icons/32x32/apps/girl.png b/data/icons/32x32/apps/girl.png
index 8d5b15c..1f0f99b 100644
Binary files a/data/icons/32x32/apps/girl.png and b/data/icons/32x32/apps/girl.png differ
diff --git a/data/icons/48x48/apps/girl.png b/data/icons/48x48/apps/girl.png
index a90f299..804c801 100644
Binary files a/data/icons/48x48/apps/girl.png and b/data/icons/48x48/apps/girl.png differ
diff --git a/data/icons/512x512/apps/girl.png b/data/icons/512x512/apps/girl.png
index 130bcd2..7503bfa 100644
Binary files a/data/icons/512x512/apps/girl.png and b/data/icons/512x512/apps/girl.png differ
diff --git a/girl.spec.in b/girl.spec.in
index d1271b3..7fdd817 100644
--- a/girl.spec.in
+++ b/girl.spec.in
@@ -70,6 +70,9 @@ fi
 %{_datadir}/help/*/%{name}
 
 %changelog
+* Sat May 21 2016 Ole Aamot - 8.5.0-1.fc23
+- Girl 8.5.0 build on Fedora Linux 23
+
 * Sun May 01 2016 Ole Aamot - 8,4.2-1.fc23
 - Girl 8.4.2 build on Fedora Linux 23
 
diff --git a/src/Makefile.am b/src/Makefile.am
index 23cdd00..fc13bad 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -36,7 +36,7 @@ girl_SOURCES = \
 girl_CFLAGS  = $(GIRL_CFLAGS) \
               -DGIRL_DATADIR=\"$(datadir)/girl\" \
               -DDATADIR=\"$(datadir)\" \
-              -DGIRL_DEBUG=1 \
+              -DGIRL_DEBUG=0 \
               -DGIRL_CFG \
               -DGIRL_HELPER_PLAYER=\"$(GIRL_HELPER_PLAYER)\" \
               -DGIRL_HELPER_RECORD=\"$(GIRL_HELPER_RECORD)\" \
diff --git a/src/Makefile.in b/src/Makefile.in
index 762a076..9bce41f 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -392,7 +392,7 @@ girl_SOURCES = \
 girl_CFLAGS = $(GIRL_CFLAGS) \
               -DGIRL_DATADIR=\"$(datadir)/girl\" \
               -DDATADIR=\"$(datadir)\" \
-              -DGIRL_DEBUG=1 \
+              -DGIRL_DEBUG=0 \
               -DGIRL_CFG \
               -DGIRL_HELPER_PLAYER=\"$(GIRL_HELPER_PLAYER)\" \
               -DGIRL_HELPER_RECORD=\"$(GIRL_HELPER_RECORD)\" \
diff --git a/src/girl-gui.c b/src/girl-gui.c
index ded826a..7d688bf 100644
--- a/src/girl-gui.c
+++ b/src/girl-gui.c
@@ -772,16 +772,16 @@ GtkWidget *create_new_station_selector(void) {
        GtkEntryCompletion *completion;
        GtkListStore *location_model;
        GtkTreeIter iter;
-       gint retval;
        TzDB *db;
        GPtrArray *locs;
        guint i;
-       char *pixmap_dir;
-
+       char *pixmap_dir = NULL;
+       gchar *path = NULL;
        setlocale (LC_ALL, "C");
 
        gchar *world_station_xml_filename, *local_station_xml_file;
-
+       gint retval;
+       
        /* int i = 0, search_selection = -1; */
 
        GStatBuf stats;
@@ -860,7 +860,7 @@ GtkWidget *create_new_station_selector(void) {
        for (i = 0; i < locs->len ; i++) {
                TzLocation *loc = locs->pdata[i];
                TzInfo *info;
-               char *filename, *path;
+               char *filename;
                gdouble selected_offset;
                char buf[16];
                info = tz_info_from_location (loc);
diff --git a/src/girl-station.c b/src/girl-station.c
index b69ec35..30e9509 100644
--- a/src/girl-station.c
+++ b/src/girl-station.c
@@ -149,20 +149,13 @@ void girl_helper_run(char *url, char *name, GirlStreamType type, GirlHelperType
 {
        GError *err = NULL;
        GTimeVal mtime;
-
        /* const char *mime_info = NULL; */
        /* GnomeVFSMimeApplication *app; */
        char *app = NULL, *command = NULL, *msg = NULL;
-        /* char *archive; */
        char **argv = NULL;
        gint argc;
-       /* gint status; */
-
-       GPid        pid;
-       gint        out, error;
-       GIOChannel *out_ch, *err_ch;
        gboolean    ret;
-
+       
        if (signal(SIGCHLD, SIG_IGN) == SIG_ERR) {
                perror(0);
                exit(1);
@@ -195,10 +188,45 @@ void girl_helper_run(char *url, char *name, GirlStreamType type, GirlHelperType
                                /* argv[1] = g_strdup(url); */
                        }
                        if (helper == GIRL_STREAM_RECORD) {
-                               /* archive = g_strconcat("file://", g_get_home_dir(), "/.girl/", name, NULL); 
*/
-                               /* girl_archive_new(url, archive); */
+
+                               GtkWidget *dialog;
+                               char *filename, *default_filename;
+                               GDate gdate;
+                               time_t t;
+                               struct tm *tmp;
+                               char outstr[200];
+                               t = time(NULL);
+                               tmp = localtime(&t);
+                               strftime(outstr, sizeof(outstr), "%a, %d %b %Y %T %z", tmp);
+                               dialog = gtk_file_chooser_dialog_new ("Save Recorded Broadcast File",
+                                                                     GTK_WINDOW(girl_app),
+                                                                     GTK_FILE_CHOOSER_ACTION_SAVE,
+                                                                     GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+                                                                     GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
+                                                                     NULL);
+                               default_filename = g_strconcat(girl->selected_station_name, " - Broadcast 
Recording - ", outstr, ".mp3", NULL);  
+                               gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), 
default_filename);
+                               if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
+                               {
+                                       filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
+                                       girl->selected_archive_file = g_strconcat(filename, NULL);
+                               }
+                               gtk_widget_destroy (dialog);
+                               
                                /* printf("Archiving program at %s\n", archive); */
-                               command = g_strconcat(app, " ", url, NULL);
+                               
+                               appbar_send_msg(_("Recording from %s in %s to %s"),
+                                               girl->selected_station_name,
+                                               girl->selected_station_location,
+                                               girl->selected_station_uri,
+                                               girl->selected_archive_file);           
+                               
+                               command = g_strconcat(app, " ", url, " -d ", g_get_home_dir(), "/.girl/ -D 
%D", NULL);
+
+                               GIRL_DEBUG_MSG("%s\n", command);
+
+                               // girl_archive_new("Archive", girl->selected_archive_file);
+                               
                                /* " -d ", g_get_home_dir(), "/.girl -D \"", name, "\" -s -a -u girl/", 
VERSION, NULL); */
                                /* command = g_strconcat(command, " -d ", g_get_home_dir(), "/.girl/", name, 
" -D %S%A%T -t 10 -u girl/", VERSION, NULL); */
                        }
@@ -226,8 +254,6 @@ void girl_helper_run(char *url, char *name, GirlStreamType type, GirlHelperType
        }
 
        if (helper == GIRL_STREAM_PLAYER) {
-
-
 #if 0
                g_shell_parse_argv(command,
                                   &argc,
@@ -358,12 +384,12 @@ void girl_helper_run(char *url, char *name, GirlStreamType type, GirlHelperType
                /* girl->record_pid = pid; */
                girl->record_status = GIRL_RECORD_TRUE;
 
-               girl_archive_new("Archive", "archive.mp3");
+               girl_archive_new("Archive", girl->selected_archive_file);
                                
                /* Install timeout fnction that will move the progress bar */
                girl->timeout_id = g_timeout_add(100,(GSourceFunc)cb_timeout,girl);
 /* #endif */
-/* #if 0 */
+#if 0 
                ret = g_spawn_async_with_pipes( NULL, /* command */ argv, NULL,
                                                G_SPAWN_DO_NOT_REAP_CHILD|G_SPAWN_DEFAULT, NULL,
                                                NULL, &girl->record_pid, NULL, &out, &error, NULL );
@@ -390,7 +416,7 @@ void girl_helper_run(char *url, char *name, GirlStreamType type, GirlHelperType
                g_io_add_watch( err_ch, G_IO_IN | G_IO_HUP, (GIOFunc)cb_err_watch, girl );
                /* Install timeout fnction that will move the progress bar */
                girl->timeout_id = g_timeout_add( 100, (GSourceFunc)cb_timeout, girl );
-/* #endif */
+#endif
 #if 0
                if (!g_spawn_command_line_sync(command, stdout, stderr, status, &err)) {
                        msg = g_strdup_printf(_("Failed to open URL: '%s'\n"
@@ -644,14 +670,8 @@ gint girl_station_update (GirlStationInfo *head, gchar *station_band, gchar *sta
                gchar *local_girl_directory = g_strconcat(g_get_home_dir(), "/.girl");
                g_mkdir_with_parents (local_girl_directory, 0700);
                
-               // fp = fopen(stations, "w");
-                       
-               // fprintf(fp, "<?xml version='1.0' encoding='UTF-8'?>\n<!DOCTYPE girl SYSTEM 
'girl-8.0.dtd'>\n<girl version='8.0'></girl>\n");
-
-               // fclose(fp);
        }
        
-       /* GList *l = NULL; */
        FILE *fp;
        
        stationinfo = girl_station_load_from_file(NULL, stations);
diff --git a/src/girl-stations-map.c b/src/girl-stations-map.c
index abe1af1..a754cfe 100644
--- a/src/girl-stations-map.c
+++ b/src/girl-stations-map.c
@@ -316,6 +316,7 @@ convert_latitude_to_y (gdouble latitude, gdouble map_height)
   return y;
 }
 
+#if 0
 static void
 draw_text_bubble (cairo_t *cr,
                   GtkWidget *widget,
@@ -387,6 +388,7 @@ draw_text_bubble (cairo_t *cr,
   g_object_unref (layout);
   cairo_restore (cr);
 }
+#endif
 
 /* static gboolean */
 /* girl_stations_map_draw (GtkWidget *widget, */
diff --git a/src/girl-streams.c b/src/girl-streams.c
index 35b2da0..b0a7277 100644
--- a/src/girl-streams.c
+++ b/src/girl-streams.c
@@ -75,9 +75,11 @@ girl_streams_parser(GirlStreamsInfo *streams, xmlDocPtr doc,
        streams->bitrate = (gchar *)xmlGetProp(cur, (const xmlChar *)"bitrate");
        GIRL_DEBUG_MSG("streams->bitrate = %s\n", streams->bitrate);
        streams->channels = (GirlChannels)xmlGetProp(cur, (const xmlChar *)"channels");
-       GIRL_DEBUG_MSG("streams->channels = %s\n", streams->channels);
+
 
 #if 0
+       GIRL_DEBUG_MSG("streams->channels = %\n", streams->channels);
+       
        sub = cur->xmlChildrenNode;
 
        while (sub != NULL) {
diff --git a/src/girl.c b/src/girl.c
index c57092e..2dec9bb 100644
--- a/src/girl.c
+++ b/src/girl.c
@@ -22,6 +22,7 @@
  */
 
 #include <config.h>
+#include <glib/gstdio.h>
 #include <gnome.h>
 #include <libgnomevfs/gnome-vfs.h>
 #include <libgnomevfs/gnome-vfs-application-registry.h>
@@ -266,7 +267,7 @@ void on_new_station_clicked(GtkWidget *a,
 {
        GtkWidget *station;
        GirlStationInfo *stationinfo;
-       GList *l = g_list_first(girl_stations);
+       /* GList *l = g_list_first(girl_stations); */
 
        /* stationinfo = l->data; */
        gint result;
@@ -316,7 +317,7 @@ void on_new_station_clicked(GtkWidget *a,
 void on_new_station_selector_changed(GtkWidget *a,
                                     gpointer user_data)
 {
-       GtkWidget *station;
+       /* GtkWidget *station; */
 
 }
 
@@ -466,8 +467,8 @@ void on_stations_selector_changed(GtkWidget * a, gpointer user_data)
 
 void on_new_station_changed(GtkWidget * a, gpointer user_data)
 {
-       GirlStationInfo *stationinfo;
-       GList *l = g_list_first(girl_stations);
+       GirlStationInfo *stationinfo = NULL;
+       /* GList *l = g_list_first(girl_stations); */
        /* stationinfo = l->data; */
 
        if (girl->selected_station_uri != NULL)
@@ -607,11 +608,10 @@ void quit_app(GtkWidget * a, gpointer user_data)
        }
        // stationinfo = l->data;
        // girl_station_save(stationinfo, NULL, NULL, NULL, NULL, NULL, NULL);
-
        g_spawn_close_pid(girl->record_pid);
        g_spawn_close_pid(girl->player_pid);
-       kill(girl->player_pid,SIGQUIT);
-       kill(girl->record_pid,SIGQUIT);
+       // kill(girl->record_pid,SIGHUP);
+       // kill(girl->player_pid,SIGHUP);
        gtk_main_quit();
 }
 
@@ -719,13 +719,13 @@ void about_listener(GtkWidget * a, gpointer user_data)
 
 void about_program(GtkWidget * a, gpointer user_data)
 {
-       GtkWidget *about_program;
+       GtkWidget *about_program = NULL;
        
        /* const gchar *translator_credits = _("translator_credits"); */
-       const gchar *authors[] = {
-               girl->selected_program_name,
-               NULL,
-       };
+       /* const gchar *authors[] = { */
+       /*      girl->selected_program_name, */
+       /*      NULL, */
+       /* }; */
 
        /* about_program->window = gtk_window_new(GTK_WINDOW_TOPLEVEL); */
                
@@ -848,12 +848,6 @@ void on_record_button_clicked(GtkWidget *a, gpointer user_data)
        credentials = g_credentials_new ();
        
        if (girl->selected_station_name != NULL) {
-               appbar_send_msg(_("Recording from the radio station %s in %s: %s "),
-                               girl->selected_station_name,
-                               girl->selected_station_location,
-                               girl->selected_station_uri,
-                               girl->selected_station_band);
-               
                girl_helper_run(girl->selected_station_uri,
                                girl->selected_station_name,
                                GIRL_STREAM_SHOUTCAST,
@@ -884,11 +878,11 @@ void on_stop_button_clicked(GtkWidget *a, gpointer user_data)
                
                g_spawn_close_pid( girl->record_pid);
 
-               appbar_send_msg(_("Finished recording from the radio station %s in %s: %s"),
+               appbar_send_msg(_("Finished saving recording from the radio station %s in %s from %s to %s"),
                                girl->selected_station_name,
                                girl->selected_station_location,
                                girl->selected_station_uri,
-                               girl->selected_station_band);
+                               girl->selected_archive_file);
 
                girl->record_status = GIRL_RECORD_FALSE;
                
@@ -954,5 +948,19 @@ girl_archive_progress_callback(GnomeVFSXferProgressInfo * info, gpointer data)
 }
 
 gint girl_archive_new(gchar *title, gchar *file)
+       
 {
+       int ret;
+       gchar *oldpath, *newpath;
+
+       oldpath = g_strconcat(g_get_home_dir(), "/.girl/incomplete/ - .mp3", NULL);
+       newpath = g_strconcat(file, NULL);
+       
+       GIRL_DEBUG_MSG("Renaming %s to %s\n", oldpath, newpath);
+       
+       ret = g_rename(oldpath, newpath);
+
+       GIRL_DEBUG_MSG("Renamed %s to %s\n", oldpath, newpath);
+
+       return ret;
 }
diff --git a/src/girl.h b/src/girl.h
index 627f543..8125f8e 100644
--- a/src/girl.h
+++ b/src/girl.h
@@ -104,6 +104,7 @@ struct _GirlData {
        GtkAboutDialog *window;
        GtkStatusbar *statusbar;
        GtkWidget *about_station;
+       gchar *selected_archive_file;
        GirlListenerInfo *selected_listener;
        gchar *selected_listener_uri;
        gchar *selected_listener_name;


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