Search code examples
linuxuser-interfacegtkx11xlib

How would you build a "pixel perfect" GUI on Linux?


I'd like build a GUI where every single pixel is under my control (i.e. not using the standard widgets that something like GTK+ provides). Renoise is a good example of what I'm looking to produce.

Is getting down to the Xlib or XCB level the best way to go, or is it possible to achieve this with higher level frameworks like GTK+ (maybe even PyGTK)? Should I be looking at Cairo for the drawing?

I'd like to work in Python or Ruby if possible, but C is fine too.


Solution

  • With Clutter toolkit (or some other canvas widget/toolkit) you can build such an interface. I would not advise going to the level of Xlib/XCB or DrawingArea because it would require implementing much of generic functionality already present in canvases.