Hello JK,
in principle, setting the attribute Split to the value true disables already the problem with reordering. Only the index file .dir and the changes within the split files have to be merged. Compared to a C project, it is as if the developer team had divided few big C files in many small C files, each containing a separate C function. The probability of two developers modifying one and the same function (and thus file) is reduced significantly in this case. Hereby most of the changes can be merged automatically.
From your question I have understood, that using Split=true is not your favorite. The alternative would be to have all unit members stored within one large EWU file (Split=false). We have discussed your suggestion and from technical point of view it would be possible to modify Embedded Wizard so that:
1. The order of members within the unit file (EWU) is not changed when the user reorders the members in Studio.
2. New added members are arranged consequently behind the originally loaded project members within the EWU file.
3. The expected order of members is listed explicitly at the end of the EWU file. A kind of index. Please note, that merging this index can't be eliminated. Incorrectly merged index will affect the order of members how Embedded Wizard processes them.
Are you sure it will make the merge task easier for you? Or are there other aspects I have not understood from your question? Does it happen that often in your project that the developers change the order of unit members?
Best regards
Paul Banach