Move all intro related stuff to the intro file
[pspp] / src / ui / gui / page-intro.c
index 4034834c345957f2905f11d657e4fe4c22bfa5f5..0a8306a05ca2eba77c19d65d8c4e63c396def7ac 100644 (file)
@@ -64,6 +64,17 @@ struct import_assistant;
 \f
 /* The "intro" page of the assistant. */
 
+/* The introduction page of the assistant. */
+struct intro_page
+  {
+    GtkWidget *page;
+    GtkWidget *all_cases_button;
+    GtkWidget *n_cases_button;
+    GtkWidget *n_cases_spin;
+    GtkWidget *percent_button;
+    GtkWidget *percent_spin;
+  };
+
 static void on_intro_amount_changed (struct intro_page *);
 
 /* Initializes IA's intro substructure. */
@@ -98,6 +109,8 @@ intro_page_create (struct import_assistant *ia)
 
   p->page = add_page_to_assistant (ia, get_widget_assert (builder, "Intro"),
                                    GTK_ASSISTANT_PAGE_INTRO);
+  
+  g_print ("%s:%d Added page %p\n", __FILE__, __LINE__, p->page);
 
   p->all_cases_button = get_widget_assert (builder, "import-all-cases");
 
@@ -171,3 +184,17 @@ on_intro_amount_changed (struct intro_page *p)
                             gtk_toggle_button_get_active (
                               GTK_TOGGLE_BUTTON (p->percent_button)));
 }
+
+
+void
+intro_append_syntax (const struct intro_page *p, struct string *s)
+{
+  if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (p->n_cases_button)))
+    ds_put_format (s, "  /IMPORTCASES=FIRST %d\n",
+                  gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (p->n_cases_spin)));
+  else if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (p->percent_button)))
+    ds_put_format (s, "  /IMPORTCASES=PERCENT %d\n",
+                  gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (p->percent_spin)));
+  else
+    ds_put_cstr (s, "  /IMPORTCASES=ALL\n");
+}