RE:Multithreading and dialog boxes
- From: "Rokicki, Andrew" <ARokicki US TIAuto com>
- To: "'gtk-list gnome org'" <gtk-list gnome org>
- Subject: RE:Multithreading and dialog boxes
- Date: Mon, 24 Jun 2002 11:14:03 -0400
I am kind of new to GTK. I am in the process of porting our
application that was written with ncures and pthreads to GTK.
Well I am in evaluation stage, but Try this:
void dialog (void)
{
GtkWidget *dialog;
gdk_threads_enter();
dialog = gtk_message_dialog_new(NULL,
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_WARNING,
GTK_BUTTONS_OK, "Sample message");
g_signal_connect_swapped (GTK_OBJECT (dialog),
"response",
G_CALLBACK (gtk_widget_destroy),
GTK_OBJECT (dialog));
/* Add the label, and show everything we've added to the dialog.
*/
gtk_widget_show_all (dialog);
gdk_threads_leave();
}
ALSO:
in make file have something like this:
$(TARGET) : $(TARGET).o
$(CC) -o $(TARGET) $(TARGET).o `pkg-config --libs
gthread-2.0` `pkg-config --libs gtk+-2.0` -lgtk-x11-2.0 -lpthread
$(TARGET).o : $(TARGET).c
$(CC) -D_REENTRANT -c `pkg-config --cflags gthread-2.0`
`pkg-config --cflags gtk+-2.0` $(TARGET).c
* From: Jean-Yves Lefort <jylefort brutele be>
* To: gtk-list gnome org
* Subject: Multithreading and dialog boxes
* Date: Sat, 22 Jun 2002 12:13:19 +0200
Hi,
(Gtk2) Whenever I run a dialog box from inside a thread, the dialog box
never gets destroyed, and it hangs my application:
void dialog (void) {
GtkWidget *dialog;
gdk_threads_enter();
dialog = gtk_message_dialog_new(NULL,
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_WARNING,
GTK_BUTTONS_OK,
"Sample message");
gtk_dialog_run(GTK_DIALOG(dialog));
gtk_widget_destroy(dialog);
gdk_threads_leave();
}
It works fine when called within the main thread, btw.
Any clue?
Regards,
Jean-Yves Lefort
--
Jean-Yves Lefort
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]