В Вск, 13/04/2008 в 15:46 -0300, Matías Alejandro Torres пишет: > Hi, > > Can I call GTK Functions that modifies the GUI inside a callback? > > Just an example: > > > /*CALLBACK*/ > void text_to_upper_callback (GtkEntry *entry, gpointer data) { > /* I modify the GUI by setting the text of an entry */ > gtk_entry_set_text (entry, > g_utf8_strup (gtk_entry_get_text > (entry), -1))); > } > > > void* init () { > [...] > g_signal_connect (entry, "activate", (GCallback) > text_to_upper_callback, NULL); > [...] > } > >
#include <gtk/gtk.h> static void destroy(GtkWidget *widget, gpointer data) { gtk_main_quit(); } static void convert(GtkButton *button, GtkEntry *entry) { gtk_entry_set_text(entry, g_utf8_strup(gtk_entry_get_text(entry), -1)); } int main(int argc, char **argv) { GtkWidget *window, *entry, *button, *box; gtk_init(&argc, &argv); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "Converter"); gtk_container_set_border_width(GTK_CONTAINER(window), 10); gtk_window_set_resizable(GTK_WINDOW(window), FALSE); g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(destroy), NULL); box = gtk_hbox_new(FALSE, 0); entry = gtk_entry_new(); button = gtk_button_new_with_mnemonic("_Convert"); gtk_box_pack_start(GTK_BOX(box), entry, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(convert), entry); gtk_container_add(GTK_CONTAINER(window), box); gtk_widget_show_all(window); gtk_main(); return 0; } > _______________________________________________ > gtk-app-devel-list mailing list > gtk-app-devel-list@gnome.org > http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list -- If you think of MS-DOS as mono, and Windows as stereo, then Linux is Dolby Digital and all the music is free...
_______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list