gnome_dns_abort unrealize my widget
- From: Derethor <derethor thepentagon com>
- To: gnome-devel <gnome-devel-list gnome org>
- Cc: "gtk-app-devel-list gnome org" <gtk-app-devel-list gnome org>
- Subject: gnome_dns_abort unrealize my widget
- Date: Thu, 23 Nov 2000 01:57:35 +0000
When I add a gtkwidget to a gnomeapp... it is done
properly the first time. Then, when the user clicks
a menu item, I change the contents, with no problems..
but If I restore the old contents (a logo, but
I tryed with a gtklabel), after the expose and the
draw event, the widget receives an "unrealize" signal,
so, I can see it for just few miliseconds
Looking and tracing the code, I discovered that
inside gnome_dns_abort (I dont call it :?), the
function gtk_widget_unparent is called...
Inside this function, the line:
if ( GTK_WIDGET_REALIZED (widget) && !GTK_WIDGET_IN_REPARENT (widget))
gtk_widget_unrealize (widget);
is evaluated as true
GTK_WIDGET_REALIZE is true, because the widget is visible at this
moment
but... what is the meaning of GTK_WIDGET_IN_REPARENT?
and.. why do I receive this signal from gtk?
My code to restore the old logo:
/* flush previus events */
while ( gtk_events_pending() ) gtk_main_iteration ();
/* remove the old contents. The previus logo ref is 1, so, I dont loose
it */
if ( GNOME_APP(appGlobal)->contents )
{
gtk_container_remove ( GTK_CONTAINER(
GNOME_APP(appGlobal)->contents->parent ),
GNOME_APP(appGlobal)->contents );
}
gnome_app_set_contents (GNOME_APP(appGlobal), logo);
gtk_widget_show_all ( GTK_WIDGET(appGlobal) );
return(TRUE);
The "unrealize" event is emmited after this code...
so, this code seems to work well, and it's done with
no problem the first time.
Any suggestion?
Thanks!
--
signed
derethor of centolos
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]