Move usb scanning code to ao-tools library
[fw/altos] / ao-view / aoview_file.c
diff --git a/ao-view/aoview_file.c b/ao-view/aoview_file.c
deleted file mode 100644 (file)
index 5288c2f..0000000
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
- * Copyright © 2009 Keith Packard <keithp@keithp.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
-
-#include "aoview.h"
-
-char *aoview_file_dir;
-
-#define ALTOS_DIR_PATH "/apps/aoview/log_dir"
-#define DEFAULT_DIR    "AltOS"
-
-struct aoview_file {
-       char    *ext;
-       FILE    *file;
-       char    *name;
-       int     failed;
-       int     serial;
-       int     sequence;
-};
-
-static void
-aoview_file_save_conf(void)
-{
-       GConfClient     *gconf_client;
-
-       gconf_client = gconf_client_get_default();
-       if (gconf_client)
-       {
-               gconf_client_set_string(gconf_client,
-                                       ALTOS_DIR_PATH,
-                                       aoview_file_dir,
-                                       NULL);
-               g_object_unref(G_OBJECT(gconf_client));
-       }
-}
-
-static void
-aoview_file_configure(GtkWidget *widget, gpointer data)
-{
-       GtkFileChooser *chooser = data;
-       aoview_file_dir = gtk_file_chooser_get_filename(chooser);
-       aoview_file_save_conf();
-       gtk_widget_hide(GTK_WIDGET(chooser));
-}
-
-void
-aoview_file_finish(struct aoview_file *file)
-{
-       if (file->file) {
-               fclose(file->file);
-               file->file = NULL;
-               free(file->name);
-               file->name = NULL;
-       }
-       file->failed = 0;
-}
-
-const char *
-aoview_file_name(struct aoview_file *file)
-{
-       return file->name;
-}
-
-static GtkMessageDialog *file_fail_dialog;
-
-static void
-aoview_file_open_failed(char *name)
-{
-       char    *utf8_file;
-       utf8_file = g_filename_to_utf8(name, -1, NULL, NULL, NULL);
-       if (!utf8_file)
-               utf8_file = name;
-       gtk_message_dialog_format_secondary_text(file_fail_dialog,
-                                                "\"%s\"", utf8_file);
-       if (utf8_file != name)
-               g_free(utf8_file);
-       gtk_widget_show(GTK_WIDGET(file_fail_dialog));
-}
-
-gboolean
-aoview_file_start(struct aoview_file *file)
-{
-       char            base[50];
-       struct tm       tm;
-       time_t          now;
-       char            *full;
-       int             r;
-
-       if (file->file)
-               return TRUE;
-
-       if (file->failed)
-               return FALSE;
-
-       now = time(NULL);
-       (void) localtime_r(&now, &tm);
-       aoview_mkdir(aoview_file_dir);
-       for (;;) {
-               snprintf(base, sizeof (base), "%04d-%02d-%02d-serial-%03d-flight-%03d.%s",
-                       tm.tm_year + 1900,
-                       tm.tm_mon + 1,
-                       tm.tm_mday,
-                       file->serial,
-                       file->sequence,
-                       file->ext);
-               full = aoview_fullname(aoview_file_dir, base);
-               r = access(full, F_OK);
-               if (r < 0) {
-                       file->file = fopen(full, "w");
-                       if (!file->file) {
-                               aoview_file_open_failed(full);
-                               free(full);
-                               file->failed = 1;
-                               return FALSE;
-                       } else {
-                               setlinebuf(file->file);
-                               file->name = full;
-                               return TRUE;
-                       }
-               }
-               free(full);
-               file->sequence++;
-       }
-}
-
-void
-aoview_file_vprintf(struct aoview_file *file, char *format, va_list ap)
-{
-       if (!aoview_file_start(file))
-               return;
-       vfprintf(file->file, format, ap);
-}
-
-void
-aoview_file_printf(struct aoview_file *file, char *format, ...)
-{
-       va_list ap;
-
-       va_start(ap, format);
-       aoview_file_vprintf(file, format, ap);
-       va_end(ap);
-}
-
-struct aoview_file *
-aoview_file_new(char *ext)
-{
-       struct aoview_file      *file;
-
-       file = calloc (1, sizeof (struct aoview_file));
-       if (!file)
-               return NULL;
-       file->ext = strdup(ext);
-       if (!file->ext) {
-               free(file);
-               return NULL;
-       }
-       return file;
-}
-
-void
-aoview_file_destroy(struct aoview_file *file)
-{
-       if (file->file)
-               fclose(file->file);
-       if (file->name)
-               free(file->name);
-       free(file->ext);
-       free(file);
-}
-
-void
-aoview_file_set_serial(struct aoview_file *file, int serial)
-{
-       if (serial != file->serial)
-               aoview_file_finish(file);
-       file->serial = serial;
-}
-
-int
-aoview_file_get_serial(struct aoview_file *file)
-{
-       return file->serial;
-}
-
-void
-aoview_file_init(GladeXML *xml)
-{
-       GConfClient     *gconf_client;
-       char            *file_dir = NULL;
-       GtkFileChooser  *file_chooser_dialog;
-       GtkWidget       *file_configure_ok;
-
-       g_type_init();
-       gconf_client = gconf_client_get_default();
-       if (gconf_client)
-       {
-               file_dir = gconf_client_get_string(gconf_client,
-                                                  ALTOS_DIR_PATH,
-                                                  NULL);
-               g_object_unref(G_OBJECT(gconf_client));
-       }
-       if (!file_dir) {
-               aoview_file_dir = aoview_fullname(getenv("HOME"), DEFAULT_DIR);
-               aoview_file_save_conf();
-       } else {
-               aoview_file_dir = strdup(file_dir);
-       }
-
-       file_chooser_dialog = GTK_FILE_CHOOSER(glade_xml_get_widget(xml, "file_chooser_dialog"));
-       assert(file_chooser_dialog);
-       gtk_file_chooser_set_filename(file_chooser_dialog, aoview_file_dir);
-
-       file_configure_ok = glade_xml_get_widget(xml, "file_configure_ok");
-       assert(file_configure_ok);
-
-       g_signal_connect(G_OBJECT(file_configure_ok), "clicked",
-                        G_CALLBACK(aoview_file_configure),
-                        file_chooser_dialog);
-
-
-       file_fail_dialog = GTK_MESSAGE_DIALOG(glade_xml_get_widget(xml, "file_fail_dialog"));
-       assert(file_fail_dialog);
-}