Re: Plans for drawing in GDK-1.4.

>  I noticed in gtklayout.h that you didn't think the freeze & thaw functions
>  worked. I just wanted to point out that I have found them useful, when using
>  a GnomeCanvas.

The freeze/thaw functions of the GtkLayout widget are essentialy a
hack (they are my fault) :-)  The problem I was trying to address was
that when you change the GnomeCanvas zoom factor, you have to:

	1. Calculate the new size in pixels of the scrolling region,

	2. tell the GtkLayout to set its new size,

	3. scroll the GtkLayout so as to keep the view centered,

	4. redraw the whole thing since the zoom factor changed.

The actual problem is that GtkLayout provides no way to set an
absolute scrolling offset; you have to modify each adjustment
separately, and so if you scroll diagonally things will move in one
direction after another.  This looks really bad.

The correct solution is to provide Owen's GdkSuperwin functionality
for GtkLayout.  This thing can do diagonal guffaw scrolling properly;
it is the thing used in Mozilla these days.


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