Every time you upload a code to a memory location with "upload to module" the same code is also automatically stored within the shadowfile.xml. This file serves as a backup and it is possible to restore all the codes within the shadowfile back to your module at any time you wish.
You can access the shadowfile utilities via the drop-down menu.
To restore all of the codes to a module (say after a firmware update) simply click "restore from shadowfile". During the backup process only the xml file memory locations containing codes are overwritten. Any locations that are blank within the xml file will not overwrite any codes that may already be stored within the module.
The "browse" option give you the chance to locate and use a previously stored shadowfile.
Each subsequent time that the java program is launched it checks to see if this file is present and will create a new blank one if it is not found. This means that you could store a set of codes for a satellite receiver then rename the shadowfile to something like "backup1.xml". Then re-launch the java program and learn another set of codes for a different model receiver. In this way installers can build a library of commonly used commands.
If you are feeling brave(!) you can manually edit the shadowfile by selecting "shadowfile editor" from the drop down "file" menu.
In this fashion you can display, edit and cut and paste code from other stored locations to create the xml file you desire.