patch for Gtk+ front panel

Duncan Coutts duncan.coutts at worc.ox.ac.uk
Thu Dec 8 17:32:47 EST 2005


Hi,

Attached is a patch to port the GHC RTS font panel to Gtk+ 2.x rather
than the obsolete Gtk+ 1.2.

There were basically two changes needed. Change the configure check to
look for the pkg-config utility rather than the old gtk-config. At it's
just checking for Gtk+ 2.0 or later. It may be that the new code
actually needs a slightly later version than that. I'm not quite sure.

The other change was to convert the ghc-fontpanel.glade file to the
glade-2 format using the libglade-convert script and then to re-generate
the C code for constructing the GUI, that is the Vis*.c Vis*.h files in
ghc/rts.

The front panel has been bit-rotting for quite some time so it has not
kept up with changes in the rts structures. So I had to comment out
references to 3 bits that no longer exist. I've left FIXMEs in the code
at the appropriate places so that someone wiser than me can make the
appropriate changes.

So the thing does now build though I have no doubt that it will not run,
or at least will not do the right thing because it has not yet been
updated to the current state of the rts. However hopefully now that it
is at least buildable with a modern Gtk+ version someone else might be
able to fix it up.

This also relates to trac ticket #599:

http://cvs.haskell.org/trac/ghc/ticket/599

Other front panel ideas:
These days it's generally recommended to load the .glade file at runtime
rather than generating C code for it. That'd require that the rts know
the location of the ghc lib dir.

Perhaps instead of building in too many features into a Gtk+ front panel
it'd be better to create a more generic debugging interface. For example
you could say:
./a.out +RTS --debug-socket=./debug.socket -RTS
and then have another program talk to the RTS over that socket. That
other program could be written in Haskell (so we could use Gtk+ from
Haskell via Gtk2Hs rather than writing it in C inside the RTS). That
also means the other program could be a great deal more complex and have
more dependencies than would be tolerable for even the debug version of
the RTS.

I've often wished I could stop a program at some point and poke about
inside it to see what the heap looks like.

Duncan
-------------- next part --------------

New patches:

