Fixed bug closing variable type dialog
authorJohn Darrington <john@darrington.wattle.id.au>
Sat, 27 Jan 2007 00:56:29 +0000 (00:56 +0000)
committerJohn Darrington <john@darrington.wattle.id.au>
Sat, 27 Jan 2007 00:56:29 +0000 (00:56 +0000)
src/ui/gui/ChangeLog
src/ui/gui/var-type-dialog.c

index 5b0dbec41b0c036fd73fd287555415aa0685cb9f..0d5825a6072d4bd449b9962f606d1bb922fb6f35 100644 (file)
@@ -1,3 +1,8 @@
+Sat Jan 27 09:48:21 WST 2007 John Darrington <john@darrington.wattle.id.au>
+
+       * var-type-dialog.c: Fixed bugs closing window, apparent when compiled
+       against gtk.2.10
+
 Fri Jan 26 15:51:34 WST 2007 John Darrington <john@darrington.wattle.id.au>
 
        * psppire-var-select.c psppire-var-select.h : Deleted.
index d3eb97edf0515195a63418c9730eb1c53353f7ce..d64b81293a5840a196f8eef2a56e19e316630d48 100644 (file)
@@ -207,8 +207,8 @@ on_toggle_2 (GtkToggleButton *togglebutton, gpointer user_data)
 
 
 static gint on_var_type_ok_clicked (GtkWidget *w, gpointer data);
+static gint hide_dialog (GtkWidget *w,  gpointer data);
 
-#define LEN 20
 
 static void
 add_to_group (GtkWidget *w, gpointer data)
@@ -334,6 +334,10 @@ var_type_dialog_create (GladeXML *xml)
 
   dialog->window = get_widget_assert (xml,"var_type_dialog");
 
+
+  g_signal_connect (dialog->window, "delete-event",
+                   G_CALLBACK (gtk_widget_hide_on_delete), NULL);
+
   gtk_window_set_transient_for (GTK_WINDOW (dialog->window),
                               GTK_WINDOW (get_widget_assert (xml, "data_editor")));
 
@@ -542,11 +546,17 @@ var_type_dialog_create (GladeXML *xml)
                   GTK_SIGNAL_FUNC (preview_custom), dialog);
 
 
-  /* Connect the OK button */
+  /* Connect to the OK button */
   g_signal_connect (dialog->ok, "clicked", G_CALLBACK (on_var_type_ok_clicked),
                   dialog);
 
 
+  /* And the cancel button */
+  g_signal_connect (get_widget_assert (xml, "var_type_cancel") , "clicked",
+                   G_CALLBACK (hide_dialog),
+                   dialog);
+
+
   }
 
   return dialog;
@@ -832,10 +842,12 @@ on_var_type_ok_clicked (GtkWidget *w, gpointer data)
 
 
 
-gint
-on_var_type_cancel_clicked (GtkWidget *w,  gpointer data)
+static gint
+hide_dialog (GtkWidget *w,  gpointer data)
 {
-  gtk_widget_hide (w);
+  struct var_type_dialog *dialog = data;
+
+  gtk_widget_hide (dialog->window);
 
   return FALSE;
 }