/* Initializes IA's asst substructure. PARENT_WINDOW must be the
window to use as the assistant window's parent. */
/* Initializes IA's asst substructure. PARENT_WINDOW must be the
window to use as the assistant window's parent. */
struct assistant *a = &ia->asst;
a->builder = builder_new ("text-data-import.ui");
a->assistant = GTK_ASSISTANT (gtk_assistant_new ());
struct assistant *a = &ia->asst;
a->builder = builder_new ("text-data-import.ui");
a->assistant = GTK_ASSISTANT (gtk_assistant_new ());
+
+ a->prop_renderer = gtk_cell_renderer_text_new ();
+ g_object_ref_sink (a->prop_renderer);
+ a->fixed_renderer = gtk_cell_renderer_text_new ();
+ g_object_ref_sink (a->fixed_renderer);
+ g_object_set (G_OBJECT (a->fixed_renderer),
+ "family", "Monospace",
+ (void *) NULL);
+
g_signal_connect (a->assistant, "prepare", G_CALLBACK (on_prepare), ia);
g_signal_connect (a->assistant, "cancel", G_CALLBACK (on_cancel), ia);
g_signal_connect (a->assistant, "close", G_CALLBACK (on_close), ia);
g_signal_connect (a->assistant, "prepare", G_CALLBACK (on_prepare), ia);
g_signal_connect (a->assistant, "cancel", G_CALLBACK (on_cancel), ia);
g_signal_connect (a->assistant, "close", G_CALLBACK (on_close), ia);
gtk_window_set_transient_for (GTK_WINDOW (a->assistant), parent_window);
gtk_window_set_icon_name (GTK_WINDOW (a->assistant), "pspp");
gtk_window_set_transient_for (GTK_WINDOW (a->assistant), parent_window);
gtk_window_set_icon_name (GTK_WINDOW (a->assistant), "pspp");
- a->prop_renderer = gtk_cell_renderer_text_new ();
- g_object_ref_sink (a->prop_renderer);
- a->fixed_renderer = gtk_cell_renderer_text_new ();
- g_object_ref_sink (a->fixed_renderer);
- g_object_set (G_OBJECT (a->fixed_renderer),
- "family", "Monospace",
- (void *) NULL);
on_prepare (GtkAssistant *assistant, GtkWidget *page,
struct import_assistant *ia)
{
on_prepare (GtkAssistant *assistant, GtkWidget *page,
struct import_assistant *ia)
{
- if (pn == 1 && ia->file.type != FTYPE_TEXT)
- post_sheet_spec_page (ia);
+ int pn = gtk_assistant_get_current_page (assistant);
+ g_print ("%s:%d Page %d %p\n", __FILE__, __LINE__, pn, page);
+
+ if ( ia->spreadsheet)
+ {
+ if (pn == 0)
+ prepare_sheet_spec_page (ia);
+ else if (pn == 1)
+ {
+ post_sheet_spec_page (ia);
+ prepare_formats_page (ia);
+ }
+ }
if (gtk_assistant_get_page_type (assistant, page)
== GTK_ASSISTANT_PAGE_CONFIRM)
if (gtk_assistant_get_page_type (assistant, page)
== GTK_ASSISTANT_PAGE_CONFIRM)
gint page_num = gtk_assistant_get_current_page (ia->asst.assistant);
GtkWidget *page = gtk_assistant_get_nth_page (ia->asst.assistant, page_num);
gint page_num = gtk_assistant_get_current_page (ia->asst.assistant);
GtkWidget *page = gtk_assistant_get_nth_page (ia->asst.assistant, page_num);