Setting single pixels in a gnocl::pixBuf

WJG (06/03/10) Ok, its pretty clear that I'm a Penguin. I love Linux, Gnome and the principles of OpenSource. But, and its only a small, yet annoying but typical of any loving relationship, that there are little things not done that we take for granted will be done. Sounds familiar? The Gdk libraries contain some really useful tools, so why some of the simpler things are omitted? For example, there is a gdk_pixBuf_fill command, for clearing the screen to a single colour by painting each pixel individually, yet there is no library command for painting a single pixel itself! Not an insurmountable problem, but a capability that one would expect to be there. The assumption is, perhaps, that any drawing operations will be done to GdkDrawables, i.e., anything in a window rendered to the screen. GtkPixBufs are off-screen, the buffers that can be draw and worked with independently or prior to any rendering operation. My guess too is that if a programmer needs to draw to a buffer, its better done by rendering to it using Cairo.

To resolve this omission, I have examined the Gdk source code for something useful to hack. Of the course the right func is the above said gdk_pixbuf_fill. Now I have a usable pixel painting function that runs nicely, having put together what might be described as the missing gdk_pixbuf_set_pixel. Now the complement, a gdk_pixbuf_get_pixel function, is the thing to put together. Where is all this leading, one might ask... to the addition of a set of pixbuf image manipulation commands! More on this later.