X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-data-window.c;h=c7631c9da42440beed850a6991fe6e62104eb76c;hb=9529d1a99cc7c288d94e5bbdb9f4263bd524da6c;hp=185648bc0e9dd02c9905a8adf754090079dab2cf;hpb=b5c82cc9aabe7e641011130240ae1b2e84348e23;p=pspp-builds.git diff --git a/src/ui/gui/psppire-data-window.c b/src/ui/gui/psppire-data-window.c index 185648bc..c7631c9d 100644 --- a/src/ui/gui/psppire-data-window.c +++ b/src/ui/gui/psppire-data-window.c @@ -56,6 +56,9 @@ #include "examine-dialog.h" #include "regression-dialog.h" #include "reliability-dialog.h" +#include "roc-dialog.h" +#include "correlation-dialog.h" +#include "factor-dialog.h" #include "oneway-anova-dialog.h" #include "t-test-independent-samples-dialog.h" #include "t-test-one-sample.h" @@ -231,12 +234,14 @@ on_filter_change (GObject *o, gint filter_index, gpointer data) else { PsppireVarStore *vs = NULL; + PsppireDict *dict = NULL; struct variable *var ; gchar *text ; g_object_get (de->data_editor, "var-store", &vs, NULL); + g_object_get (vs, "dictionary", &dict, NULL); - var = psppire_dict_get_variable (vs->dict, filter_index); + var = psppire_dict_get_variable (dict, filter_index); text = g_strdup_printf (_("Filter by %s"), var_get_name (var)); @@ -302,11 +307,13 @@ on_weight_change (GObject *o, gint weight_index, gpointer data) { struct variable *var ; PsppireVarStore *vs = NULL; + PsppireDict *dict = NULL; gchar *text; g_object_get (de->data_editor, "var-store", &vs, NULL); - - var = psppire_dict_get_variable (vs->dict, weight_index); + g_object_get (vs, "dictionary", &dict, NULL); + + var = psppire_dict_get_variable (dict, weight_index); text = g_strdup_printf (_("Weight by %s"), var_get_name (var)); @@ -613,8 +620,8 @@ data_save_as_dialog (PsppireDataWindow *de) (gtk_radio_button_get_group (GTK_RADIO_BUTTON(button_sys)), _("Portable File")); - gtk_box_pack_start_defaults (GTK_BOX (vbox), button_sys); - gtk_box_pack_start_defaults (GTK_BOX (vbox), button_por); + psppire_box_pack_start_defaults (GTK_BOX (vbox), button_sys); + psppire_box_pack_start_defaults (GTK_BOX (vbox), button_por); gtk_widget_show_all (vbox); @@ -1090,6 +1097,7 @@ static void psppire_data_window_init (PsppireDataWindow *de) { PsppireVarStore *vs; + PsppireDict *dict = NULL; GtkWidget *menubar; GtkWidget *hb ; @@ -1145,15 +1153,17 @@ psppire_data_window_init (PsppireDataWindow *de) g_assert(vs); /* Traps a possible bug in w32 build */ - g_signal_connect (vs->dict, "weight-changed", + g_object_get (vs, "dictionary", &dict, NULL); + + g_signal_connect (dict, "weight-changed", G_CALLBACK (on_weight_change), de); - g_signal_connect (vs->dict, "filter-changed", + g_signal_connect (dict, "filter-changed", G_CALLBACK (on_filter_change), de); - g_signal_connect (vs->dict, "split-changed", + g_signal_connect (dict, "split-changed", G_CALLBACK (on_split_change), de); @@ -1240,7 +1250,6 @@ psppire_data_window_init (PsppireDataWindow *de) resolve_action (de->builder, "file_save_as", NULL); g_object_set (action_data_save_as, - "label", _("Save As"), "tooltip", _("Save data to file"), "stock-id", "gtk-save-as", NULL); @@ -1686,6 +1695,48 @@ psppire_data_window_init (PsppireDataWindow *de) G_CALLBACK (reliability_dialog), de); } + { + GtkAction *invoke_roc_dialog = + resolve_action (de->builder, "roc-curve", NULL); + + g_object_set (invoke_roc_dialog, + "tooltip", _("ROC Curve"), + "stock-id", "pspp-roc", + NULL + ); + + g_signal_connect (invoke_roc_dialog, "activate", + G_CALLBACK (roc_dialog), de); + } + + { + GtkAction *invoke_correlation_dialog = + resolve_action (de->builder, "correlation", NULL); + + g_object_set (invoke_correlation_dialog, + "tooltip", _("Bivariate Correlation"), + "stock-id", "pspp-correlation", + NULL + ); + + g_signal_connect (invoke_correlation_dialog, "activate", + G_CALLBACK (correlation_dialog), de); + } + + { + GtkAction *invoke_factor_dialog = + resolve_action (de->builder, "factor-analysis", NULL); + + g_object_set (invoke_factor_dialog, + "tooltip", _("Principal Axis Factoring and Principal Components Analysis"), + "stock-id", "pspp-factor", + NULL + ); + + g_signal_connect (invoke_factor_dialog, "activate", + G_CALLBACK (factor_dialog), de); + } + { GtkUIManager *uim = GTK_UI_MANAGER (get_object_assert (de->builder, "uimanager1", GTK_TYPE_UI_MANAGER));