undid accidental checkin of text import patch
[pspp-builds.git] / src / ui / gui / data-editor.c
index dc7ca2852cb4532663652b26ed67050e6b722629..2007c7bbc01c3ba5a06325cda1410b410a33e45b 100644 (file)
 #include "goto-case-dialog.h"
 #include "find-dialog.h"
 #include "rank-dialog.h"
+#include "recode-dialog.h"
 #include "comments-dialog.h"
 #include "variable-info-dialog.h"
 #include "descriptives-dialog.h"
+#include "crosstabs-dialog.h"
+#include "frequencies-dialog.h"
 #include "dict-display.h"
 #include "clipboard.h"
 
+#include "oneway-anova-dialog.h"
 #include "t-test-independent-samples-dialog.h"
-
+#include "t-test-one-sample.h"
+#include "t-test-paired-samples.h"
 
 #define _(msgid) gettext (msgid)
 #define N_(msgid) msgid
@@ -590,7 +595,14 @@ new_data_editor (void)
   g_signal_connect (de->invoke_compute_dialog, "activate",
                    G_CALLBACK (compute_dialog), de);
 
+  de->invoke_oneway_anova_dialog =
+    gtk_action_new ("oneway-anova",
+                   _("Oneway _ANOVA"),
+                   _("Perform one way analysis of variance"),
+                   NULL);
 
+  g_signal_connect (de->invoke_oneway_anova_dialog, "activate",
+                   G_CALLBACK (oneway_anova_dialog), de);
 
   de->invoke_t_test_independent_samples_dialog =
     gtk_action_new ("t-test-independent-samples",
@@ -602,6 +614,26 @@ new_data_editor (void)
                    G_CALLBACK (t_test_independent_samples_dialog), de);
 
 
+  de->invoke_t_test_paired_samples_dialog =
+    gtk_action_new ("t-test-paired-samples",
+                   _("_Paired Samples T Test"),
+                   _("Calculate T Test for paired samples"),
+                   NULL);
+
+  g_signal_connect (de->invoke_t_test_paired_samples_dialog, "activate",
+                   G_CALLBACK (t_test_paired_samples_dialog), de);
+
+
+  de->invoke_t_test_one_sample_dialog =
+    gtk_action_new ("t-test-one-sample",
+                   _("One _Sample T Test"),
+                   _("Calculate T Test for sample from a single distribution"),
+                   NULL);
+
+  g_signal_connect (de->invoke_t_test_one_sample_dialog, "activate",
+                   G_CALLBACK (t_test_one_sample_dialog), de);
+
+
   de->invoke_comments_dialog =
     gtk_action_new ("commments-dialog",
                    _("Data File Comments"),
@@ -631,6 +663,26 @@ new_data_editor (void)
                    G_CALLBACK (rank_dialog), de);
 
 
