Update : We successfully ported your nuclexUI to our non xna engine ! My custom renderers still works fine, the last bugs are unirectangle not working properly and some label alignment weirdness .
There was something strange, on this line in the skin file :
<text font="default" hplacement="center" vplacement="center" yoffset="15" color="#3F3F3F" />
we had to remove the yoffset=15 to have labels centered on buttons, they were floating 15 pixels outside buttons ! Maybe we fixed a bug during porting ?
What was done :
- plug our input into screen injectInput methods ( took me some time to realize other input interfaces were not needed in our case, having made cegui run previoulsy helped ! )
- implement our own spritebatch
- reorganize dependencies to get rid of the usual service locator antipattern mess, graphicsdevice passed through contentmanager this sort of things.
- Load everything through the resource(no content manager)
- Change all rectangles / vector2 to use our own or windows form
- Change all keys / mouse to use windows form instead of xna ( mousebuttons custom enum with [flag] was needed, windows form is not a flag enum that was annoying )
- comment everything related to gamepads (for now ! )
I cant release the port as is, there are still bugs and our dependencies are not clean ( we had to pass our game instance to flatuigraphics, doh ! ) But I will try to release something or at least give you a detailed change log.