If you feel like writing UI is a pain in the ass, take a look onto IMGUI's. I really fell in love with the technique
I was writing a GUI Framework based on it for 3dgs. Its easy to extend it, not a lot of code needed to create one and responsive.

For example to create a slider you only need one line and everything works(resizes with resolution, data get changed, ...)
From my framework for 3dgs:
Code:
//0: min health; 1000 max health.
//If auto-layout is on, the first parameter (UIRectC) is not needed
this->health = UIHSlider(UIRectC(20, 250, 400, 8), this->health, 0, 1000);



To extend it, you can simply write a function that contains functioncalls for other elements.
(The slider function f.i. just calls UIRepeatButton() and UIBackroundImage())