[Make the front panel use Gtk+ 2.x rather than Gtk+ 1.2
Duncan Coutts <duncan.coutts at worc.ox.ac.uk>**20051208222024] {
hunk ./ghc/configure.ac 27
-AC_PATH_PROGS([GTK_CONFIG], [gtk-config gtk12-config])
+AC_PATH_PROGS([GTK_CONFIG], [pkg-config])
hunk ./ghc/configure.ac 29
-  AC_CACHE_CHECK([for version of GTK+], [fp_cv_gtk_version],
-    [fp_cv_gtk_version=`$GTK_CONFIG --version`])
-  FP_COMPARE_VERSIONS([$fp_cv_gtk_version], [-lt], [1.2],
-    [AC_MSG_WARN([GTK+ not usable, need at least version 1.2])
-     GTK_CONFIG=])
+  if $GTK_CONFIG gtk+-2.0 --atleast-version=2.0; then
+    GTK_CONFIG="$GTK_CONFIG gtk+-2.0"
+  else
+    AC_MSG_WARN([GTK+ not usable, need at least version 2.0])
+    GTK_CONFIG=
+  fi
hunk ./ghc/rts/FrontPanel.c 23
-#include <unistd.h>
-#include <gdk/gdktypes.h>
hunk ./ghc/rts/FrontPanel.c 24
+#include <unistd.h>
+#include <string.h>
hunk ./ghc/rts/FrontPanel.c 608
-		bd = generations[g].steps[s].to_blocks;
+/*		bd = generations[g].steps[s].to_blocks; FIXME to_blocks does not exist */
hunk ./ghc/rts/FrontPanel.c 671
-		    case BLACKHOLE_BQ:
+/*		    case BLACKHOLE_BQ: FIXME: case does not exist */
hunk ./ghc/rts/FrontPanel.c 706
-		    case MUT_CONS:
+/*		    case MUT_CONS: FIXME: case does not exist */
hunk ./ghc/rts/VisSupport.c 13
+#include <stdio.h>
hunk ./ghc/rts/VisSupport.c 19
-/* This is an internally used function to check if a pixmap file exists. */
-static gchar* check_file_exists        (const gchar     *directory,
-                                        const gchar     *filename);
-
-/* This is an internally used function to create pixmaps. */
-static GtkWidget* create_dummy_pixmap  (GtkWidget       *widget);
-
hunk ./ghc/rts/VisSupport.c 31
+      if (!parent)
+        parent = (GtkWidget*) g_object_get_data (G_OBJECT (widget), "GladeParentKey");
hunk ./ghc/rts/VisSupport.c 38
-  found_widget = (GtkWidget*) gtk_object_get_data (GTK_OBJECT (widget),
-                                                   widget_name);
+  found_widget = (GtkWidget*) g_object_get_data (G_OBJECT (widget),
+                                                 widget_name);
hunk ./ghc/rts/VisSupport.c 45
-/* This is a dummy pixmap we use when a pixmap can't be found. */
-static char *dummy_pixmap_xpm[] = {
-/* columns rows colors chars-per-pixel */
-"1 1 1 1",
-"  c None",
-/* pixels */
-" "
-};
-
-/* This is an internally used function to create pixmaps. */
-static GtkWidget*
-create_dummy_pixmap                    (GtkWidget       *widget)
-{
-  GdkColormap *colormap;
-  GdkPixmap *gdkpixmap;
-  GdkBitmap *mask;
-  GtkWidget *pixmap;
-
-  colormap = gtk_widget_get_colormap (widget);
-  gdkpixmap = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap, &mask,
-                                                     NULL, dummy_pixmap_xpm);
-  if (gdkpixmap == NULL)
-    g_error ("Couldn't create replacement pixmap.");
-  pixmap = gtk_pixmap_new (gdkpixmap, mask);
-  gdk_pixmap_unref (gdkpixmap);
-  gdk_bitmap_unref (mask);
-  return pixmap;
-}
-
hunk ./ghc/rts/VisSupport.c 55
+/* This is an internally used function to find pixmap files. */
+static gchar*
+find_pixmap_file                       (const gchar     *filename)
+{
+  GList *elem;
+
+  /* We step through each of the pixmaps directory to find it. */
+  elem = pixmaps_directories;
+  while (elem)
+    {
+      gchar *pathname = g_strdup_printf ("%s%s%s", (gchar*)elem->data,
+                                         G_DIR_SEPARATOR_S, filename);
+      if (g_file_test (pathname, G_FILE_TEST_EXISTS))
+        return pathname;
+      g_free (pathname);
+      elem = elem->next;
+    }
+  return NULL;
+}
+
hunk ./ghc/rts/VisSupport.c 80
-  gchar *found_filename = NULL;
-  GdkColormap *colormap;
-  GdkPixmap *gdkpixmap;
-  GdkBitmap *mask;
+  gchar *pathname = NULL;
hunk ./ghc/rts/VisSupport.c 82
-  GList *elem;
hunk ./ghc/rts/VisSupport.c 84
-      return create_dummy_pixmap (widget);
+      return gtk_image_new ();
hunk ./ghc/rts/VisSupport.c 86
-  /* We first try any pixmaps directories set by the application. */
-  elem = pixmaps_directories;
-  while (elem)
-    {
-      found_filename = check_file_exists ((gchar*)elem->data, filename);
-      if (found_filename)
-        break;
-      elem = elem->next;
-    }
+  pathname = find_pixmap_file (filename);
hunk ./ghc/rts/VisSupport.c 88
-  /* If we haven't found the pixmap, try the source directory. */
-  if (!found_filename)
+  if (!pathname)
hunk ./ghc/rts/VisSupport.c 90
-      found_filename = check_file_exists ("../pixmaps", filename);
+      g_warning ("Couldn't find pixmap file: %s", filename);
+      return gtk_image_new ();
hunk ./ghc/rts/VisSupport.c 94
-  if (!found_filename)
+  pixmap = gtk_image_new_from_file (pathname);
+  g_free (pathname);
+  return pixmap;
+}
+
+/* This is an internally used function to create pixmaps. */
+GdkPixbuf*
+create_pixbuf                          (const gchar     *filename)
+{
+  gchar *pathname = NULL;
+  GdkPixbuf *pixbuf;
+  GError *error = NULL;
+
+  if (!filename || !filename[0])
+      return NULL;
+
+  pathname = find_pixmap_file (filename);
+
+  if (!pathname)
hunk ./ghc/rts/VisSupport.c 115
-      return create_dummy_pixmap (widget);
+      return NULL;
hunk ./ghc/rts/VisSupport.c 118
-  colormap = gtk_widget_get_colormap (widget);
-  gdkpixmap = gdk_pixmap_colormap_create_from_xpm (NULL, colormap, &mask,
-                                                   NULL, found_filename);
-  if (gdkpixmap == NULL)
+  pixbuf = gdk_pixbuf_new_from_file (pathname, &error);
+  if (!pixbuf)
hunk ./ghc/rts/VisSupport.c 121
-      g_warning ("Error loading pixmap file: %s", found_filename);
-      g_free (found_filename);
-      return create_dummy_pixmap (widget);
+      fprintf (stderr, "Failed to load pixbuf file: %s: %s\n",
+               pathname, error->message);
+      g_error_free (error);
hunk ./ghc/rts/VisSupport.c 125
-  g_free (found_filename);
-  pixmap = gtk_pixmap_new (gdkpixmap, mask);
-  gdk_pixmap_unref (gdkpixmap);
-  gdk_bitmap_unref (mask);
-  return pixmap;
+  g_free (pathname);
+  return pixbuf;
hunk ./ghc/rts/VisSupport.c 129
-/* This is an internally used function to check if a pixmap file exists. */
-gchar*
-check_file_exists                      (const gchar     *directory,
-                                        const gchar     *filename)
+/* This is used to set ATK action descriptions. */
+void
+glade_set_atk_action_description       (AtkAction       *action,
+                                        const gchar     *action_name,
+                                        const gchar     *description)
hunk ./ghc/rts/VisSupport.c 135
-  gchar *full_filename;
-  struct stat s;
-  gint status;
+  gint n_actions, i;
hunk ./ghc/rts/VisSupport.c 137
-  full_filename = (gchar*) g_malloc (strlen (directory) + 1
-                                     + strlen (filename) + 1);
-  strcpy (full_filename, directory);
-  strcat (full_filename, G_DIR_SEPARATOR_S);
-  strcat (full_filename, filename);
-
-  status = stat (full_filename, &s);
-  if (status == 0 && S_ISREG (s.st_mode))
-    return full_filename;
-  g_free (full_filename);
-  return NULL;
+  n_actions = atk_action_get_n_actions (action);
+  for (i = 0; i < n_actions; i++)
+    {
+      if (!strcmp (atk_action_get_name (action, i), action_name))
+        atk_action_set_description (action, i, description);
+    }
hunk ./ghc/rts/VisSupport.h 24
-/* get_widget() is deprecated. Use lookup_widget instead. */
-#define get_widget lookup_widget
hunk ./ghc/rts/VisSupport.h 33
-/* This is used to create the pixmaps in the interface. */
+/* This is used to create the pixmaps used in the interface. */
hunk ./ghc/rts/VisSupport.h 36
+
+/* This is used to create the pixbufs used in the interface. */
+GdkPixbuf*  create_pixbuf              (const gchar     *filename);
+
+/* This is used to set ATK action descriptions. */
+void        glade_set_atk_action_description (AtkAction       *action,
+                                              const gchar     *action_name,
+                                              const gchar     *description);
hunk ./ghc/rts/VisWindow.c 13
+#include <stdio.h>
hunk ./ghc/rts/VisWindow.c 22
+#define GLADE_HOOKUP_OBJECT(component,widget,name) \
+  g_object_set_data_full (G_OBJECT (component), name, \
+    gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
+
+#define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
+  g_object_set_data (G_OBJECT (component), name, widget)
+
hunk ./ghc/rts/VisWindow.c 41
+  GtkWidget *label1;
hunk ./ghc/rts/VisWindow.c 49
+  GtkWidget *label41;
hunk ./ghc/rts/VisWindow.c 57
+  GtkWidget *label42;
hunk ./ghc/rts/VisWindow.c 74
+  GtkWidget *label43;
hunk ./ghc/rts/VisWindow.c 95
+  GtkWidget *label44;
hunk ./ghc/rts/VisWindow.c 99
-  GSList *grp1_group = NULL;
hunk ./ghc/rts/VisWindow.c 100
+  GSList *cont_radio_group = NULL;
hunk ./ghc/rts/VisWindow.c 107
+  GtkWidget *label45;
hunk ./ghc/rts/VisWindow.c 112
-  gtk_object_set_data (GTK_OBJECT (GHC_Front_Panel), "GHC_Front_Panel", GHC_Front_Panel);
+  gtk_widget_set_name (GHC_Front_Panel, "GHC_Front_Panel");
hunk ./ghc/rts/VisWindow.c 117
-  gtk_widget_ref (vbox1);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox1", vbox1,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox1, "vbox1");
hunk ./ghc/rts/VisWindow.c 122
-  gtk_widget_ref (hbox1);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "hbox1", hbox1,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (hbox1, "hbox1");
hunk ./ghc/rts/VisWindow.c 128
-  gtk_widget_ref (vbox4);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox4", vbox4,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox4, "vbox4");
hunk ./ghc/rts/VisWindow.c 132
-  frame3 = gtk_frame_new ("Memory Map");
-  gtk_widget_ref (frame3);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "frame3", frame3,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  frame3 = gtk_frame_new (NULL);
+  gtk_widget_set_name (frame3, "frame3");
hunk ./ghc/rts/VisWindow.c 138
-  gtk_widget_ref (hbox3);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "hbox3", hbox3,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (hbox3, "hbox3");
hunk ./ghc/rts/VisWindow.c 143
-  gtk_widget_ref (label40);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label40", label40,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label40, "label40");
hunk ./ghc/rts/VisWindow.c 146
+  gtk_label_set_justify (GTK_LABEL (label40), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 149
-  gtk_widget_ref (map_ruler);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "map_ruler", map_ruler,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (map_ruler, "map_ruler");
hunk ./ghc/rts/VisWindow.c 152
-  gtk_ruler_set_range (GTK_RULER (map_ruler), 0, 10, 5.18797, 10);
+  gtk_ruler_set_range (GTK_RULER (map_ruler), 0, 10, 1.40845, 10);
hunk ./ghc/rts/VisWindow.c 155
-  gtk_widget_ref (memmap);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "memmap", memmap,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (memmap, "memmap");
hunk ./ghc/rts/VisWindow.c 159
-  frame8 = gtk_frame_new ("Generations");
-  gtk_widget_ref (frame8);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "frame8", frame8,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  label1 = gtk_label_new ("Memory Map");
+  gtk_widget_set_name (label1, "label1");
+  gtk_widget_show (label1);
+  gtk_frame_set_label_widget (GTK_FRAME (frame3), label1);
+
+  frame8 = gtk_frame_new (NULL);
+  gtk_widget_set_name (frame8, "frame8");
hunk ./ghc/rts/VisWindow.c 170
-  gtk_widget_ref (vbox14);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox14", vbox14,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox14, "vbox14");
hunk ./ghc/rts/VisWindow.c 175
-  gtk_widget_ref (table4);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "table4", table4,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (table4, "table4");
hunk ./ghc/rts/VisWindow.c 180
-  gtk_widget_ref (gen_ruler);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "gen_ruler", gen_ruler,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (gen_ruler, "gen_ruler");
hunk ./ghc/rts/VisWindow.c 188
-  gtk_widget_ref (gen_hbox);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "gen_hbox", gen_hbox,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (gen_hbox, "gen_hbox");
hunk ./ghc/rts/VisWindow.c 195
-  gtk_widget_ref (generations);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "generations", generations,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (generations, "generations");
hunk ./ghc/rts/VisWindow.c 202
-  gtk_widget_ref (label39);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label39", label39,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label39, "label39");
hunk ./ghc/rts/VisWindow.c 207
+  gtk_label_set_justify (GTK_LABEL (label39), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 209
-  frame7 = gtk_frame_new ("Residency");
-  gtk_widget_ref (frame7);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "frame7", frame7,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  label41 = gtk_label_new ("Generations");
+  gtk_widget_set_name (label41, "label41");
+  gtk_widget_show (label41);
+  gtk_frame_set_label_widget (GTK_FRAME (frame8), label41);
+
+  frame7 = gtk_frame_new (NULL);
+  gtk_widget_set_name (frame7, "frame7");
hunk ./ghc/rts/VisWindow.c 220
-  gtk_widget_ref (table3);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "table3", table3,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (table3, "table3");
hunk ./ghc/rts/VisWindow.c 226
-  gtk_widget_ref (res_hruler);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "res_hruler", res_hruler,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (res_hruler, "res_hruler");
hunk ./ghc/rts/VisWindow.c 234
-  gtk_widget_ref (res_vruler);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "res_vruler", res_vruler,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (res_vruler, "res_vruler");
hunk ./ghc/rts/VisWindow.c 242
-  gtk_widget_ref (res_drawingarea);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "res_drawingarea", res_drawingarea,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (res_drawingarea, "res_drawingarea");
hunk ./ghc/rts/VisWindow.c 249
-  gtk_widget_ref (label37);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label37", label37,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label37, "label37");
hunk ./ghc/rts/VisWindow.c 254
+  gtk_label_set_justify (GTK_LABEL (label37), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 257
-  gtk_widget_ref (label38);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label38", label38,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label38, "label38");
hunk ./ghc/rts/VisWindow.c 262
+  gtk_label_set_justify (GTK_LABEL (label38), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 264
+  label42 = gtk_label_new ("Residency");
+  gtk_widget_set_name (label42, "label42");
+  gtk_widget_show (label42);
+  gtk_frame_set_label_widget (GTK_FRAME (frame7), label42);
+
hunk ./ghc/rts/VisWindow.c 270
-  gtk_widget_ref (vbox5);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox5", vbox5,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox5, "vbox5");
hunk ./ghc/rts/VisWindow.c 274
-  frame5 = gtk_frame_new ("Stats");
-  gtk_widget_ref (frame5);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "frame5", frame5,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  frame5 = gtk_frame_new (NULL);
+  gtk_widget_set_name (frame5, "frame5");
hunk ./ghc/rts/VisWindow.c 280
-  gtk_widget_ref (vbox6);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox6", vbox6,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox6, "vbox6");
hunk ./ghc/rts/VisWindow.c 286
-  gtk_widget_ref (table1);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "table1", table1,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (table1, "table1");
hunk ./ghc/rts/VisWindow.c 292
-  gtk_widget_ref (label12);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label12", label12,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label12, "label12");
hunk ./ghc/rts/VisWindow.c 301
-  gtk_widget_ref (label13);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label13", label13,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label13, "label13");
hunk ./ghc/rts/VisWindow.c 310
-  gtk_widget_ref (label14);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label14", label14,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label14, "label14");
hunk ./ghc/rts/VisWindow.c 318
-  label15 = gtk_label_new ("Footprint");
-  gtk_widget_ref (label15);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label15", label15,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  label15 = gtk_label_new ("\t\tFootprint");
+  gtk_widget_set_name (label15, "label15");
hunk ./ghc/rts/VisWindow.c 328
-  gtk_widget_ref (label16);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label16", label16,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label16, "label16");
hunk ./ghc/rts/VisWindow.c 333
+  gtk_label_set_justify (GTK_LABEL (label16), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 336
-  gtk_widget_ref (label17);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label17", label17,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label17, "label17");
hunk ./ghc/rts/VisWindow.c 341
-  gtk_label_set_justify (GTK_LABEL (label17), GTK_JUSTIFY_LEFT);
hunk ./ghc/rts/VisWindow.c 344
-  gtk_widget_ref (label18);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label18", label18,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label18, "label18");
hunk ./ghc/rts/VisWindow.c 349
+  gtk_label_set_justify (GTK_LABEL (label18), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 353
-  gtk_widget_ref (label19);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label19", label19,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label19, "label19");
hunk ./ghc/rts/VisWindow.c 358
+  gtk_label_set_justify (GTK_LABEL (label19), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 362
-  gtk_widget_ref (live_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "live_label", live_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (live_label, "live_label");
hunk ./ghc/rts/VisWindow.c 367
-  gtk_widget_set_usize (live_label, 70, -2);
+  gtk_label_set_justify (GTK_LABEL (live_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 371
-  gtk_widget_ref (allocated_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "allocated_label", allocated_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (allocated_label, "allocated_label");
hunk ./ghc/rts/VisWindow.c 376
-  gtk_widget_set_usize (allocated_label, 70, -2);
+  gtk_label_set_justify (GTK_LABEL (allocated_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 380
-  gtk_widget_ref (footprint_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "footprint_label", footprint_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (footprint_label, "footprint_label");
hunk ./ghc/rts/VisWindow.c 385
-  gtk_widget_set_usize (footprint_label, 70, -2);
+  gtk_label_set_justify (GTK_LABEL (footprint_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 389
-  gtk_widget_ref (alloc_rate_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "alloc_rate_label", alloc_rate_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (alloc_rate_label, "alloc_rate_label");
hunk ./ghc/rts/VisWindow.c 394
-  gtk_widget_set_usize (alloc_rate_label, 70, -2);
+  gtk_label_set_justify (GTK_LABEL (alloc_rate_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 397
-  frame9 = gtk_frame_new ("Threads");
-  gtk_widget_ref (frame9);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "frame9", frame9,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  label43 = gtk_label_new ("Stats");
+  gtk_widget_set_name (label43, "label43");
+  gtk_widget_show (label43);
+  gtk_frame_set_label_widget (GTK_FRAME (frame5), label43);
+
+  frame9 = gtk_frame_new (NULL);
+  gtk_widget_set_name (frame9, "frame9");
hunk ./ghc/rts/VisWindow.c 408
-  gtk_widget_ref (table5);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "table5", table5,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (table5, "table5");
hunk ./ghc/rts/VisWindow.c 415
-  gtk_widget_ref (label20);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label20", label20,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label20, "label20");
hunk ./ghc/rts/VisWindow.c 420
+  gtk_label_set_justify (GTK_LABEL (label20), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 424
-  gtk_widget_ref (label21);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label21", label21,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label21, "label21");
hunk ./ghc/rts/VisWindow.c 429
+  gtk_label_set_justify (GTK_LABEL (label21), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 433
-  gtk_widget_ref (label22);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label22", label22,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label22, "label22");
hunk ./ghc/rts/VisWindow.c 438
+  gtk_label_set_justify (GTK_LABEL (label22), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 442
-  gtk_widget_ref (label24);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label24", label24,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label24, "label24");
hunk ./ghc/rts/VisWindow.c 447
+  gtk_label_set_justify (GTK_LABEL (label24), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 451
-  gtk_widget_ref (label26);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label26", label26,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label26, "label26");
hunk ./ghc/rts/VisWindow.c 456
+  gtk_label_set_justify (GTK_LABEL (label26), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 460
-  gtk_widget_ref (label25);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label25", label25,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label25, "label25");
hunk ./ghc/rts/VisWindow.c 465
+  gtk_label_set_justify (GTK_LABEL (label25), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 469
-  gtk_widget_ref (label27);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label27", label27,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label27, "label27");
hunk ./ghc/rts/VisWindow.c 474
+  gtk_label_set_justify (GTK_LABEL (label27), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 478
-  gtk_widget_ref (running_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "running_label", running_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (running_label, "running_label");
hunk ./ghc/rts/VisWindow.c 483
+  gtk_label_set_justify (GTK_LABEL (running_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 486
-  gtk_widget_ref (blockread_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "blockread_label", blockread_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (blockread_label, "blockread_label");
hunk ./ghc/rts/VisWindow.c 491
+  gtk_label_set_justify (GTK_LABEL (blockread_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 494
-  gtk_widget_ref (blockwrite_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "blockwrite_label", blockwrite_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (blockwrite_label, "blockwrite_label");
hunk ./ghc/rts/VisWindow.c 499
+  gtk_label_set_justify (GTK_LABEL (blockwrite_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 502
-  gtk_widget_ref (blockmvar_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "blockmvar_label", blockmvar_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (blockmvar_label, "blockmvar_label");
hunk ./ghc/rts/VisWindow.c 507
+  gtk_label_set_justify (GTK_LABEL (blockmvar_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 510
-  gtk_widget_ref (blockthrowto_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "blockthrowto_label", blockthrowto_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (blockthrowto_label, "blockthrowto_label");
hunk ./ghc/rts/VisWindow.c 515
+  gtk_label_set_justify (GTK_LABEL (blockthrowto_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 518
-  gtk_widget_ref (blockbh_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "blockbh_label", blockbh_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (blockbh_label, "blockbh_label");
hunk ./ghc/rts/VisWindow.c 523
+  gtk_label_set_justify (GTK_LABEL (blockbh_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 526
-  gtk_widget_ref (sleeping_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "sleeping_label", sleeping_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (sleeping_label, "sleeping_label");
hunk ./ghc/rts/VisWindow.c 531
+  gtk_label_set_justify (GTK_LABEL (sleeping_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 534
-  gtk_widget_ref (hseparator1);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "hseparator1", hseparator1,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (hseparator1, "hseparator1");
hunk ./ghc/rts/VisWindow.c 541
-  gtk_widget_ref (hseparator2);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "hseparator2", hseparator2,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (hseparator2, "hseparator2");
hunk ./ghc/rts/VisWindow.c 548
-  gtk_widget_ref (label35);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "label35", label35,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (label35, "label35");
hunk ./ghc/rts/VisWindow.c 553
+  gtk_label_set_justify (GTK_LABEL (label35), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 557
-  gtk_widget_ref (total_label);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "total_label", total_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (total_label, "total_label");
hunk ./ghc/rts/VisWindow.c 562
+  gtk_label_set_justify (GTK_LABEL (total_label), GTK_JUSTIFY_CENTER);
hunk ./ghc/rts/VisWindow.c 564
-  frame6 = gtk_frame_new ("Updates");
-  gtk_widget_ref (frame6);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "frame6", frame6,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  label44 = gtk_label_new ("Threads");
+  gtk_widget_set_name (label44, "label44");
+  gtk_widget_show (label44);
+  gtk_frame_set_label_widget (GTK_FRAME (frame9), label44);
+
+  frame6 = gtk_frame_new (NULL);
+  gtk_widget_set_name (frame6, "frame6");
hunk ./ghc/rts/VisWindow.c 575
-  gtk_widget_ref (vbox7);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox7", vbox7,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox7, "vbox7");
hunk ./ghc/rts/VisWindow.c 581
-  gtk_widget_ref (vbox9);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox9", vbox9,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox9, "vbox9");
hunk ./ghc/rts/VisWindow.c 585
-  cont_radio = gtk_radio_button_new_with_label (grp1_group, "Continuous");
-  grp1_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cont_radio));
-  gtk_widget_ref (cont_radio);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "cont_radio", cont_radio,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  cont_radio = gtk_radio_button_new_with_mnemonic (NULL, "Continuous");
+  gtk_widget_set_name (cont_radio, "cont_radio");
hunk ./ghc/rts/VisWindow.c 589
+  gtk_radio_button_set_group (GTK_RADIO_BUTTON (cont_radio), cont_radio_group);
+  cont_radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (cont_radio));
hunk ./ghc/rts/VisWindow.c 593
-  stop_before_radio = gtk_radio_button_new_with_label (grp1_group, "Stop before GC");
-  grp1_group = gtk_radio_button_group (GTK_RADIO_BUTTON (stop_before_radio));
-  gtk_widget_ref (stop_before_radio);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "stop_before_radio", stop_before_radio,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  stop_before_radio = gtk_radio_button_new_with_mnemonic (NULL, "Stop before GC");
+  gtk_widget_set_name (stop_before_radio, "stop_before_radio");
hunk ./ghc/rts/VisWindow.c 597
+  gtk_radio_button_set_group (GTK_RADIO_BUTTON (stop_before_radio), cont_radio_group);
+  cont_radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (stop_before_radio));
hunk ./ghc/rts/VisWindow.c 600
-  stop_after_radio = gtk_radio_button_new_with_label (grp1_group, "Stop after GC");
-  grp1_group = gtk_radio_button_group (GTK_RADIO_BUTTON (stop_after_radio));
-  gtk_widget_ref (stop_after_radio);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "stop_after_radio", stop_after_radio,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  stop_after_radio = gtk_radio_button_new_with_mnemonic (NULL, "Stop after GC");
+  gtk_widget_set_name (stop_after_radio, "stop_after_radio");
hunk ./ghc/rts/VisWindow.c 604
+  gtk_radio_button_set_group (GTK_RADIO_BUTTON (stop_after_radio), cont_radio_group);
+  cont_radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (stop_after_radio));
hunk ./ghc/rts/VisWindow.c 607
-  stop_both_radio = gtk_radio_button_new_with_label (grp1_group, "Stop before & after GC");
-  grp1_group = gtk_radio_button_group (GTK_RADIO_BUTTON (stop_both_radio));
-  gtk_widget_ref (stop_both_radio);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "stop_both_radio", stop_both_radio,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  stop_both_radio = gtk_radio_button_new_with_mnemonic (NULL, "Stop before & after GC");
+  gtk_widget_set_name (stop_both_radio, "stop_both_radio");
hunk ./ghc/rts/VisWindow.c 611
+  gtk_radio_button_set_group (GTK_RADIO_BUTTON (stop_both_radio), cont_radio_group);
+  cont_radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (stop_both_radio));
hunk ./ghc/rts/VisWindow.c 615
-  gtk_widget_ref (vbox8);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "vbox8", vbox8,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (vbox8, "vbox8");
hunk ./ghc/rts/VisWindow.c 619
-  stop_but = gtk_button_new_with_label ("Stop");
-  gtk_widget_ref (stop_but);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "stop_but", stop_but,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  stop_but = gtk_button_new_with_mnemonic ("Stop");
+  gtk_widget_set_name (stop_but, "stop_but");
hunk ./ghc/rts/VisWindow.c 624
-  continue_but = gtk_button_new_with_label ("Continue");
-  gtk_widget_ref (continue_but);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "continue_but", continue_but,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  continue_but = gtk_button_new_with_mnemonic ("Continue");
+  gtk_widget_set_name (continue_but, "continue_but");
hunk ./ghc/rts/VisWindow.c 629
-  quit_but = gtk_button_new_with_label ("Quit");
-  gtk_widget_ref (quit_but);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "quit_but", quit_but,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  label45 = gtk_label_new ("Updates");
+  gtk_widget_set_name (label45, "label45");
+  gtk_widget_show (label45);
+  gtk_frame_set_label_widget (GTK_FRAME (frame6), label45);
+
+  quit_but = gtk_button_new_with_mnemonic ("Quit");
+  gtk_widget_set_name (quit_but, "quit_but");
hunk ./ghc/rts/VisWindow.c 640
-  gtk_widget_ref (statusbar);
-  gtk_object_set_data_full (GTK_OBJECT (GHC_Front_Panel), "statusbar", statusbar,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_name (statusbar, "statusbar");
hunk ./ghc/rts/VisWindow.c 644
-  gtk_signal_connect (GTK_OBJECT (cont_radio), "clicked",
-                      GTK_SIGNAL_FUNC (on_cont_radio_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (stop_before_radio), "clicked",
-                      GTK_SIGNAL_FUNC (on_stop_before_radio_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (stop_after_radio), "clicked",
-                      GTK_SIGNAL_FUNC (on_stop_after_radio_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (stop_both_radio), "clicked",
-                      GTK_SIGNAL_FUNC (on_stop_both_radio_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (stop_but), "clicked",
-                      GTK_SIGNAL_FUNC (on_stop_but_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (continue_but), "clicked",
-                      GTK_SIGNAL_FUNC (on_continue_but_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (quit_but), "clicked",
-                      GTK_SIGNAL_FUNC (on_quit_but_clicked),
-                      NULL);
+  g_signal_connect ((gpointer) cont_radio, "clicked",
+                    G_CALLBACK (on_cont_radio_clicked),
+                    NULL);
+  g_signal_connect ((gpointer) stop_before_radio, "clicked",
+                    G_CALLBACK (on_stop_before_radio_clicked),
+                    NULL);
+  g_signal_connect ((gpointer) stop_after_radio, "clicked",
+                    G_CALLBACK (on_stop_after_radio_clicked),
+                    NULL);
+  g_signal_connect ((gpointer) stop_both_radio, "clicked",
+                    G_CALLBACK (on_stop_both_radio_clicked),
+                    NULL);
+  g_signal_connect ((gpointer) stop_but, "clicked",
+                    G_CALLBACK (on_stop_but_clicked),
+                    NULL);
+  g_signal_connect ((gpointer) continue_but, "clicked",
+                    G_CALLBACK (on_continue_but_clicked),
+                    NULL);
+  g_signal_connect ((gpointer) quit_but, "clicked",
+                    G_CALLBACK (on_quit_but_clicked),
+                    NULL);
+
+  /* Store pointers to all widgets, for use by lookup_widget(). */
+  GLADE_HOOKUP_OBJECT_NO_REF (GHC_Front_Panel, GHC_Front_Panel, "GHC_Front_Panel");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox1, "vbox1");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, hbox1, "hbox1");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox4, "vbox4");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, frame3, "frame3");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, hbox3, "hbox3");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label40, "label40");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, map_ruler, "map_ruler");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, memmap, "memmap");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label1, "label1");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, frame8, "frame8");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox14, "vbox14");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, table4, "table4");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, gen_ruler, "gen_ruler");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, gen_hbox, "gen_hbox");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, generations, "generations");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label39, "label39");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label41, "label41");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, frame7, "frame7");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, table3, "table3");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, res_hruler, "res_hruler");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, res_vruler, "res_vruler");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, res_drawingarea, "res_drawingarea");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label37, "label37");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label38, "label38");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label42, "label42");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox5, "vbox5");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, frame5, "frame5");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox6, "vbox6");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, table1, "table1");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label12, "label12");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label13, "label13");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label14, "label14");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label15, "label15");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label16, "label16");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label17, "label17");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label18, "label18");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label19, "label19");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, live_label, "live_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, allocated_label, "allocated_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, footprint_label, "footprint_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, alloc_rate_label, "alloc_rate_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label43, "label43");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, frame9, "frame9");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, table5, "table5");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label20, "label20");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label21, "label21");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label22, "label22");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label24, "label24");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label26, "label26");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label25, "label25");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label27, "label27");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, running_label, "running_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, blockread_label, "blockread_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, blockwrite_label, "blockwrite_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, blockmvar_label, "blockmvar_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, blockthrowto_label, "blockthrowto_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, blockbh_label, "blockbh_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, sleeping_label, "sleeping_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, hseparator1, "hseparator1");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, hseparator2, "hseparator2");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label35, "label35");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, total_label, "total_label");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label44, "label44");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, frame6, "frame6");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox7, "vbox7");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox9, "vbox9");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, cont_radio, "cont_radio");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, stop_before_radio, "stop_before_radio");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, stop_after_radio, "stop_after_radio");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, stop_both_radio, "stop_both_radio");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, vbox8, "vbox8");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, stop_but, "stop_but");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, continue_but, "continue_but");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, label45, "label45");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, quit_but, "quit_but");
+  GLADE_HOOKUP_OBJECT (GHC_Front_Panel, statusbar, "statusbar");
hunk ./ghc/rts/ghc-frontpanel.glade 1
-<?xml version="1.0"?>
-<GTK-Interface>
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
hunk ./ghc/rts/ghc-frontpanel.glade 4
-<project>
-  <name>Ghc-FrontPanel</name>
-  <program_name>ghc-frontpanel</program_name>
-  <directory></directory>
-  <source_directory>.</source_directory>
-  <pixmaps_directory>pixmaps</pixmaps_directory>
-  <language>C</language>
-  <gnome_support>False</gnome_support>
-  <gettext_support>False</gettext_support>
-  <output_main_file>False</output_main_file>
-  <output_support_files>False</output_support_files>
-  <output_build_files>False</output_build_files>
-  <main_source_file>VisWindow.c</main_source_file>
-  <main_header_file>VisWindow.h</main_header_file>
-  <handler_source_file>VisCallbacks.c</handler_source_file>
-  <handler_header_file>VisCallbacks.h</handler_header_file>
-  <support_source_file>VisSupport.c</support_source_file>
-  <support_header_file>VisSupport.h</support_header_file>
-</project>
+<glade-interface>
hunk ./ghc/rts/ghc-frontpanel.glade 6
-<widget>
-  <class>GtkWindow</class>
-  <name>GHC Front Panel</name>
-  <title>GHC Front Panel</title>
-  <type>GTK_WINDOW_TOPLEVEL</type>
-  <position>GTK_WIN_POS_NONE</position>
-  <modal>False</modal>
-  <default_width>450</default_width>
-  <default_height>600</default_height>
-  <allow_shrink>False</allow_shrink>
-  <allow_grow>True</allow_grow>
-  <auto_shrink>False</auto_shrink>
+<widget class="GtkWindow" id="GHC Front Panel">
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">GHC Front Panel</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="default_width">450</property>
+  <property name="default_height">600</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
hunk ./ghc/rts/ghc-frontpanel.glade 23
-  <widget>
-    <class>GtkVBox</class>
-    <name>vbox1</name>
-    <homogeneous>False</homogeneous>
-    <spacing>0</spacing>
+  <child>
+    <widget class="GtkVBox" id="vbox1">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 29
-    <widget>
-      <class>GtkHBox</class>
-      <name>hbox1</name>
-      <border_width>10</border_width>
-      <homogeneous>False</homogeneous>
-      <spacing>10</spacing>
hunk ./ghc/rts/ghc-frontpanel.glade 30
-	<padding>0</padding>
-	<expand>True</expand>
-	<fill>True</fill>
-      </child>
+	<widget class="GtkHBox" id="hbox1">
+	  <property name="border_width">10</property>
+	  <property name="visible">True</property>
+	  <property name="homogeneous">False</property>
+	  <property name="spacing">10</property>
hunk ./ghc/rts/ghc-frontpanel.glade 36
-      <widget>
-	<class>GtkVBox</class>
-	<name>vbox4</name>
-	<homogeneous>False</homogeneous>
-	<spacing>10</spacing>
-	<child>
-	  <padding>0</padding>
-	  <expand>True</expand>
-	  <fill>True</fill>
-	</child>
-
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>frame3</name>
-	  <label>Memory Map</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
hunk ./ghc/rts/ghc-frontpanel.glade 37
-	    <padding>0</padding>
-	    <expand>True</expand>
-	    <fill>True</fill>
-	  </child>
+	    <widget class="GtkVBox" id="vbox4">
+	      <property name="visible">True</property>
+	      <property name="homogeneous">False</property>
+	      <property name="spacing">10</property>
hunk ./ghc/rts/ghc-frontpanel.glade 42
-	  <widget>
-	    <class>GtkHBox</class>
-	    <name>hbox3</name>
-	    <homogeneous>False</homogeneous>
-	    <spacing>0</spacing>
-
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label40</name>
-	      <label>Mb</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
hunk ./ghc/rts/ghc-frontpanel.glade 43
-		<padding>0</padding>
-		<expand>False</expand>
-		<fill>False</fill>
-	      </child>
-	    </widget>
+		<widget class="GtkFrame" id="frame3">
+		  <property name="visible">True</property>
+		  <property name="label_xalign">0</property>
+		  <property name="label_yalign">0.5</property>
+		  <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
hunk ./ghc/rts/ghc-frontpanel.glade 49
-	    <widget>
-	      <class>GtkVRuler</class>
-	      <name>map_ruler</name>
-	      <metric>GTK_PIXELS</metric>
-	      <lower>0</lower>
-	      <upper>10</upper>
-	      <position>5.18797</position>
-	      <max_size>10</max_size>
-	      <child>
-		<padding>0</padding>
-		<expand>False</expand>
-		<fill>False</fill>
-	      </child>
-	    </widget>
+		  <child>
+		    <widget class="GtkHBox" id="hbox3">
+		      <property name="visible">True</property>
+		      <property name="homogeneous">False</property>
+		      <property name="spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 55
-	    <widget>
-	      <class>GtkDrawingArea</class>
-	      <name>memmap</name>
-	      <child>
-		<padding>0</padding>
-		<expand>True</expand>
-		<fill>True</fill>
-	      </child>
-	    </widget>
-	  </widget>
-	</widget>
+		      <child>
+			<widget class="GtkLabel" id="label40">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Mb</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">False</property>
+			  <property name="fill">False</property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 80
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>frame8</name>
-	  <label>Generations</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-	  <child>
-	    <padding>0</padding>
-	    <expand>True</expand>
-	    <fill>True</fill>
-	  </child>
+		      <child>
+			<widget class="GtkVRuler" id="map_ruler">
+			  <property name="visible">True</property>
+			  <property name="metric">GTK_PIXELS</property>
+			  <property name="lower">0</property>
+			  <property name="upper">10</property>
+			  <property name="position">1.40845072269</property>
+			  <property name="max_size">10</property>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">False</property>
+			  <property name="fill">False</property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 96
-	  <widget>
-	    <class>GtkVBox</class>
-	    <name>vbox14</name>
-	    <homogeneous>False</homogeneous>
-	    <spacing>0</spacing>
+		      <child>
+			<widget class="GtkDrawingArea" id="memmap">
+			  <property name="visible">True</property>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
+			</packing>
+		      </child>
+		    </widget>
+		  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 109
-	    <widget>
-	      <class>GtkTable</class>
-	      <name>table4</name>
-	      <rows>2</rows>
-	      <columns>3</columns>
-	      <homogeneous>False</homogeneous>
-	      <row_spacing>0</row_spacing>
-	      <column_spacing>0</column_spacing>
-	      <child>
-		<padding>0</padding>
-		<expand>True</expand>
-		<fill>True</fill>
+		  <child>
+		    <widget class="GtkLabel" id="label1">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Memory Map</property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="type">label_item</property>
+		    </packing>
+		  </child>
+		</widget>
+		<packing>
+		  <property name="padding">0</property>
+		  <property name="expand">True</property>
+		  <property name="fill">True</property>
+		</packing>
hunk ./ghc/rts/ghc-frontpanel.glade 139
-	      <widget>
-		<class>GtkVRuler</class>
-		<name>gen_ruler</name>
-		<metric>GTK_PIXELS</metric>
-		<lower>0</lower>
-		<upper>10</upper>
-		<position>1.69935</position>
-		<max_size>10</max_size>
-		<child>
-		  <left_attach>1</left_attach>
-		  <right_attach>2</right_attach>
-		  <top_attach>0</top_attach>
-		  <bottom_attach>1</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>True</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>True</yfill>
-		</child>
-	      </widget>
+	      <child>
+		<widget class="GtkFrame" id="frame8">
+		  <property name="visible">True</property>
+		  <property name="label_xalign">0</property>
+		  <property name="label_yalign">0.5</property>
+		  <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
hunk ./ghc/rts/ghc-frontpanel.glade 146
-	      <widget>
-		<class>GtkHBox</class>
-		<name>gen_hbox</name>
-		<homogeneous>False</homogeneous>
-		<spacing>0</spacing>
-		<child>
-		  <left_attach>2</left_attach>
-		  <right_attach>3</right_attach>
-		  <top_attach>1</top_attach>
-		  <bottom_attach>2</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>True</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>True</yfill>
-		</child>
+		  <child>
+		    <widget class="GtkVBox" id="vbox14">
+		      <property name="visible">True</property>
+		      <property name="homogeneous">False</property>
+		      <property name="spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 152
-		<widget>
-		  <class>Placeholder</class>
-		</widget>
+		      <child>
+			<widget class="GtkTable" id="table4">
+			  <property name="visible">True</property>
+			  <property name="n_rows">2</property>
+			  <property name="n_columns">3</property>
+			  <property name="homogeneous">False</property>
+			  <property name="row_spacing">0</property>
+			  <property name="column_spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 161
-		<widget>
-		  <class>Placeholder</class>
-		</widget>
+			  <child>
+			    <widget class="GtkVRuler" id="gen_ruler">
+			      <property name="visible">True</property>
+			      <property name="metric">GTK_PIXELS</property>
+			      <property name="lower">0</property>
+			      <property name="upper">10</property>
+			      <property name="position">1.69934999943</property>
+			      <property name="max_size">10</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">1</property>
+			      <property name="right_attach">2</property>
+			      <property name="top_attach">0</property>
+			      <property name="bottom_attach">1</property>
+			      <property name="x_options">fill</property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 179
-		<widget>
-		  <class>Placeholder</class>
-		</widget>
-	      </widget>
+			  <child>
+			    <widget class="GtkHBox" id="gen_hbox">
+			      <property name="visible">True</property>
+			      <property name="homogeneous">False</property>
+			      <property name="spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 185
-	      <widget>
-		<class>GtkDrawingArea</class>
-		<name>generations</name>
-		<child>
-		  <left_attach>2</left_attach>
-		  <right_attach>3</right_attach>
-		  <top_attach>0</top_attach>
-		  <bottom_attach>1</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>True</yfill>
-		</child>
-	      </widget>
+			      <child>
+				<placeholder/>
+			      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 189
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label39</name>
-		<label>Mb</label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>0.5</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>0</left_attach>
-		  <right_attach>1</right_attach>
-		  <top_attach>0</top_attach>
-		  <bottom_attach>1</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>False</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
-	    </widget>
-	  </widget>
-	</widget>
+			      <child>
+				<placeholder/>
+			      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 193
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>frame7</name>
-	  <label>Residency</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-	  <child>
-	    <padding>0</padding>
-	    <expand>True</expand>
-	    <fill>True</fill>
-	  </child>
+			      <child>
+				<placeholder/>
+			      </child>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">2</property>
+			      <property name="right_attach">3</property>
+			      <property name="top_attach">1</property>
+			      <property name="bottom_attach">2</property>
+			      <property name="y_options">fill</property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 206
-	  <widget>
-	    <class>GtkTable</class>
-	    <name>table3</name>
-	    <border_width>2</border_width>
-	    <rows>3</rows>
-	    <columns>3</columns>
-	    <homogeneous>False</homogeneous>
-	    <row_spacing>0</row_spacing>
-	    <column_spacing>0</column_spacing>
+			  <child>
+			    <widget class="GtkDrawingArea" id="generations">
+			      <property name="visible">True</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">2</property>
+			      <property name="right_attach">3</property>
+			      <property name="top_attach">0</property>
+			      <property name="bottom_attach">1</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options">fill</property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 220
-	    <widget>
-	      <class>GtkHRuler</class>
-	      <name>res_hruler</name>
-	      <metric>GTK_PIXELS</metric>
-	      <lower>0</lower>
-	      <upper>10</upper>
-	      <position>8.35443</position>
-	      <max_size>10</max_size>
-	      <child>
-		<left_attach>2</left_attach>
-		<right_attach>3</right_attach>
-		<top_attach>1</top_attach>
-		<bottom_attach>2</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>True</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>True</yfill>
-	      </child>
-	    </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label39">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">Mb</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">0.5</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">0</property>
+			      <property name="right_attach">1</property>
+			      <property name="top_attach">0</property>
+			      <property name="bottom_attach">1</property>
+			      <property name="x_options"></property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
+			</packing>
+		      </child>
+		    </widget>
+		  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 257
-	    <widget>
-	      <class>GtkVRuler</class>
-	      <name>res_vruler</name>
-	      <metric>GTK_PIXELS</metric>
-	      <lower>0</lower>
-	      <upper>10</upper>
-	      <position>9.69925</position>
-	      <max_size>10</max_size>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>2</top_attach>
-		<bottom_attach>3</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>True</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>True</yfill>
+		  <child>
+		    <widget class="GtkLabel" id="label41">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Generations</property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="type">label_item</property>
+		    </packing>
+		  </child>
+		</widget>
+		<packing>
+		  <property name="padding">0</property>
+		  <property name="expand">True</property>
+		  <property name="fill">True</property>
+		</packing>
hunk ./ghc/rts/ghc-frontpanel.glade 286
-	    </widget>
hunk ./ghc/rts/ghc-frontpanel.glade 287
-	    <widget>
-	      <class>GtkDrawingArea</class>
-	      <name>res_drawingarea</name>
hunk ./ghc/rts/ghc-frontpanel.glade 288
-		<left_attach>2</left_attach>
-		<right_attach>3</right_attach>
-		<top_attach>2</top_attach>
-		<bottom_attach>3</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>True</yfill>
-	      </child>
-	    </widget>
+		<widget class="GtkFrame" id="frame7">
+		  <property name="visible">True</property>
+		  <property name="label_xalign">0</property>
+		  <property name="label_yalign">0.5</property>
+		  <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
hunk ./ghc/rts/ghc-frontpanel.glade 294
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label37</name>
-	      <label>Secs</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>2</left_attach>
-		<right_attach>3</right_attach>
-		<top_attach>0</top_attach>
-		<bottom_attach>1</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		  <child>
+		    <widget class="GtkTable" id="table3">
+		      <property name="border_width">2</property>
+		      <property name="visible">True</property>
+		      <property name="n_rows">3</property>
+		      <property name="n_columns">3</property>
+		      <property name="homogeneous">False</property>
+		      <property name="row_spacing">0</property>
+		      <property name="column_spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 304
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label38</name>
-	      <label>Mb</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>2</top_attach>
-		<bottom_attach>3</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
-	  </widget>
-	</widget>
-      </widget>
+		      <child>
+			<widget class="GtkHRuler" id="res_hruler">
+			  <property name="visible">True</property>
+			  <property name="metric">GTK_PIXELS</property>
+			  <property name="lower">0</property>
+			  <property name="upper">10</property>
+			  <property name="position">8.35443019867</property>
+			  <property name="max_size">10</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">2</property>
+			  <property name="right_attach">3</property>
+			  <property name="top_attach">1</property>
+			  <property name="bottom_attach">2</property>
+			  <property name="y_options">fill</property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 322
-      <widget>
-	<class>GtkVBox</class>
-	<name>vbox5</name>
-	<homogeneous>False</homogeneous>
-	<spacing>10</spacing>
-	<child>
-	  <padding>0</padding>
-	  <expand>False</expand>
-	  <fill>False</fill>
-	  <pack>GTK_PACK_END</pack>
-	</child>
+		      <child>
+			<widget class="GtkVRuler" id="res_vruler">
+			  <property name="visible">True</property>
+			  <property name="metric">GTK_PIXELS</property>
+			  <property name="lower">0</property>
+			  <property name="upper">10</property>
+			  <property name="position">9.69925022125</property>
+			  <property name="max_size">10</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">2</property>
+			  <property name="bottom_attach">3</property>
+			  <property name="x_options">fill</property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 340
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>frame5</name>
-	  <label>Stats</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-	  <child>
-	    <padding>0</padding>
-	    <expand>False</expand>
-	    <fill>True</fill>
-	  </child>
+		      <child>
+			<widget class="GtkDrawingArea" id="res_drawingarea">
+			  <property name="visible">True</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">2</property>
+			  <property name="right_attach">3</property>
+			  <property name="top_attach">2</property>
+			  <property name="bottom_attach">3</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options">fill</property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 354
-	  <widget>
-	    <class>GtkVBox</class>
-	    <name>vbox6</name>
-	    <border_width>5</border_width>
-	    <homogeneous>False</homogeneous>
-	    <spacing>0</spacing>
+		      <child>
+			<widget class="GtkLabel" id="label37">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Secs</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">2</property>
+			  <property name="right_attach">3</property>
+			  <property name="top_attach">0</property>
+			  <property name="bottom_attach">1</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 382
-	    <widget>
-	      <class>Placeholder</class>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label38">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Mb</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">2</property>
+			  <property name="bottom_attach">3</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
+		    </widget>
+		  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 412
-	    <widget>
-	      <class>Placeholder</class>
+		  <child>
+		    <widget class="GtkLabel" id="label42">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Residency</property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="type">label_item</property>
+		    </packing>
+		  </child>
+		</widget>
+		<packing>
+		  <property name="padding">0</property>
+		  <property name="expand">True</property>
+		  <property name="fill">True</property>
+		</packing>
+	      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 442
+	    <packing>
+	      <property name="padding">0</property>
+	      <property name="expand">True</property>
+	      <property name="fill">True</property>
+	    </packing>
+	  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 449
-	    <widget>
-	      <class>GtkTable</class>
-	      <name>table1</name>
-	      <rows>4</rows>
-	      <columns>3</columns>
-	      <homogeneous>False</homogeneous>
-	      <row_spacing>0</row_spacing>
-	      <column_spacing>7</column_spacing>
+	  <child>
+	    <widget class="GtkVBox" id="vbox5">
+	      <property name="visible">True</property>
+	      <property name="homogeneous">False</property>
+	      <property name="spacing">10</property>
+
hunk ./ghc/rts/ghc-frontpanel.glade 456
-		<padding>0</padding>
-		<expand>True</expand>
-		<fill>True</fill>
-	      </child>
+		<widget class="GtkFrame" id="frame5">
+		  <property name="visible">True</property>
+		  <property name="label_xalign">0</property>
+		  <property name="label_yalign">0.5</property>
+		  <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
hunk ./ghc/rts/ghc-frontpanel.glade 462
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label12</name>
-		<label>Allocated</label>
-		<justify>GTK_JUSTIFY_RIGHT</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>0</left_attach>
-		  <right_attach>1</right_attach>
-		  <top_attach>1</top_attach>
-		  <bottom_attach>2</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+		  <child>
+		    <widget class="GtkVBox" id="vbox6">
+		      <property name="border_width">5</property>
+		      <property name="visible">True</property>
+		      <property name="homogeneous">False</property>
+		      <property name="spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 469
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label13</name>
-		<label>Live</label>
-		<justify>GTK_JUSTIFY_RIGHT</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>0</left_attach>
-		  <right_attach>1</right_attach>
-		  <top_attach>0</top_attach>
-		  <bottom_attach>1</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+		      <child>
+			<placeholder/>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 473
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label14</name>
-		<label>Allocation Rate</label>
-		<justify>GTK_JUSTIFY_RIGHT</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>0</left_attach>
-		  <right_attach>1</right_attach>
-		  <top_attach>3</top_attach>
-		  <bottom_attach>4</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>False</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+		      <child>
+			<placeholder/>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 477
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label15</name>
-		<label>		Footprint</label>
-		<justify>GTK_JUSTIFY_RIGHT</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>0</left_attach>
-		  <right_attach>1</right_attach>
-		  <top_attach>2</top_attach>
-		  <bottom_attach>3</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+		      <child>
+			<widget class="GtkTable" id="table1">
+			  <property name="visible">True</property>
+			  <property name="n_rows">4</property>
+			  <property name="n_columns">3</property>
+			  <property name="homogeneous">False</property>
+			  <property name="row_spacing">0</property>
+			  <property name="column_spacing">7</property>
hunk ./ghc/rts/ghc-frontpanel.glade 486
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label16</name>
-		<label>M/sec</label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>0.5</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>2</left_attach>
-		  <right_attach>3</right_attach>
-		  <top_attach>3</top_attach>
-		  <bottom_attach>4</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>False</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label12">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">Allocated</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_RIGHT</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">0</property>
+			      <property name="right_attach">1</property>
+			      <property name="top_attach">1</property>
+			      <property name="bottom_attach">2</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 514
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label17</name>
-		<label>M</label>
-		<justify>GTK_JUSTIFY_LEFT</justify>
-		<wrap>False</wrap>
-		<xalign>7.45058e-09</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>2</left_attach>
-		  <right_attach>3</right_attach>
-		  <top_attach>2</top_attach>
-		  <bottom_attach>3</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label13">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">Live</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_RIGHT</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">0</property>
+			      <property name="right_attach">1</property>
+			      <property name="top_attach">0</property>
+			      <property name="bottom_attach">1</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 542
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label18</name>
-		<label>M</label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>7.45058e-09</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>2</left_attach>
-		  <right_attach>3</right_attach>
-		  <top_attach>1</top_attach>
-		  <bottom_attach>2</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label14">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">Allocation Rate</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_RIGHT</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">0</property>
+			      <property name="right_attach">1</property>
+			      <property name="top_attach">3</property>
+			      <property name="bottom_attach">4</property>
+			      <property name="x_options"></property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 570
-	      <widget>
-		<class>GtkLabel</class>
-		<name>label19</name>
-		<label>M</label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>7.45058e-09</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>2</left_attach>
-		  <right_attach>3</right_attach>
-		  <top_attach>0</top_attach>
-		  <bottom_attach>1</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label15">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">		Footprint</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_RIGHT</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">0</property>
+			      <property name="right_attach">1</property>
+			      <property name="top_attach">2</property>
+			      <property name="bottom_attach">3</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 598
-	      <widget>
-		<class>GtkLabel</class>
-		<name>live_label</name>
-		<width>70</width>
-		<label></label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>1</left_attach>
-		  <right_attach>2</right_attach>
-		  <top_attach>0</top_attach>
-		  <bottom_attach>1</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label16">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">M/sec</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">0.5</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">2</property>
+			      <property name="right_attach">3</property>
+			      <property name="top_attach">3</property>
+			      <property name="bottom_attach">4</property>
+			      <property name="x_options"></property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 626
-	      <widget>
-		<class>GtkLabel</class>
-		<name>allocated_label</name>
-		<width>70</width>
-		<label></label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>1</left_attach>
-		  <right_attach>2</right_attach>
-		  <top_attach>1</top_attach>
-		  <bottom_attach>2</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label17">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">M</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_LEFT</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">7.45058015283e-09</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">2</property>
+			      <property name="right_attach">3</property>
+			      <property name="top_attach">2</property>
+			      <property name="bottom_attach">3</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 654
-	      <widget>
-		<class>GtkLabel</class>
-		<name>footprint_label</name>
-		<width>70</width>
-		<label></label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>1</left_attach>
-		  <right_attach>2</right_attach>
-		  <top_attach>2</top_attach>
-		  <bottom_attach>3</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkLabel" id="label18">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">M</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">7.45058015283e-09</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">2</property>
+			      <property name="right_attach">3</property>
+			      <property name="top_attach">1</property>
+			      <property name="bottom_attach">2</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 682
-	      <widget>
-		<class>GtkLabel</class>
-		<name>alloc_rate_label</name>
-		<width>70</width>
-		<label></label>
-		<justify>GTK_JUSTIFY_CENTER</justify>
-		<wrap>False</wrap>
-		<xalign>1</xalign>
-		<yalign>0.5</yalign>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<child>
-		  <left_attach>1</left_attach>
-		  <right_attach>2</right_attach>
-		  <top_attach>3</top_attach>
-		  <bottom_attach>4</bottom_attach>
-		  <xpad>0</xpad>
-		  <ypad>0</ypad>
-		  <xexpand>False</xexpand>
-		  <yexpand>False</yexpand>
-		  <xshrink>False</xshrink>
-		  <yshrink>False</yshrink>
-		  <xfill>True</xfill>
-		  <yfill>False</yfill>
-		</child>
-	      </widget>
-	    </widget>
-	  </widget>
-	</widget>
+			  <child>
+			    <widget class="GtkLabel" id="label19">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes">M</property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">7.45058015283e-09</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">2</property>
+			      <property name="right_attach">3</property>
+			      <property name="top_attach">0</property>
+			      <property name="bottom_attach">1</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 710
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>frame9</name>
-	  <label>Threads</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-	  <child>
-	    <padding>0</padding>
-	    <expand>False</expand>
-	    <fill>True</fill>
-	  </child>
+			  <child>
+			    <widget class="GtkLabel" id="live_label">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes"></property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">1</property>
+			      <property name="right_attach">2</property>
+			      <property name="top_attach">0</property>
+			      <property name="bottom_attach">1</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 738
-	  <widget>
-	    <class>GtkTable</class>
-	    <name>table5</name>
-	    <border_width>6</border_width>
-	    <rows>9</rows>
-	    <columns>2</columns>
-	    <homogeneous>False</homogeneous>
-	    <row_spacing>0</row_spacing>
-	    <column_spacing>10</column_spacing>
+			  <child>
+			    <widget class="GtkLabel" id="allocated_label">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes"></property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">1</property>
+			      <property name="right_attach">2</property>
+			      <property name="top_attach">1</property>
+			      <property name="bottom_attach">2</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 766
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label20</name>
-	      <label>Running</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>0</top_attach>
-		<bottom_attach>1</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+			  <child>
+			    <widget class="GtkLabel" id="footprint_label">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes"></property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">1</property>
+			      <property name="right_attach">2</property>
+			      <property name="top_attach">2</property>
+			      <property name="bottom_attach">3</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 794
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label21</name>
-	      <label>Blocked on I/O (Read)</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>1</top_attach>
-		<bottom_attach>2</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+			  <child>
+			    <widget class="GtkLabel" id="alloc_rate_label">
+			      <property name="visible">True</property>
+			      <property name="label" translatable="yes"></property>
+			      <property name="use_underline">False</property>
+			      <property name="use_markup">False</property>
+			      <property name="justify">GTK_JUSTIFY_CENTER</property>
+			      <property name="wrap">False</property>
+			      <property name="selectable">False</property>
+			      <property name="xalign">1</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xpad">0</property>
+			      <property name="ypad">0</property>
+			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			      <property name="width_chars">-1</property>
+			      <property name="single_line_mode">False</property>
+			      <property name="angle">0</property>
+			    </widget>
+			    <packing>
+			      <property name="left_attach">1</property>
+			      <property name="right_attach">2</property>
+			      <property name="top_attach">3</property>
+			      <property name="bottom_attach">4</property>
+			      <property name="x_options">fill</property>
+			      <property name="y_options"></property>
+			    </packing>
+			  </child>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
+			</packing>
+		      </child>
+		    </widget>
+		  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 831
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label22</name>
-	      <label>Blocked on MVar</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>3</top_attach>
-		<bottom_attach>4</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>False</yfill>
+		  <child>
+		    <widget class="GtkLabel" id="label43">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Stats</property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="type">label_item</property>
+		    </packing>
+		  </child>
+		</widget>
+		<packing>
+		  <property name="padding">0</property>
+		  <property name="expand">False</property>
+		  <property name="fill">True</property>
+		</packing>
hunk ./ghc/rts/ghc-frontpanel.glade 860
-	    </widget>
hunk ./ghc/rts/ghc-frontpanel.glade 861
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label24</name>
-	      <label>Blocked on throwTo</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
hunk ./ghc/rts/ghc-frontpanel.glade 862
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>4</top_attach>
-		<bottom_attach>5</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		<widget class="GtkFrame" id="frame9">
+		  <property name="visible">True</property>
+		  <property name="label_xalign">0</property>
+		  <property name="label_yalign">0.5</property>
+		  <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
hunk ./ghc/rts/ghc-frontpanel.glade 868
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label26</name>
-	      <label>Blocked on Black Hole</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>5</top_attach>
-		<bottom_attach>6</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		  <child>
+		    <widget class="GtkTable" id="table5">
+		      <property name="border_width">6</property>
+		      <property name="visible">True</property>
+		      <property name="n_rows">9</property>
+		      <property name="n_columns">2</property>
+		      <property name="homogeneous">False</property>
+		      <property name="row_spacing">0</property>
+		      <property name="column_spacing">10</property>
hunk ./ghc/rts/ghc-frontpanel.glade 878
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label25</name>
-	      <label>Sleeping</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>6</top_attach>
-		<bottom_attach>7</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label20">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Running</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">0</property>
+			  <property name="bottom_attach">1</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 906
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label27</name>
-	      <label>Blocked on I/O (Write)</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>2</top_attach>
-		<bottom_attach>3</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label21">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Blocked on I/O (Read)</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">1</property>
+			  <property name="bottom_attach">2</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 934
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>running_label</name>
-	      <label>label28</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>0</top_attach>
-		<bottom_attach>1</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label22">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Blocked on MVar</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">3</property>
+			  <property name="bottom_attach">4</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 962
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>blockread_label</name>
-	      <label>label29</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>1</top_attach>
-		<bottom_attach>2</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label24">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Blocked on throwTo</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">4</property>
+			  <property name="bottom_attach">5</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 990
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>blockwrite_label</name>
-	      <label>label30</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>2</top_attach>
-		<bottom_attach>3</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label26">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Blocked on Black Hole</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">5</property>
+			  <property name="bottom_attach">6</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1018
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>blockmvar_label</name>
-	      <label>label31</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>3</top_attach>
-		<bottom_attach>4</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label25">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Sleeping</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">6</property>
+			  <property name="bottom_attach">7</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1046
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>blockthrowto_label</name>
-	      <label>label32</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>4</top_attach>
-		<bottom_attach>5</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="label27">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Blocked on I/O (Write)</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">2</property>
+			  <property name="bottom_attach">3</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1074
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>blockbh_label</name>
-	      <label>label33</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>5</top_attach>
-		<bottom_attach>6</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="running_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label28</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">0</property>
+			  <property name="bottom_attach">1</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1102
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>sleeping_label</name>
-	      <label>label34</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>6</top_attach>
-		<bottom_attach>7</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="blockread_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label29</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">1</property>
+			  <property name="bottom_attach">2</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1130
-	    <widget>
-	      <class>GtkHSeparator</class>
-	      <name>hseparator1</name>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>7</top_attach>
-		<bottom_attach>8</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>True</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>True</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="blockwrite_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label30</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">2</property>
+			  <property name="bottom_attach">3</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1158
-	    <widget>
-	      <class>GtkHSeparator</class>
-	      <name>hseparator2</name>
-	      <child>
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>7</top_attach>
-		<bottom_attach>8</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>True</yfill>
-	      </child>
-	    </widget>
+		      <child>
+			<widget class="GtkLabel" id="blockmvar_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label31</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">3</property>
+			  <property name="bottom_attach">4</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1186
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label35</name>
-	      <label>Total</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>1</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
-	      <child>
-		<left_attach>0</left_attach>
-		<right_attach>1</right_attach>
-		<top_attach>8</top_attach>
-		<bottom_attach>9</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>True</xfill>
-		<yfill>False</yfill>
+		      <child>
+			<widget class="GtkLabel" id="blockthrowto_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label32</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">4</property>
+			  <property name="bottom_attach">5</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkLabel" id="blockbh_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label33</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">5</property>
+			  <property name="bottom_attach">6</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkLabel" id="sleeping_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label34</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">6</property>
+			  <property name="bottom_attach">7</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkHSeparator" id="hseparator1">
+			  <property name="visible">True</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">7</property>
+			  <property name="bottom_attach">8</property>
+			  <property name="x_options">fill</property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkHSeparator" id="hseparator2">
+			  <property name="visible">True</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">7</property>
+			  <property name="bottom_attach">8</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options">fill</property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkLabel" id="label35">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">Total</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">1</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">0</property>
+			  <property name="right_attach">1</property>
+			  <property name="top_attach">8</property>
+			  <property name="bottom_attach">9</property>
+			  <property name="x_options">fill</property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkLabel" id="total_label">
+			  <property name="visible">True</property>
+			  <property name="label" translatable="yes">label36</property>
+			  <property name="use_underline">False</property>
+			  <property name="use_markup">False</property>
+			  <property name="justify">GTK_JUSTIFY_CENTER</property>
+			  <property name="wrap">False</property>
+			  <property name="selectable">False</property>
+			  <property name="xalign">0.5</property>
+			  <property name="yalign">0.5</property>
+			  <property name="xpad">0</property>
+			  <property name="ypad">0</property>
+			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+			  <property name="width_chars">-1</property>
+			  <property name="single_line_mode">False</property>
+			  <property name="angle">0</property>
+			</widget>
+			<packing>
+			  <property name="left_attach">1</property>
+			  <property name="right_attach">2</property>
+			  <property name="top_attach">8</property>
+			  <property name="bottom_attach">9</property>
+			  <property name="x_options"></property>
+			  <property name="y_options"></property>
+			</packing>
+		      </child>
+		    </widget>
+		  </child>
+
+		  <child>
+		    <widget class="GtkLabel" id="label44">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Threads</property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="type">label_item</property>
+		    </packing>
+		  </child>
+		</widget>
+		<packing>
+		  <property name="padding">0</property>
+		  <property name="expand">False</property>
+		  <property name="fill">True</property>
+		</packing>
hunk ./ghc/rts/ghc-frontpanel.glade 1384
-	    </widget>
hunk ./ghc/rts/ghc-frontpanel.glade 1385
-	    <widget>
-	      <class>GtkLabel</class>
-	      <name>total_label</name>
-	      <label>label36</label>
-	      <justify>GTK_JUSTIFY_CENTER</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
hunk ./ghc/rts/ghc-frontpanel.glade 1386
-		<left_attach>1</left_attach>
-		<right_attach>2</right_attach>
-		<top_attach>8</top_attach>
-		<bottom_attach>9</bottom_attach>
-		<xpad>0</xpad>
-		<ypad>0</ypad>
-		<xexpand>False</xexpand>
-		<yexpand>False</yexpand>
-		<xshrink>False</xshrink>
-		<yshrink>False</yshrink>
-		<xfill>False</xfill>
-		<yfill>False</yfill>
-	      </child>
-	    </widget>
-	  </widget>
-	</widget>
+		<widget class="GtkFrame" id="frame6">
+		  <property name="visible">True</property>
+		  <property name="label_xalign">0</property>
+		  <property name="label_yalign">0.5</property>
+		  <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
hunk ./ghc/rts/ghc-frontpanel.glade 1392
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>frame6</name>
-	  <label>Updates</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-	  <child>
-	    <padding>0</padding>
-	    <expand>False</expand>
-	    <fill>False</fill>
-	  </child>
+		  <child>
+		    <widget class="GtkVBox" id="vbox7">
+		      <property name="border_width">5</property>
+		      <property name="visible">True</property>
+		      <property name="homogeneous">False</property>
+		      <property name="spacing">10</property>
hunk ./ghc/rts/ghc-frontpanel.glade 1399
-	  <widget>
-	    <class>GtkVBox</class>
-	    <name>vbox7</name>
-	    <border_width>5</border_width>
-	    <homogeneous>False</homogeneous>
-	    <spacing>10</spacing>
+		      <child>
+			<widget class="GtkVBox" id="vbox9">
+			  <property name="visible">True</property>
+			  <property name="homogeneous">False</property>
+			  <property name="spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 1405
-	    <widget>
-	      <class>GtkVBox</class>
-	      <name>vbox9</name>
-	      <homogeneous>False</homogeneous>
-	      <spacing>0</spacing>
-	      <child>
-		<padding>0</padding>
-		<expand>True</expand>
-		<fill>True</fill>
-	      </child>
+			  <child>
+			    <widget class="GtkRadioButton" id="cont_radio">
+			      <property name="visible">True</property>
+			      <property name="can_focus">True</property>
+			      <property name="label" translatable="yes">Continuous</property>
+			      <property name="use_underline">True</property>
+			      <property name="relief">GTK_RELIEF_NORMAL</property>
+			      <property name="focus_on_click">True</property>
+			      <property name="active">True</property>
+			      <property name="inconsistent">False</property>
+			      <property name="draw_indicator">True</property>
+			      <signal name="clicked" handler="on_cont_radio_clicked"/>
+			    </widget>
+			    <packing>
+			      <property name="padding">0</property>
+			      <property name="expand">False</property>
+			      <property name="fill">False</property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1425
-	      <widget>
-		<class>GtkRadioButton</class>
-		<name>cont_radio</name>
-		<can_focus>True</can_focus>
-		<signal>
-		  <name>clicked</name>
-		  <handler>on_cont_radio_clicked</handler>
-		  <last_modification_time>Tue, 17 Oct 2000 15:55:50 GMT</last_modification_time>
-		</signal>
-		<label>Continuous</label>
-		<active>True</active>
-		<draw_indicator>True</draw_indicator>
-		<group>grp1</group>
-		<child>
-		  <padding>0</padding>
-		  <expand>False</expand>
-		  <fill>False</fill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkRadioButton" id="stop_before_radio">
+			      <property name="visible">True</property>
+			      <property name="can_focus">True</property>
+			      <property name="label" translatable="yes">Stop before GC</property>
+			      <property name="use_underline">True</property>
+			      <property name="relief">GTK_RELIEF_NORMAL</property>
+			      <property name="focus_on_click">True</property>
+			      <property name="active">False</property>
+			      <property name="inconsistent">False</property>
+			      <property name="draw_indicator">True</property>
+			      <property name="group">cont_radio</property>
+			      <signal name="clicked" handler="on_stop_before_radio_clicked"/>
+			    </widget>
+			    <packing>
+			      <property name="padding">0</property>
+			      <property name="expand">False</property>
+			      <property name="fill">False</property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1446
-	      <widget>
-		<class>GtkRadioButton</class>
-		<name>stop_before_radio</name>
-		<can_focus>True</can_focus>
-		<signal>
-		  <name>clicked</name>
-		  <handler>on_stop_before_radio_clicked</handler>
-		  <last_modification_time>Tue, 17 Oct 2000 15:56:04 GMT</last_modification_time>
-		</signal>
-		<label>Stop before GC</label>
-		<active>False</active>
-		<draw_indicator>True</draw_indicator>
-		<group>grp1</group>
-		<child>
-		  <padding>0</padding>
-		  <expand>False</expand>
-		  <fill>False</fill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkRadioButton" id="stop_after_radio">
+			      <property name="visible">True</property>
+			      <property name="can_focus">True</property>
+			      <property name="label" translatable="yes">Stop after GC</property>
+			      <property name="use_underline">True</property>
+			      <property name="relief">GTK_RELIEF_NORMAL</property>
+			      <property name="focus_on_click">True</property>
+			      <property name="active">False</property>
+			      <property name="inconsistent">False</property>
+			      <property name="draw_indicator">True</property>
+			      <property name="group">cont_radio</property>
+			      <signal name="clicked" handler="on_stop_after_radio_clicked"/>
+			    </widget>
+			    <packing>
+			      <property name="padding">0</property>
+			      <property name="expand">False</property>
+			      <property name="fill">False</property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1467
-	      <widget>
-		<class>GtkRadioButton</class>
-		<name>stop_after_radio</name>
-		<can_focus>True</can_focus>
-		<signal>
-		  <name>clicked</name>
-		  <handler>on_stop_after_radio_clicked</handler>
-		  <last_modification_time>Tue, 17 Oct 2000 15:56:10 GMT</last_modification_time>
-		</signal>
-		<label>Stop after GC</label>
-		<active>False</active>
-		<draw_indicator>True</draw_indicator>
-		<group>grp1</group>
-		<child>
-		  <padding>0</padding>
-		  <expand>False</expand>
-		  <fill>False</fill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkRadioButton" id="stop_both_radio">
+			      <property name="visible">True</property>
+			      <property name="can_focus">True</property>
+			      <property name="label" translatable="yes">Stop before &amp; after GC</property>
+			      <property name="use_underline">True</property>
+			      <property name="relief">GTK_RELIEF_NORMAL</property>
+			      <property name="focus_on_click">True</property>
+			      <property name="active">False</property>
+			      <property name="inconsistent">False</property>
+			      <property name="draw_indicator">True</property>
+			      <property name="group">cont_radio</property>
+			      <signal name="clicked" handler="on_stop_both_radio_clicked"/>
+			    </widget>
+			    <packing>
+			      <property name="padding">0</property>
+			      <property name="expand">False</property>
+			      <property name="fill">False</property>
+			    </packing>
+			  </child>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
+			</packing>
+		      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1495
-	      <widget>
-		<class>GtkRadioButton</class>
-		<name>stop_both_radio</name>
-		<can_focus>True</can_focus>
-		<signal>
-		  <name>clicked</name>
-		  <handler>on_stop_both_radio_clicked</handler>
-		  <last_modification_time>Tue, 17 Oct 2000 15:56:22 GMT</last_modification_time>
-		</signal>
-		<label>Stop before &amp; after GC</label>
-		<active>False</active>
-		<draw_indicator>True</draw_indicator>
-		<group>grp1</group>
-		<child>
-		  <padding>0</padding>
-		  <expand>False</expand>
-		  <fill>False</fill>
-		</child>
-	      </widget>
-	    </widget>
+		      <child>
+			<widget class="GtkVBox" id="vbox8">
+			  <property name="visible">True</property>
+			  <property name="homogeneous">False</property>
+			  <property name="spacing">0</property>
hunk ./ghc/rts/ghc-frontpanel.glade 1501
-	    <widget>
-	      <class>GtkVBox</class>
-	      <name>vbox8</name>
-	      <homogeneous>False</homogeneous>
-	      <spacing>0</spacing>
-	      <child>
-		<padding>0</padding>
-		<expand>False</expand>
-		<fill>False</fill>
-	      </child>
+			  <child>
+			    <widget class="GtkButton" id="stop_but">
+			      <property name="visible">True</property>
+			      <property name="can_focus">True</property>
+			      <property name="label" translatable="yes">Stop</property>
+			      <property name="use_underline">True</property>
+			      <property name="relief">GTK_RELIEF_NORMAL</property>
+			      <property name="focus_on_click">True</property>
+			      <signal name="clicked" handler="on_stop_but_clicked"/>
+			    </widget>
+			    <packing>
+			      <property name="padding">0</property>
+			      <property name="expand">False</property>
+			      <property name="fill">False</property>
+			    </packing>
+			  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1518
-	      <widget>
-		<class>GtkButton</class>
-		<name>stop_but</name>
-		<can_focus>True</can_focus>
-		<signal>
-		  <name>clicked</name>
-		  <handler>on_stop_but_clicked</handler>
-		  <last_modification_time>Tue, 17 Oct 2000 15:56:46 GMT</last_modification_time>
-		</signal>
-		<label>Stop</label>
-		<child>
-		  <padding>0</padding>
-		  <expand>False</expand>
-		  <fill>False</fill>
-		</child>
-	      </widget>
+			  <child>
+			    <widget class="GtkButton" id="continue_but">
+			      <property name="visible">True</property>
+			      <property name="can_focus">True</property>
+			      <property name="label" translatable="yes">Continue</property>
+			      <property name="use_underline">True</property>
+			      <property name="relief">GTK_RELIEF_NORMAL</property>
+			      <property name="focus_on_click">True</property>
+			      <signal name="clicked" handler="on_continue_but_clicked"/>
+			    </widget>
+			    <packing>
+			      <property name="padding">0</property>
+			      <property name="expand">False</property>
+			      <property name="fill">False</property>
+			    </packing>
+			  </child>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">False</property>
+			  <property name="fill">False</property>
+			</packing>
+		      </child>
+		    </widget>
+		  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1544
-	      <widget>
-		<class>GtkButton</class>
-		<name>continue_but</name>
-		<can_focus>True</can_focus>
-		<signal>
-		  <name>clicked</name>
-		  <handler>on_continue_but_clicked</handler>
-		  <last_modification_time>Tue, 17 Oct 2000 15:56:53 GMT</last_modification_time>
-		</signal>
-		<label>Continue</label>
-		<child>
-		  <padding>0</padding>
-		  <expand>False</expand>
-		  <fill>False</fill>
-		</child>
-	      </widget>
-	    </widget>
-	  </widget>
-	</widget>
+		  <child>
+		    <widget class="GtkLabel" id="label45">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Updates</property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="type">label_item</property>
+		    </packing>
+		  </child>
+		</widget>
+		<packing>
+		  <property name="padding">0</property>
+		  <property name="expand">False</property>
+		  <property name="fill">False</property>
+		</packing>
+	      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1574
-	<widget>
-	  <class>GtkButton</class>
-	  <name>quit_but</name>
-	  <can_focus>True</can_focus>
-	  <signal>
-	    <name>clicked</name>
-	    <handler>on_quit_but_clicked</handler>
-	    <last_modification_time>Tue, 17 Oct 2000 15:57:03 GMT</last_modification_time>
-	  </signal>
-	  <label>Quit</label>
-	  <child>
-	    <padding>0</padding>
-	    <expand>False</expand>
-	    <fill>False</fill>
-	    <pack>GTK_PACK_END</pack>
+	      <child>
+		<widget class="GtkButton" id="quit_but">
+		  <property name="visible">True</property>
+		  <property name="can_focus">True</property>
+		  <property name="label" translatable="yes">Quit</property>
+		  <property name="use_underline">True</property>
+		  <property name="relief">GTK_RELIEF_NORMAL</property>
+		  <property name="focus_on_click">True</property>
+		  <signal name="clicked" handler="on_quit_but_clicked"/>
+		</widget>
+		<packing>
+		  <property name="padding">0</property>
+		  <property name="expand">False</property>
+		  <property name="fill">False</property>
+		  <property name="pack_type">GTK_PACK_END</property>
+		</packing>
+	      </child>
+	    </widget>
+	    <packing>
+	      <property name="padding">0</property>
+	      <property name="expand">False</property>
+	      <property name="fill">False</property>
+	      <property name="pack_type">GTK_PACK_END</property>
+	    </packing>
hunk ./ghc/rts/ghc-frontpanel.glade 1600
-      </widget>
-    </widget>
+	<packing>
+	  <property name="padding">0</property>
+	  <property name="expand">True</property>
+	  <property name="fill">True</property>
+	</packing>
+      </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1607
-    <widget>
-      <class>GtkStatusbar</class>
-      <name>statusbar</name>
hunk ./ghc/rts/ghc-frontpanel.glade 1608
-	<padding>0</padding>
-	<expand>False</expand>
-	<fill>False</fill>
+	<widget class="GtkStatusbar" id="statusbar">
+	  <property name="visible">True</property>
+	  <property name="has_resize_grip">True</property>
+	</widget>
+	<packing>
+	  <property name="padding">0</property>
+	  <property name="expand">False</property>
+	  <property name="fill">False</property>
+	</packing>
hunk ./ghc/rts/ghc-frontpanel.glade 1619
-  </widget>
+  </child>
hunk ./ghc/rts/ghc-frontpanel.glade 1622
-</GTK-Interface>
+</glade-interface>
}

Context:

[[project @ 2005-12-02 15:16:08 by simonmar]
simonmar**20051202151608
 remove one mention of hslibs
] 
[[project @ 2005-12-02 14:22:06 by simonmar]
simonmar**20051202142206
 - remove hslibs link
 - add Building Guide link
 - remove the word "hierarchical" from "hierarchical libraries"
] 
[[project @ 2005-12-02 14:09:21 by simonmar]
simonmar**20051202140921
 revert rev. 1.22 again, just in case this is the cause of the
 segfaults reported on OpenBSD and SuSE.
] 
[[project @ 2005-12-02 12:45:16 by simonmar]
simonmar**20051202124516
 Fix Windows build
 
 Patch submitted by: Esa Ilari Vuokko <eivuokko at gmail.com>
] 
[[project @ 2005-11-30 16:56:51 by simonmar]
simonmar**20051130165651
 fix bug in the case of an uncaught exception
] 
[[project @ 2005-11-30 15:58:47 by simonmar]
simonmar**20051130155847
 check for overrun of the fd_set, some OSs give you more descriptors
 than FD_SETSIZE
] 
[[project @ 2005-11-30 14:20:06 by simonpj]
simonpj**20051130142006
 -----------------------------------------
 	Fix 'mkName' operator in Template Haskell
 	so that it handles built-in syntax
 	-----------------------------------------
 
 	Merge to stable branch
 
 The 'mkName' function in Template Haskell wasn't dealing correctly with
 built-in syntax.  The parser generates Exact RdrNames for built-in syntax
 operators, such as ':' and '[]'; and hence so should Convert.
 
 At the same time I'm now generating a better error message in TH when
 you use a constructor as a variable or vice versa.
] 
[.hi is now boring
John Goerzen <jgoerzen at complete.org>**20051130185834] 
[TAG Last state before ghc 6.4 branch split
John Goerzen <jgoerzen at complete.org>**20051130171550] 
[Removed more obsolete dirs
John Goerzen <jgoerzen at complete.org>**20051130171526] 
[Removed obsolete directories
John Goerzen <jgoerzen at complete.org>**20051130171453] 
[TAG Initial conversion from CVS complete
John Goerzen <jgoerzen at complete.org>**20051130033234] 
Patch bundle hash:
c5cc43f6b72c3dadf015b56c5b099d0c6bfbcef6


More information about the Glasgow-haskell-bugs mailing list