The GDK2.Bitmap, GDK2.Window and GDK2.Pixmap classes are all GDK drawables.
This means that you can use the same set of functions to draw in them.
Pixmaps are offscreen drawables. They can be drawn upon with the
standard drawing primitives, then copied to another drawable (such
as a GDK2.Window) with window->draw_pixmap(), set as the background
for a window or widget, or otherwise used to show graphics (in a
W(Pixmap), as an example). The depth of a pixmap is the number of
bits per pixels. Bitmaps are simply pixmaps with a depth of
1. (That is, they are monochrome bitmaps - each pixel can be either
on or off).
Bitmaps are mostly used as masks when drawing pixmaps, or as a
shape for a GDK2.Window or a W(Widget)