Re: GtkCheckbutton problems




David Odin <David.Odin@bigfoot.com> writes:

> On Wed, Oct 06, 1999 at 03:53:02PM +0200, Alexander Piskunov wrote:
> > I have one question: why GtkCheckButton doesn't have it's own GdkWindow?
> > I'm not sure, but it seems, that it causes problems while redrawing.
> > Especially when GtkCheckButon is packed in to the GtkNotebook page 
> > (using boxes,frames or any other containers). When such checkbutton ir 
> > redrawed for the first time(for example after enter_notify event, when 
> > it's state changes to prelight), entire GtkNotebook page is also 
> > redrawed. I tried to backtrace this problem, but those *_queue_* 
> > functions in GtkWidget are beyond my knowledge of GTK.
> > Perhaps it will better to make GtkCheckbutton widget as a derivative of 
> > GtkBin, like GtkButton, or at least modify it to have GdkWindow.
> > 
>      Last time I've checked, the GtkCheckButton widget *is* a derivative of
> GtkButton, and such, *has* its own window.

Actually, it *is* a derivative of GtkButton, but *does not have*
it's own window. ;-)

Well, sort of. It's a NO_WINDOW widget because it needs to draw
the label on top of its parent (The GTK_NO_WINDOW flag actually
means that the widget draws on the parent's window.)

But GtkCheckButton also has an input-only window that is
used to catch the button presses.

I'm not sure what the problem with GtkNotebook is (I don't
seem to reproduce it here), but it probably has to do more
with the way gtk_notebook_draw() is implemented then with
any problems with GtkCheckButton or gtk_widget_queue_*

                                        Owen



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