• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Updating the main menu
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Updating the main menu


  • Subject: Re: Updating the main menu
  • From: Eric Wang <email@hidden>
  • Date: Tue, 11 Nov 2003 22:59:37 -0500

on 11/10/03 7:39 PM, M. Uli Kusterer at email@hidden wrote:

> DrawMenuBar() could be what you want, if the problem really is that
> the drawing isn't triggered immediately. At least if the rumors are
> true that Cocoa's menus are implemented using the same code Carbon
> uses. SetMenuBar() expects a Handle to a menu list data structure,
> which you can only get using other Carbon Menu Manager calls, and
> which needs to load the menus from a resource file, which you
> definitely don't want to do.

Thanks a lot Uli. Linking to Carbon and calling DrawMenuBar() whenever I
add/remove items from the main menu forces the menu to update immediately.

> May I join in and urge you not to do this, however? Mac users are
> used to the menu bar staying the same. If menus appear and disappear
> at the switch of a window, they'll be surprised, and it may ruin
> their "muscle memory" when other menus move because one to their left
> disappeared. On the Mac, the usual way to handle menu changes inside
> the application is to have all items present but to disable (i.e.
> grey out) the menus and menu items that aren't applicable right now.
>
> The only occasion on which menus should actually change like that is
> when switching between several applications, and that you're trying
> to do this could imply that you have merged several applications into
> one. It may be smarter to split up your application into several.
>
> If you don't believe me, read Apple's (Aqua) Human Interface
> Guidelines. they detail all of the reasons why this is frowned upon.

Oh, but I do believe you. I have read the Aqua Human Interface Guidelines,
but I think my particular case is the exception to the rule. It's
interesting you bring up the issue of "muscle memory." I had similar
thoughts when moving from OS 9 to OS X. I was concerned that the
variable-width application menu might cause me to click on the wrong menu at
times, but I haven't had too much of a problem with it so far.

I appreciate your thoughts on this topic. User interface issues are
something I try to keep a keen eye on.

Eric Wang
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.

  • Follow-Ups:
    • Re: Updating the main menu
      • From: Cameron Hayne <email@hidden>
References: 
 >Re: Updating the main menu (From: "M. Uli Kusterer" <email@hidden>)

  • Prev by Date: Re: Pure newbie :(
  • Next by Date: Re: reading input from stdin
  • Previous by thread: Re: Updating the main menu
  • Next by thread: Re: Updating the main menu
  • Index(es):
    • Date
    • Thread