System menus
James Spencer
jspencer78 at mac.com
Mon Feb 20 11:05:21 EST 2006
On Feb 20, 2006, at 9:22 AM, Richard Gaskin wrote:
> Klaus Major wrote:
>> Buongiorno Paul,
>>> Someone knows if the new Rev. 1.7 give some new chance to create
>>> a system
>>> menu on Mac Os X (the menus visible by all applications, as
>>> MenuCalendarClock, MenuMeters, iKey, etc.)?
>> sorry, I'm afraid that is not possible with Rev :-/
>
> It may be worth noting that there is no sanctioned API for that, as
> Apple considers those menus to be exclusively for their own use:
>
> Reserved for use by Apple, the right side of the menu bar
> may contain items that provide feedback on and access to
> certain hardware or network settings.
> <http://developer.apple.com/documentation/UserExperience/Conceptual/
> OSXHIGuidelines/XHIGMenus/chapter_16_section_4.html>
>
>
> Third-party programs which make such menus for themselves do so by
> violating Apple's design mandate and effectively "hacking" the system.
As already said, Rev does not provide such facilities so this is
getting off-topic but the info here is not really correct. While it
is true that there is no Apple sanctioned API for specifically "Menu
Bar Extras" as referred to in the HIG material quoted above, Cocoa
does provide an Apple sanctioned public API for the creation of
"Status Items" (NSStatusItem). These are sort of weaker Menu Bar
Extras (weaker in that the underlying application needs to be running
for them to appear and you can't reorder them like you can Extras)
but they are there regardless of which app is in front and they have
the advantage that they can't bring the system down either. While a
public API, Apple still discourages their use unless there is no
alternative (say a Dock menu), ostensibly to save menu bar real
estate. (I think it's also to avoid creating the nightmare of a
Windows system tray.)
The point is that not every third party program that is putting up
one of these menus is "hacking" the system. I don't like these
things so I don't have many up there but I note that Kensington's
MouseWorks uses status items, not menu bar extras. The only way I
could tell (short of looking at what processes are running) was to
try to Cmd-drag the icon.
Spence
James P. Spencer
Rochester, MN
jspencer78 at mac.com
"Badges?? We don't need no stinkin badges!"
More information about the use-livecode
mailing list