Re: dot-oaf style questions



On Thu, 29 Nov 2001, Mark McLoughlin wrote:

> Hi Maciej,
> 
> On Wed, 28 Nov 2001, Maciej Stachowiak wrote:
> 
> > > 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.
> 
> 	This is what I presumed the semantics to be when I as working
> on the applets. It was actually extremely useful .. Every applet has
> the following repo_ids attribute
> 
>         <oaf_attribute name="repo_ids" type="stringv">
>                 <item value="IDL:GNOME/PanelAppletShell:1.0"/>
>                 <item value="IDL:Bonobo/Control:1.0"/>
>                 <item value="IDL:Bonobo/Unknown:1.0"/>
>         </oaf_attribute>
> 
> 	and then to build the applets menu I use the following query
> 
> has_all (repo_ids, ['IDL:Bonobo/Control:1.0', 'IDL:GNOME/PanelAppletShell:1.0']) &&
> 	defined (panel:icon) && defined (panel:category)
> 
> 	sorting by category, then name ...
> 
> 	There's some *serious* power in bonobo-activation :-)

Should you really require an icon? Some applets may not have one...

/ Alex





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