Re: confusion regarding drawing of widgets



On Mon, 2007-12-24 at 02:39 -0800, iluvlinux wrote:
> hi
>     i am really confused, when it comes to drawing widgets.
> I studied aurora theme engine and found that it uses cairo apis to draw
> widgets.
> 
> Also i looked through the source code of Gtk and figured out that gdk draws
> using x11 or directfb etc Api's .
> 
> So i am confused as who is actually responsible for drawing the widgets. Is
> it the theme engine that bypasses gdk and draws directly or its the X11 apis
> that are actually doing some stuff.

The engine does almost all of the drawing. It does not matter if it uses
the GDK or the cairo API as cairo is also able to draw on X11, directfb,
etc.
So what you have is this:
 - GTK calls the engines drawing methods
 - The engine implements the drawing with either GDK or cairo
 - GDK/cairo draw to the X11 or a different backend

Keep in mind that both GDK and cairo are just two ways of drawing the
widgets.

> Also i have one more question, that .gtkrc file contains information about
> the color (fg and bg), what else we can configure in .gtkrc file and in
> gtkengine module

You can modify the colors, style properties[1] and the GtkSettings
propertiers[2]. x/ythickness falls out a bit as it is kind of special.
In the gtkrc is the "engine" section where engine specific options go,
these of course depends on the used engine.
The GTK engine is mostly responsible for drawing the widgets and does
not modify GTK options usually.

Benjamin

[1] See the GTK+ developer documentation or
http://live.gnome.org/GnomeArt/Tutorials/GtkThemes/StyleProperties and
http://live.gnome.org/GnomeArt/Tutorials/GtkThemes/

[2] http://library.gnome.org/devel/gtk/stable/GtkSettings.html

Attachment: signature.asc
Description: This is a digitally signed message part



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