Devin,
Thanks for all the suggestions. Here's what I finally ended up doing, and hopefully putting it here for posterity will help others. Still, I hope that the Rev team can make a menu builder that "just works" for 3.5 and beyond...
1. As you suggested, I left enough space at the top of the stack for the menu. Used the Menu Builder, but elected to NOT let Revolution shift my controls down, and elected to NOT "set as menu bar on Mac OS".
2. Took my controls near the top (which act as my "toolbar") and grouped them together, and called them "Toolbar".
3. Made the other controls on the card that needed to, bind to the group "Toolbar" in the geometry manager, so they could resize/move accordingly.
4. Overrode the savingStandalone message to something like this:
Code: Select all
on savingStandalone
if the platform is "MacOS" then
hide group "MyMenu"
set the top of group "Toolbar" to the top of group "MyMenu"
set the menubar of this stack to "MyMenu"
revUpdateGeometry
end if
end savingStandalone
While in the IDE, I use the menu in the stack window, but the final, saved application just does the right thing. However, this is *almost* what I want. I say "almost" because, of course, the platform always returns the platform I'm developing on. I'd need to rebuild the application on Win32 to get the menu bar to stay put on Win32.
Ideally, savingStandalone would be called multiple times with a parameter indicating what the target platform was. But that's a feature request at this point. But perhaps someone knows how I can get the behavior I want?
Thank you so much for the advice and help. I'm glad I was able to get this working finally!
Jeff M.