I want to understand why the ordering of menu entries does not work for commands defined in ExtendScripts. It was reported in the old bug base as Bug#4110544 (this can no more be tracked). Hence I issued bug FRMAKER-2752. It turns out that even the following does not work (at the end of the menu):
«-- in StartUp folder ETBSaveAsOld.jsx defines these commands: ETBdocSaveOld, ETBbookSaveOld with label, shortcut and shortcut-label --» <Modify ETBbookSaveOld <Description Save book as old version [ETB] >> <Order BookFileMenu.ETBbookSaveOld> <After BookFileMenu.SaveAs>> <Modify ETBdocSaveOld <Description Save document as old version [ETB] > <Order FileMenu.ETBdocSaveOld> <After FileMenu.SaveAs>>
This can be because of the wrong assumption that the menu is interpreted after the script has been interpeted and new commands have been defined.
The script does not create errors and it installs a menu item at the end of the FileMenu and BookFileMenu. With the above appendix in the menu I want to move the menu entry to a more appropriate place.
For better understanding I tried to get the sequence of intialisation tasks from the Welcome screen of FM-13 (FM-14 seems to provide less information). Albeit this runs fast on my machine, I had captured it with SnagIt (some items are just 1 frame long!):
Kbmap Localisation Filters Core FMPopUpMenu Font Doc Preferences Password LoadConfigFile
But this does not reveal the sequence in which commands and menus are set up. In which sequence are the following tasks performed?
API clients (probably to be located before step 2 in the above list. FrameScript will define new commands
Read Startup folder (may define new commands) - IMHO also here a client (ESTK ?) is involved
Localisation: read workspace (menu and tool bar files)
What does step 9 (LoadConfigFile) do? Does this read the customUI.cfg file and hence modify the menues read in step 2?
Is my assumption of processing sequence just wrong or is the process broken at another place?
Of course this can only be answered by Adobe or an expert with experience in deep sea diving...