Bret,
Instead of DO FORM ModalMenuSetter..
oMMSD = createobject( "ModalMenuSetterDriver" )
oMMSD.Execute()
The Execute() method sets values based on current menu settings, does the DO FORM ModalMenuSetter, which manipulates the oMMSD properties and when the modal form ends and control returns to the Execute method you tweak the menu.
>David I dont know what you mean in this situation. The form is up an modal and the user wishes to do something on the form that would have me change a few submenus. Where would the other object you mention come into play?