Make the GUI code better structured: As of now, it is highly hierarchied, and this is not good. Make something component instead of inheritance-based.
Make it prettier: Text is not centered or aligned properly, buttons are ugly,,, The GUI needs to be prettier for a videogame, after all, this is a game, not an 1990's X11 application.
Customizable: In the future, allow the developer and some future modder to define the control appearance in SVG.
We will continue to use Cairo to render the control, though.
The GUI code is better structured, and we can customize a lot of things, in a better way, using a common struct that the base control uses, instead of per control
We will continue to use Cairo to render the control, though.