Welll, the class does delegate the calls, but you cannot
plug in new implementation at runtime, which makes the
impl code pretty useless, IMO.
> RR> Does anyone disagree?
>
> The main question for me is whether we want to use a single "impl"
> only (i.e. either Gnome or mailcap) or if we want to continue to allow
> using multiple ones (Gnome + mailcap + fallback)? I think the former
> is better
I don't see why. I want to test at runtime if e.g. gnome-vfs
is available, and if it is, I want to push the
wxGnomeMimeTypesManager onto wxTheMimeTypesManager
in pretty much the same as I plan it for the printing code.
> we need not a m_pImpl here but an array of pointers to "impl".
Again, I don't see why and I favor a wxMimeTypesManagerFactory.
> It's probably enough to say that I'm thinking of bringing this code up
> to date (and adding possibility to modify MIME types + some dialogs
> (native ones if possible -- do Gnome/KDE/Mac provide them?) for
> editing them)
What for? This is the task of the desktop environment. I want to
query mime-types and I want to be able to associate my app with
a file extension. Neither is possible right now.
Robert
I agree with Vadim. I believe the reasoning for this was discussed in
detail on this list recently in another wxMimeTypesManager related
thread.
Vaclav
--
PGP key: 0x465264C9, available from http://pgp.mit.edu/
> I understand your logic but I don't see how can it be done legally. And
> the point about using wxExecute() is not that off base: suppose you write a
> GPL cmd line tool which uses Qt to retrieve MIME info and then use it (via
> system(), i.e. wxExecute()) from the main program. Surely this is legal?
Yes. But directly linking to a GPL'ed library to avoid executing a different
program surely isn't. I'm currently doing essentially the same thing in the
opposite direction for an authentication system: I'm certainly _not_ allowed
to distribute a closed source plug-in for FreeRadius (authentication server
distributed under GPL), but what I certainly can do is distributing a GPL'ed
module which will just forward the authentication request from FreeRadius
to my closed source stand-alone server. It does seem _very_ silly, but in my
reading of GPL, that's exactly what's necessary.
Regards,
Stefan