From 12751e3fc02e45da1198b82dadf83fe861ebfd1e Mon Sep 17 00:00:00 2001 From: drouin Date: Wed, 1 Sep 2004 15:54:51 +0000 Subject: replaced the gtk mainloop with a glib one. added -Wall compile directive . fixed some warnings --- examples/gtkIvyButton.c | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) (limited to 'examples/gtkIvyButton.c') diff --git a/examples/gtkIvyButton.c b/examples/gtkIvyButton.c index be8cc4a..aba5ea7 100644 --- a/examples/gtkIvyButton.c +++ b/examples/gtkIvyButton.c @@ -1,34 +1,34 @@ #include #include -#include +#include #include #include -void hello( GtkWidget *widget, gpointer data ) { - fprintf(stderr,"%s\n",*((char**)data)); - IvySendMsg(*((char**)data)); + + + +void sendText( GtkWidget *widget, gpointer user_data ) { + IvySendMsg(gtk_label_get_text(GTK_LABEL(gtk_bin_get_child(GTK_BIN(widget))))); } -void textCallback(IvyClientPtr app, void *user_data, int argc, char *argv[]){ - *((char **)user_data)=argv[0]; +void setText(IvyClientPtr app, void *user_data, int argc, char *argv[]){ + gtk_label_set_text(GTK_LABEL(gtk_bin_get_child(GTK_BIN(user_data))), argv[0]); } int main( int argc, char *argv[] ) { GtkWidget *window; GtkWidget *button; char *bus=getenv("IVYBUS"); - char *tosend="foo"; - gtk_init (&argc, &argv); - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - gtk_container_set_border_width (GTK_CONTAINER (window), 10); - button = gtk_button_new_with_label ("send message"); - g_signal_connect (G_OBJECT(button),"clicked",G_CALLBACK(hello),&tosend); - gtk_container_add (GTK_CONTAINER(window),button); - gtk_widget_show (button); - gtk_widget_show (window); - IvyInit ("IvyGtkButton", "IvyGtkButton READY",NULL,NULL,NULL,NULL); - IvyBindMsg(textCallback,&tosend,"^Ivy Button text=(.*)"); - IvyStart (bus); - gtk_main (); + gtk_init(&argc, &argv); + window = gtk_window_new(GTK_WINDOW_TOPLEVEL); + gtk_container_set_border_width(GTK_CONTAINER (window), 10); + button = gtk_button_new_with_label("ivy is cool"); + gtk_container_add (GTK_CONTAINER(window), button); + g_signal_connect(G_OBJECT(button),"clicked",G_CALLBACK(sendText), NULL); + gtk_widget_show_all (window); + IvyInit ("IvyGtkButton", "IvyGtkButton READY", NULL, NULL, NULL, NULL); + IvyBindMsg(setText, button, "^Ivy Button text=(.*)"); + IvyStart(bus); + gtk_main(); return 0; } -- cgit v1.1