From: John Darrington Date: Thu, 24 Jan 2013 19:10:53 +0000 (+0100) Subject: Only one spreadsheet X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6dc7fb98e663313902b4d3977407c63e83d8ae19;p=pspp Only one spreadsheet --- diff --git a/src/ui/gui/page-file.c b/src/ui/gui/page-file.c index 5254628bb8..98362a3f13 100644 --- a/src/ui/gui/page-file.c +++ b/src/ui/gui/page-file.c @@ -84,7 +84,6 @@ init_file (struct import_assistant *ia, GtkWindow *parent_window) struct sheet_spec_page *ssp = ia->sheet_spec; struct spreadsheet_read_info sri; struct spreadsheet_read_options opts; - struct spreadsheet *spreadsheet = NULL; file->lines = NULL; file->file_name = choose_file (parent_window, &file->encoding); @@ -98,17 +97,13 @@ init_file (struct import_assistant *ia, GtkWindow *parent_window) sri.read_names = true; sri.asw = -1; - if (spreadsheet == NULL) - spreadsheet = gnumeric_probe (file->file_name); + if (ia->spreadsheet == NULL) + ia->spreadsheet = gnumeric_probe (file->file_name); - if (spreadsheet == NULL) - spreadsheet = ods_probe (file->file_name); + if (ia->spreadsheet == NULL) + ia->spreadsheet = ods_probe (file->file_name); - if (spreadsheet) - { - // update_assistant (ia); - } - else + if (! ia->spreadsheet) { struct string input; struct line_reader *reader = line_reader_for_file (file->encoding, file->file_name, O_RDONLY); diff --git a/src/ui/gui/page-sheet-spec.c b/src/ui/gui/page-sheet-spec.c index 84de6a86c9..6f23fe0b34 100644 --- a/src/ui/gui/page-sheet-spec.c +++ b/src/ui/gui/page-sheet-spec.c @@ -75,16 +75,12 @@ struct sheet_spec_page GtkWidget *page; struct casereader *reader; struct dictionary *dict; - struct spreadsheet *spreadsheet; struct spreadsheet_read_info sri; struct spreadsheet_read_options opts; }; - - - /* Initializes IA's sheet_spec substructure. */ struct sheet_spec_page * sheet_spec_page_create (struct import_assistant *ia) @@ -107,10 +103,8 @@ prepare_sheet_spec_page (struct import_assistant *ia) GtkBuilder *builder = ia->asst.builder; GtkWidget *sheet_entry = get_widget_assert (builder, "sheet-entry"); - printf ("%s %d\n", __FUNCTION__, p->spreadsheet->sheets); - - gtk_spin_button_set_digits (GTK_SPIN_BUTTON (sheet_entry), 0); - gtk_spin_button_set_range (GTK_SPIN_BUTTON (sheet_entry), 1, p->spreadsheet->sheets); + gtk_spin_button_set_digits (GTK_SPIN_BUTTON (sheet_entry), 0); + gtk_spin_button_set_range (GTK_SPIN_BUTTON (sheet_entry), 1, ia->spreadsheet->sheets); } @@ -161,18 +155,18 @@ post_sheet_spec_page (struct import_assistant *ia) ssp->sri.read_names = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (readnames_checkbox)); ssp->sri.asw = -1; - switch (ssp->spreadsheet->type) + switch (ia->spreadsheet->type) { case SPREADSHEET_ODS: { - creader = ods_make_reader (ssp->spreadsheet, &ssp->sri, &ssp->opts); - dict = ssp->spreadsheet->dict; + creader = ods_make_reader (ia->spreadsheet, &ssp->sri, &ssp->opts); + dict = ia->spreadsheet->dict; } break; case SPREADSHEET_GNUMERIC: { - creader = gnumeric_make_reader (ssp->spreadsheet, &ssp->sri, &ssp->opts); - dict = ssp->spreadsheet->dict; + creader = gnumeric_make_reader (ia->spreadsheet, &ssp->sri, &ssp->opts); + dict = ia->spreadsheet->dict; } break; default: @@ -211,7 +205,6 @@ update_assistant (struct import_assistant *ia) struct sheet_spec_page *ssp = ia->sheet_spec; int rows = 0; - if (ssp->dict) { struct ccase *c; diff --git a/src/ui/gui/text-data-import-dialog.h b/src/ui/gui/text-data-import-dialog.h index 0122312300..847a1af6c6 100644 --- a/src/ui/gui/text-data-import-dialog.h +++ b/src/ui/gui/text-data-import-dialog.h @@ -74,6 +74,8 @@ struct import_assistant int skip_lines; /* Number of initial lines to skip? */ bool variable_names; /* Variable names above first line of data? */ struct dictionary *dict; + + struct spreadsheet *spreadsheet; }; struct column