Hi all, one option might be HaxeUI (full disclosure, im the author!) :)
Its essentially a UI abstraction that delegates certain things "backends"
site: http://haxeui.org/
github: https://github.com/haxeui/haxeui-core
discourse: https://community.haxeui.org/
It uses the Haxe language (haxe.org), here is a very small/simple/dumb sample of it "in action": https://www.youtube.com/watch?v=cijUTbMKMHI
It can use native components (wxWidgets, android, html5) but you can fairly easily extend it to use other "backends" (like Qt for example - i havent written that backend yet, but its something ill almost certainly do)... It can also handle drawing the components in a variety of methods (so called "composite backends").
Im currently aiming to get it out of alpha asap, and most work goes into "new-component-method" branches (these will become master shortly). Documentation is pretty slim at the moment, but something im actively working on, two examples that i just wrote up today in fact are:
https://github.com/haxeui/haxeui-guides/blob/master/custom-c...
and
https://github.com/haxeui/haxeui-guides/blob/master/modules....
Let me know if you have any questions!
Ian Harrigan
Heres some other links / screens that may be useful:
https://twitter.com/IanHarrigan1982/status/11113481164338503...
https://twitter.com/IanHarrigan1982/status/10905353905980416...