Hi!

On Thu, May 03, 2001 at 10:14:20PM +0200, Stefan Westerfeld wrote:
> (Forwarded, bounced due to spam protection)
> 
> From: Norman =?iso-8859-1?q?Kr=E4mer?= <[EMAIL PROTECTED]>
> To: [EMAIL PROTECTED]
> Subject: interfacename
> 
> Hi,
> 
> the TraderOffer_impl currently looks up key "InterfaceName" in the .mcopclass 
> file for a list of interfaces, while all the .mcopclass files that come with 
> kde 2.1.1 only have a key "Interface". Are these two different beasts ?

As it is implemented now, they are. If you have an inheritance tree, like

     Arts::Object
          |
   Arts::SynthModule
          |
   Arts::Synth_WAVE_SIN

then Interface is supposed to contain all of these interface, so that you
can do a query "give me something that is an Arts::SynthModule", by asking
for query.supports("Interface", "Arts::SynthModule");

On the other hand, "InterfaceName" is the most specific interface. It will
be generated out of the location of the file inside the trader hierarchy,
and be used to create "exactly" a given component. I.e. if you want something
that is "exactly" an Arts::Synth_WAVE_SIN, you can write
query.supports("InterfaceName", "Arts::Synth_WAVE_SIN").

It's also used for dynamically loading components - i.e. if you did a trader
query, you can find out /one/ interface name, the name of the component,
by looking at query.interfaceName() (which is just the InterfaceName attribute
of that trader entry).

   Cu... Stefan
-- 
  -* Stefan Westerfeld, [EMAIL PROTECTED] (PGP!), Hamburg/Germany
     KDE Developer, project infos at http://space.twc.de/~stefan/kde *-         

Reply via email to