I have just submitted a bunch of changes regarding IMGUI and NAP. Most importantly the user can now select which window to use to display and interact with the GUI. You can select the window by calling:
It is also possible to change the window at runtime, although probably not something you want to do frequently. Best to select the window when you initialize your application.
Next to this change I reworked the GUI code and got rid of the native SDL implementation that shipped with IMGUI. This allowed me to limit the amount of cross library calls and remove the need for a global IMGUI state, which I always hated. All IMGUI related functionality is now handled by the IMGUI service. I can now work on drawing a GUI on all windows.