To build menu from your xml file:
Using QDomElement read each element of your xml file. Each element that do not have any child is a QAction which is added to menu, whereas element which has one or more children is QMenu which comes under its parent (if it has one).
You might have to maintain the list of actions and menus so that you can build xml again from your menus.
Bookmarks