Make sure finalizers are called properly
[pspp-builds.git] / src / ui / gui / psppire-output-window.c
index 1bb7a455780245d50c1b25a39cab7e76823e9b8b..abbcae719ef3cd82fd7d4d37437f21dcf961d4ec 100644 (file)
@@ -75,26 +75,23 @@ psppire_output_window_get_type (void)
   return psppire_output_window_type;
 }
 
+static GObjectClass *parent_class;
 
 static void
 psppire_output_window_finalize (GObject *object)
 {
-  g_debug ("%s %p", __FUNCTION__, object);
-
   GObjectClass *class = G_OBJECT_GET_CLASS (object);
 
-  GObjectClass *parent_class = g_type_class_peek_parent (class);
-
 
   if (G_OBJECT_CLASS (parent_class)->finalize)
     (*G_OBJECT_CLASS (parent_class)->finalize) (object);
-
 }
 
 
 static void
 psppire_output_window_class_init (PsppireOutputWindowClass *class)
 {
+  parent_class = g_type_class_peek_parent (class);
 }
 
 
@@ -254,6 +251,9 @@ psppire_output_window_init (PsppireOutputWindow *window)
                    G_CALLBACK (psppire_window_minimise_all),
                    NULL);
 
+  PSPPIRE_WINDOW (window)->menu = GTK_MENU_SHELL (get_widget_assert (xml,"windows_menu"));
+
+
   g_object_unref (xml);
 
   g_signal_connect (window, "delete-event",
@@ -283,7 +283,7 @@ psppire_output_window_reload (void)
   if ( NULL == the_output_viewer )
     {
       the_output_viewer = PSPPIRE_OUTPUT_WINDOW (psppire_output_window_new ());
-      gtk_widget_show (the_output_viewer);
+      gtk_widget_show (GTK_WIDGET (the_output_viewer));
     }
 
   reload_viewer (the_output_viewer);
@@ -307,9 +307,6 @@ reload_viewer (PsppireOutputWindow *ow)
 
   mark = gtk_text_buffer_create_mark (ow->buffer, NULL, &end_iter, TRUE);
 
-
-  g_debug ("%s %p\n", __FUNCTION__, ow);
-
 #ifdef __CYGWIN__
   /*
     Apparently Windoze is not capabale of writing to a file whilst