}
-static void
-remove_notify_handlers (PsppireDialog *dialog, GObject *sel)
-{
- g_signal_handlers_disconnect_by_data (sel, dialog);
-}
-
-
/* Descend the widget tree, connecting appropriate signals to the
psppire_dialog_notify_change callback */
static void
G_CALLBACK (psppire_dialog_notify_change),
dialog);
- g_signal_connect (dialog, "destroy", G_CALLBACK (remove_notify_handlers),
- model);
}
g_signal_connect_swapped (selection, "changed",
if (title == NULL)
g_warning ("PsppireDialog %s has no title", gtk_widget_get_name (GTK_WIDGET (dialog)));
-
+
if ( dialog->contents_are_valid != NULL )
gtk_container_foreach (GTK_CONTAINER (gtk_bin_get_child(GTK_BIN(dialog))),
connect_notify_signal,
dialog->loop = g_main_loop_new (NULL, FALSE);
gtk_widget_show (GTK_WIDGET (dialog));
+ psppire_dialog_notify_change (dialog);
- if ( dialog->contents_are_valid != NULL)
- g_signal_emit (dialog, signals [VALIDITY_CHANGED], 0, FALSE);
-
- g_signal_emit (dialog, signals [DIALOG_REFRESH], 0);
-
- gdk_threads_leave ();
g_main_loop_run (dialog->loop);
- gdk_threads_enter ();
g_main_loop_unref (dialog->loop);