Hello, I discovered distcc recently and I'm very impressed by how well it works.
The attached patch improves distccmon-gnome by replacing the label with a real status bar. It looks better, has a grab handle for resizing the window, and follows the HIG. Nathan
* looking for [EMAIL PROTECTED]/distcc--devel--2--patch-59 to compare with * comparing to [EMAIL PROTECTED]/distcc--devel--2--patch-59 M src/mon-gnome.c * modified files --- orig/src/mon-gnome.c +++ mod/src/mon-gnome.c @@ -420,10 +420,11 @@ } -static gint dcc_gnome_load_update_cb (gpointer label_void) +static gint dcc_gnome_load_update_cb (gpointer data) { gchar message[200]; double loadavg[3]; + gint context_id; if (getloadavg (loadavg, 3) == -1) { @@ -435,8 +436,10 @@ "Load average: %.2f, %.2f, %.2f", loadavg[0], loadavg[1], loadavg[2]); - gtk_label_set_text (GTK_LABEL (label_void), - message); + context_id = gtk_statusbar_get_context_id(GTK_STATUSBAR (data), "load"); + + gtk_statusbar_pop(GTK_STATUSBAR (data), context_id); + gtk_statusbar_push(GTK_STATUSBAR (data), context_id, message); return TRUE; /* please call again */ } @@ -551,11 +554,13 @@ static GtkWidget * dcc_gnome_make_load_bar (void) { - GtkWidget *bar, *box; + GtkWidget *bar; + gint context_id; + + bar = gtk_statusbar_new (); + context_id = gtk_statusbar_get_context_id(GTK_STATUSBAR (bar), "load"); - bar = gtk_label_new ("Load: "); - box = gtk_hbox_new (FALSE, 0); - gtk_box_pack_start (GTK_BOX (box), bar, FALSE, FALSE, 6); + gtk_statusbar_push(GTK_STATUSBAR (bar), context_id, "Load: "); g_timeout_add (2000, /* ms */ dcc_gnome_load_update_cb, @@ -563,7 +568,7 @@ dcc_gnome_load_update_cb (bar); - return box; + return bar; } @@ -617,13 +622,11 @@ gtk_container_add (GTK_CONTAINER (topbox), proc_align); - /* Standard gnome padding is 12px */ - gtk_box_pack_end (GTK_BOX (topbox), load_bar, FALSE, /* expand */ FALSE, - 6); + 0); gtk_window_set_title (GTK_WINDOW (mainwin), dcc_gnome_get_title ());
__ distcc mailing list http://distcc.samba.org/ To unsubscribe or change options: http://lists.samba.org/mailman/listinfo/distcc