At one point, I did start going through and reducing the wxWidgets dependency by doing simple things like wxString -> std::string and using the std containers and such so that more things are independent. Much of the effect rendering now is wxWidgets free other than image, text, and tendrils. Almost everything else is completely dependent on wxWidgets. We use the XML parsing from wxWidgets. All the UI stuff is wxWidgets except the drawing code which is pure OpenGL. Not only is it wxWidgets dependent, it's very CodeBlocks dependent. All the dialogs and panels and such are setup and created in CodeBlocks and you would need to use CodeBlocks to edit them.
If I was starting a project now, I likely wouldn't use wxWidgets. But there is WAY too much code in xLights to move away from it now. If we started right now, I doubt we'd be done for next Christmas.