----- Original Message ----- From: "Paul Davis" <paul@xxxxxxxxxxxxxxxxxxxxx> To: "Bill Cunningham" <billcm@xxxxxxxxxxx> Cc: "Matt Hoosier" <mwhoosier@xxxxxxxxx>; <gtk-list@xxxxxxxxx> Sent: Wednesday, October 04, 2006 9:35 AM Subject: Re: gtk layering > On Wed, 2006-10-04 at 01:19 -0400, Bill Cunningham wrote: > > ----- Original Message ----- > > From: "Matt Hoosier" <mwhoosier@xxxxxxxxx> > > To: "Bill Cunningham" <billcm@xxxxxxxxxxx> > > Cc: <gtk-list@xxxxxxxxx> > > Sent: Wednesday, October 04, 2006 1:12 AM > > Subject: Re: gtk layering > > > > > > > Bill, > > > > > > glib and X11 are orthogonal; neither depends on the other. Gtk+ uses > > > each one directly. > > > > I see. Thanks Matt. These internals are fascinating to me. I understand > > things better. Does gtk use glib for frame buffering or just X? What does > > gtk use pango and cairo for? > > lets be a little more accurate. > > Gtk does not use X11 directly at all. > > Gtk uses glib to provide data structures and portability for general > programming. > > Gtk uses Gdk to provide a set of mechanisms for creating windows, > drawing various kinds of things in them, managing their visibility and > handling events from a window system. There are implementations of Gdk > that work with X11, with the win32 GUI API (not sure which level it sits > at, possibly GDI but i don't know), with Aqua and with the linux > DirectFb API (amongst others). the window system is what actually > implements the things that Gdk is merely a wrapper around. > > Pango is a library that handles drawing and data management for fonts > and text. It has a variety of ways of rendering font information, some > via Gdk, some via other means entirely such as Cairo. > > Cairo is a general purpose drawing library that new versions of Gdk use > to draw things in windows. Cairo also can interface with a variety of > backends, include PostScript, X11, win32, etc etc. In current GTK > versions (2.10 etc) when you see a standard office-productivity style > application, most of it is being drawn using Cairo to actually control > the pixels, Gdk to provide a higher level abstraction of that stuff, and > Gtk to provide widgets. > > --p So could you give me an example of gtk+ using indirectly as you say X? Would glib-2 be involved? Bill _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list