Re: GNOME CVS: gtk+ timj



On 3 Sep 1998, Owen Taylor wrote:

> 
> Gnome CVS User <gnomecvs@cvs.labs.redhat.com> writes:
> 
> > CVSROOT:	/debian/home/gnomecvs
> > Module name:	gtk+
> > Changes by:	timj	98/09/03 02:38:55
> 
> > * gtk/gtknotebook.c:
> > (gtk_notebook_real_switch_page): expose tabs.
> 
> 
> ====
>   gtk_notebook_pages_allocate (notebook, &GTK_WIDGET (notebook)->allocation);
>   gtk_notebook_expose_tabs (notebook);
>   
>   if (GTK_WIDGET_MAPPED (notebook))
>     {
>       if (GTK_WIDGET_REALIZED (notebook->cur_page->child))
> 	gtk_widget_map (notebook->cur_page->child);
>       else
> 	{
> 	  gtk_widget_map (notebook->cur_page->child);
> 	  gtk_widget_size_allocate (GTK_WIDGET (notebook), 
> 				    &GTK_WIDGET (notebook)->allocation);
> 	}
>     }
>   
>   if (GTK_WIDGET_DRAWABLE (notebook))
>     gtk_widget_queue_draw (GTK_WIDGET (notebook));
> ====
> 
> ????
> 
> Unless I am confused, redrawing the entire notebook should
> alleviate the need for _expose_tabs()...

redrawing the entire notebook does not expose the tabs.
maybe that should be changed, in which case the above function
call can vanish, but currently the notebook code seems to be
able to get away without it.
if you remove the tab exposition from gtk_notebook_real_switch_page,
you'll see that the tab pixmaps from the testgtk example won't
be redrawn upon page switches, and thus leave the pixmap of the
old selected tab label highlighted until you cause a redraw somehow.

> 
>                                         Owen
> 

---
ciaoTJ



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