Re: gnome applet w/ bash



Hi Matteo,

Look at g_timeout_add() or the new gdk_threads_add_timeout().

Thanks,

Michael


On 04/11/2007, Matteo Landi <matteo landi email it> wrote:
> hi all
> i'm a complete newbie in developing with gtk, but yesterday i had an
> idea about develope a gnome panel which could substitute conky..
> In fact i'm in need of a panel that simply display the output of a bash
> script..
> well, after have googled a bit, i found a guide for implementing gnome
> applet and here is the result
>
> #include <string.h>
> #include <panel-applet.h>
> #include <gtk/gtklabel.h>
> #include <stdio.h>
>
> static gboolean on_button_press (GtkWidget *event_box, GdkEventButton
> *event, GtkWidget* label){
>         if (event->button != 1)
>                 return FALSE;
>         else {
>                 FILE* fp;
>                 char line[160];
>                 fp = popen("~/scripts/allin1", "r");
>                 fgets( line, sizeof line, fp);
>                 pclose(fp);
>                 gtk_label_set_text (label,(const char*) line);
>         }
>         return TRUE;
> }
>
> static gboolean my_applet_fill (PanelApplet *applet, const gchar *iid,
> gpointer data){
>         FILE* fp;
>         int pid;
>         char line[160];
>         GtkWidget *label;
>
>         fp = popen("~/scripts/allin1", "r");
>         fgets( line, sizeof line, fp);
>         pclose(fp);
>
>         label = gtk_label_new (line);
>         gtk_container_add (GTK_CONTAINER (applet), label);
>
>         g_signal_connect (G_OBJECT(applet), "button_press_event", G_CALLBACK
> (on_button_press), label);
>
>         gtk_widget_show_all (GTK_WIDGET (applet));
>
>
>         return TRUE;
> }
>
> PANEL_APPLET_BONOBO_FACTORY ("OAFIID:my_applet_Factory",
> PANEL_TYPE_APPLET, "Conky Porting", "0", my_applet_fill, NULL);
>
> what i'm asking for is how could i refresh the label of the applet after
> a fixed period of time... (now the applets refresh when mouse-clicked)
> tnx in advance
>
> M@
>
> _______________________________________________
> gtk-list mailing list
> gtk-list gnome org
> http://mail.gnome.org/mailman/listinfo/gtk-list
>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]