Re: [g-a-devel]Implementing support for state sets in at-spi



Michael Meeks wrote:
> 
> Hi Marc,
> 
> On Fri, 2002-02-08 at 05:23, Marc Mulcahy wrote:
> > Any thoughts on how to best implement state sets in the at-spi?
> 
>         I imagine you'll need to provide a structure to allow the passing of
> state across the CORBA divide. ie. a CORBA sequence that contains the
> states [ I imagine ], or some numeric value - depending on how it works;
> I forget.
> 
> >  Functions
> > like contains aren't difficult, but functions comparing two state sets,
> > such as compare, and isEqual look non-trivial.  In the case of isEqual, the
> > AtkStateSet would only be available for the stateset on which isequal is
> > called, since it can be retrieved with get_state_set_from_servant ().  The
> > stateset to be compared is passed in as an Accessibility_StateSet, and
> > there appears to be no way to retrieve the AtkStateSet from an
> > Accessibility_StateSet.
> 
>         There is a way to get an AtkStateSet from an Accessibility_StateSet
> via.
> 
>         bonobo_object (ORBit_get_servant (the_corba_stateset))
> 
>         _BUT_ this is never going to work in the remote case - and since the
> whole stateset API is most useful remotely - it's not going to help at
> all to have a pure local case hack in there [ although for performance
> it might well be worth having a shortcut like that ].
> 
>         So - I imagine you need some IDL method or other to marshal the thing
> to a sequence of some semi-private type, and then you'll need to compare
> them in isEqual.
> 
>         How does that sound ?

Like overkill ;-)

Actually I am not sure we need to marshal a special struct here.
At least it didn't appear to require that much API last time I 
looked at it; I'll look again.

At least in many situations I think the StateSet can just be
an opaque object, only the "states" are exposed (and the methods,
contains, equals, etc.)

-Bill

>         Regards,
> 
>                 Michael.
> 
> --
>  mmeeks gnu org  <><, Pseudo Engineer, itinerant idiot
> 
> _______________________________________________
> Gnome-accessibility-devel mailing list
> Gnome-accessibility-devel gnome org
> http://mail.gnome.org/mailman/listinfo/gnome-accessibility-devel



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