Added feature to make OK and PASTE buttons insensitive until the dialog box
[pspp-builds.git] / src / ui / gui / descriptives-dialog.c
index 5ed92d9de90c985d5ee10d760cbad366dd6ee874..5a9a2b73c2c4be1f470b5b4cae0e657eb84dc877 100644 (file)
@@ -287,6 +287,20 @@ put_statistics_in_treeview (GtkTreeView *treeview)
   gtk_tree_view_append_column (treeview, col);
 }
 
+
+/* Dialog is valid iff at least one variable has been selected */
+static gboolean
+dialog_state_valid (gpointer data)
+{
+  struct descriptives_dialog *dd = data;
+
+  GtkTreeModel *vars = gtk_tree_view_get_model (dd->stat_vars);
+
+  GtkTreeIter notused;
+
+  return gtk_tree_model_get_iter_first (vars, &notused);
+}
+
 /* Pops up the Descriptives dialog box */
 void
 descriptives_dialog (GObject *o, gpointer data)
@@ -340,6 +354,9 @@ descriptives_dialog (GObject *o, gpointer data)
 
   g_signal_connect (dialog, "refresh", G_CALLBACK (refresh),  &scd);
 
+  psppire_dialog_set_valid_predicate (PSPPIRE_DIALOG (dialog),
+                                     dialog_state_valid, &scd);
+
   response = psppire_dialog_run (PSPPIRE_DIALOG (dialog));