Re: Circular definition of draw_segments



On 15/12/04 16:02, Russell Shaw wrote:

Hi,
I can't find where gdk_draw_segments() eventually calls an X line
drawing function. Starting from here, the path seems to go in circles:

static void
gdk_window_draw_segments (GdkDrawable *drawable,
                          GdkGC       *gc,
                          GdkSegment  *segs,
                          gint         nsegs)
{
  ...
  gdk_draw_segments (paint->pixmap, gc, new_segs, nsegs);

^^^^ note here that gdk_window_draw_segments() is drawing to a GdkPixmap. This is part of GTK's double buffering (in the no-double buffering case, it will call draw_segments on ->impl, which is a GdkWindowImplX11 class on X11).

The GdkPixmap draw_segments() implementation also chains to the ->impl class (which is a GdkPixmapImplX11 class on X11).

Both the impl classes derive from GdkDrawableImplX11, so you'll find the actual X calls in the gdk_x11_draw_segments() function from gdk/x11/gdkdrawable-x11.c.

James.

--
Email: james jamesh id au
WWW:   http://www.jamesh.id.au/





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