Re: System contextual menus
Re: System contextual menus
- Subject: Re: System contextual menus
- From: Rainer Brockerhoff <email@hidden>
- Date: Thu, 31 Jan 2002 10:18:12 -0200
At 04:55 +0100 31/01/2002, Ondra Cada wrote:
>
Rainer,
>
>
>>>>>> Rainer Brockerhoff (RB) wrote at Wed, 30 Jan 2002 19:34:02 -0200:
>
RB> <plug> For instance, my famous "Zingg!" contextual menu plugin works in
>
RB> the Finder, in Sherlock, and in various other Carbon file browsers like
>
RB> Graphic Converter, but not in Cocoa file browser like SNAX.</plug>
>
>
I'm still not quite sure whether I do understand what you mean, but it seems
>
to me that you want to forget the obsoleted Classic way of supporting
>
file-based services, and learn real NSFilenamesPboardType Services instead.
Well, I _am_ fully informed about "real NSFilenamesPboardType Services" and _do_ support them in my application.
I strongly disagree about the utility of these services. Obviously a service menu item buried two or more levels down in the application menu is enormously less convenient to use than a contextual menu. I have received nearly a hundred e-mails lauding my contextual menu, and not a single one mentioning the "real NSFilenamesPboardType Service".
Also, using a service means that an application must be started; a contextual menu runs as a plugin. Much faster.
Finally, the Finder supports only the "obsoleted Classic way". The Finder does not support file services at all. Therefore it's _not_ obsolete; it's still the standard. I have published two old-style contextual menu plugins and need to support them in my Cocoa applications; there seems to be no way to do that.
Hopefully, in some distant future, when the Finder becomes a Cocoa application, we'll be able to write Cocoa-based (instead of Carbon-based) system-wide contextual menu plugins, and have a Cocoa API to add them (optionally!) to our specific contextual menus.
Now the question is: can I get at the Services API in a way that allows me to collect only the enabled services for my current context, and put them into my contextual menu? (Even so, there's still the serious limitation of having to start an application...)
--
Rainer Brockerhoff <email@hidden>
Belo Horizonte, Brazil
"I love deadlines. I love the whooshing noise they make as they go by" (Douglas Adams)
http://www.brockerhoff.net/ (updated Jan. 2002)