pspp-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pspp-cvs] pspp/src/ui/gui ChangeLog sort-cases-dialog.c t...


From: John Darrington
Subject: [Pspp-cvs] pspp/src/ui/gui ChangeLog sort-cases-dialog.c t...
Date: Fri, 08 Feb 2008 03:33:43 +0000

CVSROOT:        /sources/pspp
Module name:    pspp
Changes by:     John Darrington <jmd>   08/02/08 03:33:43

Modified files:
        src/ui/gui     : ChangeLog sort-cases-dialog.c 
                         transpose-dialog.c 

Log message:
        Added valid predicates to transpose and sort dialogs.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pspp/src/ui/gui/ChangeLog?cvsroot=pspp&r1=1.105&r2=1.106
http://cvs.savannah.gnu.org/viewcvs/pspp/src/ui/gui/sort-cases-dialog.c?cvsroot=pspp&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/pspp/src/ui/gui/transpose-dialog.c?cvsroot=pspp&r1=1.8&r2=1.9

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/pspp/pspp/src/ui/gui/ChangeLog,v
retrieving revision 1.105
retrieving revision 1.106
diff -u -b -r1.105 -r1.106
--- ChangeLog   4 Feb 2008 09:29:08 -0000       1.105
+++ ChangeLog   8 Feb 2008 03:33:43 -0000       1.106
@@ -1,3 +1,8 @@
+2008-02-08  John Darrington <address@hidden>
+
+       * sort-cases-dialog.c transpose-dialog.c: Added dialog_valid
+       predicates.
+
 2008-02-04  John Darrington <address@hidden>
 
        * checkbox-treeview.c: In toggle callback, use the treeview's 

Index: sort-cases-dialog.c
===================================================================
RCS file: /sources/pspp/pspp/src/ui/gui/sort-cases-dialog.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- sort-cases-dialog.c 29 Jan 2008 11:13:00 -0000      1.11
+++ sort-cases-dialog.c 8 Feb 2008 03:33:43 -0000       1.12
@@ -45,6 +45,21 @@
   GtkToggleButton *ascending;
 };
 
+
+static gboolean
+dialog_state_valid (gpointer data)
+{
+  struct sort_cases_dialog *scd = data;
+  GtkTreeModel *model = gtk_tree_view_get_model (scd->tv);
+
+  gint n_rows = gtk_tree_model_iter_n_children  (model, NULL);
+
+  if ( n_rows == 0 )
+    return FALSE;
+
+  return TRUE;
+}
+
 static char *
 generate_syntax (const struct sort_cases_dialog *scd)
 {
@@ -117,6 +132,11 @@
   scd.ascending =
     GTK_TOGGLE_BUTTON (get_widget_assert (xml, "sort-cases-radiobutton0"));
 
+
+  psppire_dialog_set_valid_predicate (PSPPIRE_DIALOG (dialog),
+                                     dialog_state_valid, &scd);
+
+
   response = psppire_dialog_run (PSPPIRE_DIALOG (dialog));
 
 

Index: transpose-dialog.c
===================================================================
RCS file: /sources/pspp/pspp/src/ui/gui/transpose-dialog.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- transpose-dialog.c  29 Jan 2008 11:13:01 -0000      1.8
+++ transpose-dialog.c  8 Feb 2008 03:33:43 -0000       1.9
@@ -55,6 +55,28 @@
   gtk_entry_set_text (GTK_ENTRY (entry), "");
 }
 
+static gboolean
+dialog_state_valid (gpointer data)
+{
+  GladeXML *xml = data;
+
+  GtkWidget *tv = get_widget_assert (xml, "variables-treeview");
+  GtkWidget *entry = get_widget_assert (xml, "new-name-entry");
+
+  GtkTreeModel *model = gtk_tree_view_get_model (GTK_TREE_VIEW (tv));
+
+  gint n_rows = gtk_tree_model_iter_n_children  (model, NULL);
+
+  if ( n_rows == 0 )
+    return FALSE;
+
+  if ( 0 == strcmp ("", gtk_entry_get_text (GTK_ENTRY (entry))))
+    return FALSE;
+
+  return TRUE;
+}
+
+
 void
 transpose_dialog (GObject *o, gpointer data)
 {
@@ -99,6 +121,9 @@
 
   gtk_window_set_transient_for (GTK_WINDOW (dialog), de->parent.window);
 
+  psppire_dialog_set_valid_predicate (PSPPIRE_DIALOG (dialog),
+                                     dialog_state_valid, xml);
+
   response = psppire_dialog_run (PSPPIRE_DIALOG (dialog));
 
   switch (response)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]