GtkDrawingArea is a thin
wrapper around
GdkWindow; it gives you a blank area to draw on.
Normally, you would connect to its "configure_event" signal to catch
changes in the size of the area, and do your drawing in
an "expose_event" handler.
To eliminate flicker, you might keep a GdkPixmap equal in size to the
drawing area, and draw to the pixmap; in your "expose_event" handler, simply
copy the exposed region from the pixamp to the drawing
area.
For high-level graphics,
GnomeCanvas can be much more convenient to use.