One of my most frequent causes of frustrations with FlexSim is when it "undoes" all the recent changes made in the code editor. There is a apparently a race condition between the quick-edit panel and the code editor as shown in this video:
Whichever editor closes last gets to overwrite the node text. I am sure I'm not the only one who lost hours of work because of this feature.
There are several ways to fix this:
- Close the quick panel whenever the editor is opened. Transfer whichever edits were made in the panel to the editor.
- Disable the quick panel for text nodes completely (or at least provide an option to disable it) and use the full-featured editor by default.
- Save a checksum of the node's text when instantiating an editor. Check it again before overwriting the node. Ask the user to overwrite or reload text if the checksum has changed. This should also cover inter-operation with all other mechanisms which may have updated the node.
Related: it would be really nice to have an easier way to open the editor without having to go to a sub-menu of a context menu (on double click maybe?).