sane way to keep menubar on mac (and what about windows???)

J. Landman Gay jacque at hyperactivesw.com
Mon Mar 2 23:07:53 EST 2015


On 3/2/2015 9:47 PM, Dr. Hawkins wrote:
> I indeed have that menu checked, but I think that came when I set the
> defaultMenubar (in the manner Mark suggested).

If a stack has a menubar assigned ("the menubar of this stack",) it will 
use that menu. If it doesn't, then it will use whatever you've set as 
the defaultMenuBar. If there is no defaultMenuBar then you get the 
bare-bones Apple and Help menus that are required by OS X.

On Windows, there is no such thing as a defaultMenuBar, since each 
window must have its own. If you don't put a menubar in a stack, there 
will be nothing there.

>
> This seems to have it working, but I also seem to have a lost rogue menu
> for one of my stacks.
>
> The menubuilder doesn't find this menu, just two non-menu groups.

The menu builder will find all groups in the current defaultstack. A 
menu isn't particularly special, it's just a group full of pulldown buttons.

>
> Is there any way to search my stack for menus, particularly for a menu with
> specific text in it? (it has an odd phrase).  When I try to use the
> extended search, I found a couple, but still see some menus appear with
> "Dictation" options and whathaveyou.

Open Find and Replace from the Edit menu. Uncheck all the tick boxes 
except Button Text. Put the menu item phrase into the Find field. Choose 
"This Stack File" from the popup meu. If all your stacks aren't 
substacks then you can try searching "All Open Stacks" or "All Stacks in 
a Folder".

>
> Also, newly created stacks don't seem to use the menubar.

Right, you need to set the menubar of the stack after you create it. On 
Macs, the menubar doesn't need to be a group in that stack, it can be 
anywhere in any stack that you know will always be in RAM, i.e.:

   set the menubar of this stack to grp "menugrp" of cd 1 of stack 
"otherStack"

But if you're planning to go cross platform then you do need to copy the 
menu group to every stack. Windows doesn't have a system menu bar, so if 
there's nothing in the stack, there's nothing to show.

The other way to handle Windows menus is how LC does it -- create a 
separate menu bar stack that's always open and placed above your other 
stacks. In that case you need to determine or set the defaultstack 
before operating on any menu item selection. You really need to see LC 
on a Windows box to see how it works.

-- 
Jacqueline Landman Gay         |     jacque at hyperactivesw.com
HyperActive Software           |     http://www.hyperactivesw.com




More information about the use-livecode mailing list