I think you should follow basically the same path as TopWindow - derive from Ctrl and use X11 specific stuff to bring the widget to the system.
It is quite possible that in the process you will need to fix X11Wnd.cpp, perhaps adding some Create parameters. I think for low-level stuff like this it is OK.