Re: dot-oaf style questions



On 28Nov2001 08:42AM (-0800), Darin Adler wrote:
> 
> > - <!-- comments --> in .oaf files are not allowed, although they would
> > be quite useful; any work being done to add support for comments?
> 
> They should be allowed. What gives you the impression that they are not?
> Since we just use libxml to parse the files, I can't see how we could
> disallow comments.

I'm pretty sure I have used <!-- --> comments in .oaf files before.
 
> > - in my /usr/share/oaf i see many oaf files that have
> > "IDL:Bonobo/Unknown:1.0" as one of their repo_ids; that doesn't seem
> > correct; either the corresponding components *do* expose Bonobo/Unknown
> > (which seems rather pointless), or else they don't in which case the
> > .oaf files are wrong. Note that exposing e.g "Bonobo/Control" does *not*
> > mean you're automagically exposing Bonobo/Unknown (although of course
> > Bonobo/Control derives from Bonobo/Unknown.
> 
> In practice, it currently doesn't matter if these lists of repo_ids aren't
> exactly right, which is what creates the problem. The only time the repo_ids
> matter is when doing bonobo-activation queries, such as the ones that
> Nautilus uses to find views. So the people creating the files can get them
> wrong as long as they are "close enough". If we want people to get them
> right, we probably need some way to check them. Asking people to get them
> right with no way to test is like asking someone to write a program and
> debug it without ever being able to run it.
> 
> You seem pretty sure of the semantics here. But I'm not. Exposing
> Bonobo/Control, which derives from Bonobo/Unknown, does seem like it exposes
> Bonobo/Unknown. But this is all beside the point for the current uses of
> repo_ids anyway, so it's probably not worth debating.

The list of repo_ids is the list of interfaces you can queryInterface
for successfully. When you QI for Bonobo/Unknown on something that
provides Bonobo/Control, it will succeed because of the
inheritance. (Microsoft COM works the same way).

So I think it is correct to list inherited interfaces in the repo_id
field.

 - Maciej




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]