Dear all, After cooling off from the embedding feature for a while, I realize that a powerful embedding dialog may not be a good idea. It is difficult to sync the dialog with the buffer, and the convenience it brings to the table (update multiple embedded items at the same time, insert/pack/unpack/update files from a unified interface) does not really worth the trouble. Also, because insets will handle its own embedding status, a separate manifest section is used only for extra files, and is not actually needed.
I plan to 1. remove the embedding dialog 2. remove the manifest section of .lyx file and 1. Add lfun LFUN_EMBEDDING_TOGGLE and menu item Document -> Pack/Unpack. 2. Move all operations to insets. That is to say, in the GUI of an inset that allows embedding, add [x] bundle this file when saved in bundled format, with additional message like External/Embedded file is currently in use. and a good way to allow update, extract, view and edit this file. (some small buttons?) 3. Add an embedding type to child document. This type of child document inset will not produce any latex output, but the child document will be embedded when saved in bundled format. This allows the handling of embedded layout and class files the same as other bundled items. In this way, embedding is handled at the inset level, and at only one place (rather than at the inset and at the embedding dialog), so there is no sync problem. If there is no objection, I will proceed alone this way. Cheers, Bo