One thing to notice: We cannot make MenuBar completely modal, because normal GUI operation e.g. needs that if in wordprocessor you invoke any menu, then click the text, menu disappears and CARET MOVES TO THE POSITION CLICKED. So disabling everything as with modal dialogs is not and option.
The plan now is to add WhenOpen and WhenClose callbacks that would trigger when menu's submenu is opened/closed (note that you do not need callbacks for Execute).