If anyone is interested, I've created wrappers for FL_FORM and for the FL_OBJECTs used by the citation dialog and used them successfully. The code can be found at http://www.devel.lyx.org/~leeming/xforms-wrappers.tar.bz2 and when untarred will contain wrappers/patch.diff wrappers/src/frontends/xforms
The patch file contains the (minimal) changes to the rest of LyX The xforms directory is a slot in replacement for the existing one. Of all the files in src/frontends/xforms, however, only directory XF and Dialogs.C FormBase.[Ch], FormCitation.[Ch] and form_citation.[Ch] are of interest. As you'll see, the resulting FormBase and FormCitation are _much_ cleaner. This should make the task of maintaining different frontends much simpler since the underlying logic is now clear to all. Regards, Angus