]> git.street.me.uk Git - andy/viking.git/blobdiff - src/datasource_file.c
Allow acquiring an URL with a username/password authenticated download.
[andy/viking.git] / src / datasource_file.c
index 0650485395a79e8d2d0632f4925360e3a51b6755..c96b4cc1fab8a19487b4b18f25bb4fea6fc2b638 100644 (file)
@@ -52,22 +52,22 @@ static int last_type = 0;
 
 static gpointer datasource_file_init( );
 static void datasource_file_add_setup_widgets ( GtkWidget *dialog, VikViewport *vvp, gpointer user_data );
-static void datasource_file_get_cmd_string ( datasource_file_widgets_t *widgets, gchar **cmd, gchar **input_file_type );       
+static void datasource_file_get_cmd_string ( datasource_file_widgets_t *widgets, gchar **cmd, gchar **input_file_type, gpointer not_used );
 static void datasource_file_cleanup ( gpointer data );
 
 VikDataSourceInterface vik_datasource_file_interface = {
   N_("Import file with GPSBabel"),
   N_("Imported file"),
-  VIK_DATASOURCE_GPSBABEL_DIRECT,
   VIK_DATASOURCE_ADDTOLAYER,
   VIK_DATASOURCE_INPUTTYPE_NONE,
   TRUE,
   TRUE,
+  TRUE,
   (VikDataSourceInitFunc)              datasource_file_init,
   (VikDataSourceCheckExistenceFunc)    NULL,
   (VikDataSourceAddSetupWidgetsFunc)   datasource_file_add_setup_widgets,
   (VikDataSourceGetCmdStringFunc)      datasource_file_get_cmd_string,
-  (VikDataSourceProcessFunc)           NULL,
+  (VikDataSourceProcessFunc)        a_babel_convert_from,
   (VikDataSourceProgressFunc)          NULL,
   (VikDataSourceAddProgressWidgetsFunc)        NULL,
   (VikDataSourceCleanupFunc)           datasource_file_cleanup,
@@ -163,12 +163,10 @@ static void datasource_file_add_setup_widgets ( GtkWidget *dialog, VikViewport *
 }
 
 /* See VikDataSourceInterface */
-static void datasource_file_get_cmd_string ( datasource_file_widgets_t *widgets, gchar **cmd, gchar **input_file )
+static void datasource_file_get_cmd_string ( datasource_file_widgets_t *widgets, gchar **cmd, gchar **input_file, gpointer not_used )
 {
-  gchar *filename, *type;
-
   /* Retrieve the file selected */
-  filename = gtk_file_chooser_get_filename ( GTK_FILE_CHOOSER(widgets->file) );
+  gchar *filename = gtk_file_chooser_get_filename ( GTK_FILE_CHOOSER(widgets->file) );
 
   /* Memorize the directory for later use */
   g_free (last_folder_uri);
@@ -180,6 +178,7 @@ static void datasource_file_get_cmd_string ( datasource_file_widgets_t *widgets,
   last_file_filter = g_object_get_data ( G_OBJECT(filter), "Babel" );
 
   /* Retrieve and memorize file format selected */
+  gchar *type = NULL;
   last_type = gtk_combo_box_get_active ( GTK_COMBO_BOX (widgets->type) );
   if ( a_babel_file_list )
     type = ((BabelFile*)g_list_nth_data (a_babel_file_list, last_type))->name;