[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Application roles
From: |
Uli Kusterer |
Subject: |
Re: Application roles |
Date: |
Mon, 16 Feb 2004 08:45:59 +0100 |
User-agent: |
MT-NewsWatcher/3.3b1 (PPC Mac OS X) |
In article <mailman.2436.1076871907.928.discuss-gnustep@gnu.org>,
nicolas@roard.com wrote:
> Well, in fact I think the user should have the possiblity to display either
> the
> application name, or the role, or both.. plus of course add the role name in
> the
> workspace inspector.
Could that be specified on a per-file basis? Like Cocoa apps remember
the "hide filename extension" setting on a per-file basis? That way, a
web designer could choose to have all applications display just their
roles, except for the web browsers for testing, for which he'd like to
only see the names (after all, a web designer understands Mozilla,
Firebird and Safari intuitively).
> Yes, that's an idea which is really interesting ... basically, we could have
> some defined methods for a role, that an application using that role should
> implement (eg, openMailWithContent:, openUrl:, things like that)
> The big advantage is then that a user could transparently swap applications
> as
> long as they correctly implement the roles functions.
Apple had something vaguely similar (but apparently they recently
dropped it). It was a third-party-extension they moved into the OS
called "Internet Config" that allowed specifying the default helper
applications for various network schemes (http, nntp, ftp, mailto) and
some more stuff.
However, Apple also has "roles" separate from that ("Viewer" and
"Editor" right now), though I don't think the OS actually uses them for
anything right now. So, I'm not sure one would want to combine these two
concepts.
Maybe you could have some sort of "protocols" for applications instead?
A protocol gets a unique name (e.g. "GSWebBrowserProtocol" or
"org.gnu.gnustep.protocols.webbrowser", which in turn has a localized
display name "Web Browser" associated with it, and a protocol that the
NSApplication must conform to), and then there would be NSWorkspace
functions to set a default application for that protocol, or to look up
the default application for this protocol, or to get a list of all apps
conforming to the protocol (to stick with my example: For a "preview in
browser" menu).
Then you'd add a "GSProtocol" key to the info.plist of the application
that is either a single NSString or an NSArray of NSStrings designating
all supported protocols.
Does that make sense?
Cheers,
-- Uli
http://www.zathras.de
- Re: Application roles, (continued)
- Re: Application roles, Raffael Herzog, 2004/02/16
- Message not available
- Re: Application roles,
Uli Kusterer <=