Refine XTREE's handling of popup menus in the context of editing. Now, if you are in an editable cell (with validation) and you right-click on another editable, XTREE displays the context menu immediately and waits to see what user action will take place before deciding whether to exit. If the user aborts the context menu, then, if the previously edited cell needs validation, then it exits with EXITCODE -48. If it didn't need validation, then we just return to editing that cell. If the user selects an item on the popup menu, then we exit with that EXITCODE, but still set the XTR'XVALIDATE and XTR'XROW/XTR'XCOL fields appropriately if validation of the previous cell is needed.
As an example of this, try the updated XTRA5 sample program (edit 131), which can be downloaded from http://www.microsabio.net/aftp/dsk0/908021. Open up the Debug message window and activate the XTREE trace. Hit ENTER to all the questions except say Yes to the validation question. Then select a cell in the description column (going into editable cell mode.) Clear the contents, then right-click on another column (the read-only checkbox column for example). This will display the popup menu. When you dismiss the popup menu, either by selecting a choice on the menu or by some action that cancels the menu, you will then get the validation message, indicating that an empty cell is not acceptable. You'll be able to see in the debug messages the exitcode and other relevant values.