X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Freliability-dialog.c;h=c60f0df504968e25b66c0b670141e38b155b4fa3;hb=1aa87f10e686eb09df296411d8ebfa28fa151860;hp=d087ed840db21557bd9f4d1c14ded406f1180bcf;hpb=a9a69251edd625a50f271af5d64c157533b5fe48;p=pspp-builds.git diff --git a/src/ui/gui/reliability-dialog.c b/src/ui/gui/reliability-dialog.c index d087ed84..c60f0df5 100644 --- a/src/ui/gui/reliability-dialog.c +++ b/src/ui/gui/reliability-dialog.c @@ -1,5 +1,5 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2009 Free Software Foundation + Copyright (C) 2009, 2010, 2011 Free Software Foundation This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,13 +17,13 @@ #include #include "dialog-common.h" -#include #include "reliability-dialog.h" #include "psppire-selector.h" #include "psppire-dictview.h" #include "psppire-dialog.h" #include "psppire-data-window.h" +#include "psppire-var-view.h" #include "executor.h" #include "helper.h" @@ -42,6 +42,7 @@ struct reliability GtkWidget *variables; GtkWidget *split_point_hbox; GtkWidget *split_spinbutton; + GtkWidget *scale_if_item_deleted_checkbutton; }; @@ -92,6 +93,9 @@ refresh (PsppireDialog *dialog, struct reliability *rd) gtk_spin_button_set_range (GTK_SPIN_BUTTON (rd->split_spinbutton), 0, 0); + + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (rd->scale_if_item_deleted_checkbutton), + FALSE); } @@ -109,20 +113,17 @@ dialog_state_valid (gpointer data) /* Pops up the Reliability dialog box */ void -reliability_dialog (GObject *o, gpointer data) +reliability_dialog (PsppireDataWindow *de) { struct reliability rd; gint response; GtkBuilder *xml = builder_new ("reliability.ui"); - PsppireDataWindow *de = PSPPIRE_DATA_WINDOW (data); PsppireVarStore *vs; GtkWidget *dialog = get_widget_assert (xml, "reliability-dialog"); GtkWidget *source = get_widget_assert (xml, "dict-view"); - GtkWidget *selector = get_widget_assert (xml, "psppire-selector1"); - rd.split_point_hbox = get_widget_assert (xml, "split-point-hbox"); rd.variables = get_widget_assert (xml, "treeview2"); @@ -130,6 +131,8 @@ reliability_dialog (GObject *o, gpointer data) rd.model_combo = get_widget_assert (xml, "combobox1"); rd.split_spinbutton = get_widget_assert (xml, "spinbutton1"); + rd.scale_if_item_deleted_checkbutton = get_widget_assert (xml, "totals-checkbutton"); + g_signal_connect_swapped (rd.model_combo, "changed", G_CALLBACK (on_method_change), &rd); @@ -140,13 +143,6 @@ reliability_dialog (GObject *o, gpointer data) g_object_get (vs, "dictionary", &rd.dict, NULL); g_object_set (source, "model", rd.dict, NULL); - set_dest_model (GTK_TREE_VIEW (rd.variables), rd.dict); - - psppire_selector_set_subjects (PSPPIRE_SELECTOR (selector), - insert_source_row_into_tree_view, - NULL, - NULL); - { GtkTreeModel *tm = gtk_tree_view_get_model (GTK_TREE_VIEW (rd.variables)); @@ -170,22 +166,10 @@ reliability_dialog (GObject *o, gpointer data) switch (response) { case GTK_RESPONSE_OK: - { - gchar *syntax = generate_syntax (&rd); - - struct getl_interface *sss = create_syntax_string_source (syntax); - execute_syntax (sss); - - g_free (syntax); - } + g_free (execute_syntax_string (de, generate_syntax (&rd))); break; case PSPPIRE_RESPONSE_PASTE: - { - gchar *syntax = generate_syntax (&rd); - paste_syntax_in_new_window (syntax); - - g_free (syntax); - } + g_free (paste_syntax_to_window (generate_syntax (&rd))); break; default: break; @@ -204,7 +188,7 @@ generate_syntax (const struct reliability *rd) GString *string = g_string_new ("RELIABILITY"); g_string_append (string, "\n\t/VARIABLES="); - append_variable_names (string, rd->dict, GTK_TREE_VIEW (rd->variables), 0); + psppire_var_view_append_names (PSPPIRE_VAR_VIEW (rd->variables), 0, string); g_string_append (string, "\n\t/MODEL="); @@ -216,6 +200,9 @@ generate_syntax (const struct reliability *rd) gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (rd->split_spinbutton)) ); + if ( gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (rd->scale_if_item_deleted_checkbutton))) + g_string_append (string, "\n\t/SUMMARY = TOTAL"); + g_string_append (string, ".\n"); text = string->str;