+  de->invoke_recode_same_dialog  =
+    gtk_action_new ("recode-same-dialog",
+                   _("Recode into _Same Variables"),
+                   _("Recode values into the same Variables"),
+                   "pspp-recode-same");
+
+  g_signal_connect (de->invoke_recode_same_dialog, "activate",
+                   G_CALLBACK (recode_same_dialog), de);
+
+
+  de->invoke_recode_different_dialog  =
+    gtk_action_new ("recode-different-dialog",
+                   _("Recode into _Different Variables"),
+                   _("Recode values into different Variables"),
+                   "pspp-recode-different");
+
+  g_signal_connect (de->invoke_recode_different_dialog, "activate",
+                   G_CALLBACK (recode_different_dialog), de);
+
+
   de->invoke_variable_info_dialog  =
     gtk_action_new ("variable-info-dialog",
                    _("Variables"),
@@ -649,6 +701,26 @@ new_data_editor (void)
   g_signal_connect (de->invoke_descriptives_dialog, "activate",
                    G_CALLBACK (descriptives_dialog), de);
 
+
+  de->invoke_frequencies_dialog =
+    gtk_action_new ("frequencies-dialog",
+                   _("_Frequencies"),
+                   _("Generate frequency statistics"),
+                   "pspp-frequencies");
+
+  g_signal_connect (de->invoke_frequencies_dialog, "activate",
+                   G_CALLBACK (frequencies_dialog), de);
+
+  de->invoke_crosstabs_dialog =
+    gtk_action_new ("crosstabs-dialog",
+                   _("_Crosstabs"),
+                   _("Generate crosstabulations"),
+                   "pspp-crosstabs");
+
+  g_signal_connect (de->invoke_crosstabs_dialog, "activate",
+                   G_CALLBACK (crosstabs_dialog), de);
+
+
   e->window = GTK_WINDOW (get_widget_assert (de->xml, "data_editor"));
 
   g_signal_connect_swapped (get_widget_assert (de->xml,"file_new_data"),
@@ -661,7 +733,6 @@ new_data_editor (void)
                            G_CALLBACK (gtk_action_activate),
                            de->action_data_open);
 
-
 #if RECENT_LISTS_AVAILABLE
   {
     GtkRecentManager *rm = gtk_recent_manager_get_default ();
@@ -737,6 +808,16 @@ new_data_editor (void)
                            get_widget_assert (de->xml, "transform_rank")
                            );
 
+  gtk_action_connect_proxy (de->invoke_recode_same_dialog,
+                           get_widget_assert (de->xml,
+                                              "transform_recode-same")
+                           );
+
+  gtk_action_connect_proxy (de->invoke_recode_different_dialog,
+                           get_widget_assert (de->xml,
+                                              "transform_recode-different")
+                           );
+
   gtk_action_connect_proxy (de->invoke_weight_cases_dialog,
                            get_widget_assert (de->xml, "data_weight-cases")
                            );
@@ -767,6 +848,24 @@ new_data_editor (void)
                            );
 
 
+  gtk_action_connect_proxy (de->invoke_t_test_paired_samples_dialog,
+                           get_widget_assert (de->xml,
+                                              "paired-t-test")
+                           );
+
+
+  gtk_action_connect_proxy (de->invoke_t_test_one_sample_dialog,
+                           get_widget_assert (de->xml,
+                                              "one-sample-t-test")
+                           );
+
+
+  gtk_action_connect_proxy (de->invoke_oneway_anova_dialog,
+                           get_widget_assert (de->xml,
+                                              "oneway-anova")
+                           );
+
+
   gtk_action_connect_proxy (de->invoke_comments_dialog,
                            get_widget_assert (de->xml, "utilities_comments")
                            );
@@ -779,6 +878,14 @@ new_data_editor (void)
                            get_widget_assert (de->xml, "analyze_descriptives")
                            );
 
+  gtk_action_connect_proxy (de->invoke_crosstabs_dialog,
+                           get_widget_assert (de->xml, "crosstabs")
+                           );
+
+  gtk_action_connect_proxy (de->invoke_frequencies_dialog,
+                           get_widget_assert (de->xml, "analyze_frequencies")
+                           );
+
   g_signal_connect (get_widget_assert (de->xml,"help_about"),
                    "activate",
                    G_CALLBACK (about_new),
@@ -1106,6 +1213,7 @@ toggle_value_labels (GtkToggleAction *ta, gpointer data)
                                  gtk_toggle_action_get_active (ta));
 }
 
+extern PsppireDataStore *the_data_store ;
 
 static void
 file_quit (GtkCheckMenuItem *menuitem, gpointer data)
@@ -1113,6 +1221,7 @@ file_quit (GtkCheckMenuItem *menuitem, gpointer data)
   /* FIXME: Need to be more intelligent here.
      Give the user the opportunity to save any unsaved data.
   */
+  g_object_unref (the_data_store);
   gtk_main_quit ();
 }