OptionaladdressDiagnostic alternatives, never an automatic dispatch choice.
OptionalcheckedOptionalchildrenOptionalcommandContext menu uses commandId; main menu uses path or guid.
OptionalenabledNormalized state. Preferred over decoding SmpRawMenuItem.flags, which cannot express "not observed": a zero flag word and a genuinely enabled item are indistinguishable.
OptionalexecutableWhether the host can uniquely address this main-menu command.
OptionalflagsOptionalguidOptionallabelOptionalpathOptionalsourceNative source, including the dynamic kind when its child identifier is missing.
OptionalstateFalse when enabled / checked carry no observation.
OptionalsubSub-command GUID of a dynamic submenu child.
OptionaltypeOptionalunaddressableWhy the host cannot provide a complete main-menu execution address.
Raw menu item returned by the C++ menu API (
menu.getMainMenu/menu.getContextMenu). Recursive:submenuitems carry achildrenarray of the same shape.