I've been considering writing my own UI framework. This is mostly because I have some relatively specific requirements for it- namely, integrating with my own hardware-accelerated 3D graphical code. The question is, what are the minimal primitives I can expose from the rendering code and still be able to render a wide series of controls, like combo-boxes and drop-down lists and such, and in addition, is doing that even feasible?
I will only need relatively basic controls to begin with and could implement others on an as-needed basis. Right now, I only expose rendering text and rendering a texture.